Download as pdf or txt
Download as pdf or txt
You are on page 1of 114

Communication Admin User Guide

11.0
Confidentiality, Copyright Notice & Disclaimer
Due to a policy of continuous product development and refinement, TEOCO Corporation or a
TEOCO affiliate company (“TEOCO”) reserves the right to alter the specifications,
representation, descriptions and all other matters outlined in this publication without prior
notice. No part of this document, taken as a whole or separately, shall be deemed to be part
of any contract for a product or commitment of any kind. Furthermore, this document is
provided “As Is” and without any warranty.
This document is the property of TEOCO, which owns the sole and full rights including
copyright. TEOCO retains the sole property rights to all information contained in this
document, and without the written consent of TEOCO given by contract or otherwise in
writing, the document must not be copied, reprinted or reproduced in any manner or form, nor
transmitted in any form or by any means: electronic, mechanical, magnetic or otherwise,
either wholly or in part.
The information herein is designated highly confidential and is subject to all restrictions in any
law regarding such matters and the relevant confidentiality and non-disclosure clauses or
agreements issued with TEOCO prior to or after the disclosure. All the information in this
document is to be safeguarded and all steps must be taken to prevent it from being disclosed
to any person or entity other than the direct entity that received it directly from TEOCO.
TEOCO and Helix are trademarks of TEOCO.
All other company, brand or product names are trademarks or service marks of their
respective holders.
This is a legal notice and may not be removed or altered in any way.
COPYRIGHT © 2020 TEOCO Corporation or a TEOCO affiliate company.
All rights reserved.

Your feedback is important to us: The TEOCO Documentation team takes many measures
in order to ensure that our work is of the highest quality.
If you found errors or feel that information is missing, please send your Documentation-
related feedback to Documentation@teoco.com
Thank you,
The TEOCO Documentation team
Table of Contents

Table of Contents
Introduction..................................................................................................................... 1
What is Communication Admin? ................................................................................................ 1
Main Concepts ........................................................................................................................... 2
The Communication Admin Processes ...................................................................................... 2
Communication Admin Terminology and Abbreviations ............................................................ 3
The Workspace ............................................................................................................... 5
Main Window .............................................................................................................................. 5
Main Toolbar .............................................................................................................................. 5
Generic Driver Tree .................................................................................................................... 6
Network View ............................................................................................................................. 7
Access View ............................................................................................................................... 9
Protocol Access .......................................................................................................................12
Starting the Communication Admin Application ........................................................ 13
Filtering the Display ..................................................................................................... 18
Creating a New Access Point ...................................................................................... 19
New Access Point Wizard ........................................................................................................19
Administrative Tasks .................................................................................................... 28
Defining the Configuration .......................................................................................................28
Handling Protocols ...................................................................................................................29
Viewing Protocols ................................................................................................................29
Handling Generic Driver Instances ..........................................................................................31
About Generic Driver Instances ..........................................................................................31
Inserting a Generic Driver Instance ....................................................................................32
Generic Driver Instance Details Parameters.......................................................................33
Generic Driver Instance Advanced Parameters..................................................................34
Updating a Generic Driver Instance ....................................................................................35
Deleting a Generic Driver Instance .....................................................................................35
Changing the Load Balancing Parameters ..............................................................................36
Handling NE Types ..................................................................................................................39
Viewing NE Types ...............................................................................................................39
Creating an NE Type ...........................................................................................................41
Updating an NE Type ..........................................................................................................42
Deleting an NE Type ...........................................................................................................42
Handling Access Types............................................................................................................43
Viewing Access Types ........................................................................................................43
Creating an Access Type ....................................................................................................44
Updating the Access Type Definition ..................................................................................45
Deleting an Access Type ....................................................................................................45
Handling Service Indexes ........................................................................................................46
Viewing Service Indexes .....................................................................................................46
Creating a Service Index .....................................................................................................48
Updating a Service Index ....................................................................................................49
Deleting a Service Index .....................................................................................................49
Handling Connectivity Templates ............................................................................................50
Viewing Connectivity Templates .........................................................................................50
Creating a Connectivity Template .......................................................................................52
Deleting a Connectivity Template .......................................................................................53
Handling Connectivity Template Associations .........................................................................53
Viewing Connectivity Template Associations ......................................................................53
Creating a Connectivity Template Association ...................................................................55
Updating a Connectivity Template Association...................................................................56

iii
Communication Admin User Guide
Deleting a Connectivity Template Association ....................................................................56
Handling Command Sets .........................................................................................................57
Viewing Command Sets ......................................................................................................57
Creating Command Sets .....................................................................................................58
Updating Command Sets ....................................................................................................59
Deleting a Command Set ....................................................................................................60
Handling Connectivity Scripts ..................................................................................................60
Viewing Connectivity Scripts ...............................................................................................60
Creating Connectivity Scripts ..............................................................................................62
Editing Connectivity Scripts.................................................................................................64
Diagnostic Tools ........................................................................................................... 66
Tracer .......................................................................................................................................66
Overview .............................................................................................................................66
The Tracer Main Window ....................................................................................................66
The Tracer Toolbar .............................................................................................................67
The Tracer Menus ...............................................................................................................67
Accessing the Tracer ..........................................................................................................69
Using the Tracer ..................................................................................................................72
Reconnecting to the Server.................................................................................................73
Setting the Subscription Parameters ..................................................................................73
About Filtering String Conditions ........................................................................................75
Import/Export ............................................................................................................................76
Importing the Configuration .................................................................................................76
Exporting the Configuration.................................................................................................79
GD Status .................................................................................................................................80
Template Failure Indication ......................................................................................................81
Doctor .......................................................................................................................................84
Scorpio Scripting Engine ............................................................................................. 86
Introduction ..............................................................................................................................86
Overview .............................................................................................................................86
The Scripting Concept .........................................................................................................86
Internal Receive Buffer........................................................................................................87
Defining Scripts ...................................................................................................................87
Script Syntax .......................................................................................................................89
Communication Admin Oriented Functions .............................................................................90
Available Functions .............................................................................................................90
Send/Receive Functions .....................................................................................................91
General Functions ...............................................................................................................93
Internal Buffer Functions .....................................................................................................97
Data Types ...............................................................................................................................98
About Data Types ...............................................................................................................98
Construction ........................................................................................................................98
Cast .....................................................................................................................................99
Arithmetics...........................................................................................................................99
Boolean Operators ..............................................................................................................99
Member Functions ............................................................................................................100
Sample Scripts .......................................................................................................................101
About Sample Scripts ........................................................................................................101
Very Basic Telnet Connection ...........................................................................................101
Standard Telnet Connection .............................................................................................102
GenericTelnet Connect .....................................................................................................102
Telnet Disconnect .............................................................................................................103
Show a Buffer Line by Line ...............................................................................................103
Wait for Special Data ........................................................................................................104
5ESS Connect Script ........................................................................................................104
LUCENT OC3 Connect Script ...........................................................................................105
iv
Table of Contents
DMS100 Connect Script ....................................................................................................105
Nortel DMS500 Connect Script .........................................................................................108
TL1 Connect Script ...........................................................................................................108
TL1 Disconnect Script .......................................................................................................109

v
Introduction

Introduction

What is Communication Admin?


The Communication Admin module manages the communication layer of the Mediation
platform. The Communication Admin's main task is to communicate with each network
element using its own protocol. Communication Admin consists of two sub-layers:
 A generic sub-layer—handles general management activities that are relevant to all
protocol types, such as “login” and “keep-alive”. This sub-layer is called Generic
Driver (GD).
 A protocol-specific sub-layer—implements the different protocols using thin
protocol-specific drivers (plug-ins).
By placing the communication in a single architecture layer, the Helix Mediation makes the
administration and management of communication simpler. Using a single communication
layer approach makes additional support for more protocols easier.
The diagram and description illustrates the Mediation’s architecture, including Communication
Admin, NCI, and DvXpert.

1
Communication Admin User Guide
Communication Admin communicates with the Mediation layer in the following ways:
 Commands are sent from NCI to The Communication Admin Processes and The
Communication Admin Processes sends replies to NCI.
 DvXpert receives notification data and/or NCI command replies from Generic Driver.

Note: Communication Admin is AKA Generic Driver (GD). This guide can also be referenced
from other documents as the Generic Driver User Guide.

Main Concepts
The Communication Admin functionality is based on a number of main concepts:

Centralization of General Activities


 One service handles all general activities.
 Support is provided for subscriptions and commands.
 A script mechanism is used for protocol negotiations (such as login and keep-alive).
 Specific elements (plug-ins) handle various protocols.

Protocol Abstraction
 A single managing layer supports topology of all known NEs.
 A single configuration model supports all known topologies.
 Specific software elements support unique protocol characteristics (plug-ins).

The Communication Admin Processes


The Communication Admin client enables System administrators and authorized experts to
use the Communication Admin GUI to define the basic configuration required for the
Communication Admin.

Communication Admin definition sequence:


 Protocols
 NE types
 Access types
 Service Index
 Connectivity templates
 Connectivity templates association
 Sets of commands
 Connectivity scripts—in the Communication Admin system, Protocols and NE types
come predefined. These may be viewed only. The remaining elements are defined in
Communication Admin.
 Access Point Wizard—all the Telecom users use the Access Point Wizard using
XML templates to define the configuration of access points and the entire network.

2
Introduction
 Creating access points—Communication Admin enables the creation of access
points for NEs. An access point helps define the type of data being gathered from an
NE. By default there are seven access type categories:
o Command
o Performance
o Configuration
o Traps
o Position
o Alarms
o Notification

Note: Additional user defined categories can also be created. Later, groups can be
constructed containing all access points of matching type.

 While running—Communication Admin uses network configuration definitions from


the previous two steps to handle the Helix communication (using the Tracer).

Communication Admin Terminology and Abbreviations


Access
Logical session between Helix and the NE(s) by protocol.

Activity
Notification from the network, or sending command to the network.

Channel
Data type in a specific connection.

Command set
List of names of commands per NE.

