Scheduling and Starting Microsoft Teams Meetings

  • Browser
  • CRM Desktop (Windows)
  • iPad

Users can schedule and start Microsoft Teams meetings from Veeva CRM. Meetings are conducted in Microsoft Teams, using the host’s corporate Microsoft Teams account. The meeting is hosted by Microsoft Teams and the meeting experience is controlled by the user’s corporate Microsoft Teams configuration.

Who Can Use This Feature?

  • Platforms – Browser, CRM Desktop (Windows), iPad
  • Licensing – An Engage license is required. Users do not need to be assigned to Engage groups.
  • Users – Admin Users, End Users

Configuring Microsoft Teams Meetings

Granting Veeva Consent in the Azure Tenant as a Microsoft Global Administrator

Before enabling this functionality for all users, Microsoft Global Administrators must grant tenant wide consent to the Veeva App in the Azure tenant from the Veeva-hosted webpage.

This allows the app to do the following:

  • Create, read, update and delete events in all calendars the user has permission to access. This includes delegate and shared calendars.
  • Read users’ primary email addresses
  • See and update the data you gave it access to, even when users are not currently using the app
  • Read and create online meetings on behalf of the signed-in user. Required for Scheduling and Starting Microsoft Teams Meetings.
  • Read online meeting artifacts on behalf of the signed-in user. Required for Scheduling and Starting Microsoft Teams Meetings.
  • See basic user profile information when the user signs in with their work or another account
  • Read the full set of profile properties, reports, and managers of other users in the organization, on behalf of the signed-in user

Ensure the Veeva CRM Graph API integration is granted the following permissions:

Multiple Veeva CRM orgs can connect to the same Microsoft tenant.

Granting tenant wide consent enables Veeva CRM to request information through the Microsoft Graph API, but it does not provide access to Microsoft Office 365 information. Information about users' Microsoft Outlook or Microsoft Teams accounts is only gathered after the individual user authenticates their Microsoft credentials from Veeva CRM. The Veeva CRM Microsoft Integration uses Microsoft's best practices for authorization (authZ), authentication (OpenId Connect over OAuth 2), data in transit (HTTPS and TLS 1.2+ encryption) and data at rest. Only Microsoft has access to user credentials.

For more control over the integration from the Microsoft side, admins can assign the application to specific users or groups of users, instead of granting access to all users. For more information on assigning applications to Microsoft groups, see Microsoft's Manage users and groups assignment documentation.

Configuring the Microsoft Teams Integration in Veeva CRM

