BMC Remedy Integration Guide

BMC Remedy Service Desk is an innovative service management platform built natively for mobile with an intuitive, beautiful, people-centric user experience that makes your whole organization more productive. BMC Remedy will enable PagerDuty users to get alerts when forms are filled out that need immediate attention. This extension replaces our Legacy BMC Service Desk integration.

Prerequisites

  1. A PagerDuty account. You can sign up here if you don’t already have one.
  2. BMC Remedy Service Desk Incident Management 9.0 and later. For version 8.1 and below, use our legacy integration.
  3. BMC Remedy Action Request System 9.0 and later.
  4. BMC Remedy Developer Studio 9.0 and later
  5. The Assignment Engine Integration, or auto assignment to individuals, must be disabled for the Incident Management module.
  6. BMC Remedy Data Import Tool
  7. The following files, which can obtained here.
    1. Groups_PD.arx
    2. LIC_SYS_License Permission Map_PD.arx
    3. PagerDutytoITSM9_Integration_v1_RC2.def
    4. PagerDuty Service Name to Support Group.armx
    5. Support Group to Service Mapping.csv

Preparing to Install

  1. Download the PagerDuty Remedy Integration from Github here.
  2. Place the PagerDuty Binary wherever you choose, in this example we will use c:\PagerDuty\pd-remedy.exe.  Please note to rename the executable file that you have downloaded to pd-remedy.exe.

In PagerDuty

  1. Go to the Configuration menu and select API Access.
  2. On the API Access page, click Create New API Key
  3. In the dialog that pops up, you’ll be prompted to enter a Description for your key, and choose an API version.
  4. Once you have filled in your options, click Create Key.
  5. Once you click Create Key, you will see a dialog displaying your key and confirming the options you filled in on the previous step. Make sure to copy this key into any application that needs it now, as you will not have access to the key after this step. If you lose a key that you created previously and need access to it again, you should remove the key and create a new one. Click Close once you have successfully copied your key.
  6. Once created, you will see your key appear in the list of keys on the API Access page, with versioning noted.

In Remedy

Add Custom Fields

Note: The following steps in Add Custom Fields can be skipped if the following forms are not already overlaid. Please proceed to the next section for Importing System Data. If any of the following forms are overlaid, please follow the manual instructions for that particular form:

  • HPD:Help Desk
  • HPD:IncidentInterface
      1. Open BMC Developer Studio and log in as a user with administrator permissions. Make sure you are in the Best Practice Customization mode. You must be logged in.
      2. Right-click on the HPD:Help Desk form in forms list.
      3. Select Create Overlay.
      4. Open the HPD:Help Desk form.
      5. Select Form, then Create a New Field, then In No View and select the Character field.
        • In order to see the Properties, once you “Create a New Field” in step 5, go to the Outline pane and look for an ID that is between 500000000 and 600000000.
      6. Create each of the fields in the table below:
      7. Create View Overlay on Best Practice View by selecting Form and then Create.
      8. Add new custom button field to view overlay
      9. Set the custom button to the following properties:
        • DB Name: PdBtnOpenURL
        • DB Id: 700080017
        • Visible: False
        • Button Label: View PagerDuty
        • Display Type: URL
        • Label Justify Left: URL
        • Parent Field: 304195700
        • X: 64
        • Y: 32
        • Width: 91
        • Height: 21
        • Permissions: Public
        • In order to specify the Parent Field, click in the upper left to get the right panel. It is the one that “View Broadcast” is on (z2PL_Broadcast).  Then right click and select “Move Field To…” the new button to z2PL_Broadcast.
      10. Save the form HPD:Help Desk.
      11. Right-click on the HPD:IncidentInterface form in forms list.
      12. Select Create Overlay.
      13. Open the HPD:IncidentInterface form.
      14. Select Form, then select Create View Overlay.
      15. Select Form, then select Add Fields from HPD:Help Desk.
        • To Add Fields from HPD:Help Desk, right click in the upper right on the Outline panel.  This must be done or else the OK option will not be available.
      16. Select PdIncidentId (700080001) and click Add.
      17. Set the ID of newly added field PdIncidentId to 700080001. Be sure to remove the suffix __c from database name.
      18. Set the Permissions to Public/Change.
      19. Select Form, then select Add/Remove Fields In View.
      20. Move PdIncidentId (700080001) to Fields Not In View.
      21. Save the form HPD:IncidentInterface.

Import System Data

  1. Open BMC Remedy Data Import Tool and login with administrator permissions.
  2. Select File, then select New Mapping.
  3. For Source Data File select Groups_PD.arx.
  4. For Target Server select your Remedy server.
  5. For Target Form select Group.
  6. Under Field Value Mappings, select Auto Map.
  7. Select the Options tab, then select Generate New ID for All Records.
  8. Select Import, then select Start Import to upload data.
  9. One new record should be imported into the Group form.
  10. Select File, then select Close.
  11. Select File, then select New Mapping.
  12. For Source Data File, select LIC_SYS_License Permission Map_PD.arx.
  13. For Target Server select your Remedy server.
  14. For Target Form select LIC:SYS-License Permission Map.
  15. Under Field Value Mappings, select Auto Map.
  16. On the Options tab, select Generate New ID for All Records.
  17. Select Import, then select Start Import to upload data.
  18. One new record should be imported into the LIC:SYS-License Permission Map form.