Command Script
Physical code defined per access point.

Connection
Physical bond between Helix and the NE

Connection Templates
Enables you to automatically define access points for any new NE created. There are two
stages in the creation of connection templates:
 Definition of template (XML file)
 Attach template to an NE type (association)

FQDN
Fully Qualified Domain Name.

3
Communication Admin User Guide
GD
Generic Driver.

Generic Driver
A generic sub-layer that handles general management activities that are relevant to all the
Communication Admin protocol types, such as “login” and “keep-alive”.

Note: Communication Admin is also known as Generic Driver.

NE
Network Element.

Protocol
Method of interaction with NEs (for example, TL1, SNMP, and Telnet).

Service Index
Connects NE types to Protocol types (in context of Access type).

4
The Workspace

The Workspace

Main Window
The Communication Admin’s main window contains three tabs. Two tabs, Network View
and Access View, are for viewing information. The third tab, Administration, is for
administrative tasks.

Main Toolbar
The main toolbar includes function buttons that offer you most of the operations required for
the configuration definition process.
Each function button icon displays its picture and name. When the function button is
available, it appears with its original colors. When the function button is not available, it
appears as a gray shadow of the picture.

Button Description

Reload (F5) Configuration database refresh

Save Save all changes

5
Communication Admin User Guide

Button Description

Group by Box User selectable grouping

Field Chooser Enables you to add/remove fields from the existing list

Criteria Enables you to filter the displayed network elements

Tile Horizontally Tiles the display panes horizontally

Tile Vertically Tiles the display panes vertically

Generic Driver Tree


In the Administration tab, the Generic Driver Tree is displayed. The Generic Driver Tree root
entities include:

6
The Workspace
 Access Type
 Connectivity Scripts
 Connectivity Templates Association
 Connectivity Templates
 Generic Driver Instance
 NE Type
 Protocol
 Service Index
 Set of Commands

Network View
The Network View window provides a display of all the Network Elements within the network
and their access points.

You can run the main Network Elements activities from the Network Elements table by
right-clicking the required Network Element row and selecting a menu option, as follows:

Menu Description
Option

New Opens the New Access for Network element wizard for defining a new
Network access point for the selected Network Element.
Element
Access

7
Communication Admin User Guide

Menu Description
Option

Opens the Tracer for monitoring the online raw data received from the
Trace
selected Network Element.
this NE

Update Opens the Update Network Element in BC window for updating the Network
Network Element's details in the Base Configuration module.
Element

8
The Workspace

Menu Description
Option

Delete Deletes the selected Network Element.


Network
Element

Note: You can enable/disable the displayed access point by selecting/clearing the Access
Enabled box.

To view an NE’s details and access points:


1. Click a protocol in the Network View tree.
A list of all the NE names appears on the right.
2. Click the desired NE.
At the bottom of the window, tabs appear detailing the NE and its access points.
3. Click any required Access tab to view the access point’s details.

Access View
The Access View window provides a display of all the network access points and their
parameters. The top of the window displays all the access points.

9
Communication Admin User Guide
The bottom half of the screen displays the selected access point's parameters.
You can run the main access point activities from the access points table by right-clicking the
required access point row and selecting a menu option, as follows:

Menu Description
Option

New Opens the New Access wizard for defining a new access point.
Network
Element
Access

Delete Deletes the selected access point.


Access point

Copy Opens the New Access wizard with the details of the selected access
Access point point for defining a new access point.

Enables the selected access point.


Enable
Access point

Disables the selected access point.


Disable
Access point

Displays the Access Connection Test window and runs a connection test
Connection on the selected access point.
Test

10
The Workspace

Menu Description
Option

Opens the Tracer for monitoring the online raw data received from the
Trace this
selected access point.
access point

Displays the runtime details of the selected access point in a new Access
Access
Runtime Details window.
Runtime
details

Note: In the Access Runtime Details window, you can right-click to copy
the displayed text.

11
Communication Admin User Guide

Note: You can also enable/disable the selected access point by selecting/clearing the Access
Enabled box.

To view the NE connected to the access point:


 Click .
The Network Elements Selection window appears with the NE’s details displayed.

Protocol Access
The Communication Admin client employs specific windows for displaying each protocol
access. This enables you to focus on the parameters that are specific to this protocol and
avoid the other ones. Full details are available in the Communication Admin Plug-ins
Reference Guide.

12
Starting the Communication Admin Application

Starting the Communication Admin Application


Assuming the application is installed, you can run it using any of these three methods:
 Via Helix Launcher, which is part of Sentinel
 Selecting Communication Admin from Start > All Programs > TEOCO

 Clicking the desktop shortcut


When running an application from the shortcut or from Start > All Programs > TEOCO, and
a Helix application is not already running, you will be requested to log in.

To start Communication Admin via Helix Launcher:

1. In Helix Launcher, click on the top left to display the favorite application
icons.

2. To display all the available application icons, click More at the bottom of the favorite
applications area.

Note: You can also use the mouse scroll wheel.

13
Communication Admin User Guide
The other (not favorite) applications are displayed under the favorite applications
area.

14
Starting the Communication Admin Application

3. (Optional) If not defined as favorite, you can drag to the favorite


applications area for faster access in the future.

4. Click .

Note: If you do not see , use the scroll bar.

15
Communication Admin User Guide

If the latest version of the application is installed, the application opens.


If the system detects that a newer version of an application exists on the server
relative to the currently installed application, you are prompted to upgrade the
application.
5. If the application is not installed, in the window that appears, click Run.

The Application Launcher begins downloading the application.

16
Starting the Communication Admin Application
The Loading window appears.

A shortcut appears on the desktop, the Start program menu is updated with the
installed application, and the application opens.

Important: In Windows 8, when installing Communication Admin, the application will not run
the first time because of a Windows administration permissions problem. To handle it,
right-click the application shortcut icon created on the desktop, select Properties, and click
Run this program as an administrator from the displayed Properties tab.

17
Communication Admin User Guide

Filtering the Display


The Criteria option enables you to filter the displayed network elements. It is especially useful
for network with large amounts of data.

Note: The client is opened without loading the data if gd_client_filter_enable = 1 in


gd_defs.connect.

To filter the displayed network elements:


1. Click .
The Network Elements Criteria window appears.

2. (Optional) Enter a partial string of the required Network Element Name and/or IP
Address.
3. (Optional) Select the required Network Element Type.
4. (Optional) Select the required Zone name (not filtered by Network Element Type).
5. (Optional) Select the required Site (not filtered by Network Element Type).
6. (Optional) Select the required Protocol (filtered by Network Element Type).
7. (Optional) Select the required Plugin-name (filtered by Protocol).

Note: If you do not select any field, all network elements are displayed.

8. Click OK.
The Network Elements Criteria window disappears and only data that matches all the
conditions is displayed.

18
Creating a New Access Point

Creating a New Access Point

New Access Point Wizard


The New Access Point Wizard enables you to create and test a new NE access point. An NE
Access Point may be configured either manually, or created using an existing template.

To add an NE access point:


1. To create an access point for a specific NE:
In the Network view tab, right-click in the required element in the NE tree or NE
name list and select New Network Element Access.

19
Communication Admin User Guide
Or
In the Access View tab, right-click in the Access list and select New Network
Element Access.

Or
To create an access point for an unspecified NE, from the Action menu, select New
Network Element Access or click Ctrl-N.

20
Creating a New Access Point
The Creating a new access point wizard window appears, with the Network
Element tab on top.

If a specific NE was selected, its code appears in the NE field. If no specific NE was
selected, the field appears empty. You can create the access point now and create the
NE at a later stage.
2. If it is a multi-zone environment, select the Zone name of this access point.
3. To select an existing NE, click Select, select an NE in the Select NE window that
appears, and click OK.

21
Communication Admin User Guide
4. If you want to create an NE at this stage:
a. Click New NE.
The Add new Network Element to BC window appears.

Note: You can also create new NEs, using the BC Admin client. For more details,
refer to the BC Admin User Guide.

b. Select the required Zone Name and NE Type.


c. Enter the relevant NE Name, NE Code, IP, Alarm/Config ID, and Location
values.
d. Click OK. .

The NE’s code appears in the NE field in the main window.

22
Creating a New Access Point

5. Click to continue to the next window.


The Creation Method selection for the created access point form is displayed. If
there are no templates attached, the radio button is disabled.

6. If templates are attached, you can select the upper radio button and select the
Template from the list.
Alternatively, you can select the Protocol and Protocol Mode for the Access Point.

23
Communication Admin User Guide

7. Click to continue to the next window.


The Edit created access point parameters form is displayed for editing.

Note: Bold fields are mandatory.

Field Description

Access The name of the Access


Name

Notification Whether this access supports notification forwarding

Command Whether this access supports transferring commands and responses

Assigned The Generic Driver instance set to manage this access point (filtered by
GD the selected zone)

Note: The connection parameters depend on the plug-in.

24
Creating a New Access Point

8. Click to continue to the next window.


The Edit Network Element parameters for the created access point window is
displayed for editing.

9. Click to continue to the next window.


The Finish the access point creation form is displayed.

25
Communication Admin User Guide

10. Click to create the new access point.


The final form now enables you to test the opened connection.

Notes:

 The access point must be created before a validation test. Alternatively, if an existing
access point is changed, it must be updated prior to test.
 The Connection Test window can also be opened by right-clicking the required
access and selecting Connection Test from the menu.

26
Creating a New Access Point

The following parameters are used in the connection test:


 _maxExecuteTime = 180000;
 _timeBeforeSend = 10000;
 _firstSilenceTimeout = 100000;
 _silenceTimeout = 100000;

27
Communication Admin User Guide

Administrative Tasks

Defining the Configuration


The Communication Admin configuration definition process can include a variety of different
actions, each including many possible windows, options, and terminology.
This section describes the process for building the Communication Admin configuration from
the beginning. This option is required only when the Helix system is being installed. Other,
simpler, shorter configuration definition processes can be derived from this one later.

Note: Only system administrators and authorized experts have the permission to define
Communication Admin configuration using this process.