To enable this functionality:

  1. Ensure Configuring Call Reporting is complete and Engage licenses are provisioned for the appropriate orgs. Users do not need to be assigned to Engage groups.
  2. Ensure Lightning for My Schedule is enabled for Browser users.
  3. Grant admins the following permissions:

    To quickly grant users permissions for this feature, use the MS_GRAPH_API_USER_vod permission set. For more information, see Configuring Microsoft Integrations with the Microsoft Graph API Permission Set.

    Object

    OLS

    Record Types

    Fields

    FLS

    Call2_vod

    CRU

    n/a

    • Call_Datetime_vod
    • Duration_vod
    • MS_Teams_Remote_Meeting_vod
    • Remote_Meeting_Type_vod

    Edit

    Remote_Meeting_vod

    CRU

    MS_Teams_Call_Meeting_vod

    • Meeting_Id_vod
    • Meeting_Name_vod
    • Meeting_Password_vod
    • Mobile_ID_vod
    • MS_Teams_Meeting_External_Id_vod
    • MS_Teams_Meeting_Link_vod
    • Scheduled_vod
    • Scheduled_DateTime_vod
    • VExternal_Id_vod

    Edit

    Sent_Message_vod

    CRU

    Remote_Meeting_Invite_Link_vod

    • Call_vod
    • Capture_Datetime_vod
    • Engage_Link_vod
    • Mobile_ID_vod
    • Sent_From_Platform_vod
    • Sent_Via_vod
    • Transaction_Type_vod
    • User_vod

    Edit

    User

    n/a

    n/a

    • Enable_MS_Teams_vod
    • MS_Graph_API_Authorized_vod

    Edit

    User_Detail_vod

    CRU

    n/a

    Remote_Meeting_Name_vod (optional; edit this field to change the default Meeting Topic text for remote meetings)

    Edit

  4. Grant users the following permissions:

    Object

    OLS

    Record Types

    Fields

    FLS

    Call2_vod

    CRU

    n/a

    • Call_Datetime_vod
    • Duration_vod
    • MS_Teams_Remote_Meeting_vod
    • Remote_Meeting_Type_vod

    Edit

    Remote_Meeting_vod

    CRU

    MS_Teams_Call_Meeting_vod

    • Meeting_Id_vod
    • Meeting_Password_vod
    • Meeting_Name_vod
    • Mobile_ID_vod
    • MS_Teams_Meeting_External_Id_vod
    • MS_Teams_Meeting_Link_vod
    • Scheduled_vod
    • Scheduled_DateTime_vod
    • VExternal_Id_vod

    Edit

    Sent_Message_vod

    CRU

    Remote_Meeting_Invite_Link_vod

    • Call_vod
    • Capture_Datetime_vod
    • Engage_Link_vod
    • Mobile_ID_vod
    • Sent_From_Platform_vod
    • Sent_Via_vod
    • Transaction_Type_vod
    • User_vod

    Edit

    User

    n/a

    n/a

    Enable_MS_Teams_vod

    Read

    MS_Graph_API_Authorized_vod

    Edit

    User_Detail_vod

    CRU

    n/a

    Remote_Meeting_Name_vod (optional; edit this field to change the default Meeting Topic text for remote meetings)

    Edit

  5. Grant user attendees at least the following permissions:

    Object

    OLS

    Record Types

    Fields

    FLS

    Call2_vod

    n/a

    n/a

    • Call_Datetime_vod
    • MS_Teams_Remote_Meeting_vod
    • Remote_Meeting_Type_vod

    Read

    Remote_Meeting_vod

    R

    MS_Teams_Call_Meeting_vod

    MS_Teams_Meeting_Link_vod

    Read

    Ensure user attendees have visibility to call reports where they are added, and that they are able to sync calls.

  6. Add the --rem section signal to Call2_vod page layouts to display the Microsoft Teams meeting user interface.

    Do not add the --rem section signal to the zvod_buttons section. The remote meeting controls will not display on the call report.

  7. Add the Meeting_Name_vod field to the MS_Teams_Call_Meeting_vod page layout on the Remote_Meeting_vod object and set the Meeting_Name_vod field to read-only (optional; prevents users from editing the Meeting Name in the meeting information modal on the call report).

  8. Enable the following picklist values for the Remote_Meeting_Invite_Link_vod record type on the Sent_Message_vod object:
  • Enable the Engage_Chat_vod picklist value for the Sent_Via_vod field
  • Enable the MS_Teams_Join_URL_vod picklist value for the Transaction_Type_vod field
  1. Populate the following Engage Settings appropriately, so users can share the Microsoft Teams Join URL with HCPs:
    • ENGAGE_LINK_ACCOUNT_SELECTION_vod – Determines if users must select an account before sending a web link. Populate with one of the following values:
    • 0 – Users are required to select an account. This is the default value.
    • 1 – Users cannot select an account. After selecting a sharing option, users can select the recipient if not already populated.
    • ENGAGE_LINK_APPS_vod – References the ENGAGE_LINK_APPS;;EngageLink Veeva Message. Edit the list in the Veeva Message to control the number and order of sharing options available for users to send website links with accounts. Available values are:
    • Messages
    • WhatsApp
    • LINE
    • LINEWORKS
    • EngageConnect
    • EngageChat
    • The Engage tab must be configured
    • Engage Chat is only supported on iPad and iPhone.

    • CopyURL (includes QR code)

    Populate the list using the format App1;;App2. Configuring EngageChat and EngageConnect together is not supported.

  2. Select the check box for the Enable_MS_Teams_vod field on the User record, for each user who should have access to this functionality.

  3. Edit the policies for the Veeva Microsoft Graph API Integration Connected App (if not already edited for Integrating My Schedule and Microsoft Outlook Calendars):

  • Navigate to the App Manager in Salesforce Setup

  • Select Manage for the Veeva Microsoft Graph API Integration App
  • Select Edit Policies

  • In the OAuth Policies section, select Admin approved users are pre-authorized from the Permitted Users picklist
  • Select Save

  • Select OK to confirm the change
  • Select Manage Profiles or Manage Permission Sets and assign the Veeva Microsoft Graph API Integration Connected App to the appropriate profiles or permission sets.
  1. Ensure the following VMOCs are enabled for the appropriate platforms:

  • Call2_vod

  • Engage_Link_Settings_vod

  • Message_vod, with the following where clause:
  • WHERE Category_vod__c IN ('RemoteMeeting', 'iPad', 'CONTENT', 'CLM', 'Common', 'EngageLink') AND Language_vod__c IN (@@VOD_USER_LANG_CD@@,'en_US')
  • Remote_Meeting_vod

  • Sent_Message_vod

  • User_Detail_vod (optional; to change the default Meeting Topic text for remote meetings)

  1. Ensure the VeevaOrgConfigurationService Apex class is enabled for the appropriate users.

