Programming language

Multiple interface scripting language

6658646

Abstract

For a large system having an associated monitoring system with one or more user interfaces that each requires a large amount of direct user interaction, a scripting language especially well suited to write a script (that generates liaison interface between the user and the existing user interfaces) is provided. The liaison interface requires much less direct user interaction by taking the place of the user in the extensive direct interaction required by the existing user interfaces. Such a scripting language that includes an integration construct data structure that permits commands of discrete interfaces to be integrated in a single script that is to be executed by a machine. Also provided are scripts according to the scripting language, that include at least two of the integration construct data structures.


Claims

What is claimed is:

1. A computer-readable medium having embodied thereon a script of machine-executable statements to be executed by a machine connected to a system, said system having at least a first interface for interacting with a user, said computer-readable-medium-embodied script causing said machine to generate a second interface for interacting differently with said user than said first interface, said first interface having a first set of commands and a corresponding first syntax, said second interface having a second set of commands and a corresponding second syntax, respectively, the second set being different than the first set and the second syntax being different than the first syntax,

said computer-readable-medium-embodied script comprising:

a sequence of executable statements in which at least two of the executable statements are integration constructs, each of said integration constructs including

a first field, readable by said machine, to identify for said machine and so cause said machine to correspondingly engage one of said first interface and said second interface; and

a second field, readable by said machine, to identify for said machine at least a command from the first or second command set, respectively, for the interface identified in said first field and so correspondingly cause said machine to submit the identified command to the respective engaged interface.

2. The computer-readable-medium-embodied script of claim 1, wherein said first field of said integration construct is separated from said second field by an alphanumeric symbol.

3. The computer-readable-medium embodied script of claim 2, wherein said alphanumeric symbol is a colon.

4. The computer-readable-medium-embodied script of claim 1, wherein said first interface also includes a set of parameters that can be passed with said first set of commands, respectively, and said second field includes at least one parameter corresponding to said command contained therein.

5. The computer-readable-medium-embodied script of claim 1, wherein said system is a wireless communication network and said first interface is one of the TIpdunix (TI) interface and the Status Display Page (SDP) interface.

6. The computer-readable-medium-embodied script of claim 5, wherein said system comprises a third interface having a third set of commands and a corresponding third syntax, said first is said TI Interface and said third interface is said SDP interface.

7. The computer-readable-medium-embodied script of claim 1, wherein said second interface is the Wireless Application Manager (WAM) interface.

8. The computer-readable-medium-embodied script of claim 1, wherein said sequence of executable statements further includes at least one IF-THEN-ELSE decisional construct.

9. The computer-readable-medium-embodied script of claim 1, wherein said first field of said integration construct is a header for said second field.

10. An integration construct data structure readable by a machine, said machine operating upon commands from at least a first interface and a second interface, the first domain having a first command set and a corresponding first syntax, the second domain having a second command set and a corresponding second syntax, the second set being different than the first set and the second syntax being different than the first syntax, said integration construct associating a command with an interface where said command is valid, said integration construct comprising:

a first data object, readable by said machine, to identify for said machine at least a command to be executed; and

a second data object, readable by said machine and linked to said first data object, to identify for said machine one of said first interface and said second interface as the interface in which the identified command of said first data object is valid, contents of the first and second data object causing said machine to correspondingly engage the identified interface and submit the identified command to the engaged interface.

11. The integration construct data structure of claim 10, wherein said first data object also identifies a parameter to be operated upon by said command in said first data object.

12. The integration construct data structure of claim 10, wherein said second data object is linked to said first data object by an alphanumeric symbol.

13. The integration construct data structure of claim 12, wherein the alphanumeric symbol is a colon.

14. The integration construct data structure of claim 10, wherein the first interface is a first user interface to a system and the second interface is a second user interface to the same system, the second interface providing different interaction with the user than the first interface.

15. The integration construct data structure of claim 14, wherein said system is a wireless communication network and said first interface is one of the TInpdunix (TI) interface and the Status Display Page (SDP) interface.

16. The integration construct data structure of claim 14, wherein said second interface is the Wireless Application Manager (WAM) interface.

17. A method of parsing an executable statement, said executable statement being readable by a machine, said machine operating upon commands for use with one of at least a first interface and a second interface, said first interface having a first command set and a corresponding first syntax, said second interface having a second command set and a corresponding second command set, the first set being different than the second set and the first syntax being different than the second syntax, said method comprising:

examining said executable statement to identify one of at least said first interface and said second interface as the interface for which a command embedded in said executable statement is to be parsed;

examining said executable statement to identify at least said command; and

parsing the identified command according to the respective command set, and the respective syntax, of the identified interface.

18. The method of claim 17, further comprising examining said executable statement to identify a parameter to be operated upon by said command.

19. The method of claim 17, wherein the first interface is a first user interface to a system and the second interface is a second user interface to the same system, the second interface providing different interaction with the user than the first interface.

20. The method of claim 19, wherein said system is a wireless communication network and said first interface is one of the TInpdunix (TI) interface and the Status Display Page (SDP) interface.

21. The method of claim 19, wherein said second interface is the Wireless Application Manager (WAM) interface.

22. The method of claim 19, wherein the executable statement includes an integration construct, the integration construct including

a first field, readable by said machine, to identify for said machine and so cause said machine to correspondingly engage one of said first interface and said second interface, and

a second field, readable by said machine, to identify for said machine at least a command from the first or second command set, respectively, for the interface identified in said first field and so correspondingly cause said machine to submit the identified command to the respective engaged interface.

23. The method of claim 22, wherein said first field of said integration construct is separated from said second field by an alphanumeric symbol.

24. The method of claim 23, wherein said alphanumeric symbol is a colon.

25. The method of claim 22, wherein said first interface also includes a set of parameters that can be passed with said first set of commands, respectively, and said second field includes at least one parameter corresponding to said command contained therein.

26. The method of claim 22, wherein said first field of said integration construct is a header for said second field.


Description

FIELD OF THE INVENTION

The invention is directed toward a scripting language especially well adapted for writing scripts that (when run on a machine) generate, e.g., a liaison interface between a user and an existing user interface, and more particularly to such a scripting language that includes an integration construct data structure that permits commands from discrete user interfaces to be integrated in a single script (that when executed by a machine isolate the user from direct interaction with the discrete interfaces).

BACKGROUND OF THE INVENTION

A script is a sequence of commands that are to be interpreted, i.e., executed by a program running on a processor, as contrasted with a program that is compiled into the machine code of a processor and then directly executed by that processor. A script can be generated using a text editor or a Graphical User Interface (GUI) adapted to the scripting language.

Large systems often include monitoring systems that permit one or more users to monitor the performance of the system in general, and to specifically monitor the state of one or more parameters of the large system. In some instances, the manner in which the monitoring system delivers information to the user can be a burden.

An example of the large system discussed above is a wireless communication network that provides wireless communications service to a wireless unit that is situated within a geographic region. A Mobile Switching Center (MSC) is responsible for, among other things, establishing and maintaining calls between wireless units and calls between a wireless unit and a wireline unit . As such, the MSC interconnects the wireless units within its geographic region with a public switched telephone network (PSTN). The geographic area serviced by the MSC is divided into spatially distinct areas called "cells." In a schematic block diagram, each cell could be schematically represented by one hexagon in a honeycomb pattern. But, in practice, each cell has an irregular shape that depends on the topography of the terrain surrounding the cell. Typically, each cell contains a base station, which comprises the radios and antennas that the base station uses to communicate with the wireless units in that cell. The base stations also comprise the transmission equipment that the base station uses to communicate with the MSC in the geographic area via communication links. One cell site may sometimes provide coverage for several sectors. Here, cells and sectors are referred to interchangeably.

In a wireless cellular communications system, a base station and a wireless unit communicate voice and/or data over a forward link and a reverse link, wherein the forward link carries communication signals over at least one forward channel from the base station to the wireless unit and the reverse link carries communication signals on at least one reverse channel from the wireless unit to the base station. There are many different schemes for determining how wireless units and base stations communicate in a cellular communications system. For example, wireless communications links between the wireless units and the base stations can be defined according to different radio protocols, including time-division multiple access (TDMA), Frequency Division Multiple Access (FDMA), Code Division Multiple Access (CDMA) and others.

Within the geographic region, the MSC switches a call between base stations in real time as the wireless unit moves between cells, referred to as a handoff. Currently, in FDMA, TDMA, CDMA and GSM, cell site planning to determine the geographic coverage for a cell is a manually intensive task that needs constant adjustment. In planning a cell, the topology of the geographic area and a suitable antenna site is selected based on availability and zoning rules. Such a selection is typically not optimal but adequate. Drive tests and manually collecting signaling data are then performed mostly on the perimeter of the coverage area. Transmit and receive antennas and power are then adjusted in a manually iterative manner to improve the call quality. Sometimes, frequencies are swapped with neighbor cells and/or transmit power is readjusted to improve the coverage. Over time, the cell site engineers review customer complaints and cell site dropped call reports and again try to manually optimize the RF performance.

Lucent Technologies Inc. has developed a monitoring system that a user can use to change parameters of the wireless communication system as well as to extract data about it. This monitoring system can generate the TIpdunix (TI) interface, the Status Display Page (SDP) interface and/or the AUTOPLEX Recent Change & Verification Database (APXRCV) interface. These interfaces can be used individually. But typically, information extracted from one of the interfaces is used to make a decision to use a second one of the interfaces in one way or another. To use an interface, a user must start a discrete process. In a windows-based environment, each interface session has its own window.

These discrete or non-integrated interfaces to the monitoring systems pose problems for the user. Each interface has its own set of commands as well as formats for returning information to the user. These command sets and display formats are extensive. This burdens the user's memory. Moreover, the SDP interface returns information in a manner that requires the user to interpret a combination of the foreground and background colors, as well as whether the associated text is blinking or not, in a particular region of the screen in order to determine the state of a component of a large system.

Based upon the information extracted from a first interface, the user must make a decision about whether it is appropriate to use a second interface and if so, the user must appropriately form the command to be submitted. Often, the first interface is used merely to verify that the large system is operating correctly. The user must inspect the data returned by the first interface to confirm that it is consistent with normal operation of the large system. If there is some discrepancy, it must be recognized by the user. Then, the user must determine the problem that is indicated by the discrepancy. Then, the user must take appropriate action, typically via one of the other interfaces.

While the user has the responsibility of confirming via one of the interfaces that the operation of the large system is normal, the user is essentially a prisoner to that interface. The user must continually confirm that the operation of the large system is normal by repeatedly extracting data from the large system. If the user fails to recognize a discrepancy in the data that is returned, then the user will have failed to recognize that there is a problem for which action must be taken.

In another instance, the user might use one of the interfaces to change a parameter in the large system. To confirm that the parameter change has taken effect, the user typically has to use a second interface. But there is typically a delay between the requested change of parameter and the time at which it takes effect in the large system.

To confirm that the change has taken effect, the user must repeatedly extract information from the large system via the second interface. Again, the user becomes a prisoner of the second interface until the user recognizes something in the data returned by the second interface that indicates the desired change has taken place.

Again, the TI, SDP and APXRCV interfaces each require a great deal of direct user interaction. An example of this is depicted in the unified modeling diagram of FIG. 1. FIG. 1 depicts interactions between a user 101 and a monitoring system 304 (to be discussed in more detail below concerning FIG. 3), to be discussed in more detail below. Communication from the user originate from a line 102, while communications from the monitoring system 304 originate from a line 104. The monitoring system 304 can generate the TI, SDP and/or APXRCV interfaces discussed above.

In the unified modeling diagram of FIG. 1, a user desires the result of executing an inventory command via the TI interface. To do so, the user might have to manipulate a field in the APX database in order to enable the use of an inventory command of the TI interface. First, the user must initiate an interface session with the APXRCV interface.

Then, the user must make a backup copy of the APXRCV database for the cell in consideration. Making the backup copy represents the first action requested by the user and it is requested via the APXRCV interface, i.e., the first interface. This is a prudent step to prevent unwanted changes to the database. Then, the user must request data from a particular field within the database. This represents the first data request by the user. Again, it is requested via the first interface. This also requires the user to remember the relevant command and its arguments. Then, the user must wait to find out if the data request is successful or if it failed.

If the first data request is successful, then the user must evaluate the data returned from the field in the database and determine whether it is necessary to modify that data so that the later TI command will be enabled. If the content of the field in the database must be altered, then the user must remember the relevant command and its arguments as well as construct and submit the command. In other words, the user must request a second action, again, via the APXRCV interface. Once the particular field in the database stores the desired value, the user must initiate a TI session. Then, the user must determine whether the TI session has been successfully established. If not, then the user must restore the APXRCV database to its original values. Otherwise, the user must remember the desired TI command and its arguments. In other words, the user must request a third action, but this time it is requested via a second interface (the TI interface). Then the user should terminate the TI session. Then the user should restore the previous values of the APXRCV database, i.e., request a fourth action, again, via the first interface.

SUMMARY OF THE INVENTION

A motivation, among others, for the invention is a recognition that the amount of direct user interaction with the monitoring systems can be greatly reduced by providing a liaison interface between the user and the existing interfaces by way of running a script on a machine, e.g., as a retrofit liaison interface. This solves the excessive direct user interaction problems suffered by the known interfaces while avoiding the great costs associated with revising the interfaces per se. The liaison interface automatically interacts with the existing interfaces, i.e., the liaison interface interacts with the existing interfaces without the direct involvement of the human user.

