Integrations

Weavy includes some optional features and integrations with 3rd party services. The sections below have instructions on how to enable and configure them.

Microsoft Teams

The Microsoft Teams integration allows you to start (or join) a teams meeting from a chat.

Prerequisites

  • An Azure account.
  • A Microsoft Teams account.

Create Azure app

The first thing you need to do is to create an Azure app. Sign in to your Azure account and go to the Azure Portal.

  1. Go to Azure Active Directory -> App registrations.
  2. Click on New registration.
  3. Choose a name for the app and select the Supported account types best suited for your app.
  4. For Redirect URI, enter the url https://{weavy-backend-url}/meetings/teams/auth
  5. Click on Register to complete the app registration
  6. On the App details page, select Authentication from the left hand menu. Click on Add a platform and select Web. Enter the same Redirect URI as in the previous step. When you are done, click on the Configure button
  7. On the App details page, select Certificates & secrets from the left hand menu.
  8. Click on New client secret. Enter a name and select when the client should expire. Click Add to add the secret. Copy and save the secret now. This will not be visible again! You need the secret when you are going to configure Weavy.
  9. On the App details page, select Overview from the left hand menu.
  10. Take note of the Application (client) ID and Directory (tenant) ID. You will need it in the next step.
  11. You're done!

Configure Weavy

The following settings are required to enable the Teams Online integration:

{
  "Weavy": { 
    "Features": {
      "TeamsMeetings": true
    },
    "Azure": {
      "AuthenticationUrl": "https://login.microsoftonline.com/{TenantId or common}/oauth2/v2.0/authorize?client_id={Client Id}&response_type=code&redirect_uri={weavy-backend-url}/meetings/teams/auth&response_mode=query&scope=offline_access OnlineMeetings.ReadWrite",
      "ClientId": "",
      "ClientSecret": "",
      "Scopes": "offline_access OnlineMeetings.ReadWrite",
      "TenantId": ""      
    }        
  }
}
  • Weavy:Features:TeamsMeetings - Set to true to enable the Teams feature.
  • Weavy:Azure:AuthenticationUrl - This should be in the format: https://login.microsoftonline.com/{TenantId or common}/oauth2/v2.0/authorize?client_id={ClientId}&response_type=code&redirect_uri={weavy-backend-url}/meetings/teams/auth&response_mode=query&scope=offline_access OnlineMeetings.ReadWrite.
  • Weavy:Azure:ClientId - The Client Id from step 10.
  • Weavy:Azure:ClientSecret - The Client Secret from step 8.
  • Weavy:Azure:Scopes - Set to offline_access OnlineMeetings.ReadWrite.
  • Weavy:Azure:TenantId - The Tenant Id from step 10.

Note that either a Tenant Id or the word "common" could be specified in the AuthenticationUrl depending on which "Supported account types" you choose in step 3.

Test the integration

Open up a chat and click the + icon next to "Type a message...". You should now see an option to add a Teams meeting. The first time you add a meeting, you will need to Sign in to continue. Click on the Sign in link and enter your credentials.

When signed in, you can add a meeting to your message. The meeting will be created in Microsoft Teams and a Teams Meeting card will be attached to your message. Click on the Start meeting button to open up Teams and start the meeting. Other users will se a Join link to the meeting.

Zoom

The Zoom integration allows you to start (or join) a Zoom meeting from a chat.

Prerequisites

  • A Zoom account. A Standard account works fine, but if you want to use cloud recordings you need a Zoom Pro or Business account (recorded meetings will then show up in the chat when the meeting has ended).

Create Zoom app

The first thing you need to do is to create a Zoom app. Sign in to your Zoom account and go to your Zoom apps.

  1. In the top right corner, select Develop -> Build App.
  2. Select the OAuth app type and click Create.
  3. Choose User-managed app and de-select that the app should be published on the Zoom Marketplace.
  4. On the App Credentials page, enter the Redirect URL for OAuth. This is the url that Zoom will redirect to when the user is authenticated. The url should be https://{weavy-backend-url}/meetings/zoom/auth.
  5. Enter https://{weavy-backend-url} as a white listed URL. Click Continue.
  6. On the Information page, enter the information you would like to show when the user signs in. Click Continue.
  7. On the Feature page, you have the possibility to enable some webhooks that Weavy can listed to. This is optional. At the moment, Weavy listens to the following events:
    • End Meeting - the meeting card in Weavy shows that the meeting has ended
    • All Recordings have completed - the meeting card in Weavy displays a link to the recorded meeting
      If you want to use the webhooks above, enter the following URL as Event notification endpoint URL, https://{your-weavy-url}/api/meetings/zoom/events. Select the events you want to subscribe to (meeting ended and/or recording completed). Save the event subscription and take note of the generated Verification token.
  8. On the Scopes page, add the following scopes:
    • meeting:read
    • meeting:write
    • recording:read
    • recording:write
    • user:read
    • user_profile
  9. You're done! Please take note of the Client ID and Client Secret generated on the App Credentials page. You will need them in the next step.

Configure Weavy

The following settings are required to enable the Zoom integration:

"Weavy": {
  "Features": {
    "ZoomMeetings": true
  },
  "Zoom": {
    "AuthenticationUrl": "https://zoom.us/oauth/authorize?response_type=code&client_id={client-id}&redirect_uri={weavy-backend-url}/meetings/zoom/auth",
    "ClientId": "",
    "ClientSecret": "",    
    "WebhookVerificationToken": ""
  }
}
  • Weavy:Features:ZoomMeetings - Set to true to enable the Zoom meetings feature.
  • Weavy:Zoom:AuthenticationUrl - The value for the Zoom authentication url.
  • Weavy:Zoom:ClientId - The Zoom client id.
  • Weavy:Zoom:ClientSecret - The Zoom client secret.
  • Weavy:Zoom:WebhookVerificationToken - The verification token. Only needed if you enabled event subscription (webhooks) in the Zoom app.

Test the integration

Open up a chat and click the + icon next to "Type a message...". You should now see an option to add a Zoom meeting. The first time you add a meeting, you will need to Sign in to continue. Click on the Sign in link and enter your credentials.

When signed in, you can add a meeting to your message. The meeting will be created in Zoom Teams and a Zoom Meeting card will be attached to your message. Click on the Start meeting button to open up Zoom and start the meeting. Other users will se a Join link to the meeting.

Weavy Docs