Testing the Microsoft Teams Integration

For Sandbox testing, connect the Sandbox org with a test Microsoft Teams account. Within an org, each Microsoft Teams account can only be connected to one user, and vice versa. The same Microsoft Teams account cannot be used for multiple users.

Using multiple Microsoft accounts for the same Salesforce user is not supported. This means once a Salesforce user is authenticated with one Microsoft account, the same user cannot be re-authenticated with a different Microsoft account. To re-authenticate the user with a different Microsoft account, admins must contact Veeva.

If authentication errors occur, check your organization’s IT logs and policies, and contact Veeva.

Enabling SSO with Microsoft Intune

If required by the organization's IT policies, admins can use Microsoft Intune to enable Apple single sign-on (SSO) for Microsoft integrations with Veeva CRM. To configure SSO for Microsoft integrations, admins must create a single sign-on app extension configuration profile in the Microsoft Intune admin center and assign the profile to the appropriate devices and user groups.

When creating the configuration profile in Microsoft Intune, set the device features for the configuration profile as follows:

  1. Select the Single sign-on app extension section from the Device Features page.
  2. Select Microsoft Azure AD from the SSO app extension type picklist.
  3. Enter the following text in the App bundle ID field: com.veevasystems.Veeva
  4. Enter the following attributes under Additional configuration:
  • Key: AppPrefixAllowList
  • Type: String
  • Value: com.veevasystems.

The period at the end of com.veevasystems. must be included.

For more information on SSO with Microsoft Intune, see Microsoft's Use the Microsoft Enterprise SSO plug-in on iOS/iPadOS devices documentation.

Signing in to Microsoft Teams from Veeva CRM

Users are prompted to sign into their Microsoft account the first time they schedule or start a Microsoft Teams meeting from Veeva CRM.

For iPad and CRM Desktop (Windows) users, the authentication window opens in the device's default browser.

When they complete the authentication prompt, iPad and CRM Desktop (Windows) users are automatically redirected from their default browser. If the authentication fails, users are notified with an authentication failure message.

Ensure users sign in with their company-provided Microsoft account. Before signing in, users must clear Microsoft cookies if they have both a company-provided Microsoft Teams account and a personal Microsoft Teams account.

If users do not clear Microsoft cookies before signing in, their personal Microsoft Teams account is linked to Veeva CRM. To remove a personal Microsoft Teams account, your organization's admin must log a support ticket with Veeva CRM and clear Microsoft cookies.

If users have already authenticated their Microsoft account for Integrating My Schedule and Microsoft Outlook Calendars they do not need to sign in again.

Scheduling Microsoft Teams Meetings in Veeva CRM

To schedule a Microsoft Teams meeting in Veeva CRM, select Schedule Microsoft Teams Meeting from the call report. On the Browser platform, the Schedule button displays on the call report user interface. On the iPad platform and on the high performance call report, the Schedule option is under the More Actions menu. When users schedule Microsoft Teams meetings from Veeva CRM, a passcode is automatically generated for the meeting, regardless of the user’s corporate Microsoft Teams configuration.

Users can only schedule meetings for call reports they own. The Schedule option displays when a remote meeting is not scheduled for the call and the call is not submitted.

If both Engage Meeting and Microsoft Teams are enabled, select Schedule Meeting from the More Actions menu, then select the appropriate meeting type.

Once the meeting is scheduled, a related Remote_Meeting_vod record is created with the MS_Teams_Call_Meeting_vod record type, and the meeting type displays in the call report header. To edit the meeting datetime, edit the datetime on the call report or reschedule the call through My Schedule. The updated meeting time is reflected in Microsoft Teams.

To view or edit meeting details, select the information icon on the call report. The information modal displays.

Switching Remote Meeting Types

When both Engage Meeting and Microsoft Teams are enabled, users can switch meeting types after scheduling a meeting. Select the More Actions icon on the call report, then select the appropriate Switch to option.

Select Schedule to confirm the change.

When users switch meeting types, the original remote meeting data is retained. The user interface only displays the currently scheduled meeting type. If users switch between meeting types multiple times, the previously saved Remote_Meeting_vod record is reused.