The invention, in part, provides a scripting language for writing scripts that when run on a machine generate such a liaison interface.

The invention, in part, provides such a scripting language that includes an integration construct data structure that permits commands of discrete interfaces to be integrated in a single script that is to be executed by a machine.

The invention, in part, also provides a computer-readable medium embodied script that includes at least two of the integration construct data structures.

The invention, at least in part, is embodied by providing a computer-readable medium having embodied thereon a script to be processed by a machine connected to a system, the system having at least a first interface for interacting with a user, the computer-readable-medium-embodied script causing the machine to generate a second interface for interacting differently with the user than the first interface, each of the interfaces having at least a set of commands. Such a computer-readable-medium-embodied script comprises: a sequence of executable statements including at least two integration constructs. Each of the integration constructs includes: a first field to identify one of the first interface and the second interface; and a second field to identify at least a command from the corresponding set for the interface identified in the first field.

The invention is also embodied, at least in part, by providing an integration construct data structure readable by a machine, the machine operating upon commands from at least two domains, the integration construct associating a command with a domain where the command is valid. Such an integration construct comprises: a first data object to identify at least a command; and a second data object, linked to the first data object, to identify one of at least a first domain and a second domain as the domain in which the command of the first data object is valid.

The invention is also embodied, at least in part, by providing a method of parsing an executable statement, the executable statement being readable by a machine, the machine operating upon commands from at least two domains. Such a method comprises: examining the executable statement to identify one of at least a first domain and a second domain as the domain in which a command embedded in the executable statement is valid; and examining said executable statement to identify at least said command.

Objectives, features and advantages of the invention will be more fully apparent from the following detailed description of the preferred embodiments, the appended claims and the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings are intended to depict example embodiments of the invention and should not be interpreted to limit the scope thereof.

FIG. 1 is a unified modeling diagram for interactions between a human user and Background Art interfaces to a Background Art monitoring system.

FIG. 2 is a unified modeling diagram for interactions between a liaison interface according to the invention and Background Art interfaces to a Background Art monitoring system, as well as interactions between the liaison interface and a user.

FIG. 3 depicts the system in which the device according to the invention forms a part.

FIGS. 4A and 4B are schematic depictions of an integration construct data structure of the scripting language according to the invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 3 depicts an overall system 300 of which the liaison interface 306 (that is preferably generated using the scripting language according to the invention) forms a part. The other parts of the overall system 300 are the large system 302 and the monitoring system 304, examples of each of which were discussed above in the Background Section. Again, an example of the large system 302 is a wireless telephony system and an example of the interfaces generated by the monitoring system 304 are the TIpdunix (TI) interface, the Status Display Page (SDP) interface and/or the AUTOPLEX Recent Change & Verification DataBase (APXRCV) interface, all of which are marketed by Lucent Technologies Inc.

A monitoring system 304 includes processing circuitry 308, a part of which is a video display driver circuit card 310. The video card 310 drives a video display device (VDD) 312. In the case of generating the SDP interface, the VDD 312 is driven with non-text, typically hexadecimal code, display-generation data supplied over a connection 314. An input device in the form of a keyboard 316 is connected to the processing circuitry 308 via a signal line 318.

The liaison interface 306 (that is preferably generated using the scripting language according to the invention) includes a processor 320, an output device in the form of a video display device (VDD) 328 connected via a signal line 330, and an input device preferably in the form of a keyboard 332 connected via a signal line 334. The processor 320 has a memory 326 for storing a program or script that causes the processor 320 to generate the liaison interface 306 according to the invention. The processor 320 can communicate with, e.g., an input/output (I/O) port of the processing circuitry 308 via a bidirectional link 324.

The scripting language according to the invention has been disclosed in terms of a specific embodiment of the Wireless Automation Manager Interface Language (WAMIL). But many variations of the WAMIL language, having different combinations of commands, IF-construct elements and (optionally) WHILE-construct elements, as well as other languages, could embody the scripting language according to the invention.

An embodiment of the interpreter for the scripting language according to the invention, for example, has been written in two languages, the Tool Command Language (TCL) and C. Of the portion of the code directed toward dealing with the SDP interface, about 10% is written in C to take advantage of the hexadecimal and bits translation capability of C.

The computer-readable memory 326 can include RAM, ROM, a fixed hard disk drive, and/or a removable storage medium for a non-fixed disk drive such as a floppy disk or a CDROM. The program which causes the processor 320 to generate the liaison interface 306 according to the invention can be downloaded to the processor 320 from the remote host 336 over the optional connection 338. As the program is downloaded through the optional connection 338, the computer-readable medium in which the program is embodied takes the form of a propagated signal.

Generation of the liaison interface (using scripts written in the scripting language according to the invention) involves many sorting and comparison operations as well as accesses to look-up tables (LUTs). As such, the processor 320 should be of sufficient processing power to assure reasonably quick results. Examples of adequate processors are those from the Pentium family of processors marketed by Intel Inc.

FIG. 2 is a unified modeling diagram depicting an example of interactions by a liaison interface 306 generated by a script preferably written in the scripting language according to the invention. In FIG. 2, communications from the liaison interface 306 originate from a line 204. The liaison 306 interacts with a user 201, be it a human user, a calling script user or calling program user. Communications from the user 201 originate from a line 202. The liaison interface 306 also interacts with the monitoring system 304. Communications from the monitoring system 304 emanate from a line 206. As will be discussed below, interposing the liaison interface 306 between the user and the monitoring system 304 greatly reduces the amount of direct interaction that the user must have with any interface.

FIG. 2 depicts interactions necessary to achieve the same result as in the example of FIG. 1. Again, the user 201 desires the result of executing an inventory command via the TI interface without having to be concerned with checking if certain parameters are in their required states. But in FIG. 2, only two interactions, namely 208 and 226, require direct interaction by the user. The other fourteen actions or interactions involve only the liaison 306 or the liaison 306 and the monitoring system 304, respectively. At Item 207, the user must construct a request for a result and submit it to the liaison interface 306 at element 208. The phrase "request a result" is intended to indicate that the user runs a script to produce the desired result by operation of the liaison interface 306.

The desired result can simply be a notification that the script has run successfully. Alternatively, the indication that the script has run successfully can be communicated in the form of a display of a desired parameter of the system. At Item 228, the user must review this prompt to confirm that the result was accomplished or to make use of the result.

The WAMIL language includes commands and statements that are elements of IF-constructs and while-constructs. A WAMIL command or integration construct data structure has the format of "interface:command," e.g., "TI:OP:CELL, NUMERAL," "WAM:CONNECT SDP," or "WAM:GETSDP." As depicted in FIG. 4A, a WAMIL command 400 preferably has a first field 402 that identifies an interface and a second field 406 that identifies a command. The interface identified by the first field 402 is the interface in which the command of the second field 406 is valid. Preferably, the first field 402 precedes, or is a header for, the second field 406 and is separated by a third field 404, e.g., an alphanumeric character such as a colon (:) 410 (FIG. 4B). Alternatively, the second field 406 could precede the first field 402.

All WAMIL commands, i.e., WAM:COMMAND, can (in this embodiment of the WAMIL language) be uppercase letters. Also, each alphanumeric text string in the field 402, e.g., TI, can (in this embodiment of the WAMIL language) be in uppercase letters. But commands from other interfaces can be in lowercase letters. For information, refer to the WAM Interface Commands section below.

The invention has been described, for convenience, in terms of the TI interface, the SDP interface and/or the APXRCV interface to the monitoring system for the large wireless system described in the Background Section above. However, the scripting language according to the invention is applicable to integrate commands of discrete interfaces from other domains or to write scripts to generate liaison interfaces to other user interfaces such as those found in the air traffic control arts, train and subway control arts, chemical processing plant control arts, power generation plant control arts, etc. Again, common characteristics of these interfaces include (1) that they hold the user captive by requiring a great deal of direct user interaction and (2) that they are mature products for which research and development efforts have been greatly diminished, making substantive redesigns, e.g., software rewrites, (to obtain more user-friendly output) prohibitively expensive. Thus, a liaison interface written using the scripting language according to the invention does not disturb the existing monitoring system and yet achieves a desired goal of greatly reducing the amount of direct interaction between the user and user-interface without redesigning the software of the dedicated non-text-variable-output systems.

Details of the Liaison Interface are contained in a first copending U.S. patent application entitled "Liaison Interface," by the same inventor, Gaspar Hernandez, III, filed on the same date, Sep. 29, 1999, that is assigned to the same assignee, Lucent Technologies Inc. The entire contents of this first copending application are hereby incorporated by reference.

One of the commands in the WAMIL scripting language is the "GETSDP" command. More details of this command can be found in a second copending U.S. patent application, entitled "Technology to Translate Non-Text Display Generation Data Representing An Indicator Into Text Variables," by the same inventor, Gaspar Hernandez, III, filed on the same date, Sep. 29, 1999, that is assigned to the same assignee, Lucent Technologies Inc. The entire contents of this second copending application are hereby incorporated by reference.

The programmed processor 320 preferably has one or more programs to generate a script interpreter that will interpret each line in a script. The interpreter can be executed from a command line or by way of a Graphical User Interface (GUI). The program processor 320 preferably also includes a program to generate a scriptor by which a user can write a script and/or debug an existing script.

Details of a Scriptor and an Interpreter especially suited to the WAMIL language are contained in a third copending U.S. patent application entitled "Scriptor and Interpreter," filed by the same inventor, Gaspar Hernandez, III, filed on the same date, Sep. 29, 1999, that is assigned to the same assignee, Lucent Technologies Inc. The entire contents of this third copending application are hereby incorporated by reference.

Details of a Comand Line Generator to ease the burden on a user represented by command line execution are contained in a fourth copending application, entitled "Command Line Generator," by the same inventor, Gaspar Hernandez, III, filed on the same date, Sep. 29, 1999, that is assigned to the same assignee, Lucent Technologies Inc. The entire contents of this fourth copending application are hereby incorporated by reference.

Some example scripts written in the WAMIL language follow. After that discussions of the WAMIL Interpreter environment, WAMI key global variables, WAM VAR variables, WAM lists, control flow for WAMIL script execution and the WAM Linker are provided to help establish a context to appreciate the capabilities and flexibility of a script written in the WAMIL language. Then, a general discussion of the IF THEN ELSE type of IF-construct, the IF THENDO ELSEDO ENDIF type of IF-construct and the WHILE ENDWHILE variation of an IF-construct are presented, followed by a detailed glossary of commands that can be embedded in the integration construct data structure according to the invention. That will be followed by a detailed glossary of IF-construct elements. Then is general discussion of the Linker, followed by a detailed glossary of linker commands are presented.

An example of a script used to generate the liaison interface 306 that corresponds to the interactions depicted in FIG. 2 is listed below in Script #1.

                            SCRIPT #1
    LINE #  COMMAND
      01    WAM:MSC 5
      02    WAM:CELL 49
      03    WAM:GETAPX cell2 BACKUP
      04    IF:AFAIL
      05    THENDO:
      06     WAM:PRINT APXRCV cell2 form backup failed,
             script aborted.
      07     WAM:ENDTEST
      08    ELSEDO:
      09    ENDIF:
      10    WAM:GETAPXFLD cell2 f_list4.c_feat[2]
      11    IF:AFAIL
      12    THENDO:
      13     WAM:PRINT APXRCV cell2 field retrieval failed,
             script aborted
      14     WAM:ENDTEST
      15    ELSEDO:
      16    ENDIF:
      17    IF:TEST_EXPR APXVAR EQ n
      18    THENDO:
      19     WAM:SETVAR APXVAR y
      20     WAM:PUTAPXFLD cell2 f_list.c_feat[2]
      21     IF:AFAIL
      22     THENDO:
      23      WAM:PRINT APXTCV field update failed, script aborted
      24      WAM:ENDTEST
      25     ELSEDO:
      26      WAM:PRINT Inventory feature enabled
      27     ENDIF:
      28    ELSEDO:
      29    ENDIF:
      30    WAM:CONNECT TI
      31    IF:LFAIL
      32    THENDO:
      33     WAM:PRINT TI login attempt failed, script aborted
      34     WAM:PUTAPX cell2 BACKUP
      35     WAM:ENDTEST
      36    ELSEDO:
      37    ENDIF:
      38    TI:op:cell 49, inventory
      39    WAM:DISCONNECT TI
      40    WAM:PUTAPX cell2 BACKUP
      41    WAM:ENDTEST


Script #1 is written in the Wireless Automation Manager Interface Language (WAMIL). A brief discussion of the lines in the script will be presented.

In line 1 of Script #1, the Mobile Switching Center (MSC) variable is set to the value 5. In line 2, the cell variable, CELL, is set to the value 49. In line 3, the GETAPX command is recited, which makes a copy of the database corresponding to the APXRCV database named cell2 and names the copy as "backup." Line 3 of Script #1 corresponds to Item 210 of FIG. 2. Lines 4-9 are included in Script #1 to account for the possibility that there might be a failure in making a backup of the APXRCV database named cell2 database. Lines 4-9 define an IF-construct that tests for whether there has been a failure in making the backup copy. Line 5 indicates the commands to be executed if there is a failure, namely the commands in lines 6 and 7. Line 6 lists the print command to print a text string that notifies of the failure. Line 7 recites the command ENDTEST that terminates interpretation of the script. Line 8 indicates the commands to be interpreted if the tested condition is false, i.e., if the APXRCV database named cell2 is backed up successfully. When the backup copy is made successfully, then the IF-construct terminates at line 9 with the command "ENDIF."

