Difference between revisions of "Microsoft Azure And OMS Integration"

From Hornbill
Jump to navigation Jump to search
 
(10 intermediate revisions by the same user not shown)
Line 7: Line 7:
 
== Open Source ==
 
== Open Source ==
  
The Microsoft Azure and OMS Hornbill Integration is provided open source under the [https://wiki.hornbill.com/index.php/The_Hornbill_Community_License_(HCL) Hornbill Community Licence] and can be found [https://github.com/hornbill/AzureOMSHornbillIntegration/ Here] on GitHub
+
The Microsoft Azure and OMS Hornbill Integration is provided open source under the [https://wiki.hornbill.com/index.php/The_Hornbill_Community_License_(HCL) Hornbill Community Licence] and can be found on the [https://www.powershellgallery.com/packages?q=hornbill PowerShell Gallery] and [https://github.com/hornbill/powershellHornbillAzureRunbooks GitHub].
  
 
== Modules ==
 
== 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.
+
IMPORTANT! Both the [https://www.powershellgallery.com/packages/HornbillAPI/ HornbillAPI] and [https://www.powershellgallery.com/packages/HornbillHelpers/ HornbillHelpers] PowerShell Modules 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 Modules 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:
 
'''HornbillAPI''' : This module contains the required CMDLETs to build and fire API calls from Azure Runbooks to your Hornbill instance:
Line 40: Line 40:
 
* Open Microsoft Azure in your browser and navigate to your Automation Account
 
* Open Microsoft Azure in your browser and navigate to your Automation Account
 
* Click on <code>Modules Gallery</code> under <code>Shared Resources</code>
 
* Click on <code>Modules Gallery</code> under <code>Shared Resources</code>
* Search the Modules for `Hornbill`
+
* Search the Modules for <code>Hornbill</code>
* Click in to each Hornbill module in turn, and click the `Import` button
+
* Click in to each Hornbill module in turn, and click the <code>Import</code> button
 
* On the list of Modules, wait for the Module Status to become <code>Available</code> before attempting to run any Runbooks that use them.
 
* On the list of Modules, wait for the Module Status to become <code>Available</code> before attempting to run any Runbooks that use them.
  
==== Or Install Manually ====
+
==== Install from the PowerShell Gallery ====
* Download the Module ZIP files from the [https://github.com/hornbill/AzureOMSHornbillIntegration/ Github repository], and place on your local machine
+
* Download the Modules from the [https://www.powershellgallery.com/packages?q=hornbill PowerShell Gallery], and place on your local machine
 
* Open Microsoft Azure in your browser and navigate to your Automation Account
 
* Open Microsoft Azure in your browser and navigate to your Automation Account
 
* Click on <code>Modules</code> under <code>Shared Resources</code>
 
* Click on <code>Modules</code> under <code>Shared Resources</code>
Line 56: Line 56:
 
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:
 
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
+
* '''[https://www.powershellgallery.com/packages/HornbillAzureIntuneAssetImport/ HornbillAzureIntuneAssetImport]''' : Allows the import of asset records from Intune into Hornbill
* ''Hornbill_ContactCreate_Workflow'' : Creates a Contact
+
* '''[https://www.powershellgallery.com/packages/HornbillContactArchiveWorkflow/ HornbillContactArchiveWorkflow]''' : Archives a Contact
* ''Hornbill_RequestClose_Workflow'' : Closes a Service Manager Request
+
* '''[https://www.powershellgallery.com/packages/HornbillContactCreateWorkflow/ HornbillContactCreate]''' : Creates a Contact
* ''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
+
* '''[https://www.powershellgallery.com/packages/HornbillLogChangeRequest/ HornbillLogChangeRequest]''' : 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_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)
+
* '''[https://www.powershellgallery.com/packages/HornbillLogChangeRequestWebhook/ HornbillLogChangeRequestWebhook]''' : 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_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
+
* '''[https://www.powershellgallery.com/packages/HornbillLogIncident/ HornbillLogIncident]''' : Logs an Incident within Service Manager - this is a Powershell Workflow, and can be called from other Azure Workflow Runbooks (Powershell or Graphical)
* ''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)
+
* '''[https://www.powershellgallery.com/packages/HornbillLogIncidentWebhook/ HornbillLogIncidentWebhook]''' : 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_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
+
* '''[https://www.powershellgallery.com/packages/HornbillLogServiceRequest/ HornbillLogServiceRequest]''' : 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_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)
+
* '''[https://www.powershellgallery.com/packages/HornbillLogServiceRequestWebhook/ HornbillLogServiceRequestWebhook]''' : 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_RequestResolve_Workflow'' : Resolved a Service Manager Request
+
* '''[https://www.powershellgallery.com/packages/HornbillRequestClose/ HornbillRequestClose]''' : Closes a Service Manager Request
* ''Hornbill_RequestUpdateDetails_Workflow'' : Updates the details of a Service Manager Request
+
* '''[https://www.powershellgallery.com/packages/HornbillRequestResolve/ HornbillRequestResolve]''' : Resolved a Service Manager Request
* ''Hornbill_RequestUpdateTimeline_Workflow'' : Updates the timeline of a Service Manager Request
+
* '''[https://www.powershellgallery.com/packages/HornbillRequestUpdateDetails/ HornbillRequestUpdateDetails]''' : Updates the details of a Service Manager Request
* ''Hornbill_UserAddGroup_Workflow'' : Adds a Hornbill User to a Hornbill Group
+
* '''[https://www.powershellgallery.com/packages/HornbillRequestUpdateTimeline/ HornbillRequestUpdateTimeline]''' : Updates the timeline of a Service Manager Request
* ''Hornbill_UserAddRoles_Workflow'' : Adds one or more Roles to a Hornbill User
+
* '''[https://www.powershellgallery.com/packages/HornbillUserAddGroup/ HornbillUserAddGroup]''' : Adds a Hornbill User to a Hornbill Group
* ''Hornbill_UserAddWorkspace_Workflow'' : Adds a Hornbill User to a Hornbill Collaboration Workspace
+
* '''[https://www.powershellgallery.com/packages/HornbillUserAddRoles/ HornbillUserAddRoles]''' : Adds one or more Roles to a Hornbill User
* ''Hornbill_UserArchive_Workflow'' : Archives a Hornbill User account
+
* '''[https://www.powershellgallery.com/packages/HornbillUserAddWorkspace/ HornbillUserAddWorkspace]''' : Adds a Hornbill User to a Hornbill Collaboration Workspace
* ''Hornbill_UserCreate_Workflow'' : Creates a Hornbill User account
+
* '''[https://www.powershellgallery.com/packages/HornbillUserArchive/ HornbillUserArchive]''' : Archives a Hornbill User account
* ''Hornbill_UserDelete_Workflow'' : Deletes a Hornbill User account
+
* '''[https://www.powershellgallery.com/packages/HornbillUserCreate/ HornbillUserCreate]''' : Creates a Hornbill User account
* ''Hornbill_WorkspaceCreate_Workflow'' : Creates a Hornbill Collaboration Workspace
+
* '''[https://www.powershellgallery.com/packages/HornbillUserDelete/ HornbillUserDelete ]''' : Deletes a Hornbill User account
* ''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
+
* '''[https://www.powershellgallery.com/packages/HornbillWorkspaceCreate/ HornbillWorkspaceCreate]''' : Creates a Hornbill Collaboration Workspace
* ''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)
+
* '''[https://www.powershellgallery.com/packages/HornbillWorkspacePost/ HornbillWorkspacePost]''' : 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
+
* '''[https://www.powershellgallery.com/packages/HornbillWorkspacePostWebhook/ HornbillWorkspacePostWebhook]''' : 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
 +
* '''[https://www.powershellgallery.com/packages/HornbillWorkspacePostComment/ HornbillWorkspacePostComment]''' : Adds a Comment to an existing Post on a Hornbill Collaboration Workspace
  
 
=== Runbook Installation ===
 
=== Runbook Installation ===
Line 84: Line 85:
 
* Open Microsoft Azure in your browser and navigate to your Automation Account
 
* Open Microsoft Azure in your browser and navigate to your Automation Account
 
* Click on <code>Runbooks Gallery</code> under <code>Shared Resources</code>
 
* Click on <code>Runbooks Gallery</code> under <code>Shared Resources</code>
* Search the `Script Center` for `Hornbill`
+
* Search the <code>PowerShell Gallery</code> for <code>Hornbill</code>
* Click in to each Hornbill Runbook that you want to install in turn, and click the `Import` button
+
* Click in to each Hornbill Runbook that you want to install in turn, and click the <code>Import</code> button
 
* The Runbook will then be available for use/edit/publishing in your list of Automation Runbooks
 
* The Runbook will then be available for use/edit/publishing in your list of Automation Runbooks
  
==== Or Install Manually ====
+
==== Install from the PowerShell Gallery ====
* Download the relevant Runbook Powershell scripts from the [https://github.com/hornbill/AzureOMSHornbillIntegration/ Github repository], and place on your local machine
+
* Download the relevant Runbook Powershell scripts from the [https://www.powershellgallery.com/packages?q=hornbill PowerShell Gallery], and place on your local machine
 
* Open Microsoft Azure in your browser and navigate to your Automation Account
 
* Open Microsoft Azure in your browser and navigate to your Automation Account
 
* Click on <code>Runbooks</code> under <code>Process Automation</code>
 
* Click on <code>Runbooks</code> under <code>Process Automation</code>

Latest revision as of 14:52, 12 June 2020

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 on the PowerShell Gallery and GitHub.

Modules

IMPORTANT! Both the HornbillAPI and HornbillHelpers PowerShell Modules 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 Modules 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.

Install from the PowerShell Gallery

  • Download the Modules from the PowerShell Gallery, 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:

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 PowerShell Gallery 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

Install from the PowerShell Gallery

  • Download the relevant Runbook Powershell scripts from the PowerShell Gallery, 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