Employees and IT teams can receive automatic notifications in Microsoft Teams for
critical updates, such as incident status changes and approval requests. To use these proactive
notifications, set up an Azure Bot and configure your notification channels. This setup is
applicable for the Salesforce IT Desk and Salesforce IT Service apps in Microsoft
Teams.
Required Editions
| Available in: Lightning Experience |
| Available in: Enterprise, Performance, and Unlimited
Editions with Agentforce IT Service. |
| User Permissions Needed |
| To set up Microsoft Teams: |
MicrosoftGraphAccess permission set |
-
Set up the Microsoft Azure bot.
-
Log in to the Azure
portal.
-
Search for Azure Bot and select it.
-
On the Azure Bot page, select Create.
-
On the Create an Azure Bot page, configure these details:
- In the Bot handle box, enter a unique name for your bot. For example,
SalesforceEmployeeBot.
- In the Subscription list, select your Azure subscription.
- In the Resource group list, select an existing resource group or create a resource
group.
- In the Data residency list, select Global.
-
Under Pricing, select Change plan, and then select the
Standard pricing tier.
-
Under Microsoft App ID, configure these settings:
- In the Type of App list, select Single Tenant.
- In the Creation type list, select Create new Microsoft App
ID.
-
Select Review + create, and wait for the validation process to
complete.
-
Select Create.
-
After the deployment is complete, select Go to resource.
-
In the left navigation pane, under Settings, select
Channels.
-
From the list of available channels, select Microsoft Teams
Commercial, and then agree to the terms of service if prompted.
-
Select Apply.
-
In the left navigation pane, under Settings, select
Configuration.
-
Find the Microsoft App ID field, and copy the value to a secure location. You will need
this value later for your Teams app manifest.
-
Set up the Microsoft Teams Bot App.
-
Log in to the Microsoft Teams Developer Portal.
-
Select the Apps tab.
-
Select + New app.
-
In the dialog box, enter a name for the application. For example,
SalesforceEmployeeBot.
-
Select Create.
-
In the left navigation pane, under Configure, select App
features.
-
Under Identify your bot, select an existing bot or create a new bot.
-
Under What can your bot do?, select the checkboxes for the features you want to
enable:
- Upload and download files: Allows the bot to send and receive files.
- Only send notification: Limits the bot to one-way outgoing messages.
- Supports audio calls: Enables Voice over IP functionality.
- Supports video calls: Enables video communication features.
-
Under Select the scopes where people can use your bot, choose the environments where the
bot to be available:
- Personal: Users can interact with the bot in a one-on-one private chat.
- Team: The bot can be added to specific teams for collaborative tasks.
- Group chat: The bot can be added to multi-user chats outside of a specific team.
-
Save your changes.
-
In the left navigation pane, under Configure, select Basic
information.
-
Fill in all the fields with relevant information.
-
For website URLs, provide your portal url.
-
In the Application (client) ID field, enter the App ID for the Azure AD bot app you
created earlier.
-
After you complete the configuration, your manifest.json file should look like the
following example.
{
"$schema": "https://developer.microsoft.com/en-us/json-schemas/teams/v1.23/MicrosoftTeams.schema.json",
"version": "1.0.0",
"manifestVersion": "1.23",
"id": "02515a34-b249-44e0-9908-244dc8d5dcb2",
"name": {
"short": "test-notifications",
"full": "test-notifications"
},
"developer": {
"name": "Your Webiste",
"websiteUrl": "https://yourwebsite.com",
"privacyUrl": "https://yourwebsite.com",
"termsOfUseUrl": "https://yourwebsite.com"
},
"description": {
"short": "short description",
"full": "Long Description"
},
"icons": {
"outline": "outline.png",
"color": "color.png"
},
"accentColor": "#ffffff",
"bots": [
{
"botId": "6b748562-dee8-4c5a-9053-2d07e80ab54b",
"scopes": [],
"isNotificationOnly": false,
"supportsCalling": false,
"supportsVideo": false,
"supportsFiles": false
}
],
"validDomains": [],
"webApplicationInfo": {
"id": "6b748562-dee8-4c5a-9053-2d07e80ab54b"
}
}
-
To view the file in the portal, go to App package editor, and then
select manifest.json.
-
Go to the Azure
Portal home page and search for the bot app by name.
-
In the Manage section, select API permissions, and then assign the
required permissions.
-
Select Add a permission.
-
Select Microsoft Graph.
-
Select the Application permissions.
-
Select the these permissions.
- Chat.Create
- Chat.ManageDeletion.All
- Chat.Read.All
- Chat.Read.WhereInstalled
- Chat.ReadBasic.All
- Chat.ReadBasic.WhereInstalled
- Chat.ReadWrite.All
- Chat.ReadWrite.WhereInstalled
- Chat.UpdatePolicyViolation.All
- ChatMember.Read.All
- ChatMember.Read.WhereInstalled
- ChatMember.ReadWrite.All
- ChatMember.ReadWrite.WhereInstalled
- ChatMessage.Read.All
- Organization.Read.All
- Organization.ReadWrite.All
- TeamsActivity.Read.All
- TeamsActivity.Send
- User.Read.All
- User.ReadBasic.All
- User.ReadWrite.All
-
Select Add permissions.
-
Select Grant admin consent (for your tenant).
-
Go to Microsoft Teams Developer portal.
-
In the navigation bar, select Distribute.
-
Select Publish to your org.
After the admin approves the request, the app is available for users in your
company.
-
In the installation dialog, select Add.
-
To verify the installation, open the bot in a chat window, and then send a message to
confirm that the bot responds.
-
Set up Named Credentials.
-
In the Quick Find box, enter Named Credentials and select
Named Credentials.
-
Select the External Credentials tab.
-
Select AzureBotAuthClientCredentialsEC from the list.
-
Select Edit.
-
Find the Identity Provider URL field and replace the {tenant_id} placeholder with your actual
Azure Bot Tenant ID.
-
Save your changes.
-
Scroll down to the Principals section.
-
For the NamedAuthPrincipal, select the action dropdown and choose
Edit.
-
In the Edit Principal dialog box, enter the Azure Bot Client ID
and Client Secret into the respective fields.
Get the client ID and client secret from Azure AD app that was created earlier.
-
Select Save.
-
Verify that the Authentication Status for the principal is updated to Configured.
-
Repeat steps from c to k for the MSTeamsClientCredentialsEC External Credential. Ensure
you update the {tenant_id}, URL, and provide the correct Client ID and Secret.
-
Set up notifications.
-
From Setup menu, go to Salesforce Go > Feature
Sets.
-
On the Notification for Employee Service card, select Get
Started.
-
Turn on Notification for Employee Service.
-
From Setup, in the Quick Find box, enter Notifications and select
Multi-channel Notifications under Service Notifications.
-
Under the Channels section, turn on Teams.
-
On the All Notifications list, select New.
-
In the Basic Information field, enter Incident Update for the
Notification Name.
-
In the Reference Object field, select Incident.
-
Select Next.
-
In the Trigger Conditions page, select Update as the Trigger
Type.
-
Configure the condition by setting Resource to Status, Operator to Is Changed, and Value
to True.
-
Select Next.
-
In the Notification Content and Channels page, select the Teams
tab.
-
Turn on Activate Teams notification.
-
Select app as Salesforce IT Service or Salesforce IT
Desk.
-
From the Recipient dropdown list, choose Assigned User ID (User
Field).
You can select multiple recipients.
-
In the Message Title field, enter message title. For example, Incident {{Incident.Id}}
Updated
-
In the Message Body field, enter the message body. Updated Incident Subject:
{{Incident.Subject}} With Priority: {{Incident.Priority}}.
-
From Choose Actions list, choose View Record.
-
Select Next.
-
On the Summary page, turn on activate notification preferences.
-
Save your changes.