At line 10, the command to retrieve the value of a field in the cell2 database is recited. This corresponds to Item 212 of FIG. 2. Lines 11-16 recite an IF-construct that is similar to lines 4-9. But in lines 11-16, the error message to be printed refers to the failure to retrieve a field in the database rather than a failure to backup the entire database. Lines 17-29 recite a third IF-construct.

The third IF-construct of Script #1 corresponds to Item 214 and 216 of FIG. 2. At line 17, the value of the field retrieved in line 10 is tested. To reiterate, this corresponds to Item 214 of FIG. 2. The value of this field is tested to determine if it enables the use of a desired command from the TI interface. If the condition is true, namely, if the field value equals n (meaning that the feature is disabled), then the commands denoted by line 18 are interpreted. Line 19 recites a command to set the WAM Interpreter (WAMI) variable APXVAR to the value y. Line 20 recites a command to put the value of APXVAR into the desired field in the APXRCV database named cell2. This corresponds to Item 2 of FIG. 2.

Line 21-24 correspond to lines 11-14, which account for the possibility that the requested change to the value in the database will not be made successfully. The text string recited in line 23 is a notification that the field update failed and that interpretation of the script has been terminated. Lines 25-26 correspond to the condition that the field in the database was changed successfully. Line 26 recites a command to print a text string that notifies of the successful field change.

In line 30 of Script #1, a TI session is initiated. Lines 31-37 correspond to an IF-construct to account for the possibility that a TI interface session might not be successfully initiated. Line 33 recites the print command to print a text string that indicates that the TI interface session could not be established. Line 34 recites a command to restore the APXRCV database named cell2 database to the values in the copy named BACKUP.

Line 38 of Script #1 recites the TI interface command to perform an inventory on cell 49. This corresponds to Item 220 of FIG. 2. Line 39 recites the command to terminate the TI interface session. Line 40 recites the command to restore the database for the APXRCV database named cell2 to the value stored in the copy named BACKUP. This corresponds to item 224 of FIG. 2. Lastly, the script terminates with line 41.

Another example script, namely Script #2, follows. Script #2 uses the SDP interface and the TI interface.
                            SCRIPT #2
    LINE
      #   COMMAND
     01   WAM:MSC 5
     02   WAM:CONNECT SDP
     03   IF:LFAIL
     04   THENDO:
     05    WAM:PRINT SDP OMP login attempt failed, script aborted
     06    WAM:ENDTEST
     07   ELSEDO:
     08   ENDIF:
     09   IF:SDPPORT
     10   THENDO:
     11    WAM:PRINT SDP vtty ports not available script aborted
     12    WAM:ENDTEST
     13   ELSEDO:
     14   ENDIF:
     15   WAM:CELL 49
     16   WAM:BBAVAR
     17   SDP:2138,49
     18   WAM:GETSDP BBA
     19   IF:TEST_EXPR SDPVAR_COLOR EQ BLACK_ON_GREEN
     20   THENDO:
     21    WAM:PRINT BBA BBAVAR is ACTIVE
     22    WAM:SET WAMI 1
     23   ELSEDO:
     24    WAM:PRINT:BBA BBAVAR is NOT ACTIVE
     25   ENDIF:
     26   WAM:CONNECT TI
     27   IF:LFAIL
     28   THENDO:
     29    WAM:PRINT TI login attempt failed, script aborted
     30   WAM:ENDTEST
     31   ELSEDO:
     32   ENDIF:
     33   IF:TEST_EXPT WAMI EQ 1
     34   THENDO:
     35    TI:dgn:cell 49, bba BBAVAR
     36   ELSEDO:
     37    TI:rst:cell 49, bba BBAVAR
     38   ENDIF:
     39   WAM:DISCONNECT TI
     40   WAM:DISCONNECT SDP
     41   WAM:ENDTEST


In line 1 of Script #2, the Mobile Switching Center Variable, MSC, is set to the value 5. Line 2 recites the command to connect to the SDP interface. Lines 3-8 correspond to an IF-construct for dealing with a first kind of possible failure to establish an SDP interface session. Lines 9-14 present another IF-construct to deal with a second kind of failure to establish an SDP interface session could not be established.

Line 15 of Script #2 sets the cell variable, CELL, to the value 49. Line 16 recites the BBVAR command, which indicates that the value for the variable BBA will be supplied by the user to the script as an argument appended to the command line.

Line 17 of Script #2 is a command for the SDP interface to return an arrangement of screen indicators identified by screen 2138, for the cell 49. Line 18 recites the GETSDP command to convert the nontext attributes of an indicator corresponding to the value of the variable BBA into text variables. Again, the GETSDP command is explained in detail in the second copending application that has been incorporated by reference, as discussed above.

Lines 19-25 of Script #2 represent an IF-construct for testing the condition of whether the indicator is in a particular state. If so, i.e., if the condition is satisfied, then the commands in lines 21 and 22 are to be interpreted. If not, i.e., if the condition is not satisfied, then the command in line 24 is to be interpreted.

Line 26 of Script #2 recites the command to establish a second interface session, namely a TI interface session. Lines 27-32 account for the possibility that the TI interface session can not be established.

Lines 33-38 of Script #2 represent an IF-construct for deciding whether to perform diagnostics on a cell BBA (line 35) (which take the cell out of service for the duration of the diagnostics) or restore the cell BBA (line 37) depending upon the value of the general WAMIL variable, WAM, that is tested in line 33. It is noted that the value of the WAMIL variable, WAM, corresponds to the state of the indicator, as determined in lines 21-22. The default value for the WAMIL variable WAMI is zero. Hence, no WAM:SET WAMI 0 command is included after line 24, whereas it is necessary in line 22 because it is changing the default value.

Line 39 of Script #2 terminates the TI interface session. Line 40 terminates the SDP interface session. Line 41 terminates execution of Script #2.

A third example of a script follows. Script #3 emphasizes flow control using the "IF:OMSG" statement as the basis of a second form of an IF-construct. In light of the more detailed discussion of WAMIL commands and IF-construct elements provided below, as well as the discussion above, Script #3 is considered to be self-explanatory.
                            SCRIPT #3
    LINE #  COMMAND
      01    WAM:MSC 5
      02    WAM:CELL 49
      03    WAM:CCC 4
      04    WAM:CONNECT TI
      05    TI:rst:cell 49, ccc 4
      06    TI:op:cell 49
      07    IF:OMSG OP:CELL CELLVAR CCC CCCVAR, ACTIVE
      08    THENDO:
      09     WAM:PRINT CCC CCCVAR is active script will continue
      10    ELSEDO:
      11     IF:OMSG OP:CELL CELLVAR CCC CCVAR, ACTIVE
      12     THEN:CONTINUE
      13     ELSE:WAITQUERY 5 TI 10
      14     IF:OMSG OP:CELL CELLVAR CCC CCCVAR, ACTIVE
      15     THENDO:
      16     ELSEDO:
      17      WAM:PRINT CCC CCVAR never became active
      18      WAM:ENDTEST
      19     ENDIF:
      20    ENDIF:
      21    TI:dgn:cell 49, ccc 4
      22    IF:OMSG COMPLETED
      23    THEN:CONTINUE
      24    ELSE:WAITQUERY 5 TI 10
      25    WAM:DISCONNECT TI
      26    WAM:ENDTEST


A fourth example script follows, namely Script #4. Script #4 emphasizes the WAM:WMMI suite of commands and its related commands. For similar reasons as those presented in the discussion of Script #3, Script #4 is considered to be self-explanatory.
                            SCRIPT #4
    LINE
      #   COMMAND
     01   WAM:WAMLIST Please Enter Paging Rate
     02   WAM:WMMIO TESTEND WAMVAR 1 HOME This is
          Our Message
     03   WAM:WAIT 20
     04   WAM:WMMI_GETCOUNT WAMVAR
     05   IF:TEST_EXPR WAMVAR GT 3
     06   THENDO:
     07    WAM:PRINT Paging rate is WAMVAR, to fast! Reduce to
           default 1200 per hour.
     08    WAM:WMMI_SEND CHANGERATE 1200
     09    WAM:WAIT 10
     10    WAM:WMMI_GET COUNT WAMVAR
     11    IF:TEST_EXPR WAMVAR LT 20
     12    THENDO:
     13     WAM:PRINT Paging rate is good now!
     14    ELSEDO:
     15     WAM:PRINT Paging rate still too fast! Script aborted!
     16     WAM:WMMI_STOP
     17     WAM:ENDTEST
     18    ENDIF:
     19   ELSEDO:
     20    WAM:PRINT Paging rate is not bad!
     21   ENDIF:
     22   WAM:WMMI_SEND SENDPAT Send this message only once!
     23   WAM:WAIT 5
     24   WAM:WMMI_SEND CHANGERPAT This is our new message.
     25   WAM:WAIT 10
     26   WAM:WMMI_STOP
     27   WAM:ENDTEST


WAMIL Interpreter Environment

The Wireless Application Manager (WAM) Interface Language (WAMIL) Interpreter environment is the preferred, but not the only, environment to execute WAMIL scripts that include the integration construct data structure according to the invention. This environment will now be discussed in more detail.

Command Line Script Execution

Again, a WAMIL script is passed to an interpreter, preferably the WAM Interpreter (WAMI), for execution.

All WAMIL scripts can (in this embodiment of the WAMIL language) have a .wamil extension. For example, the above script if named AUTO1.wamil would be executed as follows, the .wamil extension is understood:

WAM21 AUTO1

WAMIL Script Output File

All WAMIL scripts generate an output file. all (in this embodiment of the WAMIL language) output files have a .rpt extension.

Default script output location is .about.myhome/WAMfiles/Scripts.dir, else -rpt switch is used.

WAM21 AUTO1 -rpt .about.some/place/else

Output files are overwritten unless the append option is specified as follows:

WAM21 AUTO1 -rpt .about.some/place/else -opt a -endopt

For example, the above script when executed as the script name AUTO1 would generate the following output:

Test Script Name: AUTO1

Test Script Location: /phoenix/h47/ghernand/WAMfiles/wam.wamil

Test Script Report Name: AUTO1

Test Script Report Location: phoenix/h47/ghernand/WAMfles/Scripts.dir

Test On MSC 5

FStart Test Cell: 49

Connect To TIpdunix on MSC 5

Executed TI: op:cell 49

op:cell 49

IP all specified cells ACT

M 45 OP:CELL 49 BBA 6, OOS, FRCELL, RMVD

12/08/98 45 #073412

M 45 OP:CELL 49 CCC 6, ACTIVE

BLOCKING FROM CELL, NO ACU ON CCC SHELF

BLOCKING FROM SECTOR 3, NO BBA IN SERVICE

12/08/98 45 #073414

M 45 OP:CELL 49 CCC 4, CCU 3, OOS, FRCELL, RMVD

12/08/98 45 #073415

M 46 OP:CELL 49 PROG CONTROL OFF-NORMAL

INTERRUPTS INHIBITED:

CSC 0 PROCID:

MWPER

MPARF

NCIOCF

CPIST

CPIMS

CPUADRV

CPUMTX

ANTFT INHIBITED

OCFT INHIBITED

PLFT INHIBITED

TPFT INHIBITED

RTDIAG INHIBITED

12/08/98 46 #073417

M 46 OP:CELL 49 COMPLETED

12/08/98 46 #073418

M 46 OP:CELL 49 DL 0 CONNECTED

12/08/98 46 #073427

M 46 OP:CELL 49 DL 1 CONNECTED

12/08/98 46 #073428

M 46 OP:CELL 49 STATUS & CONTROLS

BOOT ALW, CP ALW, PH MON ALW, PH STATE ACTIVE, DL(S) UP

FORWARD SETUP CHANNEL CONTROL NORMAL (INH)

12/08/98 46 #073430

Disconnect From TIpdunix on MSC 5

ENDTEST MSC 5 CELL 49

END OF TEST SCRIPT EXECUTION

WAMIL Commands Output

All WAMIL commands, when executed, generate output messages to the script output file. These messages can be monitored to track script progress. To turn WAMIL commands output messages off the WAM:OUTPUTOFF command can be used.

WAMIL DISPLAY Command

All WAMIL scripts are executed in the background. To slow execution of the script and monitor its progress the WAM:DISPLAY <seconds> command can be included in the script. This command will open a display window in which the script will be executed.

WAMI Key Global Variables

The WAMIL scripting language has a predefined set of global variables, known as key global variables or key variables. They anticipate most of the parameters, settings and/or preferences related to a wireless system that a user might wish to manipulate. Because they are predefined, these key global variables also have default values and do not need to be created. Non-key global variables are not predetermined. Rather, they are created by the user with the CREATEVAR command (to be discussed below) to help solve the particular problem for which the script has been written. Global variables will be discussed further below after the table listing the WAM global variables.

