Microsoft Azure And OMS Integration

From Hornbill
Revision as of 13:30, 19 October 2017 by Stevenb (talk | contribs)
Jump to navigation Jump to search

Microsoft Azure and Operations Management Suite Hornbill Integration

We have provided collection of Powershell Runbooks and Modules for Microsoft Azure Automation and Operations Management Suite, to demonstrate integration with the Hornbill Collaboration platform and Service Manager application.

Please see the description within each Runbook and/or Module for more information about functionality, input parameters, and the APIs that they use.

Open Source

The Microsoft Azure and OMS Hornbill Integration is provided open source under the Hornbill Community Licence and can be found Here on GitHub

Modules

IMPORTANT! Both of the supplied modules (HornbillAPI and HornbillHelpers) are required to be added to the Azure Automation account prior to making use of the Hornbill Runbooks. See the .psm1 Module files within the Module ZIPs for more information on the input and output parameters for each CMDLET.

HornbillAPI : This module contains the required CMDLETs to build and fire API calls from Azure Runbooks to your Hornbill instance:

  • Set-HB-Instance : MANDATORY - Allows your Powershell script to define the Hornbill instance to connect to, the zone in which it resides, and the API key to use for session generation.
  • Add-HB-Param : Add a parameter to the XMLMC request
  • Clear-HB-Params : Clears any existing XMLMC parameters that have been added
  • Open-HB-Element : Allows for the building of complex XML
  • Close-HB-Element : Allows for the building of complex XML
  • Invoke-HB-XMLMC : Invokes your API call
  • ConvertTo-HB-B64Decode : Returns a UTF8 string from a given Base64 endcoded string
  • ConvertTo-HB-B64Encode : Returns a Base64 encoded string from a given UTF8 string
  • Get-HB-Params : Returns XML string of parameters that have been added by Add-HB-Params, Open-HB-Element and Close-HB-Element

HornbillHelpers : This module contains a number of helper CMDLETs to carry out common requests within Hornbill Runbooks:

  • Get-HB-CatalogID : Provide a Catalog Item Name, and this CMDLET will search your Hornbill instance for a matching record, returning the Primary Key
  • Get-HB-OrganisationID : Provide a Organisation Name, and this CMDLET will search your Hornbill instance for a matching record, returning the Primary Key
  • Get-HB-PriorityID : Provide a Priority Name, and this CMDLET will search your Hornbill instance for a matching record, returning the Primary Key
  • Get-HB-Request : Retrieves details about a Request
  • Get-HB-ServiceID : Provide a Service Name, and this CMDLET will search your Hornbill instance for a matching record, returning the Primary Key
  • Get-HB-SiteID : Provide a Site Name, and this CMDLET will search your Hornbill instance for a matching record, returning the Primary Key
  • Get-HB-WorkspaceID : Provide a Workspace Name, and this CMDLET will search your Hornbill instance for a matching record, returning the Activity Stream ID

Module Installation

Install via the Module Gallery

  • Open Microsoft Azure in your browser and navigate to your Automation Account
  • Click on Modules Gallery under Shared Resources
  • Search the Modules for `Hornbill`
  • Click in to each Hornbill module in turn, and click the `Import` button
  • On the list of Modules, wait for the Module Status to become Available before attempting to run any Runbooks that use them.

Or Install Manually

  • Download the Module ZIP files from the Github repository, and place on your local machine
  • Open Microsoft Azure in your browser and navigate to your Automation Account
  • Click on Modules under Shared Resources
  • Click the Add a module button
  • Use the Upload File control to find and select your Module, then click the OK button
  • On the list of Modules, wait for the Module Status to become Available before attempting to run any Runbooks that use them.

Runbooks

We’re provided a number of example Powershell Runbooks to allow your Azure Automation Account (and therefore the Microsoft Operations Management Suite) to interact with your Hornbill instance. Please see the Runbooks themselves for more detailed information regarding input parameters etc:

  • Hornbill_ContactArchive_Workflow : Archives a Contact
  • Hornbill_ContactCreate_Workflow : Creates a Contact
  • Hornbill_RequestClose_Workflow : Closes a Service Manager Request
  • Hornbill_RequestLogChangeRequest_Webhook : Logs a Change Request within Service Manager - this should be called with an Azure Webhook, and is useful when setting up Alerts in Operations Management Suite
  • Hornbill_RequestLogChangeRequest_Workflow : Logs a Change Request within Service Manager - this is a Powershell Workflow, and can be called from other Azure Workflow Runbooks (Powershell or Graphical)
  • Hornbill_RequestLogIncident_Webhook : Logs an Incident within Service Manager - this should be called with an Azure Webhook, and is useful when setting up Alerts in Operations Management Suite
  • Hornbill_RequestLogIncident_Workflow : Logs an Incident within Service Manager - this is a Powershell Workflow, and can be called from other Azure Workflow Runbooks (Powershell or Graphical)
  • Hornbill_RequestLogServiceRequest_Webhook : Logs a Service Request within Service Manager - this should be called with an Azure Webhook, and is useful when setting up Alerts in Operations Management Suite
  • Hornbill_RequestLogServiceRequest_Workflow : Logs a Service Request within Service Manager - this is a Powershell Workflow, and can be called from other Azure Workflow Runbooks (Powershell or Graphical)
  • Hornbill_RequestResolve_Workflow : Resolved a Service Manager Request
  • Hornbill_RequestUpdateDetails_Workflow : Updates the details of a Service Manager Request
  • Hornbill_RequestUpdateTimeline_Workflow : Updates the timeline of a Service Manager Request
  • Hornbill_UserAddGroup_Workflow : Adds a Hornbill User to a Hornbill Group
  • Hornbill_UserAddRoles_Workflow : Adds one or more Roles to a Hornbill User
  • Hornbill_UserAddWorkspace_Workflow : Adds a Hornbill User to a Hornbill Collaboration Workspace
  • Hornbill_UserArchive_Workflow : Archives a Hornbill User account
  • Hornbill_UserCreate_Workflow : Creates a Hornbill User account
  • Hornbill_UserDelete_Workflow : Deletes a Hornbill User account
  • Hornbill_WorkspaceCreate_Workflow : Creates a Hornbill Collaboration Workspace
  • Hornbill_WorkspacePost_Webhook : Adds a Post to a Hornbill Collaboration Workspace - this should be called with an Azure Webhook, and is useful when setting up Alerts in Operations Management Suite
  • Hornbill_WorkspacePost_Workflow : Adds a Post to a Hornbill Collaboration Workspace - this is a Powershell Workflow, and can be called from other Azure Workflow Runbooks (Powershell or Graphical)
  • Hornbill_WorkspacePostComment_Workflow : Adds a Comment to an existing Post on a Hornbill Collaboration Workspace

Runbook Installation

Install via the Runbook Gallery

  • Open Microsoft Azure in your browser and navigate to your Automation Account
  • Click on Runbooks Gallery under Shared Resources
  • Search the `Script Center` for `Hornbill`
  • Click in to each Hornbill Runbook that you want to install in turn, and click the `Import` button
  • The Runbook will then be available for use/edit/publishing in your list of Automation Runbooks

Or Install Manually

  • Download the relevant Runbook Powershell scripts from the Github repository, and place on your local machine
  • Open Microsoft Azure in your browser and navigate to your Automation Account
  • Click on Runbooks under Process Automation
  • Click the Add a runbook button
  • Click Import an existing runbook
  • Use the Runbook File control to find and select your Runbook, then click the OK button
  • Give the Runbook a description should you so wish, then click the Create button to add the Runbook to your Runbook library