If Starting Microsoft Teams Meetings from Calls in Microsoft Outlook is enabled, switching from a Microsoft Teams meeting to an Engage meeting removes the Microsoft Teams meeting reference from the call in Microsoft Outlook. If users switch from an Engage meeting to a Microsoft Teams meeting, a Microsoft Teams meeting reference is added to the call in Microsoft Outlook.

Users can only switch meeting types prior to the meeting. Conducting both an Engage meeting and a Microsoft Teams meeting from the same call report is not supported.

To share the Microsoft Teams meeting URL with attendees, select the Copy icon from the information modal. The URL is copied to your device’s clipboard.

To enable users to share Microsoft Teams meeting links using Approved Email, create an Approved Email template with the following object reference token:

{{Call2_vod__c.MS_Teams_Remote_Meeting_vod__r.MS_Teams_Meeting_Link_vod__c}}

On the call report, users select the Send Email button in the More Actions menu to begin composing an Approved Email with the attendees of the call selected as recipients.

Alternatively, select the Send Invite link on the call report, then select the appropriate messaging platform. This option is only available for iPad and CRM Desktop (Windows) users.

The account selector does not display when sending invites from the call report, regardless of whether the ENGAGE_LINK_ACCOUNT_SELECTION_vod Engage Link Setting is enabled.

Starting Microsoft Teams Meetings from Veeva CRM

To start a scheduled meeting, select Start. The Microsoft Teams landing page displays in the user’s default browser. The meeting is conducted in Microsoft Teams, using the user’s Microsoft Teams configuration.

When users start a Microsoft Teams meeting from the Browser platform and the Start Media button or the high performance call report are enabled, the CRM Desktop app launches. If the high performance call report is enabled, the call report opens as a high performance call report in the CRM Desktop app. If only the Start Media button is configured, the CRM Desktop app launches in call mode.

Starting Microsoft Teams Meetings with the Meet Now Button

If a meeting is not scheduled for the call and you want to start a meeting immediately, select the Meet Now button to schedule and start a meeting immediately. On the Browser platform, the Meet Now button displays on the call report user interface. On the iPad platform and on the high performance call report, the Meet Now option is under the More Actions menu.

Starting Microsoft Teams Meetings from My Schedule

  • Browser
  • iPad

To start Microsoft Teams meetings from My Schedule (iPad and Lightning for My Schedule):

  1. Select the appropriate call from the calendar.

  2. Select the Start button from the popover (iPad only). On Browser, select More Details from the popover, then select the Microsoft Teams meeting link from the call record.

The call report launches before users are redirected to the Microsoft Teams landing page.

Support for User Attendees in Microsoft Teams Meetings

When a Microsoft Teams meeting is scheduled for a call, user attendees can join the meeting from the call report. On the iPad platform, user attendees can also join from the call popover in My Schedule.

To join a Microsoft Teams meeting as a user attendee, select the Join button.

Users cannot join a Microsoft Teams meeting while in an Engage Meeting. If users attempt to join a Microsoft Teams meeting while in an Engage Meeting, they are prompted to either select Continue to launch the Microsoft Teams meeting, or select Cancel to remain in the Engage Meeting.

Starting Microsoft Teams Meetings from Microsoft Outlook

If Integrating My Schedule and Microsoft Outlook Calendars is enabled, users can start Microsoft Teams meetings from their calls in Microsoft Outlook. See Starting Microsoft Teams Meetings from Calls in Microsoft Outlook for more information.

Tracking CLM Activity

If users share CLM content in a Microsoft Teams meeting, the CLM activity is captured in Veeva CRM:

  • When users return to Veeva CRM after starting a Microsoft Teams meeting and share CLM from the call report, media is tracked against the call
  • If Tracking CLM Activity Anonymously is enabled, media activity is also saved when users share CLM from the media library during a Microsoft Teams meeting

Considerations

  • The following default browsers are supported for user authentication:
  • Microsoft Edge
  • Safari
  • Google Chrome
  • Users cannot start or join a Microsoft Teams meeting while in an Engage Meeting. If users attempt to start or join a Microsoft Teams meeting while in an Engage Meeting, they are prompted to either select Continue to start the Microsoft Teams meeting, or select Cancel to remain in the Engage Meeting.
  • Once users start a Microsoft Teams meeting, the meeting experience is controlled by Microsoft Teams. For example, iPad users may encounter screen sharing limitations in Microsoft Teams.
  • When users share their screens via Microsoft Teams on iPad, meeting attendees see all activity on the user's screen

Related Topics