Below is a list of all (in this embodiment of the WAMIL language) WAMI key global variables. The list also shows the variable type, default value and a brief description.

                             TABLE 1
                    WAMI Key Global Variables
    VAR-          DE-   VALUE
    IABLE        FAULT  TYPE          DESCRIPTION
    ADDCE          0    Integer       Number of Channel Elements
                                      to add.
    ADRS         NULL   String        Memory Address
    AFAIL          0    Integer       APXRCV failure flag
    ANT            0    Integer       Antenna face Number
    AU             1    Integer       Cell Amplifier Unit Number
    BBA            1    Integer       BCR-BIU-ACU Trio Number
    CAT            0    Integer       Clock and Tone Board
                                      Number
    CCC            1    Integer       CDMA Cluster Controller
                                      Number
    CCU            1    Integer       CDMA Channel Unit Number
    CDMADPC        0    Integer       BBA Power Control Option
    CELL           0    Integer       Cell Site Number
    CELL.sub.--   SER-   Alphanumeric  Cell Site Equipment Type
    TYPE         IESII
    CFAIL          0    Integer       Interface Connection Flag
    CGSA           0    Integer       Cellular Geographic Service
                                      Area
    CONFIG         0    Integer       Cell Configuration Option
    CSC            0    Integer       Cell Site Controller
    DCCH           0    Integer       Dedicated/Digital Control
                                      Channel
    DCS            0    Integer       Digital Cellular Switch
                                      Number
    Display-       1    Integer       Script Display Window Delay
    Delay
    DL             0    Integer       Cell Site Data Link
    DS1            0    Integer       Digital Service 1 Number
    ECP            0    Integer       Executive Cellular Processor
                                      Number
    ERR            0    Integer       WAM Interpreter exit value
    GEN            0    Alphanumeric  Generic Number/Name
    INACT         60    Integer       Interface Session Inactivity
                                      (Minutes)
    LAC            0    Integer       Cell Linear Amplifier Circuit
                                      Number
    LC             0    Integer       Cell Locate Radio Number
    LFAIL          0    Integer       Interface Login Flag
    LMT            0    Integer       Lightwave Microcell
                                      Transceiver Number
    LOOPERcnt      1    Integer       WAMI script looping counter
    LOOPER         1    Integer       WAMI script looping limit
    MICRO-         0    Integer       FLEXANT RCS Number
    CELL
    MSC            0    Integer       Mobile Switching Center
                                      Number
    OC             0    Integer       Overhead Channel Number
    PH             0    Alphanumeric  TI Specified Phase Number(s)
    PL             0    Integer       Pilot Level Number
    RA             0    Alphanumeric  Cell Radio Number
    REL            8.0  Alphanumeric  Current software release
    RG             0    Integer       Cell Reference Generator
                                      Number
    RPT            0    Integer       TI Repeat Diagnostics Number
    RptName      None   Alphanumeric  Script Report Name
    SDPFAIL        0    Integer       SDP interface failure flag
    SDPPORT        0    Integer       SDP port flag
    SG             0    Integer       Server Group Number
    SPOOL         10    Integer       WAMI Spooler Pause
                                      (Seconds)
    SU             0    Integer       Cell Setup Radio Number
    SW             0    Integer       Switch Identification Number
    TFAIL          0    Integer       Interface Command Time Out
                                      Flag
    TimeOut       30    Integer       WAMI Interface Time Out
                                      (Seconds)
    TP             0    Integer       Traffic Path Number
    TRACE          0    Integer       WAMI TRACE Flag
    TRKGRP         0    Integer       Trunk Group Number
    TRKMBR         0    Integer       Trunk Member Number
    VRADPC         0    Integer       Voice Radio Power Control
                                      Option
    VRN            0    Integer       Voice Radio Number
    Wait          10    Integer       WAMI Script Execution Pause
                                      (Seconds)
    WAM            0    Alphanumeric  WAMI Interpreter global
                                      variable
    XMITC          0    Integer       Transmitter Control Action
                                      Option


Key Variables in a WAMIL Script

Key variables already exist with default values.

Interface commands reference key global variables.

WAM Interpreter commands alter, act upon, or perform functions based upon the current values of the key global variables.

Below are a few examples of key global variables. A complete discussion follows later.
          WAMI GLOBAL VARIABLE             DEFAULT VALUE
          MSC                                    0
          CELL                                   0
          CCC                                    1
          CCU                                    1
          RA                                     0


Direct Assignment Commands

WAMI key global variables can be altered with WAM Interpreter assignment commands. An example script follows:
                                        MSC         CELL
            SCRIPT                       0           0
            WAM:MSC 5                    5           0
            WAM:CELL 49                  5           49
            WAM:CONNECT TI               5           49
            TI:op:cell 49                5           49
            WAM:CELL 101                 5          101
            TI:op:cell 101               5          101
            WAM:SET CELL 60              5           60
            TI:op:cell 60                5           60
            WAM:DISCONNECT TI            5           60
            WAM:ENDTEST                  5           60


Referencing WAMI Key global variables Within Strings

To reference a WAMI key global variable within a string the suffix VAR is added to the key global variable name.

WAM:PRINT The script CELL number is CELLVAR.

If CELL was set to the value of 49, the above would print to the WAMIL script output file as follows:

The script CELL number is 49.

WAM Interpreter Script Parsing & Execution

Each line of a WAMIL script is parsed and then executed. The interpreter parser and executor each have a four step process:

PARSER

1) Check command syntax.

2) Verify against key global variables if interface command.

3) Check for Parser required flags or states.

4) Set Parser & Executor required flags & states.

EXECUTOR

1) Check for Executor required flags or states.

2) Perform key global variable & keyword substitutions.

3) Execute command.

4) Set Parser & Executor required flags & states.

WAM Interpreter Keywords & Operators

The WAM Interpreter (WAMI) supports path keywords which can be used for the path argument on most commands. Below is a list of these keywords along with a description of their meaning:
         PATH KEYWORD      DESCRIPTION
             CERT          Script located in certified directory.
             HOME          Script located in user's HOME directory.
            SHARE          Script located in WAMI SHARE directory


The WAM Interpreter also supports print character keywords which can be inserted in strings to print special characters or WAMI information. Below is a list of these keywords along with the character, or information, substituted with when referenced with a string:
        KEYWORD            CHARACTER
        REPORTNAME         The WAMIL script report name.
        REPORTPATH         The WAMIL script output file location.
        SCRIPT_NAME        The WAMIL script name.
        SCRIPTPATH         The WAMIL script location
        WAMBLANK           A blank space
        WAMBUFFER          WAM Interpreter buffer
        WAMHOME            The user's current HOME
        WAMNL              new line
        WAMTAB             tab


The WAM Interpreter also supports the use of relational operators within IF-constructs and WHILE-constructs, and mathematical operators with the MATHVAR command. Below is a list of all (in this embodiment of the WAMIL language) the relational operators supported:
            OPERATOR NAME          DESCRIPTION
                  +                Plus
                  -                Minus
                  *                Multiply
                  /                Divide
                  EQ               Equal To
                  GT               Greater Than
                 GTE               Greater Than Or Equal To
                  LT               Less Than
                 LTE               Less Than Or Equal To
                  NE               Not Equal To


WAMI VAR Variables

WAMI Key Variables

In addition to the predefined WAM global variables that have default values, the WAMIL language also supports auxiliary/complimentary global values that are created as needed by the user via the CREATEVAR command.

All key variables have complimentary/auxiliary storage locations, also known as VAR variables. A WAMI key global variable can be set to a value or point to an auxiliary WAMI VAR variable, i.e., storage location.

Associations

When a WAMI key global variable points to a WAMI VAR variable within a script, the WAMI key global variable value is then the current value of the WAMI VAR variable. In such a case, the WAMI key global variable has an association with a WAMI VAR variable. Thus, all (in this embodiment of the WAMIL language) references to the WAMI key global variable will yield the value of the WAMI VAR variable it is associated with.

A key global variable can only (in this embodiment of the WAMIL language) be referenced in an interface command that expects it as an argument. But the WAMI VAR variable can be referenced by any (in this WAMIL language embodiment) command so long as it has been associated with a key global variable. In this sense, WAMI key global variables are private and protected, while WAMI VAR variables are public.

VAR Type Commands

This is a dual function command that will also illicit a response from the WAM GUI platform. An argument passed to script is assigned to a WAMI VAR variable, and an association with the corresponding WAMI key global variable is automatically established. An example script, with an indication of variable values, follows.
                             MSC        CELL         CELLVAR
    SCRIPT                    0           0             ?
    WAM CELLVAR               0        CELLVAR         49
    WAM:MSC 5                 5        CELLVAR         49
    WAM:CONNECT TI            5        CELLVAR         49
    TI:op:cell CELLVAR        5        CELLVAR         49
    WAM:DISCONNECT TI         5        CELLVAR         49
    WAM:ENDTEST               5        CELLVAR         49


The above script if named AUTO1 could be executed from the command line as follows:

WAM21 AUTO1 -cell 49

Inheritance

A WAMI key global variable can inherit the association of another WAMI key global variable by use of the WAM:SET command. An example script, with an indication of variable values, follows.
    SCRIPT             MSC   CELL      CCC       CCU     CCCVAR
                        0      0        1         1         ?
    WAM:MSC5            5      0        1         1         ?
    WAM:CELL 49         5     49        1         1         ?
    WAM:CCCVAR          5     49     CCCVAR       1         2
    WAM:SET CCU         5     49     CCCVAR    CCCVAR       2
    CCC
    WAM:CONNECT         5     49     CCCVAR    CCCVAR       2
    TI
    TI:op:cell 49, ccc   5     49     CCCVAR    CCCVAR       2
    CCVAR, ccu
    CCCVAR
    WAM:DISCON-         5     49     CCCVAR    CCCVAR       2
    NECT TI
    WAM:ENDTEST         5     49     CCCVAR    CCCVAR       2


The above script if named AUTO1 could be executed from the command line as follows:

WAM21 AUTO1 -ccc 2

Association Transfers

A WAMI key global variable association can be transferred to another WAMI key global variable by use of the WAM:SETVAR command. An example script, with an indication of variable values, follows.
    SCRIPT                  CCC       CCU     CCCVAR    CCUVAR
                             1         1         ?         ?
    WAM:MSC 5                1         1         ?         ?
    WAM:CELL 49              1         1         ?         ?
    WAM:CCCVAR            CCCVAR       1         2         ?
    WAM:CCUVAR            CCCVAR    CCUVAR       2         4
    WAM:CONNECT TI        CCCVAR    CCUVAR       2         4
    TI:op:cell 49,        CCCVAR    CCUVAR       2         4
    ccc CCCVAR,
    ccu CCUVAR
    WAM:SETVAR            CCCVAR    CCCVAR       2      CCCVAR
    CCUVAR CCC
    TI:op:cell 49,        CCCVAR    CCCVAR       2      CCCVAR
    ccc CCCVAR,
    ccu CCCVAR
    WAM:DISCONNECT TI     CCCVAR    CCCVAR       2      CCCVAR
    WAM:ENDTEST           CCCVAR    CCCVAR       2      CCCVAR


The above script if named AUTO1 could be executed from the command line as follows: WAM21 AUTO1 -ccc 2 -ccu 4.
            A example WAMIL Script With VAR Variables
    SCRIPT                MSC       CELL        CCC       CCU
                           0          0          1         1
    WAM:MSCVAR          MSCVAR        0          1         1
    WAM:CELLVAR         MSCVAR     CELLVAR       1
    WAM:CCCVAR          MSCVAR     CELLVAR    CCCVAR    CCUVAR
    WAM:CCUVAR          MSCVAR     CELLVAR    CCCVAR    CCUVAR
    WAM:CONNECT TI      MSCVAR     CELLVAR    CCCVAR    CCUVAR
    TI:op:cell CELLVAR,
    ccc CCCVAR,
    ccu CUVAR
    WAM:DISCONNECT      MSCVAR     CELLVAR    CCCVAR    CCUVAR
    TI
    WAM:ENDTEST         MSCVAR     CELLVAR    CCCVAR    CCUVAR


The above script if named AUTO1 could be executed from the command line as follows:

WAM21 AUTO1 -msc 5 -cell 49 -ccc 2 -ccu 4

Referencing WAMI VAR Variables Within Strings

To reference an auxiliary WAMI VAR variable within a string it can (in this embodiment of the WAMIL language) be associated to a WAMI key global variable first. There is no way to directly reference it.

For example, the following example script lines print the value of CELL which has been assigned 49.

WAM:CELL 49

WAM:PRINT The script CELL number is CELLVAR.

If the cell number is passed as an argument during command line execution, for example -cell 101, the following script lines,

WAM:CELLVAR

WAM:PRINT The script CELL number is CELLVAR.

will generate output to the script WAMIL report file as follows:

The script CELL number is 101.

Creating WAMI VAR Variables

WAMI VAR variables can be created with the CREATEVAR command.

The new VAR variable created will be of type integer.

The new VAR variable can be associated with any (in this WAMIL language embodiment) WAMI global variable.

A complimentary WAMI global variable is also created simultaneously, but it is not a key global variable (key variable).

WAMI VARn LIST

Not only (in this embodiment of the WAMIL language) can single variables be set in the WAMIL language, but an interface command can access an entry in any (in this WAMIL language embodiment) array of variables, i.e., a list.

Auxiliary/Complementary WAMI Global Variable LIST

A WAMI key global variable can be set to a value, set to point to a WAMI VAR variable, or set to point to a WAMI VARn variable (an element in a list, i.e., a one-dimensional array).

WAMI VARn variables do not support Inheritance nor Association Transfers because they are elements of a list.

LIST Declaration Commands

