|
|
The Agent Communications Broker (ACB) provides a complete, self-contained, multi-agent execution environment. It provides a multi-agent platform that can dynamically launch applications in response to a passed token in a startapp request as configured through the schedule table. It can start STATIC_NOWAIT agents, which require no startapp, and STATIC agents that are loaded before receiving the startapp but still require a startapp to complete initialization. The ACB also binds the network objects required for agent execution. It monitors and manages agent instances for normal and abnormal termination and state transition conditions.
![]() |
Note An agent instance is a single execution of a particular agent. |
This section describes the configuration of the following:
Groups can be defined to differentiate billing records (using an account code) for different sets of users. They are also used to manage the maximum number of agent instances allowed by any one group. DAP groups are similar in concept to UNIX groups defined in /etc/group; however, there is no linkage between the two.
Step 2 Log in as spmaster.
Step 3 Edit $PARMLIB/parms/APP/Group.<hostname>. Each GROUP entry has four parameters:
Example
GROUP GroupName GroupNumber AccountCode MaxGroupInstances
Refer to Table 9-1and Table 9-2.
| Parameter Name | Description | Valid Values and Defaults |
|---|---|---|
The character name of the group. | 1 - 8 characters. Default not applicable. | |
An arbitrary number assigned to the group. | Any signed 32-bit integer except 0, which is reserved for the UNKNOWN group. Default not applicable. | |
A character string used for billing records. | 1 - 8 characters. Default not applicable. | |
The maximum number of agent instances that are allowed to execute at one time for this group on this ACB host. | Any positive integer. (The effective limit is dictated by the capacity of your computer system to handle load.) This number must not be greater than the MaxInstances attribute of the ACB. Default not applicable. |
#------------------------------------------------------------------ |
The schedule table contains information about how and when applications should be started. This file is used only by the ACB. The ACB reads the schedule table at startup. When the ACB is first started, it starts all STATIC and STATIC_NOWAIT agents. In addition, the resched command can dynamically reload the schedule table into the memory of an ACB instance that is up and operational.
An agent can be configured to allow STATIC, STATIC_NOWAIT, and DYNAMIC instances, provided you do not use the same application and token for both. You cannot exceed the maximum number of instances indicated by the MaxInstances parameter configured for the ACB.
![]() |
Note An application must be configured according to how it is designed or configured. For example, you cannot safely run an application that is designed to run dynamically as a STATIC_NOWAIT application or vice versa. Applications are either designed to be persistent or they are not. The file also allows entries called STATIC and EXTERNAL, but these entries are not recommended for use with uOne. |
A STATIC_NOWAIT application does not wait for an external event to start it: it starts when the ACB starts. The maximum number of agents started is determined by the MaxInstances. Any changes to the schedule table will not affect a STATIC_NOWAIT application that is operational until the application is killed and restarted or if the ACB is stopped and restarted.
The DYNAMIC entries specify dynamic applications. These applications are started by an external event (startapp), such as by an incoming call or a token passed by MWI_Notify. The maximum number of applications that can potentially be started is determined by the MaxInstances. Any changes to the schedule table will affect a DYNAMIC agent upon the next instance. An instance is simply one process of the application being launched.
Both STATIC_NOWAIT and DYNAMIC applications can be either persistent or non-persistent. However, it is unwise for a STATIC_NOWAIT application to be non-persistent. An application that is non-persistent will terminate after it has completed its task. For example, a uOne application instance will go away after a call session is completed for either call answer service or subscriber services. On the other hand, the FaxPrint application is persistent: it continues to run even when there are no more redirected faxes to act upon.
DYNAMIC instances above. The default value is 48.
Step 2 Log in as spmaster.
Step 3 Edit $PARMLIB/parms/APP/Schedule.<hostname>. Each DYNAMIC entry has seven (or eight) parameters. Each STATIC_NOWAIT entry has eight (or nine) parameters.
Examples
DYNAMIC entries require:
DYNAMIC GroupNumber StartCMDCount TrapLevel StartTime EndTime StartToken ProgramName ProgramParameters
(where ProgramParameters are optional)
STATIC_NOWAIT entries require:
STATIC_NOWAIT GroupNumber InstanceCount TrapLevel StartTime EndTime StartToken ProgramName ProgramParameters
(where ProgramParameters are optional)
Step 4 Use umcli (see the uOne Operations Manual) to reload the schedule table into the ACB's memory. These changes will take effect on the next instance of a dynamic application. It will take effect on the next load of the STATIC_NOWAIT applications.
| Parameter Name | Description | Valid Values and Defaults | ||
|---|---|---|---|---|
The number of the group to associate with the application when it is launched. See $PARMLIB/~/APP/Group.<hostname> for valid GroupNames, or to add/modify GroupNames. | Any number except 0, which is reserved for the UNKNOWN group. | |||
For dynamic applications, this is the total number of start commands that this program can be sent. Until implemented, this field should be set to ensure successful operation.
For STATIC_NOWAIT applications, this is the number of applications to start. | For For STATIC_NOWAIT applications, use 1. | |||
The number of times an agent will be started.
| Valid Values: Valid positive integer (>0). Also, can be set to 0 to designate infinite starts. | |||
The trap level.
| Valid Values: 0, 1 0 means trap notification is off and 1 means traps notification is on (e.g., if trap notification is on, traps will be sent when the instance is started as well as notification that the instance has gone away). | |||
For DYNAMIC entries, this is the earliest time of day the program can be launched. For STATIC_NOWAIT entries, this entry is ignored. Always populate this field with an *. | 00:00 to 23:59 inclusive. An * indicates the program should always be selected. | |||
For DYNAMIC entries, this is the latest time of day the program can be launched. For STATIC_NOWAIT entries, this entry is ignored. Always populate this field with an *. | 00:00 to 23:59 inclusive; must be greater than the start time. An * indicates the program should always be selected. | |||
For DYNAMIC entries, this is the token that must be matched to start the program. For STATIC_NOWAIT entries, this entry is ignored. Always populate this field with a unique token. | User defined. Any alphanumeric token. | |||
|
| |||
The path name to the application program to start from the InstancePath. | User defined. If the name starts with a /, it is a full path name; otherwise it is relative to | |||
If there is more than one parameter, the parameters must be separated by a space. | 0 or more parameters. The maximum number of characters supported is 100 characters. | |||
|
Table 9-4 below provides information about the parameters that affect the ACB. Descriptions, default values, and ranges of valid values are listed for each parameter.
Changes to ACB parameters take effect when you start ACB. Therefore, if ACB is running and you make parameter changes, you will need to stop and start ACB.
Step 2 Log in as spmaster.
Step 3 Edit $PARMLIB/parms/APP/Attrib.<hostname> and use:
where x is the value calculated from the "Engineering Considerations" section.
| Attribute | Description | Valid Values and Defaults |
|---|---|---|
Defines the maximum number of instances that can be running at the same time. | Any positive integer. However, the upper limit is effectively determined by the limitations of your computer system to handle load. Default = 48. |
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Posted: Mon Sep 25 20:26:14 PDT 2000
Copyright 1989-2000©Cisco Systems Inc.