Import Definitions

  1. Select File, then select Import.
  2. Select Object Definitions as the import source.
  3. Select the server you want to import the object definitions into.
  4. Select the PagerDutytoITSM9_Integration_v***_***.def definitions file that you downloaded from Github above.
  5. If the form HPD:Help Desk and HPD:IncidentInterface are not already overlaid, remove all objects in the Object Selection window except for HPD:IncidentInterface__o and HPD:Help Desk__o.
  6. Click on Finish to import only the two form overlays first.
  7. Proceed to import the remaining objects after the form overlays are finished.
  8. Sync or flush cache on Mid-Tier servers to reflect the new definitions.

Create Remedy User Account for REST API Access

The following steps should be completed in the Mid-Tier UI.

  1. Select AR System Administration from the dropdown menu on the home page.
  2. Select AR System Administration console.
  3. Select Application, then select Users/Groups/Roles, then select Users.
  4. Create a new user with the following information:
    • Ensure your user has the following permissions in Group List:
      • Administrator
      • Incident Master
      • Asset Viewer
      • Unrestricted Access
      • General Access
      • PagerDuty Admin
    • We require that the License Type be Fixed.
    • The Application License should be BMC: Incident Management User Fixed or BMC: Incident Management User Floating.

Set PagerDuty Configuration Info

  1. Go to the URL below, being sure to replace <Mid-Tier> and <AR Server> with your own values:
  2. http://<Mid-Tier>/arsys/forms/<ARServer>/PagerDuty%3AHPD%3AConfiguration
  3. Login as a user with administrator permissions or PagerDuty Admin permissions.
  4. Create a New Record.
  5. Fill in all applicable values for your account. The required fields are bold.
  6. You can create as many PagerDuty configuration records as you would like, but only one can be Enabled at a time.
  7. After creating a new record, click the Test Connection button to verify the connection info to PagerDuty is valid.

Load Support Group to Service Mapping Data

  1. Open ARMX mapping file PagerDuty Service Name to Support Group.armx.
  2. Edit the following line to reflect the location of your CSV file:
  3. <sourcefile filename=”C:\PagerDuty\test.csv”
  4. Edit the following line to reflect the hostname or IP of your Remedy server:
  5. <destinationserver name=”TEST-50-91-3″/>
  6. Edit the Support Group to Service Mapping.CSV to map Remedy Support Groups to PagerDuty Services. There is currently a one-to-one mapping between Remedy Support Groups and PagerDuty Services.
  7. Open the BMC Remedy Data Import Tool.
  8. Login to Remedy server with administrator permissions or PagerDuty Admin permissions.
  9. Select File, then select Open Mapping File.
  10. Select PagerDuty Service Name to Support Group.armx.
  11. Select the Contain Field Titles checkbox.
  12. Select Import, then select Start Import to load the data from the CSV file.
  13. Go to the URL below, being sure to replace <Mid-Tier> and <AR Server> with your own values to see your mapping:
  14. http://<Mid-Tier>/arsys/forms/<ARServer>/PagerDuty%3AHPD%3AServiceMapping

In PagerDuty

    1. Select Configuration, then select Extensions.
    2. Select New Extension.
    3. Select the BMC Remedy Extension Type, then enter a Name and select a Service for this extension. Fill in the following fields:
Field Value
Remedy User Name PagerDuty user name created previously
Remedy Password Password for Remedy user account
PagerDuty API Key PagerDuty REST API key created above
PagerDuty Default User Email Email address of a valid PagerDuty user
  1. You have now connected BMC Remedy to your PagerDuty service! You can repeat these steps for each PagerDuty service you’d like to connect to Remedy.
  2. The PagerDuty Default User Email must be a valid email address of a user that exists in both PagerDuty and Remedy, their email must be the same in both locations.

FAQ

Can I configure BMC Remedy to be tied to multiple PagerDuty services?

Yes, once the Remedy configuration steps are completed, you can simply create a new extension within PagerDuty for each service you want to connect to Remedy.

Can I map a single Support Group to multiple PagerDuty services?

Yes, you can map a single Support Group to multiple services within PagerDuty.

Can I map multiple PagerDuty services to a single Support Group?

No, each service in PagerDuty can only be mapped to a single Support Group in Remedy.

How many Remedy companies can I integrate with PagerDuty?

By default, only one company in Remedy can be configured for the integration.

Can I enabled auto-assignment to individuals in Remedy?

No, auto-assignment must be disabled in order for the integration to function properly.

What is the Mid-Tier server variable you use in the integration guide?

Mid-Tier represents your Remedy Web server.

What is the ARServer variable you use in the integration guide?

ARServer represents your Remedy App server.

Does my PagerDuty user in Remedy need any special permissions?

Yes, the PagerDuty user account in Remedy should have administrative privileges.

Does the default account in our configuration form also need administrative privileges?

No, only the PagerDuty default account needs administrative privileges; the default you place in your configuration form can be a regular user.

Should all of my support staff in Remedy have user accounts in PagerDuty?

Yes, if any support staff members do not have user accounts in PagerDuty and they take action on the incident, the synchronization between the two systems will break.

How is the assigned group selected for an incident?

During configuration, each service in PagerDuty is mapped to a support group in Remedy, this mapping is then used to determined which support group is assigned to an incident.

How are priorities selected?

Priority is based on the urgency selected in PagerDuty. If the PagerDuty urgency is set to “low”, the priority is set to 4’s in Remedy, otherwise the priority will be set to 2’s.

How does PagerDuty communicate with Remedy?

During configuration, several extensions will be configured in PagerDuty, these essentially act as webhooks that are fired when a change happens to the configured service. The webhook is sent to the Remedy API (not the UI directly) and Remedy parses this information before ingesting it.

How does Remedy call the PagerDuty executable?

During configuration, the location of the executable is specified. Next, filter guides are used to configure the HPD Help Desk form to execute the executable under certain conditions.