A LIST can (in this embodiment of the WAMIL language) first be declared before WAMI VARn variables from a LIST can be used within a script.

A LIST can be declared anywhere within a WAMIL script.

The LIST size is provided as an argument with a LIST declaration command.

VARn Variables

LIST VARn variables are referenced using a numerical index into the LIST that is appended to the text string, VAR. The first VARn variable has an index of 1. An example script with an indication of variable values, follows.
                                        BBA       BBALIST
    SCRIPT                               1           ?
    WAM:MSC 5                            1           ?
    WAM:CELL 49                          1         2 4 6
    WAM:BBALIST 3                        1         2 4 6
    WAM:CONNECT TI                       1         2 4 6
    WAM:SET BBA BBAVAR1                  2         2 4 6
    TI:op:cell 49, bba BBAVAR1           2         2 4 6
    WAM:SET BBA BBAVAR2                  4         2 4 6
    TI:op:cell 49, bba BBAVAR2           4         2 4 6
    WAM:SET BBA BBAVAR3                  6         2 4 6
    TI:op:cell 49, bba BBAVAR3           6         2 4 6
    WAM:DISCONNECT TI                    6         2 4 6
    WAM:ENDTEST                          6         2 4 6


The above script if named AUTO1 could be executed from the command line as follows:

WAM21 AUTO1 -bbalist 2 4 6 -endlist

VARn Type Commands

VARn variable referenced is automatically associated to the key global variables in the script. An example script, with an indication of variable values, follows.
        SCRIPT                           BBA         BBALIST
                                          1             ?
        WAM:MSC5                          1             ?
        WAM:CELL 49                       1           2 4 6
        WAM:BBALIST 3                     1           2 4 6
        WAM:BBAVAR1                    BBAVAR1        2 4 6
        WAM:CONNECT TI                 BBAVAR1        2 4 6
        TI:op:cell 49, bba BBAVAR1     BBAVAR1        2 4 6
        WAM:DISCONNECT TI              BBAVAR1        2 4 6
        WAM:ENDTEST                    BBAVAR1        2 4 6


In line 4 of this example script, the key global variable BBA is associated with the first variable in the complimentary/auxiliary BBA list.

The above script if named AUTO1 could be executed from the command line as follows: WAM21 AUTO1 -bbalist 2 4 6 -endlist

Referencing VARn Variables Within Strings

A VARn variable can be directly referenced within a string, no association needs to be established.

WAM:PRINT The script BBA number is BBAVAR1.

WAMLIST

WAMLIST is a special WAM Interpreter LIST of infinite size.

No LIST size can (in this embodiment of the WAMIL language) be stated upon the declaration of a WAMLIST.

The WAMLIST string, e.g. (in the script below), "Enter Two BBA Numbers," provided as an argument can be used by other applications to prompt a user, or simply as a comment field.

WAMLIST VARn variables referenced outside the LIST return a blank value.

A WAMLIST can be declared anywhere within a WAMIL script. An example script, with an indication of variable values, follows.
    SCRIPT                                 BBA      WAMLIST
                                            1          ?
    WAM:MSC5                                1          ?
    WAM:CELL 49                             1          ?
    WAM:WAMLIST Enter Two BBA Nos.          1         2 4
    WAM:CONNECT TI                          1         2 4
    WAM:SET BBA WAMVAR1                     2         2 4
    TI:op:cell 49, bba WAMVAR1              2         2 4
    WAM:SET BBA WAMVAR2                     4         2 4
    TI:op:cell 49, bba WAMVAR2              4         2 4
    WAM:DISCONNECT TI                       4         2 4
    WAM:ENDTEST                             4         2 4


The above script if named AUTO1 could be executed from the command line as follows:

WAM21 AUTO1 -wamlist 2 4 -endlist

WAMIL Control Flow

Some aspect of the flow control that takes place during execution of a WAMIL script will now be discussed.

WAM Interpreter Buffer

Always holds output of the last interface command executed, unless altered.

Flushed prior to the execution of an interface command.

Can be flushed with WAM Interpreter command WAM:FLUSHBUFF

Can be appended to with WAITQUERY command execution.

Can be overwritten with execution of WAM:INPUT command.

Can be output to a file with execution of the WAM:OUTPUT or WAM:PUTS command.

CONNECT Command

Establishes a session between the WAM Interpreter and the interface provided as an argument.

WAM:CONNECT interface

Sets LFAIL flag if server login attempt fails.

Sets TFAIL flag if an interface command execution times out.

Sets CFAIL flag if an active session unexpectedly disconnects.

For SDP interface, sets SDPPORT flag if no vtty ports are available after a successful login, and SDPFAIL for any failure during the execution of an SDP interface command.

ENDTEST Command

Terminates the WAMIL script.

WAM:ENDTEST

Terminates all (in this embodiment of the WAMIL language) active sessions upon execution.

Can (in this embodiment of the WAMIL language) be included at the end of a script or a syntax error will be generated.

IF:OMSG Construct

Searches the WAM Interpreter buffer for the string provided as an argument.

IF:OMSG string

Argument string can include global-style matching patterns (*, ?, [ ], .backslash.).

It can include references to WAMI key global variables and VARn variables.

A match evaluates as TRUE, while no match evaluates as FALSE. An example script follows.

WAM:MSC 5

WAM:CELL 49

WAM:CCC 4

WAM:CONNECT TI

TI:op:cell 49

IF:OMSG OP:CELL CELLVAR CCC CCCVAR, ACTRVE

THEN:CONTINUE

ELSE:PRINT CCC CCCVAR is not active.

WAM:DISCONNECT TI

WAM:ENDTEST

IF THEN ELSE Construct

Can (in this embodiment of the WAMIL language) be complete and include an IF, and at a minimum one THEN and one ELSE.

Multiple THEN and ELSE command can exist within a construct.

Supports the WAM Interpreter WAITQUERY command which camps on the TI interface. An example script follows.

WAM:MSC 5

WAM:CELL 49

WAM:CCC 4

WAM:CONNECT TI

TI:rst:cell 49, ccc 4

TI:op:cell 49

IF:OMSG OP:CELL CELLVAR CCC CCCVAR, ACTIVE

THEN:CONTINUE

THEN:PRINT CCC CCCVAR is active.

ELSE:WAITQUERY 5 TI 10

WAM:DISCONNECT TI

WAM:ENDTEST

IF THENDO ELSEDO ENDIF Construct

All the commands between the THENDO and ELSEDO constructs are executed if the result of the IF command execution is TRUE, and all (in this embodiment of the WAMIL language) the commands between the ELSEDO and ENDIF are executed if the result of the IF command execution is FALSE.

All WAMIL IF THENDO ELSEDO ENDIF constructs can (in this embodiment of the WAMIL language) be complete and include an IF, a THENDO, an ELSEDO, and an ENDIF.

Any WAMIL IF THEN ELSE construct can be nested within any (in this WAMIL language embodiment) THENDO ELSEDO, or ELSEDO ENDIF construct. Also, IF THENDO ELSEDO ENDIF constructs can be nested within other IF THENDO ELSEDO ENDIF constructs, as desired.

WHILE ENDWHILE Construct

Continuously loops through the execution of a group of commands until WHILE TEST_EXPR evaluates false.

Supports the BREAK: command to break out of the loop at any (in this WAMIL language embodiment) time. An example script follows.

WHILE:TEST_EXPR CELLVAR LT 223

TI:op:cell CELLVAR

WAM:INCRVAR CELLVAR 1

ENDWHILE:

An example WAML Script That Illustrates Control Flow

WAM:MSC 5

WAM:CELL 49

WAM:CCC 4

WAM:CONNECT TI

TI:rst:cell 49, ccc 4

TI:op:cell 49

IF:OMSG OP:CELL CELLVAR CCC CCCVAR, ACTIVE

THENDO:

WAM:PRINT CCC CCCVAR is active script will continue.

ELSEDO:

IF:OMSG OP:CELL CELLVAR CCC CCCVAR, ACTIVE

THEN:CONTINUE

ELSE:WAITQUERY 5 TI 10

IF:OMSG OP:CELL CELLVAR CCC CCCVAR, ACTIVE

THENDO:

ELSEDO:

WAM:PRINT CCC CCCVAR never became active.

WAM:ENDTEST

ENDIF:

ENDIF:

TI:dgn:cell 49, ccc 4

IF:OMSG COMPLETED

THEN:CONTINUE

ELSE:WAITQUERY 5 TI 10

WAM:DISCONNECT TI WAM:ENDTEST

SPOOL Command

The WAMIL SPOOL command which adjust the pause of the spooler.

GET_TI Command

The WAMIL GET_TI command which allows assignment of an output message value to a script VAR variable.

TRACE Command

TRACE command with specified options allows low level tracing of WAMIL commands and variables during a script execution.

TRACE can be turned on with TRACEON command, or off with TRACEOFF command, at any (in this WAMIL language embodiment) time during execution of a script.

Opens a TRACE display window to allow viewing of actual TRACE during script execution.

Creates a trace log file called, wam.tracelog, which is located in the user's HOME wam.trace sub-directory and is appended to during the execution of any (in this WAMIL language embodiment) TRACE.

The following table indicates arguments that can be passed to the TRACE command. It is noted that every (in this embodiment of the WAMIL language) WAM Interpreter command can be traced by substituting the name of the command for the argument, x, that can be appended to the TRACE command.
            TRACE                                OPTION
            WAMI command execution level           x
            WAMI executor states                   i
            WAMI session states                    f
            WAMI variables                         v
            WAMI stack                             s
            WAMI buffer                            o


PAUSE Command

The WAMIL PAUSE command can be used for semi-automation, or to prompt the user for a decision.

Upon execution of the PAUSE command, a box is displayed, prompting the user to decide whether the script execution should be continued or aborted:

File Creation

The WAMIL PUTS command can be used to create files from within a script. The following example script creates a file used to update an APXRCV DB form.

WAM:MSCVAR

WAM:CELLVAR

WAM:ANTVAR

WAM:WAMLIST Enter a value for t_add and a value for t_drop

WAM:PUTS HOME TEMP.dbf t_add=WAMVAR1

WAM:PUTS HOME TEMP.dbf t_drop=WAMVAR2

WAM:PUTAPX ceqface TEMP

WAM:UNIX rm TEMP.dbf

WAM:ENDTEST

Script Looping

A WAMIL script can be looped using the -loop option. In the following example the script AUTO1 is looped 10 times.

WAM21 AUTO1 -loop 10

UNIX Command

The WAMIL UNIX command allows the execution of any (in this WAMIL language embodiment) UNIX executable from within a WAMIL script.

The following example script executes another WAMIL script using the UNIX command, after using the UNIX command to delete a temporary file. The executed WAMIL script process is then stopped after three minutes:

WAM:MSCVAR

WAM:CELLVAR

WAM:ANTVAR

WAM:WAMLIST Enter a value for t_add and a value for t_drop

WAM:PUTS HOME TEMP.dbf t_add=WAMVAR1

WAM:PUTS HOME TEMP.dbf t_drop=WAMVAR2

WAM:PUTAPX ceqface TEMP

WAM:UNIX rm TEMP.dbf

WAM:UNIX WAM21 jt1234 -msc MSCVAR -cell CELLVAR &

WAM:WAIT 180

WAM:UNIX kill -9 WAMVAR

WAM:ENDTEST

WAMI Linker

WAMIL scripts can be linked by creation of a Linker script. The WAM Interpreter LINK:EXEC command can be used to define the execution mode of the linked scripts.

A detailed glossary of WAMI Link commands is presented later in this document.

Serial or Parallel Execution

A linked script can be executed in a serial or parallel fashion.

In a serial fashion execution of the next Linker script command does not start until the linked script has completed execution. WAMI key global variables can be altered by a serially executed linked script.

In a parallel fashion the linked script is launched and becomes independent of the Linker script. WAMI key global variables CANNOT be altered by a script executed in a parallel fashion.

A WAMIL Linker Script

An example WAMIL Linker script below links four WAMIL scripts together. Two of the scripts are executed in a serial fashion:

LINK:EXEC PARALLEL

LINK:SCRIPT HOME jt1234

LINK:SCRIPT HOME jt2023

LINK:EXEC SERIAL

LINK:SCRIPT HOME jt4567

LINK:SCRIPT HOME jt9988

WAM:ENDTEST

The above Linker script if named AUTO1 could be executed from the command line as follows: WAM21 AUTO1 -link.

Linker Script Output

WAMIL Linker scripts generate their own output files. Linker output files also include output from serially executed linked scripts. Linked WAMIL scripts also generate their own output file.

If the above Linker script was named LINKAUTO, execution of the script would generate five separate output files:

LINKAUTO.rpt, jt1234.rpt, jt2023, jt4567.rpt, jt9988.rpt

Commands Embeddable Within Integration Construct Data Structure