Each step in the Communication Admin configuration definition process is usually a process
in itself. Links are provided to the topics that describe each of these steps.

To define the configuration:


1. Click the Administration tab.
The configuration is displayed.
2. Click the configuration group in the Generic Driver hierarchical tree or click the to
list and individually select the entity.
3. Insert the required Generic Driver Instances.
4. (Optional) Update the Protocols (details, connection variables and plug-ins).
5. Define the Access Types.
6. Update the Connectivity Scripts.
7. Update the Connectivity Templates.
8. Update the Connectivity Templates Associations.
9. Define additional Generic Driver Instances.
10. (Optional) Update the NE types.
11. (Optional) View Protocols.
12. Update the Service Indexes.
13. Update the Set of Commands.

28
Administrative Tasks

Handling Protocols

Viewing Protocols
The read-only Protocol window shows the existing protocols and their details. You cannot
define a new protocol nor update its details. All protocol information is defined during
installation.

To view details of a protocol:


1. Click the Protocol root entity in the Generic Driver hierarchical tree.
On the right-side, a list of the available protocols is displayed.
2. Click the sign at the left of a specific protocol on the right side of the window to drill-
down for a detailed list of protocol parameters.
Initially, clicking on a protocol displays the protocol’s modes and a list of parameters
for variations on the main protocol.

Note: For more information, see the user guide for each individual plug-in.

29
Communication Admin User Guide
3. To view the plug-ins assigned to a protocol, expand its entry.

4. To view plug-in parameters, expand its entry.

5. Expand the Protocol root entity and click a specific protocol in the Generic Driver
hierarchical tree.
Basic protocol information is shown on the right:
o Name
o Description
o Support Multi NE (whether you can connect an access using this protocol to
more than one NE).

30
Administrative Tasks

Handling Generic Driver Instances

About Generic Driver Instances


The Generic Driver Instance Details window displays the available Generic Driver instances
in the system, and enables you to insert, update, and delete these instances.

The Generic Driver Instances window includes the following tabs:


 Details—includes the Communication Admin Name and Debug Logging
parameters.
 Advanced—enables you to define the Communication Admin connection
parameters.

Note: The MGD_SNMP_COMMAND is a special Generic Driver instance with a different


structure and is handled differently.

31
Communication Admin User Guide

Inserting a Generic Driver Instance

Note: MGD_SNMP_COMMAND is a special Generic Driver instance used for load balancing
and is handled differently than all the other Generic Driver instance.

To insert a Generic Driver instance:


1. Right-click the Generic Driver Instance root entity in the Generic Driver hierarchical
tree.
2. Select the Create New option from the shortcut menu.
An empty New Entity window is displayed for defining the new Generic Driver
instance.

3. Type a representative name for the new Generic Driver Instance in the GD Name
field.

Note: The name's suffix should be "GD_".

4. If it is a multi-zone environment, select the required Zone Name.


5. Select the required host in the Run on host list (filtered by the Zone Name).

Note: On a non-center zone (running in a Kubernetes cluster), only the primary host
is displayed. During activation, Kubernetes determines on which specific host the
service will actually run.

6. Select the Enable field.

32
Administrative Tasks
7. Set the Debug Logging parameters according to the Generic Driver Instance Details
Parameters table.
8. Set the required automatic configuration refresh time in the Refresh configuration
every ... Minutes field.
9. Click the Advanced tab and define the required advanced Generic Driver parameter
values.
10. Click OK to save the selections.

Note: Adding/deleting parameters is not enabled.

Generic Driver Instance Details Parameters


Name Description

Enable Activates the Generic Driver instance.

Zone Name If it is a multi-zone environment, the zone to which this Generic Driver
instance belongs. If it is a single-zone environment, Center.

Run on host The host (in the selected zone) on which this Generic Driver instance
runs.

GD log to screen The threshold severity level, required for displaying Generic Driver
service debug messages to the window.

GD log to file Determines the minimum severity required, for recording Generic
Driver service messages in the debug file:
 0—Verbose
 1—Message
 2—Warning
 3—Error
 4—Critical

Plugins log to The threshold severity level, required for displaying plug-in debug
screen messages to the window.

Plugins log to file Determines the minimum severity required, for recording plug-in
messages in the debug file:
 0—Verbose
 1—Message
 2—Warning
 3—Error
 4—Critical

Max File Size The maximum size of the debug file.

Max Old Files The maximum number of old debug files to be kept.

33
Communication Admin User Guide

Generic Driver Instance Advanced Parameters


Name Description

AccessThreadSleepTime The access thread (that goes over all the accesses) sleep
time in milliseconds. Do not change the default value
(2000).

BlockAnonymousData If selected, blocks data from unidentified source IPs.

CommandThreadSleepTime Wait time between commands (in milliseconds).

ConnectionThreadSleepTime The connection thread sleep time in milliseconds (a single


connection pace). Do not change the default value (2000).

DynamicIPSearchIPTable Indicates if should search for source IP in the


comm_db.IP_ADRESS tab.

DynamicIpSilenceTimeout This parameter is not implemented.

EnableGetBulk If selected, enables using the GetBulk atomic command


as part of the SNMP GET_TABLE commands.

EnableSNMPv3 If selected, enables receiving SNMPv3 notification and


sending commands via SNMPv3.

FQDNCacheRefreshInterval Indicates how often to refresh the IP addresses cache of


all the FQDN NEs in the zone (in minutes).

GetBulkMaxOIDs The maximum number of OIDs in a single GetBulk reply.

MaxAccessElements The maximum number of accesses included in a single


thread.

MaxCommandElements The maximum number of command included in a single


thread.

MaxCommands The maximum number of simultaneously running


commands.

RDRMaxFileSize The maximum size of repository index files.

SupportedDynamiclp If selected, GD attempts to match incoming messages to


NEs by lists of IPs in Base Configuration and not only by
list of IPs attached to the access.

SetAlarmdlnDeliveryData If selected, the NE Alarm ID value is written into the


Delivery Data NE_ID field. Relevant for commands only.

SetAlarmIdInDeliveryData If selected, the NE's Alarm ID value is copied to the NE_ID


field of the Delivery Data record.

34
Administrative Tasks

Name Description

SkipSubscriberWhenStuck If selected, when a subscriber is stuck, it does not cause a


delay in sending data to other subscribers of this Generic
Driver instance.

ThreadStackSize The thread stack size in bytes (should be at least


150,000).

Updating a Generic Driver Instance


To update a Generic Driver instance:
1. If not expanded, double-click the Generic Driver Instance root entity in the Generic
Driver hierarchical tree.
The Generic Driver Instance root entity is expanded, to show all the available a
Generic Driver Instances.
2. Right-click the required a Generic Driver Instance.
The basic details of the selected Generic Driver Instance are displayed on the right
pane.
3. Set the required Generic Driver Instance parameters (see Inserting a Generic Driver
Instance).
4. Click .

Deleting a Generic Driver Instance


To delete a Generic Driver instance:
1. If not expanded, double-click the Generic Driver Instance root entity in the Generic
Driver hierarchical tree.
The Generic Driver Instance root entity is expanded, to show all the available a
Generic Driver Instances.
2. Right-click the required a Generic Driver Instance.
The basic details of the selected Generic Driver Instance are displayed on the right
pane.
3. Select Delete.

35
Communication Admin User Guide

Changing the Load Balancing Parameters


Load Balancing is an automatic mechanism used to balance the load among the different
Generic Driver SNMP commands processes. It does this by managing the existing accesses
and the Generic Driver instances using a round robin algorithm. The solution does not
create/define/deploy new Generic Driver instances, but only leverages the performance of the
existing ones.
The Load Balancing mechanism is based on one special Generic Driver instance type called
MGD_SNMP_COMMAND. It uses Generic Driver instances that are predefined in each
system host. You can change the number of Generic Driver instances in selected hosts.

Note: There is no RDR support for this Generic Driver instance. If RDR is needed, the access
should be manually assigned to the GD command and RDR should be activated there.

To change the Load Balancing parameters:


1. Click the Administration tab.
2. Expand the Generic Driver instance entry and select MGD_SNMP_COMMAND.
The Generic Driver Instance Details window appears.
3. Click the Details tab and set the required Generic Driver Instance Details
parameters.

Note: The Distribution pane is not available because its parameters are not relevant
for the MGD_SNMP_COMMAND.

4. Click the Advanced tab and set the required Generic Driver Instance Advanced
parameters.

36
Administrative Tasks
5. Click the Load Balancing tab, which is unique for the MGD_SNMP_COMMAND
Generic Driver instance.

6. Select the Default number of instances per host.

37
Communication Admin User Guide
7. To override the default number for a specific host:

a. Click .
The MGD Host Instances window appears.

b. If it is a multi-zone environment, select the required Zone Name.


c. Select the required Host Name (filtered by the Zone Name).
d. Select the required Number of Instances.
e. Click Add. .

8. To cancel overriding the default number for a specific host:


a. Click the required host row.

b. Click . .

The selected row is removed from the table.


9. Repeat steps 7-8 to complete setting the Load Balancing parameters.

38
Administrative Tasks

Handling NE Types

Viewing NE Types
The NE Types window lists the currently available NE types and their details.

Note: All changes to NE types within Communication Admin affect the Base Configuration
data as well.

To view NE Type details:


1. Click the NE Type root entity in the Generic Driver hierarchical tree.
The NE Type root entity is expanded to show all the available NE Types. On the
right, an identical list of the available NE Types appears.

39
Communication Admin User Guide
2. Expand the NE Type root entity and click a specific NE Type in the Generic Driver
hierarchical tree.
The basic details of the selected NE Type are displayed in the right pane.

40
Administrative Tasks

Creating an NE Type
To create an NE Type:
1. In the Generic Driver hierarchical tree, right-click the NE Type root entity.
2. Select Create New.
A New Entity window appears.

3. Complete the details of the new NE type as follows:

Field Definition

NE Type Name Enter a name for the NE type. (Up to 50 characters).

