This
Workflow for Configuring the SyncPack
The following workflows describe how to configure SL1 and PowerFlow to work with the "Webex" SyncPack.
Configuring Webex
Configuring SL1
- Create a SOAP/XML credential to access PowerFlow
- Edit the Webex run book actions
- Enable the Webex run book automations
Configuring PowerFlow
- Create a configuration object
- Align the configuration object and configure the Webex PowerFlow applications
- Schedule the PowerFlow applications
Configuring Webex
The following topics cover how to set up Webex to work with the SyncPack.
Creating a Bot in Webex
Create a bot in Webex:
- Log in to developer.webex.com.
- Select your profile, and then select My Webex Apps.
- Select Create a New App, and then select Create a Bot.
- When you have created the bot, save the access token from the bot. This will be used for posting messages and creating rooms.
- Add the bot that you created to the appropriate team.
Creating a Webhook
Next, you will need to create an API Key in PowerFlow and a webhook in Webex:
- In PowerFlow, go to the API Keys page.
- Select Create API Key and copy the key when it is generated.
- Create the following URL, inserting your PowerFlow IP address and the API key from step 2 where indicated:
- Go to Webhooks - Create a Webhook | Webex for Developers.
- Use the Bot token in Authorization while creating the webhook using the API.
- Add the following parameter values:
https://<Your PowerFlow IP Address>/api/v1/applications/sync_event_status_from_webex_to_sl1/run?PF-APIKEY=<API Key>
- targetUrl. Use the URL you created using your API key.
- resource. attachmentActions
- event. created
Configuring SL1
The following topics cover how to set up your SL1 instance to work with the "Webex" SyncPack.
Creating a SOAP/XML Credential to Access PowerFlow
You will need to create a SOAP/XML credential so that the automation actions included in the "Webex Automation" PowerPack can access your PowerFlow system. The "Webex Automation" PowerPack includes the "PowerFlow Webex Teams" credential, which you can use as a template for the SOAP/XML credential.
To define a SOAP/XML credential using the example credential:
- In SL1, go to the Credentials page (Manage > Credentials).
- Click the wrench icon () for the "PowerFlow WebexTeams" credential. The Credential Editor modal window appears:
- Complete the following fields:
- Name. Type a new name for the credential.
- All Organizations. Toggle on (blue) to align the credential to all organizations, or toggle off (gray) and then select one or more specific organizations from the What organization manages this service? drop-down field to align the credential with those specific organizations.
- URL. Type the URL for your PowerFlow system.
- HTTP Auth User. Type the username for your PowerFlow system.
- HTTP Auth Password. Type the password for your PowerFlow system.
- Click .
- Take note of the SL1-assigned ID number for the new credential on the Credentials page, in the ID column. You will need the ID number when editing the input parameters of the run book actions included in the PowerPack, below.
Editing the Webex Run Book Actions
The "Webex Automation" PowerPack includes run book actions that use the "Run Integration Service Application" action type to trigger the PowerFlow applications that send and receive data to and from Webex. You can specify the credential ID in a JSON structure that you enter in the Input Parameters field in the Action Policy Editor modal.
To edit the run book actions included in the PowerPack:
- In SL1, go to the Actions page (Registry > Run Book > Actions).
- Locate the action policy that you want to use, and then click its wrench icon (). The Editing Action page appears.
- In the Input Parameters field, change the values of the following parameters:
- credential_id. Change the value to the credential ID that you noted earlier when creating a credential for your PowerFlow system in the previous procedure. This parameter is required.
- include_event. Leave the value as "true".
- application_name. Leave the default application value.
- params. Leave the default parameter value.
- Make sure the Action State is set to Enabled, and then click .
Enabling the Webex Run Book Automations
The "Webex Automation" PowerPack includes six standard automation policies that you will need to enable. These policies create Webex channels, acknowledge or clear Webex room notifications, and update SL1 events created from Webex.
The following table shows the run book automation policy, its aligned events, and the run book action that runs in response to the events.
Automation Policy Name | Aligned Events | Run Book Action |
---|---|---|
Webex: Create Channel |
All Events |
Webex: Create Room |
Webex: Created Room Notification - Acknowledge |
All Events |
Webex: Created Room Notification - Acknowledge |
Webex: Created Room Notification - Clear |
All Events |
Webex: Created Room Notification - Clear |
Webex: [Events] - Acknowledge |
All Events |
Webex: Acknowledge |
Webex: [Events] - Add/Update |
All Events |
Webex: Add/Update |
Webex: [Events] - Cleared |
All Events |
Webex: Clear |
To enable the run book automations:
- In SL1, go to the Automation page (Registry > Run Book > Automation).
- Locate a Webex run book automation policy and click its wrench icon (). The Automation Policy Editor page appears.
- Update the following fields:
- Policy State. Select Enabled.
- Policy Priority. Select High to ensure that this PowerFlow automation policy is added to the top of the queue.
- Available Actions. If it is not already selected, select the "Run Integration Service Application: <name>" action that corresponds with the Webex automation policy you selected in step 2, and click the arrows to move it to Aligned Actions.
ScienceLogic highly recommends that you do not make changes to the Policy Type, Repeat Time, or Align With fields or the And event is NOT acknowledged setting.
- Click .
- Repeat steps 2-4 for the remaining Webex run book automation policies.
Configuring PowerFlow
The following topics cover how to set up your PowerFlow instance to work with the "Webex" SyncPack.
Creating a Configuration Object
A configuration object supplies the login credentials and other required information needed to execute the steps for a PowerFlow application. The Configurations page () of the PowerFlow user interface lists all available configuration objects for that system.
You can create as many configuration objects as you need. A PowerFlow application can only use one configuration object at a time, but you can use (or "align") the same configuration object with multiple applications.
For this SyncPack, you can make a copy of the " Config" configuration object, which is the sample configuration file that was installed with the Webex SyncPack. Then you need to align that configuration object to the relevant applications.
The "Sample Webex Config" configuration object contains all of the required variables. Simply update the variables from that object to match your SL1 and Webex settings.
To create a configuration object based on the "Sample Webex Config" configuration object:
- In the PowerFlow user interface, go to the Configurations page ().
- Click the Edit. The Configuration pane appears. button () for the "Sample Webex Config" configuration object and select
- Click Create Configuration pane appears. . The
- Complete the following fields:
- Friendly Name. Type a name for the configuration object that will display on the Configurations page.
- Description. Type a brief description of the configuration object.
- Author. Type the user or organization that created the configuration object.
- Version. Type a version of the configuration object.
-
In the Configuration Data field, update the default variable definitions to match your PowerFlow configuration:
- sl1_host. The hostname or IP address of the SL1 system the alerts will synchronize to.
- sl1_user. The username for your SL1 system.
- sl1_password. The password for your SL1 system.
- token. Webex bot token.
- default_ack_user. The default user to acknowledge events and alerts.
- team_id. ID of the team to create the channel for.
- users. Comma-separted list of Webex user emails to invite to the created channel.
- room_id. ID of the room to post messages in.
- Click . You can now align this configuration object with one or more applications.
Aligning a Configuration Object and Configuring PowerFlow Applications
With this SyncPack, any status changes made to an SL1 event is sent to Webex to update the corresponding alert. Any status changes to the Webex alert are synced back to the corresponding SL1 event.
To run this SyncPack, you must "align" the configuration object to run with the following PowerFlow applications:
- Create Room For Event"
- "Created Room Event Notification"
- "Major Event Notification"
- "Sync Event Status From Webex To SL1"
To align the configuration object with the relevant PowerFlow applications:
-
On the Applications page of the PowerFlow user interface, open one of the PowerFlow applications listed above and click . The Configurations pane for that application appears.
-
From the Configurations drop-down, select the configuration object you want to use.
The values for proxy_host and the other parameters that appear in the Configuration pane with a padlock icon () are populated either by the configuration object you aligned with the application or by the run book action. Do not modify these values. If you encounter an error, make sure your run book action is configured properly.
- Update any of the remaining fields on the Configurations pane as needed.
- Click .
- Repeat this process for the other PowerFlow applications.
Scheduling PowerFlow Applications
You can create one or more schedules for a single application in the PowerFlow user interface. When creating each schedule, you can specify the queue and the configuration file for that application.
To create a schedule:
- On the Applications page (), click the button for the application you want to schedule. The Scheduler window appears.
- In the Schedule List pane, click the down arrow icon () next to an existing schedule to view the details for that schedule.
- In the Schedule Creator pane, complete the following fields for the default Frequency setting:
- Schedule Name. Type a name for the schedule.
- Frequency in seconds. Type the number of seconds per interval that you want to run the application.
- Custom Parameters. Type any JSON parameters you want to use for this schedule, such as information about a configuration file or mappings.
- To use a cron expression, click the Switch to Cron Expression toggle to turn it blue. If you select this option, you can create complicated schedules based on minutes, hours, the day of the month, the month, and the day of the week:
As you update the cron expression, the Schedule window displays the results of the expression in more readable language, such as Runs app: "Every 0 and 30th minute past every hour on Sat", based on 0,30 in the Minutes field and 6 in the Day of Week field.
- Click Schedule List pane. Also, on the Applications page, the button now displays with a dark blue background: . The schedule is added to the
After you create a schedule, it continues to run until you delete it. Also, you cannot edit an existing schedule, but you can delete it and create a similar schedule if needed.
To view or delete an existing schedule:
- On the Applications page, click the button for the application that contains a schedule you want to delete. The Scheduler window appears.
- Click the down arrow icon () to view the details of an existing schedule.
- To delete the selected schedule, click the Actions icon () and select .
On the Scheduler window for a PowerFlow application, you can click the button from the Schedule List pane to make a copy of an existing schedule.
When either multiple SL1 instance or multiple Webex instances are involved with PowerFlow, you should create an individual configuration object for each SL1 or Webex instance. Next, create an individual schedule for each configuration object. Each schedule should use a configuration object that is specific to that single SL1 or Webex instance. Creating copies of a PowerFlow application from a SyncPack for the purpose of distinguishing between domains is not supported, and will result in issues on upgrades.