Table of Contents Index NMS Glossary Previous Page Next Page Version


Chapter 3

Creating OAM Configuration Files


3.1 Introduction
3.2 Configuration File Overview
3.3 Creating a System Configuration File
3.3.1 Specifying Configurations for Boards
Mandatory Statements
Specifying Keyword Files for Boards
3.3.2 Specifying Configurations for Non-Board Objects
3.3.3 Sample System Configuration File
3.4 Keyword Files
3.4.1 Keyword File Syntax
3.4.2 Sample Keyword File
3.5 Keywords
3.5.1 Keyword Name/Value Pairs
3.5.2 Struct Keywords
3.5.3 Array Keywords
3.5.4 Array Keyword Expansion

3.1 IntroductionTop of Page

Once you have determined the internal layout of your system, create OAM configuration files describing the layout. Then run oamsys to initialize the OAM database based on the information in the file.

This chapter describes how to create configuration files. The following chapters describe how to start CT Access and run oamsys to complete the process.

3.2 Configuration File OverviewTop of Page

To set up OAM, create a system configuration file. This file contains:

When oamsys runs, a managed object is created for each board. A record is created for each object in the OAM database, containing default parameter settings. Then the settings in the configuration files are added to the record.

If your system contains more than one board with the same configuration, you can use the same keyword file for each of these boards.

Several sample keyword files are supplied with your hardware installation. Each of these files configures the board to use a different protocol (for example, wink start or off-premises station). You can reference these files in your system configuration file, or modify them if you wish. For more information about the sample files supplied for your hardware, refer to the hardware documentation.


chap30.gif

Figure 13. OAM Configuration Files

3.3 Creating a System Configuration FileTop of Page

A system configuration file is an ASCII text file. Typically, this file is named oamsys.cfg. By default, oamsys looks for a file with this name when it starts up.

Note: The syntax of system configuration files used by oamsys is significantly different from the AG configuration files used by agmon. Configuration files are not interchangeable between oamsys and agmon. For more information about migration from agmon configuration files, refer to Appendix B.

A sample system configuration file can be found in:

Statements within the system configuration file appear one to a line. Any text appearing after a pound sign (#) is a comment, and is ignored. Statements in all configuration files are case-insensitive, except where operating system conventions prevail (for example, filenames under UNIX).

3.3.1 Specifying Configurations for BoardsTop of Page

The system configuration file is divided into multiple sections, one for each board. Each section is headed with the name of the board, in square brackets ([ ]):

[My board]

Note: Board names must be unique.

Below each board name are statements which apply to the board. Each statement appears on its own line. Each statement consists of a keyword name, followed by an equals sign (=) and then a value:

keyword_name=value

Mandatory StatementsTop of Page

In the section for each board, the following statements must appear:
Keyword

Description

Product

The name of the board product. To learn how to retrieve a list of valid strings to use here, see Section 6.3.1.

Number

The board number. Use any integer from 0 to 32767. Each board's number must be unique.

Bus

The PCI bus number. The bus:slot location for each board must be unique.

Slot

The PCI slot number. The bus:slot location for each board must be unique.

Specifying Keyword Files for BoardsTop of Page

To specify a keyword file for the board, use the File keyword:

File = myfile.cfg

You can specify more than one keyword file. Specify the filenames on a single line following the File keyword, separated by whitespace:

File = file1.cfg file2.cfg file3.cfg

Alternatively, you can specify multiple File keywords, one to a line:

File = file1.cfg
File = file2.cfg
File = file3.cfg

To include embedded whitespace in a filename, surround the name with quotation marks:

File = "My Configuration File.cfg"

By default, oamsys searches for the keyword files listed with this keyword in the same way it searches for the system configuration file itself (see Section 5.2.1). To reference a file in another directory, specify the directory along with the filename:

File = c:\mycyf\file1.cfg

Keywords are set in the order in which oamsys encounters them in the files. Specifying a setting for a keyword in more than one file is not recommended.

Note: In addition to (or instead of) keyword file names, you can specify keyword settings for a board directly in the board's section in the system configuration file. Use the keyword syntax described in Section 3.5.

3.3.2 Specifying Configurations for Non-Board ObjectsTop of Page

In addition to sections for boards, the system configuration file can include sections containing configuration information for non-board objects (such as EMCs, board plug-ins, or the OAM Supervisor).

The section for each object is headed with the object's name, in square brackets
([ ]):

[Supervisor]

The object name for the OAM Supervisor is Supervisor. The object name for a plug-in or EMC is its filename (for example, hotswap.emc).

Below each board name are keyword settings, specified as described in Section 3.5. For example:

[Supervisor]
AutoStartEnabled=Yes
AutoStopEnabled=Yes

The File statement can also be used here, to specify a keyword file containing settings for the object:

[Supervisor]
File=supvparms.cfg

To learn what keywords can be set for board plug-ins, refer to the board-specific documentation. To learn what keywords can be set for EMCs or the OAM Supervisor, refer to the OAM Service Developer's Reference Manual.

3.3.3 Sample System Configuration FileTop of Page

The following system configuration file describes two CG 6000C boards, one at bus 0, slot 20, and the other at bus 0, slot 21. The first board is assigned keyword file a6wnk.cfg, which sets up the board to use the wink start protocol. The second board uses keyword file a6ops.cfg, which sets up the board to use the off station premises protocol. Supervisor keywords are set to cause boards to auto-start when the system boots or when they are Hot Swap inserted, and to auto-stop when the system shuts down:

# This is the OAM system configuration file.
# It describes all the boards in my system.

[My board]
Product = CG6000_QUAD
Number = 1
Bus = 0
Slot = 20
File = a6wnk.cfg #Wink Start protocol

[My other board]
Product = CG6000_QUAD
Number = 2
Bus = 0
Slot = 21
File = a6ops.cfg #Off Premises Station protocol

[Supervisor]
AutoStartEnabled=Yes
AutoStopEnabled=Yes

3.4 Keyword FilesTop of Page

A keyword file contains keyword settings. When you create your system configuration file, you can reference one or more keyword files to use for the boards in your system (see Section 3.3). When you run oamsys, the utility adds the settings for each board to the OAM database.

Several sample keyword files are supplied with your hardware installation. Each of these files configures the board to use a different protocol (for example, wink start or off-premises station). You can reference these files in your system configuration file, or modify them if you wish. For more information about the sample files supplied for your hardware, refer to the hardware documentation.

For detailed descriptions of the keywords supported for your board, refer to the board-specific documentation.

Note: If your system contains more than one board with the same configuration, you can use the same keyword file for each of these boards.

3.4.1 Keyword File SyntaxTop of Page

A keyword file is an ASCII text file. Typically, the file has the extension .cfg.

Within the file, each statement appears on its own line. A line beginning with a pound sign (#) denotes a comment, and is ignored. If a line ends with a backslash (\), the next line is assumed to be a continuation of the line.

Note: The syntax of keyword files is significantly different from that used by agmon. Keyword files are not interchangeable between OAM and agmon. For more information about migration from agmon configuration files, refer to Appendix B.

3.4.2 Sample Keyword FileTop of Page

The following keyword file configures a CG 6000C board to run with NOCC. Note that no board-specific information is included in keyword files (board ID information, etc.).

#
#     c6nocc.cfg
#     CG 6000 configuration file
#
#     This file configures the board to run Voice with NOCC.
#
                                                                                                                                                                                                    
Clocking.HBus.ClockMode                          = STANDALONE
Clocking.HBus.ClockSource                        = OSC
Clocking.HBus.ClockSourceNetwork                 = 1
TCPFiles                                         = nocc
DSPStream.VoiceIdleCode[0..3]                    = 0x7F
DSPStream.SignalIdleCode[0..3]                   = 0x00
NetworkInterface.T1E1[0..3].Type                 = T1
NetworkInterface.T1E1[0..3].Impedance            = DSX1
NetworkInterface.T1E1[0..3].LineCode             = B8ZS
NetworkInterface.T1E1[0..3].FrameType            = ESF
NetworkInterface.T1E1[0..3].SignalingType        = CAS
DSP.C5x[0..31].Libs[0]                           = cg6klibu
DSP.C5x[0..31].XLaw                              = MU_LAW
DSP.C5x[1..31].Files                             = voice tone dtmf echo \
                                                   rvoice callp ptf wave \
                                                   oki ima gsm_ms g726 mf
DSP.C5x[0].Files                                 = qtsignal tone dtmf echo \
                                                   callp NULL NULL
Resource[0].Name                                 = RSC1
Resource[0].Size                                 = 120
Resource[0].TCPs                                 = nocc
################################################################
# Before modifying this resource definition string refer to the CG6000 
# Installation and Developers Manual.
#################################################################
Resource[0].Definitions         = ( dtmf.det_all & echo.ln20_apt25 & \
ptf.det_2f & tone.gen & callp.gnc & ptf.det_4f & ( (rvoice.rec_mulaw & \
rvoice.play_mulaw) | (rvoice.rec_alaw & rvoice.play_alaw) | \
(rvoice.rec_lin & rvoice.play_lin) | (voice.rec_16 & (voice.play_16_100 | \
voice.play_16_150 | voice.play_16_200)) | (voice.rec_24 & \
(voice.play_24_100 | voice.play_24_150 | voice.play_24_200)) | \
(voice.rec_32 & (voice.play_32_100 | voice.play_32_150 | \
voice.play_32_200)) | (voice.rec_64 & (voice.play_64_100 | \
voice.play_64_150 | voice.play_64_200)) | (wave.rec_11_16b & \
wave.play_11_16b) | (wave.rec_11_8b & wave.play_11_8b) | (oki.rec_24 & \
(oki.play_24_100 | oki.play_24_150 | oki.play_24_200)) | (oki.rec_32 & \
(oki.play_32_100 | oki.play_32_150 | oki.play_32_200)) | (ima.rec_24 & \
ima.play_24) | (ima.rec_32 & ima.play_32) | (gsm_ms.frgsm_rec & \
gsm_ms.frgsm_play) | g726.rec_32 | g726.play_32) )
DLMFiles[0]                                      = cg6krun
DebugMask                                        = 0x0

3.5 KeywordsTop of Page

This section describes the different types of keywords, and how you can specify them in configuration files.

3.5.1 Keyword Name/Value PairsTop of Page

In its simplest form, a statement consists of a keyword name, followed by an equals sign (=) and then a value:

keyword_name= value


keyword_name denotes a parameter, and value indicates the value to assign the parameter:

AutoStart = YES


For a list of valid keywords for a managed object, see the manual for the device you are configuring. OAM Supervisor keywords, Clock Management EMC keywords, and Hot Swap EMC keywords are listed in the OAM Service Developer's Reference Manual.

3.5.2 Struct KeywordsTop of Page

Many keywords are organized into groups, called structs. Keywords within the struct have related functionality. Each struct has a name. The keyword name for each keyword in the struct consists of the struct name, followed by a period (.) and then the keyword (see Figure 14). The struct name within each keyword name is a Struct keyword:


chap31.gif

Figure 14. Struct Keyword Names


Structs can contain structs. In the following example, struct Clocking contains structs Hbus and MVIP:

Clocking.HBus.ClockMode = MASTER_A
Clocking.HBus.AutoFallBack = YES
Clocking.MVIP.ClockRef = SEC8K
Clocking.MVIP.AutoFallBack = NO


In this example, Clocking, Hbus, and MVIP are Struct keywords.

3.5.3 Array KeywordsTop of Page

Many keywords are organized into arrays: lists of items of the same type. Each element of the array can have a unique value.

The index for an array keyword appears as a suffix, surrounded by square brackets. Each index is zero-based:

TCPFile[0] = nocc


A struct can contain arrays:

DSPStream.SignalIdleCode[0] = 0x00
DSPStream.VoiceIdleCode[0] = 0x00
DSPStream.SignalIdleCode[1] = 0x00
DSPStream.VoiceIdleCode[1] = 0x00


It is also possible to have an array of structs:

Resource[0].Name = RSC1
Resource[0].Size = 120
Resource[0].FileName[0] = myfile.foo
Resource[0].FileName[1] = myfile2.foo
Resource[0].SpanEnable=AUTO
Resource[1].Name = RSC1
Resource[1].Size = 60
Resource[1].FileName[0] = myfile.foo
Resource[1].SpanEnable=AUTO


For any array keyword xxx, xxx.Count indicates the number of elements in the array. For example:

Resource.Count=2


xxx.Count is automatically updated for each element added or removed from an array. This value cannot be set directly.

3.5.4 Array Keyword ExpansionTop of Page

For convenience, there is a shorthand method of assigning values to keywords in an array.

Note: oamcfg performs keyword expansion, not OAM. When specifying keywords and values using the OAM service API, do not use this keyword expansion syntax.

Multiple keyword names can be assigned the same value in a single line, as follows:
Statement

Expanded Equivalent

keyword[0..2] = value

keyword[0] = value
keyword[1] = value
keyword[2] = value

keyword[0-2] = value

(same as above)

keyword[1,3,5] = value

keyword[1] = value
keyword[3] = value
keyword[5] = value

keyword[0..3,5..7,9] = value

keyword[0] = value
keyword[1] = value
keyword[2] = value
keyword[3] = value
keyword[5] = value
keyword[6] = value
keyword[7] = value
keyword[9] = value

In a keyword name consisting of multiple array keywords separated by periods, a separate range can be specified for each keyword in the name:
Statement

Expanded Equivalent

kywd1[1].kywd2[1..2] = value

kywd1[1].kywd2[1] = value
kywd1[1].kywd2[2] = value

kywd1[1..3].kywd2[1..2] = value

kywd1[1].kywd2[1] = value
kywd1[1].kywd2[2] = value
kywd1[2].kywd2[1] = value
kywd1[2].kywd2[2] = value
kywd1[3].kywd2[1] = value
kywd1[3].kywd2[2] = value

Multiple values for keywords in an array can be specified on a single line, separated by whitespace. To include whitespace in a value, the value is surrounded with quotation marks. Values are assigned to keywords in numerical order, starting with 0. The array keyword is specified without the square brackets or index value (for example, Resource for Resource[x]):
Statement

Expanded Equivalent

keyword = val1 val2 val1 val4

keyword[0] = val1
keyword[1] = val2
keyword[2] = val1
keyword[3] = val4

keyword = val1 val2 "val 1" val4

keyword[0] = val1
keyword[1] = val2
keyword[2] = "val 1"
keyword[3] = val4

kywd1[1..3].kywd2[1..2].list = val1 val2

kywd1[1].kywd2[1].list[0] = val1

kywd1[1].kywd2[1].list[1] = val2

kywd1[1].kywd2[2].list[0] = val1

kywd1[1].kywd2[2].list[1] = val2

kywd1[2].kywd2[1].list[0] = val1

kywd1[2].kywd2[1].list[1] = val2

kywd1[2].kywd2[2].list[0] = val1

kywd1[2].kywd2[2].list[1] = val2

kywd1[3].kywd2[1].list[0] = val1

kywd1[3].kywd2[1].list[1] = val2

kywd1[3].kywd2[2].list[0] = val1

kywd1[3].kywd2[2].list[1] = val2



Table of Contents Index NMS Glossary Previous Page Next Page Version


Want to send us feedback on our documentation? Email: Tech_Pubs@nmss.com
Copyright © 2000, Natural MicroSystems, Inc. All rights reserved.