Setting up Microsoft Teams integration
To use Totara with Microsoft Teams you will need to set up your own app. This page outlines how to create and update your app.
Sites and domains
When configuring various settings for your Microsoft Teams integration it is important to understand the difference between Totara sites and domains. Sites can be installed in a subfolder on a domain. For example, a domain with Totara Learn installed could have the following:
Domain: www.totarasite.com
Site: https://www.totarasite.com/learn
For site URLs https is a requirement, as some URLs (e.g. the privacy policy) will fail if using http.
The domain shows which domain the site is located on, but to access the Totara Learn instance itself you need to use the site name. For certain settings, such as API scope, you need to use the domain name (www.totarasite.com/) rather than the Learn site name.
Set up process
Step 1: Prepare Office 365
Log in to your Microsoft account at https://admin.teams.microsoft.com/.
Navigate to Teams App > Manage Apps and select Org-wide App settings.
Check the Allow third-party apps setting and save.
You can find out more about preparing your Office 365 tenant in Microsoft's documentation or sign up for a Microsoft Teams account.
Step 2: Create an application in Azure
Log in to Microsoft Azure at https://portal.azure.com/.
Navigate to App registrations either by searching 'app registrations' from the search bar, or by navigating to More services > All services. If you have recently accessed App registrations it will be available on the dashboard.
Click New Registration.
Enter the Name for your app and select Accounts in any organizational directory (Any Azure AD directory - Multitenant) in Supported account types.
In Azure there are three choices for Supported account types supported with Totara:
Accounts in any organizational directory (Any Azure AD directory - Multitenant): This is the recommended choice for this integration
Accounts in any organizational directory (Any Azure AD directory - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox): Users can also log in using their personal accounts
Personal Microsoft accounts only: Users can only log in using their personal account (e.g. @hotmail.co.uk)
Please note that the options including personal Microsoft accounts any personal accounts must be external users of your Azure AD tenant. For more information please refer to Microsoft's documentation.
Click Register to create the app.
Make a note of the Application (client) ID as this will be required when configuring Totara integration settings later.
Complete all fields on the Branding page:
Name: The name of your app, which you should have set in step 2
Logo: You can use the same logo when configuring MS Teams within Totara
Home page URL: This should be the URL of your Totara website
Terms of service URL: This should be the same URL you use when configuring MS Teams within Totara
Privacy statement URL: This should be the same URL you use when configuring MS Teams within Totara
Save your changes.
Step 2a: Setting up Microsoft Single Sign-On (optional)
Step 3: Create a Bot in Azure (optional)
Step 4: Prepare the Microsoft Teams extension in the Totara admin settings
Next you need to go to your Totara site to configure the admin settings.
Log in to your Totara site as a Site Administrator.
If using Single Sign On, set up the OAuth 2 SSO plugin using the following steps. Otherwise, skip to step 3.
After selecting Create new Microsoft service set the following values for the settings:
Client ID: Your Application (client) ID from the Azure app
Client secret: Your Client Secret from the Azure app
Require email verification: Decide if you want to require email verification
Click Save changes.
Navigate to Site administration > Security > HTTP security and enable Allow frame embedding, then click Save changes.
(Optional) In order to allow catalogue images to show in the Messaging Extension feature, Microsoft requires images to be made publicly accessible via direct URL. If you would like the images to show, navigate to Quick-access menu > Security and enable the Allow public access to catalogue item pictures setting.
Navigate to Site administration > Microsoft Teams > Microsoft Teams integration.
Set the following values:
Manifest app ID: Your Application (Client) ID from the Azure app
Package name: Unique package name as a reversed domain (e.g. site.totara.your.msteams)
Under the Set up single sign-on heading, if you are using single sign-on:
Set the OAuth2 service setting to Microsoft - note that the OAuth2 authentication plugin must be enabled and using Microsoft's identity provider for single sign-on.
Set the SSO app ID to the Application (client) ID from the Azure app
Set the Resource scope to the api://[your.totara.domain]/[Application (client) ID] from the Azure app
Otherwise, make sure the OAuth2 service setting is set to None and continue
If you are planning to use Bot notifications (see step 3) then under the Set up the conversational bot heading:
Tick the Bot feature enabled setting
Tick the Message extensions feature enabled setting
Set the Bot app ID setting to the Application (client) ID for the Bot from the Azure bot app
Set the Client secret setting to the Client secret setting from the Azure bot app
Customise the application to match your organisation's visual brand.
In the Publisher information section add the Publisher's name and a link to the Publisher's website, as well as URL links to your own Privacy policy and Terms of use. If these are left blank then these will link to the equivalent pages on your Totara site.
Save your changes to generate a manifest file, while can then be downloaded in the Totara app installation settings.
Step 5: Install the app
Finally you just need to install the app on Microsoft Teams. You can do this by following these steps:
Navigate to Site administration > Microsoft Teams > Totara app installation.
Confirm that all checks for enabled features have been passed or skipped.
Download the manifest file.
Navigate to https://admin.teams.microsoft.com/, then Teams apps > Manage apps.
Click Upload, then Select a file. Select the manifest file downloaded in step 3, then confirm.
If your manifest fails to be uploaded, you can attempt to validate it with the Teams app validator.
Updating an existing app
If you are updating your app or making changes to the app name, description, icon, or adding or making changes to the language packs/strings, you will need to download and re-upload the manifest file. When you are creating a new manifest file you need to ensure that you update the app version number in the semver format, e.g. 1.0.0 to 1.0.1.
Once you have made the required updates, click Save and go to the Totara app installation setting.
Go to Team admin settings > Manage apps (https://admin.teams.microsoft.com/policies/manage-apps).
Search for your app and select it.
Click Update.
Select the downloaded manifest.zip file.
If Microsoft Teams says the app already exists, you should keep increasing the version number, re-download and re-upload a manifest file.
Please note that it can take up to 30 minutes for the app to update for all users, and may require restarting the app.
If an updated app has a new feature (for example, the current version doesn't have bot enabled but the new version does), then a banner will be displayed on the app tabs. An admin has to click Upgrade to upgrade the app.
Customising the app
The Microsoft Teams integrations settings in Totara allow you to customise your app before downloading the manifest file. This configuration includes the app name, descriptions and icons.
Setting | Description |
---|---|
Short name and full name | The app name is defined in the short and/or full name fields. Note that the app full name is optional, but it may be suitable if your organisation name is longer than 30 characters. For example, you could use the short name field if your organisation has a longer name but is commonly known by an acronym. |
Short description | This field should be used for a short summary of the app. This description will be displayed in the app catalogue and will help users to identify your app. |
Full description | The full description is intended for a more in-depth overview of the app and its capabilities. This will be displayed beneath the short description in the app catalogue. |
Full colour icon | This is the icon that will appear in the catalogue or any other modal. The standard format is .PNG |
Outline icon | The outline icon will appear in the side panel where the app will be pinned. The standard format is .PNG |
Accent colour | The accent colour is the background colour that will be displayed behind the icon image. This will only be visible for icon .PNG images that have a transparent background. This colour is also used on the sign-in card. |
Once the configurations have been set and saved, a manifest file will be created.