NE Class Select the class of new NE.

Vendor Select the name of the vendor.

Description Enter a short description of the new NE.

4. Click OK.

Note: You can also create new NE types, using the BC Admin client. For more details, refer
to the BC Admin User Guide.

41
Communication Admin User Guide

Updating an NE Type
To update an NE Type:
1. If not expanded, double-click the NE Type root entity in the Generic Driver
hierarchical tree.
The NE Type root entity is expanded, to show all the available access types.
2. Click the required NE Type name.
The NE Type details are displayed in the right pane.
3. Update the required parameters as described in Creating a New NE Type.
4. Click .

Deleting an NE Type
To delete an NE Type:
1. Click the NE Type root entity in the Generic Driver hierarchical tree.
The NE Type root entity is expanded, to show all the available NE Types. On the
right, an identical list of the available NE Types appears.
2. Right-click the required NE Type in the Generic Driver hierarchical tree.
A shortcut menu appears.
3. Select the Delete option, and confirm the deletion.

42
Administrative Tasks

Handling Access Types

Viewing Access Types


The Access Types window shows the names of the available access types and whether they
appear in the NCI.

By default, there are seven Access Type categories:


 Alarms
 Command
 Configuration
 Notification
 Performance
 Provisioning
 Traps
Additional user defined categories can also be created. Later, groups can be constructed
containing all access points of a matching type.

To view an Access Type:


1. Click the Access Type root entity in the Generic Driver hierarchical tree.
On the right, an identical list of the available Access Types is shown.

2. (Optional) To filter the view, click at the right of the required column.

43
Communication Admin User Guide
3. Expand the Access Types root entity and click a specific Access Type.
The basic details of the selected Access Type are displayed on the right pane.

Creating an Access Type


To create a new Access Type:
1. Right-click the Access Type root entity in the Generic Driver hierarchical tree.
2. Select the Create New option from the shortcut menu.
The New Entity window appears.

44
Administrative Tasks
3. Type the Access Type Name and Description.
4. If required, select Show Service Indices with this Access Type in NCI Command
Tree.
5. Click OK.

Updating the Access Type Definition


To update an Access Type:
1. If not expanded, double-click the Access Type root entity in the Generic Driver
hierarchical tree.
The Access Type root entity is expanded, to show all the available access types.
2. Click the required Access Type name.
The Access Type details are displayed in the right pane.
3. (Optional) Edit the Access Type Name and Description.
4. If required, select/clear Show Service Indices with this Access Type in NCI
Command Tree.
5. Click .

Deleting an Access Type


To delete an Access Type:
1. Expand the Access Type root entity in the Generic Driver hierarchical tree, if
required.
2. Right-click the required Access Type.
A shortcut menu appears.
3. Select the Delete option, and approve the deletion.

45
Communication Admin User Guide

Handling Service Indexes

Viewing Service Indexes


The Service Index connects NE types to Protocol types. This is performed in the context of
Access type. The Service Index display lists all the currently available indexes.

46
Administrative Tasks

To view Service Index details:


1. Click the Service Index root entity in the Generic Driver hierarchical tree.
On the right, a list of the available Service Index is displayed.
2. Expand the Service Index root entity and click a specific Service Index.
The basic details of the selected Service Index are displayed in the right pane.

47
Communication Admin User Guide

Creating a Service Index


To create a service index:
1. Right-click the Service Index root entity in the Generic Driver hierarchical tree and
select Create New.
The New Entity window appears.

2. Select the Network element Type, Protocol, and Access Type.


3. Select the Command set for options.

Field Name Field Definition

Connect Group of commands, which is executed when connecting to a


specific NE type

Disconnect Group of commands, which is executed when disconnecting from


a specific NE type

Heart beat For instances where connection fails – continuously sends


command to NE of specific type at specified interval until the
command is received

Synchronization Every time a connection is made to an NE of a specific type,


synchronizes Helix and the NE (Active Alarms Synch)

48
Administrative Tasks

Note: When you define a specific NE to a specific access, these defaults can be
overridden.

4. Click OK.

Updating a Service Index


To update a Service Index
1. If not expanded, double-click the Service Index root entity in the Generic Driver
hierarchical tree.
The Service Index root entity is expanded, to show all the available a Service
Indexes.
2. Click the required Service Index.
The Service Index details are displayed in the right pane.
3. Select the Command set for options:

Field Name Field Definition

Connect Group of commands, which is executed when connecting to a


specific NE type

Disconnect Group of commands, which is executed when disconnecting from


a specific NE type

Heart beat For instances where connection fails – continuously sends


command to NE of specific type at specified interval until the
command is received

Synchronization Every time a connection is made to an NE of a specific type,


synchronizes Helix and the NE (Active Alarms Synch)

4. Click .

Deleting a Service Index


To delete a Service Index:
1. Expand the Service Index root entity in the Generic Driver hierarchical tree, if
required.
2. Right-click the required Service Index.
A shortcut menu appears.
3. Select the Delete option, and approve the deletion.

49
Communication Admin User Guide

Handling Connectivity Templates

Viewing Connectivity Templates


The Connectivity Templates window enable you to automatically define access points for
any new NE created by defining automatic association between the created template and new
NE types. This means that when a new NE type that is defined in Base Configuration
(typically by NetImport) with supported protocol SNMP flag activated is created, the system
automatically associates this template to the new NE type.

To view Connectivity Template details:


1. Click the Connectivity Templates root entity in the hierarchical tree.
On the right, a list of the available Connectivity Templates is displayed.

50
Administrative Tasks
2. Expand the Connectivity Template root entity and click a specific Connectivity
Template.
The basic details of the selected Connectivity Template are displayed in the right
pane.

51
Communication Admin User Guide

Creating a Connectivity Template

Note: Connectivity templates can be defined to be read-only (This cannot be done from the
GUI. It can be done during the installation or directly in the Database).

To create a new Connectivity Template:


1. Right-click the Connectivity Templates root entity in the Generic Driver hierarchical
tree and click Create New.
The New Entity window appears.

2. Enter a Name and a Description.


3. Select the Plugin on which the template will be based.
4. To automatically associate the created template to new NE types, select
Automatically Associated.
5. Enter the Connectivity Template's content. You can copy and paste, for example,
from the read–only Connectivity Templates delivered as part of the product.

6. Click .
The template is created, automatically assigned an ID number, and given a name
based on its Plug-In.

Note: The new template should appear in the Generic Driver hierarchical tree. If it does not
appear, click Reload.

52
Administrative Tasks

Deleting a Connectivity Template

Note: Only user defined Connectivity Templates can be deleted. The Connectivity Templates
are delivered as part of the product, are read–only, and cannot be deleted.

To delete a Connectivity Template:


1. Expand the Connectivity Template root entity in the hierarchical tree, if required.
2. Right-click the required Connectivity Template.
A shortcut menu appears.
3. Select the Delete option, and approve the deletion.

Handling Connectivity Template Associations

Viewing Connectivity Template Associations


To view a connectivity template association:
1. Click the Connectivity Templates Association root entity in the Generic Driver
hierarchical tree.
The Connectivity Templates Association root entity is expanded to show all the
available Connectivity Templates Associations. On the right side, an identical list of
the available Connectivity Templates Associations is shown.

53
Communication Admin User Guide
2. Expand the Connectivity Templates Association root entity and click a specific
Connectivity Templates Association.
The basic details of the selected Connectivity Template Association are displayed in
the right pane.

54
Administrative Tasks

Creating a Connectivity Template Association


To associate a Connectivity Template to an NE type:
1. Right-click the Connectivity Template Association root entity in the Generic Driver
hierarchical tree.
2. Click Create New.
The New Entity window appears.

3. In the Template name field, enter the template you want to associate with the NE.
4. In the NE Type field, enter the NE Type to which this template should be applied.
5. To apply the template when inserting new NEs, select Enable for inserts.
6. To apply the template when updating existing NEs, select Enable for updates.
7. In the Description field, enter a description of the association.
8. Click OK.
The association is created and is automatically assigned a name based on its
template.

Note: The new template should appear in the Generic Driver hierarchical tree. If it does not
appear, click Reload.

55
Communication Admin User Guide

Updating a Connectivity Template Association


To update a Connectivity Template Association
1. If not expanded, double-click the Connectivity Template Association root entity in
the Generic Driver hierarchical tree.
The Connectivity Template Association root entity is expanded, to show all the
available a Connectivity Template Associations.
2. Click the required Connectivity Template Association.
The Connectivity Template Associations details are displayed in the right pane.
3. To apply the template when inserting new NEs, select Enable for inserts.
4. To apply the template when updating existing NEs, select Enable for updates.
5. (Optional) In the Description field, enter a description of the association.
6. Click .

Deleting a Connectivity Template Association


To delete a Connectivity Template Association:
1. Expand the Connectivity Template Association root entity in the tree, if required.
2. Right-click the required Connectivity Template Association.
A shortcut menu appears.
3. Select the Delete option, and confirm the deletion.

56
Administrative Tasks

Handling Command Sets

Viewing Command Sets


Command sets run specific group of commands every time a certain NE is accessed.
Command sets are employed when associating an NE to an access point.
The Set of Commands Details window lists the currently available commands.

To view a set of commands:


1. Click the Set of Commands root entity in the Generic Driver hierarchical tree.
The Set of Commands root entity is expanded to show all the available Set of
Commands. On the right side of the window an identical list of the available Set of
Commands is displayed.
2. Expand the Connectivity Templates Association root entity and click a specific
Command Set.

57
Communication Admin User Guide
The basic details of the selected Command Set are displayed on the right pane.

Creating Command Sets


In the command set New Entity window, you can build groups of commands. Each line in the
command table represents a single command.

58
Administrative Tasks

 To add a command line, click .

 To delete a command line, click .

 To change the order of the commands, click the command line and use the Up

and Down Arrow buttons to move the command to the desired place.

To create a new set of commands:


