.. _command_builders_overview: Command Builders ----------------- You can build a repository of IOS commands to be run when certain events, such as adding an IOS device, occur. Each set of IOS commands and associated event is known as a Command Builder. For a list of events with default set of IOS commands and available variables, see *Local Break Out and Analog Gateway Events, IOS Commands, and Variables*. The default Command Builders exist at the sys.hcs hierarchy level. You can define customized Command Builders at any hierarchy node. When an event occurs, Command Builders nearest (at or above) the hierarchy node of the event are checked first. For instance, if an event occurs at a customer hierarchy level, Command Builders at the customer level are checked before Command Builders at the provider or sys.hcs level. Command Builders at a higher level are checked only if no builders match at a nearer hierarchy level. If no customized Command Builders are defined, the default Command Builders at sys.hcs are checked. Multiple Command Builders may be run for the same event at the same hierarchy node. .. _set_up_a_command_builder: Set up a Command Builder .......................... This procedure sets up a Command Builder that contains an IOS Commands template for an event. .. note:: One event can trigger multiple Command Builders. **To set up a Command Builder**: 1. Log in as provider, reseller, or customer administrator. 2. Set the hierarchy path to the level where you want to define your Command Builder. 3. Choose **Apps Management > IOS > Command Builder**. 4. Click **Add**. 5. Provide the following information: .. tabularcolumns:: |p{3.5cm}|p{12cm}| +------------------------+------------------------------------------+ | Field | Description | +========================+==========================================+ | Name | Enter a unique name for the builder. | | | This field is mandatory. | +------------------------+------------------------------------------+ | Event Name | Select the event that triggers the | | | builder. This field is mandatory | +------------------------+------------------------------------------+ | Description | Enter a description for the builder. | +------------------------+------------------------------------------+ | | Enter the IOS Commands template for the | | Command Template | event, one command per line. You can use | | | macros in the IOS Commands template for | | | variable substitution. | +------------------------+------------------------------------------+ | | Clear the **Enabled** check box to create| | Enabled | a builder but not have it available to | | | run. | +------------------------+------------------------------------------+ | Applicable Device Type | Select the device type that the commands | | | can run on. This field is mandatory. | +------------------------+------------------------------------------+ 6. Click **Save**. .. _clone_a_command_builder: Clone a Command Builder ........................ This procedure clones a Command Builder that contains an IOS Commands template for an event. For instance, use this procedure to modify one of the default Command Builders to suit your needs. .. note:: One event can trigger multiple Command Builders. **To clone a command builder**: 1. Log in as provider, reseller, or customer administrator. 2. Set the hierarchy path to the level where you want to clone an existing Command Builder. 3. Choose **Apps Management > IOS > Command Builder**. 4. Click the Command Builder name you want to clone. 5. Choose **Action > Clone**. 6. Modify the following information as needed: .. tabularcolumns:: |p{3.5cm}|p{12cm}| +------------------------+------------------------------------------+ | Field | Description | +========================+==========================================+ | Name | Enter a unique name for the builder. | | | This field is mandatory. | +------------------------+------------------------------------------+ | Event Name | Select the event that triggers the | | | builder. This field is mandatory | +------------------------+------------------------------------------+ | Description | Enter a description for the builder. | +------------------------+------------------------------------------+ | | Enter the IOS Commands template for the | | Command Template | event, one command per line. You can use | | | macros in the IOS Commands template for | | | variable substitution. | +------------------------+------------------------------------------+ | | Clear the **Enabled** check box to create| | Enabled | a builder but not have it available to | | | run. | +------------------------+------------------------------------------+ | Applicable Device Type | Select the device type that the commands | | | can run on. This field is mandatory. | +------------------------+------------------------------------------+ 7. Click **Save**. .. _view_ios_commands_log: View IOS Commands Log ....................... Using the IOS Commands log, an administrator can see a list of command sets that were triggered by different events. An administrator can copy the IOS Commands template and paste it into the IOS device CLI to be executed. By default, the command sets are listed with the most recent at the top. .. note:: Deleting a hierarchy node, such as a site, deletes all IOS Command Builders and associated IOS Commands templates configured at the hierarchy node. **Perform these steps**: 1. Log in as provider, reseller, or customer administrator. 2. Set the hierarchy path to the level for which you want to view IOS Commands. 3. Choose **Apps Management > IOS > Commands**. A table containing the Command Builders that have been triggered is displayed. The table contains this information: .. tabularcolumns:: |p{4cm}|p{11cm}| +-----------------+--------------------------------------------------+ | Column | Description | +=================+==================================================+ | Timestamp | The time of the event that triggered the Command | | | Builder. | +-----------------+--------------------------------------------------+ | Device Name | The IOS device associated with the event that | | | fired the Command Builder. | +-----------------+--------------------------------------------------+ | Gateway Name | The SIP Local Gateway or Analog Gateway | | | associated with the event that fired the Command | | | Builder. | +-----------------+--------------------------------------------------+ | | The name of the Command Builder that was | | | triggered. | | | | | Command Builder | To view the IOS Commands template associated | | | with a Command Builder, click the Command | | | Builder name. The Command Builder configuration | | | is displayed, including the IOS Commands | | | template. | +-----------------+--------------------------------------------------+ | Description | The description of the Command Builder that was | | | triggered. | +-----------------+--------------------------------------------------+ | Device Deleted | Select this check box if the associated device | | | has been deleted. | +-----------------+--------------------------------------------------+ | Hierarchy | The hierarchy level of the event that triggered | | | the Command Builder. | +-----------------+--------------------------------------------------+ .. _consolidate_ios_commands: Consolidate IOS Commands ......................... To copy IOS commands to an IOS device CLI that is generated by multiple events, follow these steps: **To copy IOS commands**: 1. Log in as provider, reseller, or customer administrator. #. Set the hierarchy path to the customer or site for which you want to consolidate IOS commands. #. Choose **Apps Management > IOS > Consolidate Commands**. #. Click **Add**. #. On the **Consolidate Commands** screen, complete at minimum, the mandatory :ref:`consolidate_commands_fields`. #. Click the required command templates listed in the **Available** list, and click **Select** to move them to the **Selected** list. Click **Remove** to unselect a command template. .. note:: You can change the order of the command templates by clicking **Move Up** and **Move Down**. However, the consolidated commands are generated in chronological order regardless of the order of the selected command templates. #. Click **Save**. The new command consolidation instance appears in the list. #. Click the command consolidation instance you created. In the **Command Template** field, all the commands from the command templates you selected appear in one window. Comments are used to separate and identify the source command templates. You can edit the consolidated commands. Any modifications to the Command consolidation, displays the entire list of commands in a single instance. The commands present earlier to the modification cannot be viewed separately as the commands from the earlier events are treated as a single instance. .. rubric:: Next Steps After you have consolidated the IOS commands you want, copy them from the Commands Template field to the IOS device CLI. .. _consolidate_commands_fields: Consolidate Commands Fields '''''''''''''''''''''''''''''' .. tabularcolumns:: |p{3.5cm}|p{12cm}| +---------------+----------------------------------------------------+ | Field | Description | +===============+====================================================+ | Name \* | Enter a unique name for the command consolidation. | | | This field is mandatory. | +---------------+----------------------------------------------------+ | Description | Enter an optional description for the command | | | consolidation. | +---------------+----------------------------------------------------+ | IOS Device \* | Choose the IOS device from which you want to | | | consolidate commands. | +---------------+----------------------------------------------------+ | | Choose the device types for which you want to | | | consolidate commands. | | | | | | **IOS Device** | | | | | | Choose this to get commands for the IOS device | | Device Type \*| and any SIP Local Gateway or Analog Gateway hosted | | | on that device. | | | | | | **SIP Local Gateway** | | | | | | Choose this to get commands only for the SIP Local | | | Gateway. | | | | | | **Analog Gateway** | | | | | | Choose this to get commands only for the Analog | | | Gateway. | | | | | | You do not get commands for devices that have been | | | deleted. | | | | | | Note: | | | | | | If you select site hierarchy, only specific | | | commands such as IOS Device or SIP Local gateway | | | are displayed. To view both the IOS and Analog | | | gateway commands, choose the customer hierarchy | | | path. | +---------------+----------------------------------------------------+ .. _regenerate_ios_commands: Regenerate IOS Commands ........................ This procedure regenerates IOS commands for events that occurred for the selected device, and removes all old IOS commands for the selected device. Because the variables that are used in generating IOS commands may change, you may want to regenerate IOS commands with the latest configuration. IOS commands can be regenerated for the following devices: * IOS Device * SIP Local gateway * Analog Gateway Regenerating commands for an IOS Device also regenerates commands for any SIP Local gateway or Analog Gateway hosted on the IOS Device. **To regenerate IOS commands**: 1. Log in as provider, reseller, or customer administrator. 2. Choose one of the following depending on the device for which you want to regenerate IOS commands: * **Apps Management > IOS > IOS Devices** for an IOS Device and any gateways it hosts. * **Apps Management > IOS > SIP Local Gateways** for a SIP Local Gateway. * **Apps Management > IOS > Analog Gateways** for an Analog Gateway. 3. Click the device for which you want to regenerate commands. 4. Choose **Action > Regenerate IOS Commands**. IOS commands for the events that had occurred for the selected device are regenerated. All old IOS commands for the selected device are removed. .. rubric:: Next Steps * View the regenerated commands in the IOS Commands log. See :ref:`view_ios_commands_log`.