A table listing the names of WAMI Interface Commands that can be embedded in the integration construct data structure, according to the invention, follows immediately. More detailed discussions of each of the commands are provided after the table.
                            WAMI Interface Commands
    ADDCE       CGSA          FLUSHTAGS         OC              SG
    ADRS        CLOSE         GEN               OPEN            SPOOL
    ANT         COMMENT       GENVAR            OUTPUT          SU
    ANTVAR      CONFIG        GETAPX            OUTPUTOFF       SW
    APXVAR      CONNECT       GETAPXFLD         OUTPUTON        TIME
    AU          CREATEVAR     GETCELLS          PAUSE           TTMEOUT
    BBA         CSC           GETGEN            PH              TIMER
    BBALIST     CSCVAR        GETLISTVAR        PL              TP
    BBAVAR      DATE          GETROP            PRINT           TRACE
    BBAVARn     DCCH          GETSDP            PUTAPX          TRACEOFF
    CAT         DCS           GET_TI            PUTAPXFLD       TRACEON
    CATLIST     DECR          INCR              PUTS            TRKGRP
    CATVARn     DECRVAR       INCRVAR           RA              TRKMBR
    CCC         DELCE         INITIALIZE        RALIST          UNIX
    CCCLIST     DISCONNECT    INPUT             RAVAR           VRADPC
    CCCVAR      DISPLAY       LAC               RAVARn          VRN
    CCCVARn     DL            LAUNCH            REPORT          WAIT
    CCU         DSI           LC                RESTOREWAM      WAM
    CCULIST     ECP           LMT               RG              WAMLIST
    CCUVAR      EMAILME       LOOPCELL          RPT             WAMVAR
    CCUVARn     EMAILRPT      LOOPCELLVARS      SAVEWA          WMMI
    CDMADPC     ENDTEST       MATHVAR           SEND            WMMI_GET
    CE          EXEC          MICROCELL         SET             WMMI_SEND
    CELL        FLUSHBUFF     MSC               SETLISTVAR      WMMI_STOP
    CELLVAR     FLUSHIP       MSCVAR            SETVAR          XMITC


Each WAMIL command in this section will be explained in detail. A quick purpose is presented along with its syntax and an example of the command. There is also a detailed description along with errors generated, if any, and the output generated by the command to the WAMIL report file. If the command alters key variables, these key variables are stated. An example script is also provided for almost all (in this embodiment of the WAMIL language) the commands. Each example is simple, but serves as a basis to enhance understanding of the command in the context of a WAMIL script.

For execution of WAMIL scripts via the WAMI GUI Platform, WAMIL commands with dual functions that also generate a response from the WAMI GUI Platform have a section which discusses how the platform handles the command.

Glossary of WAMI Interface Commands

This section presents a detailed glossary of commands that can be embedded in the integration construct data structure according to the invention. The integration construct data structure, again, is also known as a WAM interface command. These commands are best suited to the WAM Interpreter. They commands can be used in WAMIL scripts to change script variables, input/output parameters, or perform specific functions or capabilities.

Again, a WAM interface command is structured as, e.g.,

WAM:CELL 93

where CELL is the actual WAM interface command and the value of 93 is the command argument.

The glossary begins with the command, ADDCE, and ends with the command, XMITC.

ADDCE

The ADDCE command can be embedded in the integration construct data structure according to the invention.

PURPOSE: This command changes the WAMI global number of channel elements to add the variable, ADDCE, to the value provided as an argument.

SYNTAX: WAM:ADDCE value

EXAMPLE CALL: WAM:ADDCE 2

DESCRIPTION: The ADDCE command sets the WAMI global number of channel elements to add variable to the value provided as an argument. After execution of this command, all (in this embodiment of the WAMIL language) subsequent commands which require use of the global number of channel elements to add variable, and all (in this embodiment of the WAMIL language) IF-construct commands which test the current script global number of channel elements to add variable, will reference the new value.

Execution of this command also disables any (in this WAMIL language embodiment) association which exists between this WAMI global variable and any WAMI VAR variable.

OUTPUT: The following is an example of the output generated to the WAMIL report file, upon execution of an ADDCE command:

Set Number Of Channel Elements to Add To 2

ERRORS: None.

ALTERS: ADDCE

DEFAULT VALUE: ADDCE is set to 0 upon initial startup, and is of type string. The WAM:INITIALIZE command also sets this variable to 0.

SEE ALSO: WAM:INITIALIZE

ADRS

The ADRS command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Changes the WAMI global memory address number variable, ADRS, to the value provided as an argument.

SYNTAX: WAM:ADRS value

EXAMPLE CALL: WAM:ADRS X'500be020,18

DESCRIPTION: The WAM:ADRS command sets the WAMI global memory address number variable to the value provided as an argument. After execution of this command, all (in this embodiment of the WAMIL language) subsequent commands which require use of an memory address number, and all (in this embodiment of the WAMIL language) IF-construct commands which test the current script memory address number, will reference the new value.

Execution of this command also disables any (in this WAMIL language embodiment) association which exists between this WAMI global variable and any WAMI VAR variable.

OUTPUT: The following is an example of the output generated to the WAMIL report file, upon execution of an ADRS command:

Set Memory Address To X'500be020,18

ERRORS: None.

ALTERS: ADRS

DEFAULT VALUE: ADRS is set to NULL upon initial startup, and is of type string. The WAM:INITIALIZE command also sets this variable to NULL.

SEE ALSO: WAM:INITIALIZE

EXAMPLE: The following script lines will set the WAMIL script ADRS variable to X500be020,18 and then execute a TI interface command:

WAM:CELL 49

WAM:CCC 2

WAM:ADRS X500be020,18

TI:dump:cell 49, ccc 2; adrs X500be020,18

ANT

The ANT command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Changes the WAMI global antenna face variable, ANT, to the value provided as an argument.

SYNTAX: WAM:ANT value

EXAMPLE CALL: WAM:ANT 1

DESCRIPTION: The WAM:ANT command sets the WAMI global antenna face variable to the value provided as an argument. After execution of this command, all (in this embodiment of the WAMIL language) subsequent commands which require use of an antenna face number, and all (in this embodiment of the WAMIL language) IF-construct commands which test the current script antenna face number, will reference the new value.

Execution of this command also disables any (in this WAMIL language embodiment) association which exists between this WAMI global variable and any WAMI VAR variable.

OUTPUT: The following is an example of the output generated to the WAMIL report file, upon execution an ANT command:

Set Antenna Face 1

ERRORS: None.

ALTERS: ANT

DEFAULT VALUE: ANT is set to 0 upon initial startup, and is of type integer. The WAM:INITIALIZE command also sets this variable to 0.

SEE ALSO: WAM:INITIALIZE

EXAMPLE: The following script lines will set the WAMIL script ANT variable to 1 and then execute a TI interface command:

WAM:CELL 49

WAM:ANT 1

TI:op:cell 49, sg 0, ant 1, all!

ANTVAR

The ANTVAR command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Declares to the WAM Interpreter, that a value for the WAMI VAR variable ANTVAR will be supplied to the script.

SYNTAX: WAM:ANTVAR

EXAMPLE CALL: WAM:ANTVAR

DESCRIPTION: The WAM:ANTVAR command is a WAMIL declaration command which executes an assignment function. Upon detection of this command, the WAM Interpreter will search the command line arguments for a value to assign to the WAMI VAR variable ANTVAR.

Like standard WAMI VAR variable declaration commands, the execution of this command also enables an association with the WAMI global ANT variable. Therefore, until the WAMI global ANT variable association is transferred to another WAMI VAR variable, or disabled, all (in this embodiment of the WAMIL language) references to the WAMI global ANT variable will use the ANTVAR variable value.

For script syntax, until an actual ANT number is passed as an argument, when a ANTVAR command is used the ANT number within a script shall be referenced as ANTVAR from that point forward.

This command has a dual function and will initiate prompting by the WAMI GUI platform if the script is executed via the platform. For WAMI GUI platform information refer to the WAMI GUI PLATFORM section below.

WAMI GUI PLATFORM: Prior to execution of a WAMIL script, the WAMI GUI platform searches the script for special commands. If a WAM:ANTVAR is encountered the WAMI GUI platform will prompt the user for the script ANTVAR value. Subsequent WAM:ANTVAR commands encountered will not cause additional prompting.

SCRIPTOR: If a ANTVAR command is deleted from the current script, the Scriptor will prompt the user for a ANT number and then insert a WAM:ANT value command in place of the ANTVAR command deleted.

OUTPUT: The following is an example of the output generated to the WAMIL report file, upon execution a ANTVAR command:

Set ANT To Argument Value of 2

ERRORS: If no command line value has been provided, the WAM Interpreter will generate an error and script execution will be aborted.

ALTERS: ANTVAR

DEFAULT VALUE: ANTVAR is set to an unknown state upon initial startup, and is of type integer. The WAM:INITIALIZE command does not reset this WAMI VAR variable.

SEE ALSO: WAM:ANT value

EXAMPLE: The following script executes a TI command for the ANT number supplied:

WAM:MSC 5

WAM:CELL 49

WAM:SG 0

WAM:ANTVAR

WAM:CONNECT TI

TI:op:cell 49, sg 0, ant ANTVAR, all!

WAM:DISCONNECT TI

WAM:ENDTEST

APXVAR

The APXVAR command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Declares to the WAM Interpreter, that a value or string for the WAMI VAR variable APXVAR will be supplied to the script.

SYNTAX: WAM:APXVAR prompt string

EXAMPLE CALL: WAM:APXVAR Enter Neighbor Cell Number

DESCRIPTION: The WAM:APXVAR command is a WAMIL declaration command which executes an assignment function. Upon detection of this command, the WAM Interpreter will (for this embodiment of the WAMIL language) search the command line arguments for a value or string to assign to the WAMI VAR variable APXVAR. Unlike other WAMI VAR variable declaration commands, the execution of this command does not enable an association with a WAMI global variable since there is no complementary APX WAMI global variable.

This command has a dual function. The prompt_string argument, although not used by the WAM Interpreter, will generate a syntax error if omitted. For prompt_string use refer to the WAMI GUI PLATFORM section below.

WAMI GUI PLATFORM: Prior to execution of a WAMIL script, the WAMI GUI platform searches the script for special commands. If a WAM:APXVAR is encountered the WAMI GUI platform will prompt the user, using prompt_string, for the script APXVAR value or string. Subsequent WAM:APXVAR commands encountered will not cause additional prompting.

OUTPUT: The following is an example of the output generated to the WAMIL report file, upon execution an APXVAR command:

Set APXVAR To Argument Value of 173

ERRORS: The prompt_string argument, although not used by the WAM Interpreter, will generate a syntax error if omitted.

If no command line value or string has been provided, the WAM Interpreter will generate an error and script execution will be aborted.

ALTERS: APXVAR

DEFAULT VALUE: APXVAR is set to an unknown state upon initial startup, and is of type string. The WAM:INITLALIZE command does not reset this WAMI VAR variable.

SEE ALSO: WAM:WAMVAR prompt_string

EXAMPLE: The following script adds a neighbor to cell 49:

WAM:MSC 5

WAM:CELL 49

WAM:ANT 1

WAM:SG 0

WAM:APXVAR Enter Neighbor Cell Number

WAM:PUTAPXFLD fci cdmanbr_listl.ncs_c[1]=APXVAR

WAM:ENDTEST

AU

The AU command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Changes the WAMI global cell amplifier unit number variable, AU, to the value provided as an argument.

SYNTAX: WAM:AU value

EXAMPLE CALL: WAM:AU 1

DESCRIPTION: The WAM:AU command sets the WAMI global cell amplifier unit number variable to the value provided as an argument. After execution of this command, all (in this embodiment of the WAMIL language) subsequent commands which require use of the cell amplifier unit number, and all (in this embodiment of the WAMIL language) IF-construct commands which test the current script cell amplifier unit number, will reference the new value.

Execution of this command also disables any (in this WAMIL language embodiment) association which exists between this WAMI global variable and any WAMI VAR variable.

OUTPUT: The following is an example of the output generated to the WAMIL report file, upon execution an AU command:

Set Amplifier Unit 1

ERRORS: None.

ALTERS: AU

DEFAULT VALUE: AU is set to 1 upon initial startup, and is of type integer. The WAM:INITIALIZE command also sets this variable to 1.

SEE ALSO: WAM:INITIALIZE

EXAMPLE: The following script lines will set the WAMIL script AU variable to 1 and then execute a TI interface command:

WAM:CELL 49

WAM:AU 1

TI:op:cell 49, au 1

BBA

The BBA command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Changes the WAMI global BCR-BIU-ACU trio variable, BBA, to the value provided as an argument.

SYNTAX: WAM:BBA value

EXAMPLE CALL: WAM:BBA 4

DESCRIPTION: The WAM:BBA command sets the WAMI global BBA number variable to the value provided as an argument. After execution of this command, all (in this embodiment of the WAMIL language) subsequent commands which require use of the BCR-BIU-ACU trio number, and all (in this embodiment of the WAMIL language) IF-construct commands which test the current script BCR-BIU-ACU trio number, will reference the new value.

Execution of this command also disables any (in this WAMIL language embodiment) association which exists between this WAMI global variable and any WAMI VAR variable.

OUTPUT: The following is an example of the output generated to the WAMIL report file, upon execution an BBA command:

Set BCR-BIU-ACU Trio 4:

BCR (BaseBand Combiner/Radio)

BIU (Bus Interface Unit)

ACU (Analog Conversion Unit)

ERRORS: None.

ALTERS: BBA

DEFAULT VALUE: BBA is set to 1 upon initial startup, and is of type integer. The WAM:INITIALIZE command also sets this variable to 1.

SEE ALSO: WAM:INITIALIZE

EXAMPLE: The following script will set the WAMIL script BBA variable to 4 and then execute a TI interface command:

WAM:MSC 5

WAM:CELL 49

WAM:CONNECT TI

WAM:BBA 4