1. Right-click the Set of Commands root entity in the Generic Driver hierarchical tree
and click Create New.
The Set of Commands New Entity window appears.
2. In the Command set name field, enter the name you want to call your command set.
3. In the To be used in Protocol field, enter the protocol to be used to access the NE.
This ensures that when you define the access point using only the current access,
this protocol will be used.
4. In the Commands table, enter the commands in the desired order.
5. In the Syntax field, enter the command itself, written in the language of the chosen
protocol.
6. Define the fields setting various parameters for the command.
Most are time fields requiring a number representing seconds.
7. Click OK.
The new Command Set is saved.

Updating Command Sets


To update a Command Set:
1. If not expanded, double-click the Set of Commands root entity in the Generic Driver
hierarchical tree.
The Set of Commands root entity is expanded to show all the available access
types.
2. Click the required Command Set.
The Command Set details are displayed in the right pane.
3. Update the required parameters as described in Creating Command Sets.
4. Click .

59
Communication Admin User Guide

Deleting a Command Set


To delete a Command Set:
1. Expand the Set of Commands root entity in the Generic Driver hierarchical tree, if
required.
2. Right-click the required Command Set.
A shortcut menu appears.
3. Select the Delete option, and confirm the deletion.

Handling Connectivity Scripts

Viewing Connectivity Scripts


To view a Connectivity Script:
1. Click the Connectivity Scripts root entity in the Generic Driver hierarchical tree.
On the right side of the window an identical list of the available Connectivity Scripts
is displayed.
2. Expand the Connectivity Scripts root entity and click a specific Connectivity Script.
The basic details of the selected Connectivity Script are displayed on the right pane.
The Script Info tab displays the Script name and Script Parameters.

60
Administrative Tasks
The Script Text tab displays the script contents.

61
Communication Admin User Guide

Creating Connectivity Scripts


The Access Type Connectivity Scripts code is written using the Scorpio scripting language.
The Connectivity Scripts Details tab lists the currently available scripts and displays their
details.

Note: Connectivity Scripts can be defined to be read-only. This cannot be done from the GUI.
It can be done during the installation or directly in the database.

62
Administrative Tasks

To create a Connectivity Script:


1. Right-click the Connectivity Scripts root entity in the Generic Driver hierarchical tree
and select Create New.
The New Entity window appears.

2. Use the Script Text tab to define the script's contents. For more details, see the
Scorpio Implementation Guide.

63
Communication Admin User Guide
3. Use the Script Info tab to define the script's parameters as follows:

a. To add a new parameter, click and enter the parameter's attributes as


follows:
Name Description

Order The parameter number. The system inserts the number


automatically, but you can override it.
Note: Two parameters cannot have the same order.

Name The parameter name. It is unique only within the script.

Type The parameter type.

Mandatory If selected, the parameter is mandatory.

Encrypted If selected, the parameter is encrypted.

Allow Override If selected, the parameter can be changed in real-time.

Default Value A default value for the parameter.

Note: Before updating, the system checks that the parameters are defined correctly.

b. To remove a new parameter, click .

c. To reorganize the parameters, use and . .

Editing Connectivity Scripts


To edit a Connectivity Script:
1. Click the Connectivity Scripts root entity in the Generic Driver hierarchical tree.
The Connectivity Scripts root entity is expanded to show all the available
Connectivity Scripts. On the right side, an identical list of the available
Connectivity Scripts is displayed.
2. Click the required script under Connectivity Scripts in the Generic Driver
hierarchical tree.
The script details are displayed on the right side of the window.

64
Administrative Tasks
3. Use the Script Info tab to define the script parameters as follows:

o To add a new parameter, click and enter the parameter attributes as follows:
Name Description

Order The parameter number. The system inserts the number


automatically, but you can override it.
Note: Two parameters cannot have the same order.

Name The parameter name. It is unique only within the script.

Type The parameter type.

Mandatory If selected, the parameter is mandatory.

Encrypted If selected, the parameter is encrypted.

Allow Override If selected, the parameter can be changed in real-time.

Default Value A default value for the parameter.

Note: Before updating, the system checks that the parameters are defined correctly.

o To remove a new parameter, click .

o To reorganize the parameters, click and .


4. Use the Script Text tab to define the script contents. For more details, see the
Scorpio Implementation Guide.

65
Communication Admin User Guide

Diagnostic Tools

Tracer

Overview
The Generic Driver Tracer application is a tool for probing and monitoring the online raw data
that the Generic Driver collects and receives from the network.
Using the Tracer, you can view spontaneous notifications coming from the network (such as
SNMP traps and ASCII data over telnet), outgoing traffic to the network (commands) and
incoming data replies. The data is displayed in raw data format.

The Tracer Main Window


The Tracer main window contains the following main areas:

 The menu bar at the top of the window enables you to control and execute all the
Tracer's activities. It includes the Tracer's toolbar activities.
 The toolbar under the menu bar provides you quick and easy access to the main
Tracer's activities.
 The display area which covers most of the window is used to display the required
data.
 The status bar at the bottom of the window displays the current filter used by the
Tracer and its connection status.

66
Diagnostic Tools

The Tracer Toolbar


The Tracer toolbar includes function buttons that offer you the main operations required for
the configuration definition process.
When a function button is available, it appears with its original colors. When the function
button is not available, it appears as a gray shadow of the picture.

Icon Name Description

Clear Clears the display area.

Properties Enables you to set the subscription parameters.

Reconnect Enables you to reconnect to another server (when the


connection is lost).

Start/Stop Stops/restarts the Tracer monitoring. The Stop option is


useful for stopping the display update for further
investigation of the current data. The Restart option is
useful for restarting the display update after stopping it.

Notification Used to trace notification messages. Displayed as


pressed when selected. To clear it, click it again.

Incoming Used to trace incoming messages. Displayed as pressed


when selected. To clear it, click it again.

Outgoing Used to trace outgoing messages. Displayed as pressed


when selected. To clear it, click it again.

The Tracer Menus


The menu bar at the top of the window enables you to control and execute all the Tracer
activities. It includes the Tracer toolbar activities.
File menu
The File menu enables you to execute the following activities:

Option Description

Clear Clears the display area.

Enables you to save the display into a *.txt file.


Save

Reconnect Enables you to reconnect to another server (when the connection is


lost).

Exit Exits the Tracer application.

67
Communication Admin User Guide
View menu
The View menu enables you to execute the following activities:

Option Description

Notification Used to trace notification messages. Displayed as


checked when selected. To clear it, click it again.

Incoming Used to trace incoming messages. Displayed as checked


when selected. To clear it, click it again.

Outgoing Used to trace outgoing messages. Displayed as checked


when selected. To clear it, click it again.

Show data in Text format (Plain) Used to display the data as text without indication of
unprintable chars.

Show data in Text format Used to display the data as text with unprintable
(Unprintable char as Hex) characters displayed in their Hex format.

Show data in Binary format Used to display the data as binary.

Show data source Used to display the data source before each message.
(Notification/Incoming/Outgoing)

Show Delivery Data (&CTAG) Used to display the Delivery Data structure (including the
NCI correlation tag) before each message.

Enables you to set the subscription parameters.


Properties

Help menu
The Help menu enables you to execute the following activities:

Option Description

Opens the Online Help.


Tracer Help

Displays some general details about the current Tracer


About
version.

68
Diagnostic Tools

Accessing the Tracer


The Tracer can be accessed by:
 Right-clicking any NE in the NEs list of any protocol under the Network View tab and
selecting Trace this NE.

In this case, the Tracer main window appears with the selected NE used as the
subscription parameter.

69
Communication Admin User Guide
 Right-clicking an access point of an NE selected from the NEs list of a certain
protocol under the Network View tab and selecting Trace this access point.

In this case, the Tracer main window appears with the selected access point used as
the subscription parameter.

70
Diagnostic Tools
 Selecting Tracer from the Tools menu.

In this case, an empty Subscription Parameters window appears and you have to
set the subscription parameters to start monitoring.

71
Communication Admin User Guide

Using the Tracer


To use the Tracer:
1. Open the Tracer application.
The Tracer main window appears.

2. Use the Notification/Incoming/Outgoing toolbar buttons to select the type of data to


monitor.
3. From the View menu, select the required display type [Show data in Text format
(Plain), Show data in Text format (With unprintable char as Hex), or Show data
in Binary format].
4. To include the data source in the display select Show data source
(Notification/Incoming/Outgoing).
5. To include the Delivery Data in the display select Show Delivery Data (&CTAG).

6. To stop the Tracer monitoring, select .

The icon changes to .

Note: To restart the Tracer monitoring, click .

72
Diagnostic Tools

7. To clear the display area, click .

8. To save the display into a *.txt file, click .


9. You can change the subscription parameters.
10. Repeat steps 2-9 as required to monitor the required online raw data.

Reconnecting to the Server


If the Tracer is not connected to the Tracer server, the status bar displays it. In this case use
the following procedure to reconnect it.

Note: This option is usually not available.

To reconnect the Tracer:


1. Click .
An appropriate message is displayed (if the problem still exists).
2. Click Details to get more information about the problem (probably the Tracer service
is not running).
3. Click OK to close the message display.
4. Correct the problem.

5. Click and reconnect to the server.

Setting the Subscription Parameters


The Subscription Parameters window enables you to select the data you want to monitor.
You can set conditions for data related to different entities in the system. As a result, only
data matching all your conditions (logical And) are displayed.

73
Communication Admin User Guide

To set the subscription parameters:

1. Click .
The Subscription string window appears.

2. To use the Protocol Name/NE Type Name/Access Name list boxes, select the
names of the required entities.
3. To use the Access Type ID/NE Number boxes, type the identifying numbers of the
required entities.
4. (Optional) Enter a Filtering string condition.
5. (Optional) In the Free Text field, type the full subscription string you want.
6. To cancel the use of any selected parameter, double-click it and press the Delete
key.
7. Click OK.
The Tracer starts displaying the data according to your subscription parameters.

Note: The Subscription string is updated after every change you make to display your current
Subscription Parameters selection.

74
Diagnostic Tools

About Filtering String Conditions


