Create Custom Notification Channel
  • 10 Aug 2021
  • 1 Minute to read
  • Dark
    Light
  • PDF

Create Custom Notification Channel

  • Dark
    Light
  • PDF

Article Summary

One of the major capabilities of BizTalk360 is to monitor your BizTalk environment and notify you whenever there is an issue (e.g. a receive location is down, host instance has stopped, no messages received on a port, etc). BizTalk360 can be sent notifications through static notification endpoints like SMS, Email, Windows Event log. BizTalk360 can also send notifications to a variety of external systems like Slack, ServiceNow, WebHook, Microsoft Teams and you can also build your own custom notification channels to send notifications to any external systems. With custom notification channels, it’s very easy to send alerts to any external systems like your ticketing system, internal databases, calling a REST endpoint, executing a PowerShell script, etc.

Migrating Notification Channels from BizTalk360 v9 to v10
XML Schema is migrated to JSON. The new schema along with its types are mentioned below

Schema

  • Sections
 {
        "name": "string",
        "displayName": "string",
        "data": [
            {
                "name": "string",
                "displayName": "string",
                "isMandatory": "false",
                "disabled": "false",
                "type": "input",
                "maxLength": "3000",
                "placeholder": "string",
                "value": "string"
            }
        ]
    }

Each section will have the schema as above. But the data part inside the section depends on the use. The below are supported types inside the data schema.

  • checkbox
  • input
  • select

When you use select note that there's an additional property that needs to be added in order to populate values. Example schema is listed below

{
		"name": "payload",
		"displayName": "Payload",
		"data": [
			{
				"name": "requestMethods",
				"displayName": "Request Methods",
				"isMandatory": "false",
				"defaultValue": "POST",
				"type": "select",
				"items": [
					{
						"label": "POST",
						"value": "POST"
					},
					{
						"label": "PUT",
						"value": "PUT"
					}
				]
			},
			{
				"name": "contentType",
				"displayName": "Request Content Type",
				"isMandatory": "false",
				"defaultValue": "application/json",
				"type": "select",
				"items": [
					{
						"label": "application/json",
						"value": "application/json"
					},
					{
						"label": "application/xml",
						"value": "application/xml"
					}
				]
			}
		]
	}


Sample

In case if you have an existing channel that is customized you can use our Notification Channel Migration Service from Github and it will automatically migrate it to the new schema.

  • Clone the repo and open the solution in Visual Studio
  • Find and save the values from GlobalPropertiesSchema and GlobalPropertiesValues columns from b360_alert_notify_GlobalNotificationChannel table
  • You will find 2 files with .XML extension. You can replace the contents of Teams.xml with the existing value as you had on GlobalPropertiesSchema column and replace TeamsValue.xml with values as on GlobalPropertiesValues on the record that you have copied from the table
  • Refer to the below images on obtaining the output JSON file





Was this article helpful?

ESC

Eddy, a super-smart generative AI, opening up ways to have tailored queries and responses