Micro Focus Service Manager
Introduction
ConnectALL interacts with Micro Focus Service Manager via its ReST API.
Supported Authentication
HTTP BASIC
Supported Entities
Incident
Change
Change Task
Problem
Problem Task
Request
Request Task
Interaction
Supported Functionalities
Sync Fields
Sync Comments
Sync Attachments
Sync Issue Linking
Micro Focus Service Manager Configuration
Before you create an automation in ConnectALL, do the following configuration in Micro Focus Service Manager.
How to Add the RESTful Capability to the Service Manager User
Web URL: http://hpsm94:13080/webtier-9.40
- Enter the operator in the command window and the search user to be configured in ConnectALL.
- Go to the Startup tab and add the capability word RESTful API in the capabilities list as shown below and save it.
How to Customize Web Service to Retrieve Field Names from Micro Focus Service Manager
- Open Web Services > Web Service Configuration menu.
- Create a service for extaccess. Enter extaccess in the form fields Service Name, Name & Object Name, as shown in the screenshot below.
- Open the RESTful tab and check whether the RESTful Enabled box is checked. Enter the Resource Collection Name, Resource Name, and Unique Keys, as shown in the screenshot.
Open the Fields tab, and add the following fields with a caption.
Field Caption soacaption SOACaption object.name ObjectName action.names ActionName soatype SOAType soafield SOAField soafile SOAFile - Click Add from the menu to add the custom service to Service Manager.
How to Customize Web Service to Retrieve Field Names for EntityTypes
Most Micro Focus Service Manager entity types use the field 'UpdatedTime' for their last update time. ConnectALL relies on this field to know which records have been modified. The ‘Interaction’ entity type, however, does not have the ‘UpdatedTime’ field but uses 'UpdateTime' instead. (Notice the missing 'd'.) Fortunately, fields can be renamed in Micro Focus Service Manager. ConnectALL recommends renaming this field on the Interaction entity or any other entities with this issue, if any of your automation is configured for that entity type.
In Micro Focus Service Manager, you can have multiple aliases for a single field. For example, the UpdatedTime and UpdateTime, assignment and AssignmentGroup, assignee.name and Assignee, resolution and solution, Update and JournalUpdates, etc. are all aliases for the same underlying field.
To retrieve a specific field for the entity types from the web service, follow the below steps.
- Open Tailoring → Web Services → Web Service Configuration menu.
- Search for the web service by Entity Type.
- Select the Service to Edit and navigate to the Fields Tab.
- Select the Field from the list of fields available and provide a display name for the same.
- Save the configuration.
Use Case
- Service Desk Agent creates an incident in Service Manager.
- ConnectALL creates a new Bug in Jira for every incident.
- The developer works on the reported bug and updates the status with a possible resolution.
- ConnectALL synchronizes the status changes back to Service Manager to notify them about the current solution.
Configure Automation
Configuration
It is required to provide a REST service URL which ideally would be running on port 13080. The configured Service Manager user must have the RESTful capability. Please refer Service Manager configuration section on this page.
Entity Mapping
Field Mapping
Adding a Service Manager field would prompt you to select the appropriate datatype of the selected field. For Select field datatype, it is necessary to choose the Values List Type (Service Manager global list type) as shown in the screenshot below. So that the values of the select field would be available on the value mapping screen.
For example: For the Status field, choose Select as Data Type Mapping and Incident Status in Values List Type drop-down.
ID Field Names
To synchronize the Id of the record, the Id field name should be in the specified name for the appropriate issue types. If the field is not available, please refer to the "How to customize web service to retrieve field names for EntityTypes" section to configure the field
Issue type | Id Field Name |
---|---|
Change | ChangeID |
ChangeTask | TaskID |
Incident | IncidentID |
Request | Number |
RequestTask | RequestTaskID |
Problem | ID |
Problem Task | TaskID |
Interaction | CallID |
Task Synchronization
To synchronize the tasks, the Parent id field names should be in the specified format. If the field is not available, please refer the "How to customize web service to retrieve field names for EntityTypes" section to configure the field
Issue type | Parent Field Name |
---|---|
ChangeTask | ParentChange |
RequestTask | ParentRequestNum |
Problem Task | ParentProblem |
Micro Focus Service Manager Comments Support
Micro Focus Service Manager Comments can be synced via ConnectALL by mapping the "JournalUpdates" field. In HPSM, since all the lines are treated as a normal string, it is difficult for ConnectALL to identify the comment body and the comment added datetime information. Also, few users might even try to separate the comments with a comment footer. Due to these reasons, for ConnectALL to determine the comment header information (which contains the datetime of the comment and the user information) and comment footer information (if available or configured), users need to give this information as a regex pattern during the field configuration. By providing these regular expressions (regex) patterns, ConnectALL can determine the header, body, and footer (if any) and process/sync the comments accordingly.
Click on the highlighted icon against the mapped "comments' field in the Field Mapping screen.
The HPSM Comments configuration screen will look like below:
- Comment Header - The default HPSM Comment Header pattern is provided
- Comment Footer - By default, HPSM will not have any footer defined. Therefore, the field will be empty.
- Sample comment - This text area has the default HPSM Comment Header and Comment Body defined
- Click on the
icon if the regex has to be changed for header/footer
- Provide a sample comment and validate the regex provided along with the sample comment by clicking on the "Validate Sample Comment" button
- If there is no change in the format and if you are using the default HPSM Configurations, do not change anything in the regex patterns
- If there is a change in the regex pattern, once after changing the regex, validate the same and then click on "Save" to save the configurations
Save Comment API Limitation
The Micro Focus 'save comments' API will not log the activity details for the below issue types.
- Interaction
- Problem
- Request
To get around this limitation, you have to use the activity API configuration for comment processing. Find out how from here.
Comments Duplication in Micro Focus Service Manager
In a ServiceNow–Micro Focus automation, when you have mapped ServiceNow's Comments field and Micro Focus Service Manager's JournalUpdates field, the ServiceNow comments syncing into Micro Focus Service Manager gets duplicated. It is due to a limitation in the Micro Focus Service Manager application. To get around this limitation, we recommend the below provided workaround, a configuration that you can implement to resolve this issue. You have to do this configuration in the Micro Focus Service Manager application.
- Navigate to the Tailoring -> Web Services -> Web Service Configuration.
- Search for "interaction" in the Object Name.
- Navigate to the Expressions tab in the Interaction. The below script will be displayed.
- Add the highlighted line to the existing script.
Sample Regex Patterns
Find below some of the sample regex patterns.
PS: These are only sample patterns to help you with the configuration.
Match String | Regex Pattern |
Whitespace | (\s+) |
Any Character | .*? |
Any Repeated Characters which appears more than once | (.)\1$ |
To identify a text which ends with END | ^END$ |
Date Pattern - MMDDYY | ((?:[0]?[1-9]|[1][012])[-:\\/.](?:(?:[0-2]?\\d{1})|(?:[3][01]{1}))[-:\\/.](?:(?:\\d{1}\\d{1})))(?![\\d]) |
Date Pattern - DDMMYYYY | ((?:(?:[0-2]?\\d{1})|(?:[3][01]{1}))[-:\\/.](?:[0]?[1-9]|[1][012])[-:\\/.](?:(?:[1]{1}\\d{1}\\d{1}\\d{1})|(?:[2]{1}\\d{3})))(?![\\d]) |
Date Pattern - DDMMYY | ((?:(?:[0-2]?\\d{1})|(?:[3][01]{1}))[-:\\/.](?:[0]?[1-9]|[1][012])[-:\\/.](?:(?:\\d{1}\\d{1})))(?![\\d]) |
Date Pattern - MMDDYYYY | ((?:[0]?[1-9]|[1][012])[-:\\/.](?:(?:[0-2]?\\d{1})|(?:[3][01]{1}))[-:\\/.](?:(?:[1]{1}\\d{1}\\d{1}\\d{1})|(?:[2]{1}\\d{3})))(?![\\d]) |
Date Pattern - YYMMDD | ((?:(?:\\d{1}\\d{1}))[-:\\/.](?:[0]?[1-9]|[1][012])[-:\\/.](?:(?:[0-2]?\\d{1})|(?:[3][01]{1})))(?![\\d]) |
Date Pattern - YYYYMMDD | ((?:(?:[1]{1}\\d{1}\\d{1}\\d{1})|(?:[2]{1}\\d{3}))[-:\\/.](?:[0]?[1-9]|[1][012])[-:\\/.](?:(?:[0-2]?\\d{1})|(?:[3][01]{1})))(?![\\d]) |
Time Pattern | ((?:(?:[0-1][0-9])|(?:[2][0-3])|(?:[0-9])):(?:[0-5][0-9])(?::[0-5][0-9])?(?:\\s?(?:am|AM|pm|PM))?) |
To identify if a string ends with : at the end | (\:)$ |
Time Difference Configuration
To know how to calculate the time difference, and configure it in the ConnectALL UI, read the topic Time Difference Configuration.