The Filtering string field enables you to filter the received messages by additional
subscription criteria, each relevant for different plug-ins, which can be used in a Regular
Expression sentence.
The syntax of a Filtering string condition is:
-FilteringString <Condition>
Where Condition can be:
Condition = (<keyword>='<value>')
Condition = Condition AND/OR Condition
Condition = (Condition)
Keyword represents the parameter whose value is used for the filter.
The available subscription keywords are:

Keyword Relevant for Description

DistribTag All the plug-ins that This parameter is the NCI Distribution Tag. It is a
support NCI field in the delivery data, which can be set in NCI
commands (for before sending a command.
example, SNMP
It can be used to filter replies of specific commands.
Command,
FTCommand, Telnet, For example,
and SSH).
incoming " -Protocol SNMP -
FilteringString
(DistribTag='if_ifx')"

Id SNMP Trap Plug-in This parameter stands for Trap IDs.


It can be used to filter by specific Trap IDs.
For example,
notification " -Protocol SNMP -FilteringString
((Id='1.3.6.1.4.1.1234.0.0.3')
Or
(Id='1.3.6.1.4.1.1234.0.0.5'))"

Verb TL1 Plug-in This parameter can be used to filter by the TL1's
verb.
For example,
incoming " -Protocol TL1 -
FilteringString (Verb='ENT')"

Mod1 TL1 Plug-in This parameter can be used to filter by the TL1's first
modifier.
For example,
incoming " -Protocol TL1 -
FilteringString (Mod1='ALM')"

75
Communication Admin User Guide

Keyword Relevant for Description

Mod2 TL1 Plug-in This parameter can be used to filter by the TL1's
second modifier.
For example,
incoming " -Protocol TL1 -
FilteringString
((Mod1='ALM')AND(Mod2='ALL'))"

Import/Export

Importing the Configuration


To import a previously saved configuration:
1. Select the option from the Tools menu.
The Open window appears.
2. Select the location and name of the required configuration file (with *.gdcfg
extension).

76
Diagnostic Tools
3. Click Open.
The Import Configuration window appears. The left pane displays the element types
available for import.

4. To display the available elements under an element type, double-click the entry.
5. To cancel the display of the available elements under an element type, double-click
the entry again.

6. To select an element for import, click it and then click .


The selected element (and its parent element type if not yet selected) is copied to the
right pane.
7. To select all the elements under a specific element type for import, click the element

type and then click .


The selected element type and all its elements are copied to the right pane.

77
Communication Admin User Guide

8. To clear an element for import, click it in the right pane and then click .
The selected element is removed from the right pane.
9. To clear all the elements under a specific element type for import, click the element

type in the right pane and then click .


The selected element type and all its elements are removed from the right pane.

Note: Alternatively, instead of using the and buttons you can drag the
required element/element type.

10. To select all the elements for import, click .


All the elements are copied to the right pane.

11. To clear all the elements for import, click .


All the elements are removed from the right pane.
12. Repeat steps 3 through 11 until the required configuration elements are selected.
13. (Optional) Use the Ambiguity Policy to determine what to do when trying to add an
entity with the same name as a pre-existing entity.
The following options are available:
a. Stop stops the import process without effect, in which case the import may be
restarted without the "new" entity, or with the Rename the new entity selected.
b. Rename the new entity allows the new entity to be renamed automatically. All
references to this entity are adjusted automatically as well. .

Note: The existing configuration is not affected.

14. (Optional) Click Validate to trigger data validation display the results.
If the results are not OK, you can remove the problematic entity, or select Rename
the new entity.
15. Click Import to run the import process.
Selected entities are imported and the results are displayed in the Import Results
window. If the import fails, an error message is displayed instead.
16. Close the Import Configuration window.

78
Diagnostic Tools

Exporting the Configuration


To export the configuration:
1. Select the option from the Tools menu.
The Export Configuration window appears. The left pane displays the element
types available for export.

2. To display the available elements under an element type double-click the entry.
3. To cancel the display of the elements available under an element type, double-click
the entry again.

4. To select an element for export, click the entry and click .


The selected element (and its parent element type if not selected yet) is copied to the
right pane.
5. To select all the elements under a specific element type for export, click the element

type and click .


The selected element type and all its elements are copied to the right pane.

6. To clear an element for export, click the entry in the right pane and click .
The selected element is removed from the right pane.

79
Communication Admin User Guide
7. To clear all the elements under a specific element type for export, click the element

type in the right pane and click .


The selected element type and all its elements are removed from the right pane.

Note: Alternatively, instead of using the and buttons you can drag the
required element/element type.

8. To select all the elements for export, click .


All the elements are copied to the right pane.

9. To clear all the elements for export, click .


All the elements are removed from the right pane.
10. Repeat steps 2 - 9 until the required configuration elements are selected.
11. Click Export.
The Save As window appears.
12. Set the configuration file name (the default name is provided) and location and click
Save.
A configuration file with the selected elements is saved in the selected location with
*.gdcfg extension.

GD Status
The GD Status application enables you to monitor the of the Generic Driver accesses in
real-time. Using this tool, you can obtain statistics and parameter values of the Generic
Driver. You can also use it to launch the Generic Driver Tracer using a predefined filter.

The GD Status replaces the server-side command line statistics utility.

80
Diagnostic Tools

Template Failure Indication


The Template Failures tool enables you to view and handle failures of automatic access
generation attempts.

To handle access generation failures:


1. Select the option from the Tools menu.
The Template Expand Failures window appears.

2. Read the details of required Template Failures as follows:


Name Definition

Action The action type (Insert or Update).

NE Num The number of the NE for which the access generation attempt failed.

NE The identifier of the NE for which the access generation attempt failed.
Name

Template The name of the access generation template that was used.
Name

Date The date and time of the last attempt to use this template to create this
access.

Error Description of the error that caused the failure.

81
Communication Admin User Guide

3. If the Error content exceeds the column width, move the cursor over the field to
display the entire text as a tooltip.

4. If the Error content exceeds the column width, and displaying the entire text as a
tooltip is not convenient, select the required row and click .
The Template Failure window appears.

You can click Details to display additional information about the selected row.

Note: You can also open the Template Failure window by double-clicking the
required row.

82
Diagnostic Tools
5. To run any operation again, select the required Template Failure row and click
.
The system tries to generate the access with the same template. The possible results
can be:
o Successful attempt—in this case, a Template Expand results window appears,
indicating the successful result. When you click OK, the Template Failure row is
removed.

o Failed attempt—in this case, a Template Expand results window appears,


indicating the failure result. When you click OK, the Date of the Template Failure
row is updated to the current date and time.

6. To fix a failed attempt, you have to read the Error description of the problem, correct
it, and repeat steps 4-5 until the access generation attempt succeeds.

7. To delete a failure row without fixing it, select it, click , and approve the
deletion.

8. To refresh the Template Failures display, click .


9. Repeat steps 2-8 to correct all the required access generation attempt failures.

83
Communication Admin User Guide

Doctor
The Doctor application enables you to run various tests on the Generic Driver configuration.
The Doctor application runs several tests to ensure that the database configuration is valid.
Although Doctor focuses on typical configuration errors, it does not cover all the possible
configuration mismatches.

Note: The Generic Driver Doctor does not correct configuration problems. It merely provides
suggestions for solving the detected problems.

The tests include checking:


 That obsolete parameters are actually deleted
 That only needed debugging information is retained (such as the 'LogSession'
parameter)
 No floating plug-in parameters remain (as a result of unsuccessful upgrade attempt)
 For a missing configuration, (such as subnets that need at least one associated NE)
 For problematic parameter names (such as Generic Driver name containing spaces)

To run the Doctor application:


1. Select the option from the Tools menu.
The Doctor window appears.

84
Diagnostic Tools
2. To see a test details, click its row.
The test details are displayed in the Test Description pane.
You can click Details to display additional information about the selected row.

3. Check if failures (with indication in the Result column) occurred.


4. To see a failure details, expand its row.
The failure details are displayed under the row.

85
Communication Admin User Guide

Scorpio Scripting Engine

Introduction

Overview
The GDScript library supplies an advanced scripts connection mechanism to the Network
Elements (NEs). This eliminates the need to develop special drivers for NEs that have special
connection/disconnection requirements.
The library is used and maintained by Communication Admin.
The scripts are attached to the NE accesses in the Communication Admin.
For more details about the available functions, see the Communication Admin Implementation
Guide.

The Scripting Concept


Communication Admin enables defining scripts in a "C” styled language, which can later be
attached to an access.
This enables complex connect/disconnect features and functionality.
The script structure is as follows:
void func_name( )
{
// simple code statements like: Send("ls -al");
// function calls like: Send(scriptParams.Login +
"\r\n");
// other script calls like: str = myHelperFunction(1);
}
The functions include:
 OnConnect—performs a connection procedure.
 OnDisconnect—performs a disconnect procedure.
 OnPreCommand—performs a set of actions before each command.
 OnPostCommand—performs a set of actions after each command.
The access does not always need to have all the scripts defined, but the OnConnect script is
mandatory for accesses of most plug-ins that support scripting.

86
Scorpio Scripting Engine

Internal Receive Buffer


The script engine handles a buffer that accumulates all data received, and can later be
parsed and used for a complex login.
You can access the buffer using supplied internal functions such as:
 BufClear()
 GetBufSize()
 GetBufNumLines()
 GetBufLine()
 GetBuffer()

Defining Scripts

About Defining Scripts


The Commands scripts entry supports creating scripts, either by typing the script text or by
importing the script from a file. Scripts are generic. Each script can use different parameters,
making them practical for varied network entities and requirements.

Note: The script name is mandatory and must be unique.

To define a script:
1. Right-click the Connectivity Scripts root entity in the Generic Driver hierarchical tree
and select the Create New option.
An empty New Entity window for script definition appears.

87
Communication Admin User Guide
2. Type a representative unique name for the new script in the Script name field.
3. Define the script.
4. Click Apply.

Editing Connectivity Scripts

To edit a Connectivity Script:


