Orange Tracker can be integrated into Microsoft Teams so that any time an action occurs within Orange Tracker (i.e. Issue Created, Issue Updated), a message can be sent to a Microsoft Teams channel. This is done through configurations in both environments through automations, workflows, and webhooks. This will generate an Adaptive Card in an MS Teams Channel similar to the following screenshot:
Microsoft Teams Setup
Decide which MS Teams Channel should receive updates sent by Orange Tracker
On the desired MS Teams Channel, under the Channel Options (…), select Workflows
Select the Post to a channel when a webhook request is received option
Name the workflow
Select Add workflow
Copy the URL presented on the following dialogue
Orange Tracker Setup
Must have Project Administrator role.
Navigate to Project Settings
Select Automation
Select Create New Rule
Select the desired trigger to send the notification (i.e. Issue Created, Issue Updated)
Add another THEN: Add an action component
Search for and select Send web request
In the Web request URL field, enter the URL copied from MS Teams
Ensure the HTTP method is sent to POST
Set the Web request body to Custom data and use the following code block:
{ "type":"message", "attachments":[ { "contentType":"application/vnd.microsoft.card.adaptive", "contentUrl":null, "content":{ "$schema":"http://adaptivecards.io/schemas/adaptive-card.json", "type":"AdaptiveCard", "version":"1.3", "body":[ { "type": "TextBlock", "size": "Medium", "weight": "Bolder", "text": "[Issue Created] {{issue.key}}: {{issue.summary}}" }, { "type": "ColumnSet", "columns": [ { "type": "Column", "width": "auto", "items": [ { "type": "Image", "url": "{{reporter.avatarUrls.48x48}}", "size": "Small" } ] }, { "type": "Column", "items": [ { "type": "TextBlock", "weight": "Bolder", "text": "{{issue.reporter.displayName}}", "wrap": true }, { "type": "TextBlock", "spacing": "None", "text": "Created {{issue.created.mediumDateTime}}", "isSubtle": true, "wrap": true } ], "width": "stretch" } ] }, { "type": "ColumnSet", "columns": [ { "type": "Column", "width": 1, "items": [ { "type": "TextBlock", "text": "Issue Type", "wrap": true, "weight": "Bolder" } ] }, { "type": "Column", "width": 3, "items": [ { "type": "TextBlock", "text": "{{issue.issueType.name}}", "wrap": true } ] } ] }, { "type": "ColumnSet", "columns": [ { "type": "Column", "width": 1, "items": [ { "type": "TextBlock", "text": "Customer Request Type", "wrap": true, "weight": "Bolder" } ] }, { "type": "Column", "width": 3, "items": [ { "type": "TextBlock", "text": "{{issue.Request Type.requestType.name}}", "wrap": true } ] } ] }, { "type": "ColumnSet", "columns": [ { "type": "Column", "width": 1, "items": [ { "type": "TextBlock", "text": "Issue Priority", "wrap": true, "weight": "Bolder" } ] }, { "type": "Column", "width": 3, "items": [ { "type": "TextBlock", "text": "{{issue.priority.name}}", "wrap": true } ] } ] }, { "type": "ColumnSet", "columns": [ { "type": "Column", "width": 1, "items": [ { "type": "TextBlock", "text": "Issue Description", "wrap": true, "weight": "Bolder" } ] }, { "type": "Column", "width": 3, "items": [ { "type": "TextBlock", "text": "{{issue.description}}", "wrap": true } ] } ] } ], "actions": [ { "type": "Action.OpenUrl", "title": "View Issue", "url": "{{issue.url}}" } ], } } ] }
In the Headers, set
Content-Type
toapplication/json
Select Turn on rule (top-right), then name your new automation
Select Turn On Rule to save