TI:op:cell 49, bba 4

WAM:DISCONNECT TI

WAM:ENDTEST

BBALIST

The BBALIST command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Declares to the WAM Interpreter, that a list of WAMI VARn BBA numbers will be supplied to the script.

SYNTAX: WAM:BBALIST value

EXAMPLE CALL: WAM:BBALIST 3

DESCRIPTION: The BBALIST command is a WAMIL declaration command which instructs the WAM Interpreter that a list of BBA numbers will be supplied to the script. This command executes the assignment of the BBA numbers provided to the WAMI VARn BBA List.

Upon detection of this command, the WAM Interpreter will search the command line arguments for the BBA numbers. The total number of BBAs to assign is determined by the value argument of the command. This value declares to the WAM Interpreter the exact size of the BBA List. The BBA numbers within the BBA List can then be referenced within the script as WAMI VARn variables, according to their index position in the list. For example, BBAVAR2 refers to the second BBA number in the BBA List. The order of the BBA numbers provided determine the order of their placement within the BBA List.

Up to 30 BBA numbers can be passed as an argument with this command. Therefore, the maximum acceptable size for the BBA List is 30. If a value larger than 30 is used, the WAM Interpreter will generate an error and script execution will be aborted.

This command has a dual function and will initiate prompting by the WAMI GUI platform if the script is executed via the platform. For WAMI GUI platform information refer to the WAMI GUI PLATFORM section below.

WAMI GUI PLATFORM: Prior to execution of a WAMIL script, the WAMI GUI platform searches the script for special commands. If a WAM:BBALIST command is encountered the WAMI GUI platform will prompt the user for the quantity of BBA numbers defined by the command argument value. Subsequent WAM:BBALIST commands encountered will not cause additional prompting.

SCRIPTOR: If this command is deleted from the current script, the WAMIL Scriptor will delete all (in this embodiment of the WAMIL language) reference BBAVARn commands existing in the script also. The script WAMIglobal BBA variable will then be set to the default value of 1.

The Scriptor will only (in this embodiment of the WAMIL language) allow insertion of one BBALIST command into the current script.

OUTPUT: The following is an example of the output generated to the WAMIL report file upon execution of a BBALIST command:

Total Number of BBA List Values Set To 4

BBA List Values: 2 4 6 8

ERRORS: If a value larger than 30 is used the WAM Interpreter will generate an error and script execution will be aborted.

Any references within a script to a WAMIVARn variable prior to the declaration of the list will generate a syntax error.

If more than one BBALIST command is used in a WAMIL script, only (in this embodiment of the WAMIL language) the first list declaration is used, and therefore takes precedence. Thus subsequent BBALIST commands have no effect.

ALTERS: WAMIVARn BBA List.

DEFAULT VALUE: The WAMIVARn BBA List variable is set to an unknown state upon initial startup, and is of type integer. The WAM:INITIALIZE command does not reset this list.

SEE ALSO: WAM:BBAVARn, WAM:INITIALIZE

EXAMPLE: The following script sets the WAMIVARn BBA List length to 2, and executes a TI command for each BBA number in the list:

WAM:MSC 5

WAM:CELL 49

WAM:BBALIST 2

WAM:CONNECT TI

WAM:BBAVAR1

TI:op:cell 49, bba BBAVAR1

WAM:BBAVAR2

TI:op:cell 49, bba BBAVAR2

WAM:DISCONNECT TI

WAM:ENDTEST

BBAVAR

The BBAVAR command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Declares to the WAM Interpreter, that a value for the WAMIVAR variable BBAVAR will be supplied to the script.

SYNTAX: WAM:BBAVAR

EXAMPLE CALL: WAM:BBAVAR

DESCRIPTION: The WAM:BBAVAR command is a WAMIL declaration command which executes an assignment function. Upon detection of this command, the WAM Interpreter will search the command line arguments for a value to assign to the WAMI VAR variable BBAVAR.

Like standard WAMI VAR variable declaration commands, the execution of this command also enables an association with the WAMI global BBA variable. Therefore, until the WAMI global BBA variable association is transferred to another WAMI VAR variable, or disabled, all (in this embodiment of the WAMIL language) references to the WAMI global BBA variable will use the BBAVAR variable value.

For script syntax, until an actual BBA number is passed as an argument, when a BBAVAR command is used the BBA number within a script shall be referenced as BBAVAR from that point forward.

This command has a dual function and will initiate prompting by the WAMI GUI platform if the script is executed via the platform. For WAMI GUI platform information refer to the WAMI GUI PLATFORM section below.

WAMI GUI PLATFORM: Prior to execution of a WAMIL script, the WAMI GUI platform searches the script for special commands. If a WAM:BBAVAR is encountered the WAMI GUI platform will prompt the user for the script BBAVAR value. Subsequent AM:BBAVAR commands encountered will not cause additional prompting.

SCRIPTOR: If a BBAVAR command is deleted from the current script, the Scriptor will prompt the user for a BBA number and then insert a WAM:BBA value command in place of the BBAVAR command deleted.

OUTPUT: The following is an example of the output generated to the WAMIL report file, upon execution a BBAVAR command:

Set BBA To Argument Value of 8

ERRORS: If no command line value has been provided, the WAM Interpreter will generate an error and script execution will be aborted.

ALTERS: BBAVAR

DEFAULT VALUE: BBAVAR is set to an unknown state upon initial startup, and is of type integer. The WAM:INITIALIZE command does not reset this WAMI VAR variable.

SEE ALSO: WAM:BBA value

EXAMPLE: The following script executes a TI command for the BBA number supplied:

WAM:MSC 5

WAM:CELL 49

WAM:BBAVAR

WAM:CONNECT TI

TI:op:cell 49, bba BBAVAR

WAM:DISCONNECT TI

WAM:ENDTEST

BBAVARn

The BBAVARn command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Instructs the WAM Interpreter to set the WAMI global BBA variable to the value of the referenced WAMI VARn BBA variable, in position n, of the BBA List passed as an argument.

SYNTAX: WAM:BBAVARn

EXAMPLE CALL: WAM:BBAVAR2

DESCRIPTION: The WAM:BBAVARn command is an assignment command. This command can only (in this embodiment of the WAMIL language) be executed if a BBA List has been declared in the script. Upon execution, this command assigns a BBA List variable value to the WAMI global BBA variable.

The value n, can (in this embodiment of the WAMIL language) be a valid index into the BBA List. any (in this WAMIL language embodiment) BBA List value can be assigned to the WAMI global BBA variable by execution of this command, where n is the BBA value location within the BBA List. Upon execution, the BBA number within a script is referenced as BBAVARn from that point forward.

Like standard WAMI VARn variable assignment commands, the execution of this command also enables an association with the WAMI global BBA variable. Therefore, until the WAMI global BBA variable association is transferred to a WAMI VAR variable, or disabled, all (in this embodiment of the WAMIL language) references to the WAMI global BBA variable will use the BBAVARn variable value.

For script syntax, until actual BBA List values are passed as an argument, when a BBAVARn command is used the BBA number within a script shall be referenced as BBAVARn from that point forward.

OUTPUT: The following is an example of the output generated to the WAMIL report file upon execution of a BBAVARn command, when a BBA List of 3 was previously declared, and the BBA List numbers passed as an argument are 2 4 6:

Set BBA To BBAVAR2 Value Of 4

SCRIPTOR: If a BBAVARn command is deleted from the current script, the Scriptor will prompt the user for a BBA number and then insert a WAM:BBA value command in place of the BBAVARn command deleted.

ERRORS: An invalid BBAVARn command used within a script, where n refers to a BBA List index outside the list range, will generate an error. Script execution will then be aborted.

If a BBAVARn command is used within a script in which no BBA List has been declared, the WAM Interpreter will generate an error and terminate execution of the script.

ALTERS: BBA

DEFAULT VALUE: None (in this WAMIL language embodiment).

SEE ALSO: WAM:BBA value, WAM:BBALIST value

EXAMPLE: The following script sets the WAMI VARn BBA List length to 2, and executes a TI command for each BBA number in the list:

WAM:MSC 5

WAM:CELL 49

WAM:BBALIST 2

WAM:CONNECT TI

WAM:BBAVAR1

TI:op:cell 49, bba BBAVAR1

WAM:BBAVAR2

TI:op:cell 49, bba BBAVAR2

WAM:DISCONNECT TI

WAM:ENDTEST

CAT

The CAT command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Changes the WAMI global clock and tone board number variable, CAT, to the value provided as an argument.

SYNTAX: WAM:CAT value

EXAMPLE CALL: WAM:CAT 6

DESCRIPTION: The WAM:CAT command sets the WAMI global CAT variable to the value provided as an argument. After execution of this command, all (in this embodiment of the WAMIL language) subsequent commands which require use of the clock and tone board number, and all (in this embodiment of the WAMIL language) IF-construct commands which test the current script clock and tone board number, will reference the new value.

Execution of this command also disables any (in this WAMIL language embodiment) association which exists between this WAMI global variable and any WAMI VAR variable.

OUTPUT: The following is an example of the output generated to the WAMIL report file, upon execution a CAT command:

Set Clock and Tone Board 6

ERRORS: None.

ALTERS: CAT

DEFAULT VALUE: CAT is set to 0 upon initial startup, and is of type integer. The WAM:INITIALIZE command also sets this variable to 0.

SEE ALSO: WAM:INITIALIZE

EXAMPLE: The following script lines set the WAMIL script CAT variable to 6 and then execute a TI interface command:

WAM:CELL 49

WAM:CAT 6

TI:op:cell 49, cat 6

CATLIST

The CATLIST command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Declares to the WAM Interpreter, that a list of WAMI VARn CAT numbers will be supplied to the script.

SYNTAX: WAM:CATLIST value

EXAMPLE CALL: WAM:CATLIST 3

DESCRIPTION: The CATLIST command is a WAMIL declaration command which instructs the WAM Interpreter that a list of CAT numbers will be supplied to the script. This command executes the assignment of the CAT numbers provided to the WAMI VARn CAT List.

Upon detection of this command, the WAM Interpreter will search the command line arguments for the CAT numbers. The total number of CATs to assign is determined by the value argument of the command. This value declares to the WAM Interpreter the exact size of the CAT List. The CAT numbers within the CAT List can then be referenced within the script as WAMI VARn variables, according to their index position in the list. For example, CATVAR2 refers to the second CAT number in the CAT List. The order of the CAT numbers provided determine the order of their placement within the CAT List.

Up to 10 CAT numbers can be passed as an argument with this command. Therefore, the maximum acceptable size for the CAT List is 10. If a value larger than 10 is used the WAM Interpreter will generate an error and script execution will be aborted.

This command has a dual function and will initiate prompting by the WAMI GUI platform if the script is executed via the platform. For WAMI GUI platform information refer to the WAMI GUI PLATFORM section below.

WAMI GUI PLATFORM: Prior to execution of a WAMIL script, the WAMI GUI platform searches the script for special commands. If a WAM:CATLIST command is encountered the WAMI GUI platform will prompt the user for the quantity of CAT numbers defined by the command argument value. Subsequent WAM:CATLIST commands encountered will not cause additional prompting.

SCRIPTOR: If this command is deleted from the current script, the WAMIL Scriptor will delete all (in this embodiment of the WAMIL language) reference CATVARn commands existing in the script also. The script WAMI global CAT variable will then be set to the default value of 0.

The Scriptor will only (in this embodiment of the WAMIL language) allow insertion of one CATLIST command into the current script.

OUTPUT: The following is an example of the output generated to the WAMIL report file upon execution of a CATLIST command:

Total Number of CAT List Values Set To 3

CAT List Values: 0 6 7

ERRORS: If a value larger than 10 is used the WAM Interpreter will generate an error and script execution will be aborted.

Any references within a script to a WAMI VARn variable prior to the declaration of the list will generate a syntax error.

If more than one CATLIST command is used in a WAMIL script, only (in this embodiment of the WAMIL language) the first list declaration is used, and therefore takes precedence. Thus subsequent CATLIST commands have no effect.

ALTERS: WAMI VARn CAT List.

DEFAULT VALUE: The WAMI VARn CAT List variable is set to an unknown state upon initial startup, and is of type integer. The WAM:INITIALIZE command does not reset this list.

SEE ALSO: WAM:CATVARn, WAM:INITIALIZE

EXAMPLE: The following script sets the WAMI VARn CAT List length to 2, and executes a TI command for each CAT number in the list:

WAM:MSC 5

WAM:CELL 49

WAM:CATLIST 2

WAM:CONNECT TI

WAM:CATVAR1

TI:op:cell 49, cat CATVAR1

WAM:CATVAR2

TI:op:cell 49, cat CATVAR2

WAM:DISCONNECT TI

WAM:ENDTEST

CATVARn

The CATVARn command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Instructs the WAM Interpreter to set the WAMI global CAT variable to the value of the referenced WAMI VARn CAT variable, in position n, of the CAT List passed as an argument.

SYNTAX: WAM:CATVARn

EXAMPLE CALL: WAM:CATVAR2

DESCRIPTION: The WAM:CATVARn command is an assignment command. This command can only (in this embodiment of the WAMIL language) be executed if a CAT List has been declared in the script. Upon execution, this command assigns a CAT List variable value to the WAMI global CAT variable.