1. Click the Connectivity Scripts root entity in the Generic Driver hierarchical tree.
The Connectivity Scripts root entity is expanded to show all the available
Connectivity Scripts. On the right side, an identical list of the available
Connectivity Scripts is displayed.
2. Click the required script under Connectivity Scripts in the Generic Driver
hierarchical tree.
The script details are displayed on the right side of the window.
3. Use the Script Info tab to define the script's parameters as follows:

o To add a new parameter, click and enter the parameter's attributes as


follows:
Name Description

Order The parameter number. The system inserts the number


automatically, but you can override it.
Note: Two parameters cannot have the same order.

Name The parameter name. It is unique only within the script.

Type The parameter type.

Mandatory If selected, the parameter is mandatory.

Encrypted If selected, the parameter is encrypted.

Allow Override If selected, the parameter can be changed in real-time.

Default Value A default value for the parameter.

Note: Before updating, the system checks that the parameters are defined correctly.

o To remove a new parameter, click .

o To reorganize the parameters, click and .


4. Use the Script Text tab to define the script's contents. For more details, see the
Scorpio Implementation Guide.

88
Scorpio Scripting Engine

Script Syntax

Script Syntax Characteristics


Using the script syntax is a complicated task. It requires familiarity with both the "C” language
and communication issues.
The main script syntax characteristics are:
 The script file is a "C” styled text file that contains one or more functions.
 Any number of spaces may be used between elements in a command line.
 A remark starts with "//” and can start anywhere in the line.
 All the commands, script names and variable names are case sensitive.
 Empty lines are permissible.
 Scripts should continuously call the Internal Built-in functions (commands).
 Scripts can also call the External Built-in functions (commands).

Variables Definition
The Variables definition employs a syntax almost identical to "C" with one difference, an
additional data type “Data” that can hold other data types.
Example:
int i; // an integer definition
Data userName; // a "Data" definition, type not
initiated yet
userName = "MyName"; // initiating the data type to
string
Data dataOfLine5 = 0; // a "Data" definition, type
initiated to int

89
Communication Admin User Guide

Communication Admin Oriented Functions

Available Functions
The scripting engine includes the following Communication Admin oriented functions:

Send/Receive functions
 Send() with Parameters
 Send() Without Parameters
 SendNoLog()
 Recv()
 RecvUntil() with Timeout
 RecvUntil() Without Timeout
 SendBanner()
 SendTelnetBreak()
 RecvUntilAny()
 SendFormated()
 SendByChar()
 SendByCharFormated()

General functions
 DBSelect()
 GetEnv()
 Log()
 SetDefaultTimeout()
 SetLogLevel()
 ServiceExecute()
 Running one Scorpio Script from Another

Internal buffer functions


 BufClear()
 GetBuffer()
 GetBufLine()
 GetBufNumLines()
 GetBufSize()

90
Scorpio Scripting Engine

Send/Receive Functions

Send() with Parameters


void Send(Data str,
int timeout,
int PlugInOption);
Sends data to a network element with timeout and PlugInOption parameters.
No return value.
Example:
Send(scriptParams.Login + "\r\n", 5000 ,0);

Send() Without Parameters


void Send(Data str);
Sends data to a network element.
No return value.
Example:
Sends a BELL character (ASCII 07).

SendNoLog()
void SendNoLog(Data str);
Sends data to a network element.
No return value.
Same as Send() but without writing the data to the log. Useful when sending a password.
Example:
SendNoLog(accessParams.Password + "\r\n");

Recv()
Data Recv(int timeout);
Receives data from a network element.
Returns the number of bytes received.
Example:
Data recvBuf = Recv(2000); /*2 seconds*/

91
Communication Admin User Guide

RecvUntil() with Timeout


void RecvUntil(Data str, int timeout);
Receives data until detecting a specific regular expression, with a timeout.
No return value.
Example:
RecvUntil(scriptParams.LoginPrompt, 1000);

RecvUntil() Without Timeout


void RecvUntil(Data to);
Receives data until detecting a specific regular expression (without a timeout).
No return value.
Example:
RecvUntil(scriptParams.LoginPrompt);

SendBanner()
void SendBanner(Data str);
Sends data to the client (Telnet client) that started this command.
No return value.
Example:
SendBanner("\nYou have just connected to sun-comm as " +
scriptParams.Login + "\n");

SendTelnetBreak()
void SendTelnetBreak();
Sends the break signal (0xFF + 0xF3) to the network element.
No return value.
Example:
SendTelnetBreak();

RecvUntilAny()
Data RecvUntilAny(Data str, int timeout, int pluginOption,
char singlechar);
Data RecvUntilAny(Data str, int timeout, int pluginOption);
Data RecvUntilAny(Data str, int timeout);
Data RecvUntilAny(Data str);
Receives data until one of a number of options fits (in str divided by '|'). Returns the found
case, or empty string if not found.

92
Scorpio Scripting Engine
Examples:
Data recv = RecvUntilAny("?", 0, 0, 0);
Data waitFor = "MORE...|Profile Ends*>|>|User logged in * try
again";
Data recv = RecvUntilAny(waitFor);

SendFormated()
void SendFormated(int size, Data formatedData);
Sends data downstream (to NE). For unprintable information, the data can include Hexa
formatted data (for example, "A 0x02 XY 0x00 ") or NULLs).
Examples:
SendFormated("0x0D 0x00 ");

SendByChar()
void SendByChar(Data str, int timeBetweenSendsMili);
Sends to NE, char by char, with an interval.
Example:
SendByChar("logout", 200);

SendByCharFormated()
void SendByCharFormated(int size, Data formatedData, int
timeBetweenSendsMili);
Like SendByChar, sends to NE, char by char, with an interval. But for unprintable information,
the data can include Hexa formatted data (for example, "A 0x02 XY 0x00 ") or NULL.

General Functions

DBSelect()
Data DBSelect(Data dbProfile, Data sql);
Runs an SQL on the Database through the DB service.
Returns a record specific to the select statement.
Example:
void Print_NE()
{
Data dbProfile = "COMM_DB";
Data sql = "select * from comm_db..MED_NE";

Data res (CURSOR());


res = DBSelect ( dbProfile, sql);

93
Communication Admin User Guide

SendBanner("This is the list of NE\r\n");


while (res.End() == 0)
{
Data currRecord= res;
SendBanner("NE name: " + currRecord.NE_NAME + "(" +
Itoa(currRecord.NE_NUM) +")" );
res.Next();
}
SendBanner("--------------------------\r\n");
}

GetEnv()
Data GetEnv(Data envName);
Implements a Unix like getenv (getenv $PATH).
Returns the environment value.
Example:
Data str = GetEnv("GD_PROJ_DIR");

Log()
void Log(Data str);
Prints strings into the GD log file (and to screen).
No return value.
Example:
For this script running in the GD_TELNET:
Log("This string can be found in the $GD_LOG_DIR/GD_TELNET.log
file");

SetDefaultTimeout()
void SetDefaultTimeout(int timeout);
Sets the default time of Send and Receive operations.
No return value.
Example:
To set the Send and Receive timeouts to 10 seconds:
SetDefaultTimeout(10000);

94
Scorpio Scripting Engine
SetLogLevel()
void SetLogLevel(int level);
Defines the logging level of each "Log()” message.
Suggested value is "1”.
No return value.
Available values:
 0—shows all logging in verbose mode only (best performance)
 1—logs as messages
 2—considers all logging as warnings (recommended)
 3—considers all logging as errors
 4—considers all logging as critical errors
 5—shows always (poor performance, recommended for debugging only)
Example:
SetLogLevel(1);

ServiceExecute()
Data ServiceExecute( Data srvName,
Data srvParams,
Data command,
Data commandParams) // optional
Sends an execute request to a service.
Return value depends on the target service.
Example:
Data RegMatchByService(Data str,Data regEx)
{
Data cmdParams(VECTOR());
cmdParams.PushBack(str);
cmdParams.PushBack(regEx);
Data srvParams(VECTOR());
return ServiceExecute("StringService", srvParams,
"RegMatch", cmdParams);
}
void CallingServiceFunction()
{
Data isMatch = RegMatchByService("Hello great world",
".*great.*");
if (isMatch[0] == true)
SendBanner("Found a match\r\n");
else
SendBanner("No match\r\n");
}

95
Communication Admin User Guide
Running one Scorpio Script from Another
Running one Scorpio script from another is done using the function:
RunRemoteScript (string scriptName, string functionName,
Data(VECTOR()));
Examples:
// Regular script SonetNortelConnect
void OnConnect()
{
if (accessParams.ConnectionType == "tl1")
RunRemoteScript("ConnectTL1", "Connect",
Data(VECTOR()));
else
RunRemoteScript("ConnectCraft", "Connect",
Data(VECTOR()));
}

// Script ConnectTl1
void Connect()
{
.......
// Process specific TL1 connection
}
// Script ConnectCraft
void Connect()
{
......
// Process specific Craft connection
}

96
Scorpio Scripting Engine

Internal Buffer Functions

BufClear()
void BufClear();
Clears the internal buffer.
No return value.
Example:
Log("Buffer size is: " + Itoa ( GetBufSize() ) );
BufClear();
Log("Now the buffer size is zero!");

GetBuffer()
Data GetBuffer();
Returns a copy of the internal buffer data.
Example:
Data strBuf = BlobToStr(GetBuffer());
Log("Buffer content is: " + strBuf );

GetBufLine()
Data GetBufLine(int lineNum);
Returns a specific line (as Blob) from the internal buffer.
Example:
Data numLines = GetBufNumLines(); // get numbers of lines
for(int i=0; i<numLines; i++)
{
Data line = BlobToStr(GetBufLine(i));
Log("Line(" + Itoa(i) + ") "+ line + "\n");
}

GetBufNumLines()
int GetBufNumLines();
Returns the number of lines in the internal buffer.
Example:
Data numLines = GetBufNumLines(); // get numbers of lines
Log("Number of lines:" + Itoa(numLines) + "\n");

97
Communication Admin User Guide
GetBufSize()
int GetBufSize();
Returns the number of bytes (as integer) in the internal buffer.
Example:
Writing the number of bytes in the internal buffer to the Log:
Log("Buffer size is: " + Itoa ( GetBufSize() ) );

Data Types

About Data Types


The available data type information includes:
 Construction
 Cast
 Arithmetics
 Boolean Operators
 Member Functions

Construction
Data d;
Data d(VECTOR(), int initial_size=0);
Data d(RECORD(), char* rcname); // NsLookup, record
instance of the class name
Data d(LOOKUP(), char* rcname); // NsLookup, record class
of the class name
Data d(CURSOR());
Data d(bool b);
Data d(char c);
Data d(short s);
Data d(int i);
Data d(long l);
Data d(Int64 ll);
Data d(unsigned char uc);
Data d(unsigned short us);
Data d(unsigned int ui);
Data d(unsigned long ul);
Data d(unsigned Int64 ull);
Data d(float f);

98
Scorpio Scripting Engine
Data d(double d);
Data d(char *str);

Cast
If you have variable 'data' of type Data.
bool b = data;
short s = data;
int i = data;
float f = data;
double d = data;
In addition, C-Style explicit case is allowed:
bool b = (double)data;

Arithmetics
If you have variables x, y, z, all of type Data.
x = y + z;
x = y - z;
x = y * z;
x = y / z;
x = y % z;

Boolean Operators
If you have variable x of type bool and y, z of type Data.
x = (y == z);
x = (y != z);
x = (y < z);
x = (y <= z);
x = (y > z);
x = (y >= z);
This can be used from within 'if'/'while'/'for'/'do' statements as in "C".

99
Communication Admin User Guide

Member Functions

void Data::PushBack(Data d); // NOT applicable for


Data(CURSOR)

void Data::Clear(); // AttrVector that is NOT


in Data(CURSOR)

void Data::ChangeField(int index, Data d); // NOT applicable


for Data(CURSOR)

int Data::Size();

Data Data::ActiveField();

bool Data::IsNull();

void Data::Next(); // applicable for


Data(CURSOR) ONLY

bool Data::End(); // applicable for


Data(CURSOR) ONLY

bool Data::Is(char* unionname);

Data Data::ToString();

void Data::Print();

void Data::PrintLn();

void Data::DPrint();

Data Data::GetTypeString();

int Data::GetIndex(char* name);

Data Data::ClassName();

100
Scorpio Scripting Engine

Sample Scripts

About Sample Scripts


The following scripts can serve as a basis for creating new scripts:
 Very Basic Telnet Connection
 Standard Telnet Connection
 GenericTelnet Connect
 Telnet Disconnect
 Show a Buffer Line by Line
 Wait for Special Data
 5ESS Connect Script
 LUCENT OC3 Connect Script
 DMS100 Connect Script
 Nortel DMS500 Connect Script
 TL1 Connect Script
 TL1 Disconnect Script

Very Basic Telnet Connection


----------------------------------------------------------
// Very basic Telnet connection
void OnConnect()
{
SetDefaultTimeout(10000);
SetLogLevel(5);

RecvUntil("ogin:");
Send(scriptParams.Login + "\r\n");

RecvUntil("assword:");
SendNoLog(scriptParams.Password + "\r\n");

RecvUntil(accessParams.PromptVector);
}

101
Communication Admin User Guide

Standard Telnet Connection


----------------------------------------------------------
// Standard Telnet connection
void OnConnect()
{
SetDefaultTimeout(10000);
SetLogLevel(5);

RecvUntil(scriptParams.LoginPrompt);
Send(scriptParams.Login + "\r\n");

RecvUntil(scriptParams.PasswordPrompt);
SendNoLog(scriptParams.Password + "\r\n");

RecvUntil(accessParams.PromptVector);
}

GenericTelnet Connect
----------------------------------------------------------
// Generic Telnet connect
void OnConnect()
{
SetDefaultTimeout(10000);
SetLogLevel(5);

RecvUntil(scriptParams.Expect1);
if (scriptParams.Send1 != "")
{
Send(scriptParams.Send1 + "\r\n");
}

RecvUntil(scriptParams.Expect2);
if (scriptParams.Send2 != "")
{
102
Scorpio Scripting Engine
Send(scriptParams.Send2 + "\r\n");
}

RecvUntil(scriptParams.Expect3);
if (scriptParams.Send3 != "")
{
Send(scriptParams.Send3 + "\r\n");
}
}

Telnet Disconnect
----------------------------------------------------------
// Telnet Disconnect Samples
void OnDisconnect()
{
SetDefaultTimeout(10000);
SetLogLevel(5);

Send(scriptParams.ExitCommand + "\r\n");
}

Show a Buffer Line by Line


----------------------------------------------------------
// Show a buffer line by line
void ShowBuffer()
{
Data msg;
msg = "-----------------------------------------\n";
// find numbers of lines
Data numLines = GetBufNumLines();
msg += "Number of lines:" + Itoa(numLines) + "\n";
for(int i=0; i<numLines; i++)
{
Data line = BlobToStr(GetBufLine(i));
msg += "Line(" + Itoa(i) + ") "+ line + "\n";
}

103
Communication Admin User Guide
msg + "-----------------------------------------\n";
Log(msg);
}

Wait for Special Data


----------------------------------------------------------
// Wait for a Special Data
void WaitForSpecialLine()
{
Data line;
line = "0x0A" + "0x01" + "0x01";
RecvUntil(line);
}

5ESS Connect Script


----------------------------------------------------------
// 5ESS_connect_script

void OnConnect()
{
SetDefaultTimeout(100000);
SetLogLevel(5);

RecvUntil(scriptParams.LoginPrompt);
Send(scriptParams.Login + "\n");

RecvUntil(scriptParams.PasswordPrompt);
SendNoLog(scriptParams.Password + "\n");

RecvUntil(accessParams.PromptVector);
}

104
Scorpio Scripting Engine

LUCENT OC3 Connect Script


----------------------------------------------------------
// LUCENT_OC3_connect_script
void OnConnect()
{
SetDefaultTimeout(100000);
SetLogLevel(5);

Send("ACT-USER:" + scriptParams.TID + ":" +


scriptParams.Login +
":222::" + scriptParams.Password + ";");
Send("\r\n");

RecvUntil(accessParams.PromptVector);
}

DMS100 Connect Script


----------------------------------------------------------
// DMS100_connect_script
void OnConnect()
{

SetDefaultTimeout(100000); // set timeout for send/recv


operations
SetLogLevel(5);

Data CRLF="\r\n";
Data UserName,DeviceName;

// Sending login and password to the computer.


RecvUntil("*nter*ser*ame*>*");
Send(scriptParams.Login + CRLF);
RecvUntil("*nter*assword*>*");
SendNoLog(scriptParams.Password + CRLF);
RecvUntil(accessParams.PromptVector);
105
Communication Admin User Guide

SendBanner("We clear the following buffer:


"+BlobToStr(GetBuffer()));

// we care only about the data arriving later


// so clear the internal buffer now
BufClear();
SendBanner("No data here, we cleared it:
"+BlobToStr(GetBuffer()));

// send the command that will generate the data to parse


Send("quser" + CRLF);
RecvUntil(accessParams.PromptVector);

SendBanner("Buffer to search on:


"+BlobToStr(GetBuffer()));

// start parsing the data in the internal buffer


//
int LastLineToWorkOn = GetBufNumLines();
for (int i=0; i<LastLineToWorkOn; i++)
{
// fetch a single line
Data line = BlobToStr(GetBufLine(i));
SendBanner("Line in line number: "+Itoa(i)+" is:
"+line+CRLF);

// search in a buffer
Data pos=BlobFind(line,"INACTIVE");
// pos>1 => In case that the user name is called
INACTIVE
if (pos>1)
{
// fetch part of a blob
UserName=SubBlob(line,0,15);

// Note that this send will fill the buffer,

106
Scorpio Scripting Engine
// but since we record the lines we like to
work on
// (LastLineToWorkOn), we are safe
Send("deldevice "+BlobToStr(UserName)+CRLF);
RecvUntil(accessParams.PromptVector);
}

Data posUser=-1;
posUser=BlobFind(line,scriptParams.Login);
if (posUser>=0)
{
DeviceName=SubBlob(line,16,12);
}
}

if (DeviceName=="")
{
// we have a problem, terminate execution
throwdata("Device name is not found for user: "
+ scriptParams.Login);
}

// OK, we finally have the data we wanted, send it.


Send("startdevice "+BlobToStr(DeviceName)+CRLF);
RecvUntil(accessParams.PromptVector);

// Done.
SendBanner("!!! SCRIPT ENDED SUCCESSFULLY !!!"+CRLF);
}

107
Communication Admin User Guide

Nortel DMS500 Connect Script


----------------------------------------------------------
// Nortel_DMS500_connect_script
void OnConnect()
{
SetDefaultTimeout(100000);
SetLogLevel(5);

SendTelnetBreak(); // actually a Send("\xff\xf3\r\n");


RecvUntil("?");
Send("login\r\n");
RecvUntil(scriptParams.LoginPrompt);
Send(scriptParams.Login + "\r\n");

RecvUntil(scriptParams.PasswordPrompt);
SendNoLog(scriptParams.Password + "\r\n");

RecvUntil(accessParams.PromptVector);
}

TL1 Connect Script


----------------------------------------------------------
// TL1_connect_script
void OnConnect()
{
SetDefaultTimeout(100000);
SetLogLevel(5);

Send("ACT-USER:" + scriptParams.TID + ":" +


scriptParams.Login + ":222::" + scriptParams.Password +
";\r\n");

RecvUntil(accessParams.PromptVector);
}

108
Scorpio Scripting Engine

TL1 Disconnect Script


----------------------------------------------------------
// TL1_disconnect_script
void OnDisconnect()
{
SetDefaultTimeout(10000);
SetLogLevel(5);

Send("CANC-USER:" + scriptParams.TID + ":" +


scriptParams.Login + ":333;\r\n");
}

109

You might also like