The value n, can (in this embodiment of the WAMIL language) be a valid index into the CAT List. any (in this WAMIL language embodiment) CAT List value can be assigned to the WAMI global CAT variable by execution of this command, where n is the CAT value location within the CAT List. Upon execution, the CAT number within a script is referenced as CATVARn from that point forward.

Like standard WAMI VARn variable assignment commands, the execution of this command also enables an association with the WAMI global CAT variable. Therefore, until the WAMI global CAT variable association is transferred to a WAMI VAR variable, or disabled, all (in this embodiment of the WAMIL language) references to the WAMI global CAT variable will use the CATVARn variable value.

For script syntax, until actual CAT List values are passed as an argument, when a CATVARn command is used the CAT number within a script shall be referenced as CATVARn from that point forward.

OUTPUT: The following is an example of the output generated to the WAMIL report file upon execution of a CATVARn command, when a CAT List of 2 was previously declared, and the CAT List numbers passed as an argument are 6 7:

Set CAT To CATVAR2 Value Of 7

SCRIPTOR: If a CATVARn command is deleted from the current script, the Scriptor will prompt the user for a CAT number and then insert a WAM:CAT value command in place of the CATVARn command deleted.

ERRORS: An invalid CATVARn command used within a script, where n refers to a CAT List index outside the list range, will generate an error. Script execution will then be aborted.

If a CATVARn command is used within a script in which no CAT List has been declared, the WAM Interpreter will generate an error and terminate execution of the script.

ALTERS: CAT

DEFAULT VALUE: None (in this WAMIL language embodiment).

SEE ALSO: WAM:CAT value, WAM:CATLIST value

EXAMPLE: The following script sets the WAMI VARn CAT List length to 2, and executes a TI command for each CAT number in the list:

WAM:MSC 5

WAM:CELL 49

WAM:CATLIST 2

WAM:CONNECT TI

WAM:CATVAR1

TI:op:cell 49, cat CATVAR1

WAM:CATVAR2

TI:op:cell 49, cat CATVAR2

WAM:DISCONNECT TI

WAM:ENDTEST

CCC

The CCC command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Changes the WAMI global CDMA Cluster Controller number variable, CCC, to the value provided as an argument.

SYNTAX: WAM:CCC value

EXAMPLE CALL: WAM:CCC 2

DESCRIPTION: The WAM:CCC command sets the WAMI global CCC number variable to the value provided as an argument. After execution of this command, all (in this embodiment of the WAMIL language) subsequent commands which require use of the CDMA Cluster Controller number, and all (in this embodiment of the WAMIL language) IF-construct commands which test the current script CDMA Cluster Controller number, will reference the new value.

Execution of this command also disables any (in this WAMIL language embodiment) association which exists between this WAMI global variable and any WAMI VAR variable.

OUTPUT: The following is an example of the output generated to the WAMIL report file, upon execution a CCC command:

Set CCC 2

ERRORS: None.

ALTERS: CCC

DEFAULT VALUE: CCC is set to 1 upon initial startup, and is of type integer. The WAM:INITIALIZE command also sets this variable to 1.

SEE ALSO: WAM:INITIALIZE

EXAMPLE: The following script will set the WAMIL script CCC variable to 2 and then execute a TI interface command:

WAM:CELL 49

WAM:CCC 2

TI:op:cell 49, ccc 2, ccu 1

CCCLIST

The CCCLIST command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Declares to the WAM Interpreter, that a list of WAMI VARn CCC numbers will be supplied to the script.

SYNTAX: WAM:CCCLIST value

EXAMPLE CALL: WAM:CCCLIST 3

DESCRIPTION: The CCCLIST command is a WAMIL declaration command which instructs the WAM Interpreter that a list of CCC numbers will be supplied to the script. This command executes the assignment of the CCC numbers provided to the WAMI VARn CCC List.

Upon detection of this command, the WAM Interpreter will search the command line arguments for the CCC numbers. The total number of CCCs to assign is determined by the value argument of the command. This value declares to the WAM Interpreter the exact size of the CCC List. The CCC numbers within the CCC List can then be referenced within the script as WAMI VARn variables, according to their index position in the list. For example, CCCVAR2 refers to the second CCC number in the CCC List. The order of the CCC numbers provided determine the order of their placement within the CCC List.

Up to 30 CCC numbers can be passed as an argument with this command. Therefore, the maximum acceptable size for the CCC List is 30. If a value larger than 30 is used the WAM Interpreter will generate an error and script execution will be aborted.

This command has a dual function and will initiate prompting by the WAMI GUI platform if the script is executed via the platform. For WAMI GUI platform information refer to the WAMI GUI PLATFORM section below.

WAMI GUI PLATFORM: Prior to execution of a WAMIL script, the WAMI GUI platform searches the script for special commands. If a WAM:CCCLIST command is encountered the WAMI GUI platform will prompt the user for the quantity of CCC numbers defined by the command argument value. Subsequent WAM:CCCLIST commands encountered will not cause additional prompting.

SCRIPTOR: If this command is deleted from the current script, the WAMIL Scriptor will delete all (in this embodiment of the WAMIL language) reference CCCVARn commands existing in the script also. The script WAMI global CCC variable will then be set to the default value of 1.

The Scriptor will only (in this embodiment of the WAMIL language) allow insertion of one CCCLIST command into the current script.

OUTPUT: The following is an example of the output generated to the WAMIL report file upon execution of a CCCLIST command:

Total Number of CCC List Values Set To 3

CCC List Values: 2 4 6

ERRORS: If a value larger than 30 is used the WAM Interpreter will generate an error and script execution will be aborted.

Any references within a script to a WAMI VARn variable prior to the declaration of the list will generate a syntax error.

If more than one CCCLIST command is used in a WAMIL script, only (in this embodiment of the WAMIL language) the first list declaration is used, and therefore takes precedence. Thus subsequent CCCLIST commands have no effect.

ALTERS: WAMI VARn CCC List.

DEFAULT VALUE: The WAMI VARn CCC List variable is set to an unknown state upon initial startup, and is of type integer. The WAM:INITLALIZE command does not reset this list.

SEE ALSO: WAM:CCCVARn, WAM:INITIALIZE

EXAMPLE: The following script sets the WAMI VARn CCC List length to 2, and executes a TI command for each CCC number in the list:

WAM:MSC 5

WAM:CELL 49

WAM:CCCLIST 2

WAM:CONNECT TI

WAM:CCCVAR1

TI:op:cell 49, ccc CCCVAR1, ccu 1

WAM:CCCVAR2

TI:op:cell 49, ccc CCCVAR2, ccu 1

WAM:DISCONNECT TI

WAM:ENDTEST

CCCVAR

The CCCVAR command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Declares to the WAM Interpreter, that a value for the WAMI VAR variable CCCVAR will be supplied to the script.

SYNTAX: WAM:CCCVAR

EXAMPLE CALL: WAM:CCCVAR

DESCRIPTION: The WAM:CCCVAR command is a WAMIL declaration command which executes an assignment function. Upon detection of this command, the WAM Interpreter will search the command line arguments for a value to assign to the WAMI VAR variable CCCVAR.

Like standard WAMI VAR variable declaration commands, the execution of this command also enables an association with the WAMI global CCC variable. Therefore, until the WAMI global CCC variable association is transferred to another WAMI VAR variable, or disabled, all (in this embodiment of the WAMIL language) references to the WAMI global CCC variable will use the CCCVAR variable value.

For script syntax, until an actual CCC number is passed as an argument, when a CCCVAR command is used the CCC number within a script shall be referenced as CCCVAR from that point forward.

This command has a dual function and will initiate prompting by the WAMI GUI platform if the script is executed via the platform. For WAMI GUI platform information refer to the WAMI GUI PLATFORM section below.

WAMI GUI PLATFORM: Prior to execution of a WAMIL script, the WAMI GUI platform searches the script for special commands. If a WAM:CCCVAR is encountered the WAMI GUI platform will prompt the user for the script CCCVAR value. Subsequent WAM:CCCVAR commands encountered will not cause additional prompting.

SCRIPTOR: If a CCCVAR command is deleted from the current script, the Scriptor will prompt the user for a CCC number and then insert a WAM:CCC value command in place of the CCCVAR command deleted.

OUTPUT: The following is an example of the output generated to the WAMIL report file, upon execution a CCCVAR command:

Set CCC To Argument Value of 8

ERRORS: If no command line value has been provided, the WAM Interpreter will generate an error and script execution will be aborted.

ALTERS: CCCVAR

DEFAULT VALUE: CCCVAR is set to an unknown state upon initial startup, and is of type integer. The WAM:INITIALIZE command does not reset this WAMI VAR variable.

SEE ALSO: WAM:CCC value

EXAMPLE: The following script executes a TI command for the CCC number supplied:

WAM:MSC 5

WAM:CELL 49

WAM:CCCVAR

WAM:CONNECT TI

TI:op:cell 49, ccc CCCVAR, ccu 1

WAM:DISCONNECT TI

WAM:ENDTEST

CCCVARn

The CCCVARn command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Instructs the WAM Interpreter to set the WAMI global CCC variable to the value of the referenced WAMI VARn CCC variable, in position n, of the CCC List passed as an argument.

SYNTAX: WAM:CCCVARn

EXAMPLE CALL: WAM:CCCVAR2

DESCRIPTION: The WAM:CCCVARn command is an assignment command. This command can only (in this embodiment of the WAMIL language) be executed if a CCC List has been declared in the script. Upon execution, this command assigns a CCC List variable value to the WAMI global CCC variable.

The value n, can (in this embodiment of the WAMIL language) be a valid index into the CCC List. Any (in this WAMIL language embodiment) CCC List value can be assigned to the WAMI global CCC variable by execution of this command, where n is the CCC value location within the CCC List. Upon execution, the CCC number within a script is referenced as CCCVARn from that point forward.

Like standard WAMI VARn variable assignment commands, the execution of this command also enables an association with the WAMI global CCC variable. Therefore, until the WAMI global CCC variable association is transferred to a WAMI VAR variable, or disabled, all (in this embodiment of the WAMIL language) references to the WAMI global CCC variable will use the CCCVARn variable value.

For script syntax, until actual CCC List values are passed as an argument, when a CCCVARn command is used the CCC number within a script shall be referenced as CCCVARn from that point forward.

OUTPUT: The following is an example of the output generated to the WAMIL report file upon execution of a CCCVARn command, when a CCC List of 3 was previously declared, and the CCC List numbers passed as an argument are 2 4 6:

Set CCC To CCCVAR2 Value Of 4

SCRIPTOR: If a CCCVARn command is deleted from the current script, the Scriptor will prompt the user for a CCC number and then insert a WAM:CCC value command in place of the CCCVARn command deleted.

ERRORS: An invalid CCCVARn command used within a script, where n refers to a CCC List index outside the list range, will generate an error. Script execution will then be aborted.

If a CCCVARn command is used within a script in which no CCC List has been declared, the WAM Interpreter will generate an error and terminate execution of the script.

ALTERS: CCC

DEFAULT VALUE: None (in this WAMIL language embodiment).

SEE ALSO: WAM:CCC value, WAM:CCCLIST value

EXAMPLE: The following script sets the WAMI VARn CCC List length to 2, and executes a TI command for each CCC number in the list:

WAM:MSC 5

WAM:CELL 49

WAM:CCCLIST 2

WAM:CONNECT TI

WAM:CCCVAR1

TI:op:cell 49, ccc CCCVAR1, ccu 1

WAM:CCCVAR2

TI:op:cell 49, ccc CCCVAR2, ccu 1

WAM:DISCONNECT TI

WAM:ENDTEST

CCU

The CCU command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Changes the WAMI global CDMA Channel Unit number variable, CCU, to the value provided as an argument.

SYNTAX: WAM:CCU value

EXAMPLE CALL: WAM:CCU 2

DESCRIPTION: The WAM:CCU command sets the WAMI global CCU number variable to the value provided as an argument. After execution of this command, all (in this embodiment of the WAMIL language) subsequent commands which require use of the CDMA Channel Unit number, and all (in this embodiment of the WAMIL language) IF-construct commands which test the current script CDMA Channel Unit number, will reference the new value.

Execution of this command also disables any (in this WAMIL language embodiment) association which exists between this WAMI global variable and any WAMI VAR variable.

OUTPUT: The following is an example of the output generated to the WAMIL report file, upon execution a CCU command:

Set CCU 2

ERRORS: None.

ALTERS: CCU

DEFAULT VALUE: CCU is set to 1 upon initial startup, and is of type integer. The WAM:INITIALIZE command also sets this variable to 1.

SEE ALSO: WAM:INITIALIZE

EXAMPLE: The following script will set the WAMIL script CCU variable to 2 and then execute a TI interface command:

WAM:CELL 49

WAM:CCU 2

TI:op:cell 49, ccc 1, ccu 2

CCULIST

The CCULIST command can be embedded in the integration construct data structure according to the invention.

PURPOSE: Declares to the WAM Interpreter, that a list of WAMI VARn CCU numbers will be supplied to the script.

SYNTAX: WAM:CCULIST value

EXAMPLE CALL: WAM:CCULIST 3

DESCRIPTION: The CCULIST command is a WAMIL declaration command which instructs the WAM Interpreter that a list of CCU numbers will be supplied to the script. This command executes the assignment of the CCU numbers provided to the WAMI VARn CCU List.

Upon detection of this command, the WAM Interpreter will search the command line arguments for the CCU numbers. The total number of CCUs to assign is determined by the value argument of