Copilot for Sales - Conversation intelligence dashboard data structure (preview)

Important

  • This is a preview feature.
  • Preview features aren't meant for production use and may have restricted functionality. These features are available before an official release so that customers can get early access and provide feedback.

[This article is prerelease documentation and is subject to change.]

This article describes the data structure of Copilot for Sales conversation intelligence dashboard, where they're saved, and how this data can be controlled.

Learn more about each Dataverse entity.

Data generation and flow

Conversation intelligence data includes insights that are generated from conversations’ transcripts by advanced AI models. These insights include automatic suggestions, conversation style analysis, follow-up tracking, and more.

The insights generated by the conversation intelligence models in Copilot for Sales are saved in Dataverse. This provides organizations with benefits such as total flexibility, high security and compliance, and availability of custom reporting built on top of the data. Microsoft Teams related data, such as the meeting’s recording and transcript files, are saved in the office storage (SharePoint or OneDrive) and aren't copied to Dataverse.

After a meeting with Copilot for Sales ends in Teams, the processing of the transcript begins, and after a few seconds the insights are saved in various Dataverse entities as explained in this article. By default, there's no expiry date for this data, and administrators can set a retention policy for the various entities or manually delete parts or all of the data when needed.

The data from the various entities is reflected in the Copilot for Sales meeting summary page. When deleting data from Dataverse, the page displays partial data, as long as the transcription or the recording files are available. If both the recording and the transcript files are deleted, the meeting summary page is no longer displayed for that conversation.

Data schema

Conversation intelligence insights are saved for each instance of a conversation in Dataverse. For example, if a meeting in Teams was joined twice, it has two entries, one for each instance.

Important

  • Deleting a row in a table will delete all its related rows in related tables.
  • You can delete any row from a table related to the conversation without impacting the Copilot for Sales user interface. As long as the transcript or recording is still available in Teams, the user interface of the meeting summary will still be accessible, even if the data in Dataverse is partial.
  • Conversation intelligence insights is saved to Dataverse even if there isn’t an activity (appointment or phone-call) created in Dataverse. The meeting summary for such cases will be accessible only through the Teams app and will not be displayed in Dynamics 365.

Data structure

Screenshot showing data structure of conversation intelligence dashboard.

Entity description

  • msdyn_SCIConversation: Contains data required to correlate between the conversation intelligence data, the activity, and Microsoft Teams files.
  • Recording: Contains a link to the recording file in Teams. However, it doesn't store the recording itself.
  • Transcript: Contains a link to the transcript file in Teams. If an admin provides consent, a copy of the transcript file can also be stored for extensibility use. For more information, see, Extend Microsoft Copilot for Sales with partner applications (preview)
  • msdyn_conversationAggregatedInsights: Contains Key Performance Indicators (KPIs) such as longest monologue, switch count throughout the conversation, meeting duration, and more. It also contains IDs to correlate the lower level insights.
  • msdyn_conversationSentiment: Contains sentiment data for the conversation such as overall percent of positive, negative, and neutral customer sentiments during the conversation.
  • msdyn_conversationSubject: Contains the automatic categorization of segments of the conversation such as introduction, negotiation, and closure.
  • msdyn_conversationParticipantInsights: Each participant in a conversation, whether a seller or a customer, has their own instance of the participant entity. The entity contains identifiers for the participant, and personal KPIs such as average talking speed, own longest monologue, average pause before speaking, talk to listen ratio, and switch count. This entity also contains the following subentities:
    • msdyn_conversationSignal: Contains all the tracked keywords such as brands, times, competitors, and names mentioned by participants during the conversation.
    • msdyn_conversationParticipantSentiment: Contains the sentiment per each fragment of the participant’s speech.
    • msdyn_conversationActionItem: Contains suggested action items for the participant.
    • msdyn_conversationSummarySuggestion: Contains suggestions for the meeting summary, which involves the participant or were a result of the participant’s communication.
    • msdyn_conversationQuestion: Contains questions asked by the participant.

Size of a conversation in Dataverse

The size of an activity in Dataverse varies and has direct correlation to the duration of the activity, the number of participants, and the configuration of the data saved.

The following table provides an estimation of the total size (table storage in MB) required for entities created during a conversation, as a function of the conversation’s duration and number of participants:

Duration (minutes) 2 participants 5 participants 10 participants 15 participants 20 participants
10 0.15 0.16 0.17 0.18 0.20
20 0.30 0.31 0.32 0.33 0.35
30 0.45 0.46 0.47 0.48 0.49
40 0.60 0.61 0.62 0.63 0.64
50 0.75 0.76 0.77 0.78 0.79
60 0.90 0.91 0.92 0.93 0.94
70 1.05 1.06 1.07 1.08 1.09
80 1.20 1.21 1.22 1.23 1.24
90 1.35 1.36 1.37 1.38 1.39

Note

  • The above table does not consider saving the conversation transcript file into Dataverse (which can be controlled from the Copilot for Sales conversation intelligence settings in Teams).
  • Actual size may vary depending on the actual number of entities created during the conversation.

Data creation and access

Once a conversation is completed, the Copilot for Sales app user creates various entities in Dataverse. If an activity (phone-call or appointment) already exists for the conversation, the SCI_Conversation table is automatically connected to it. If the activity is created later, the system attempts to connect it to the conversation, based on the Teams meeting’s chat ID. After their creation, the entities are assigned to the conversation’s organizer.

For conversations conducted through Teams, the sales conversation intelligence settings include three options for determining the access permission to the conversation's summary:

  1. Everyone from the admin’s organization who is in the meeting chat, including people added later: In this option, everyone who has access to the chat can see the meeting summary in Teams.

    Note

    In this option, access is given to the entire summary page. If users don’t have permission to access specific types of insights according to the Dataverse permission model (for example, sentiment analysis), they will still be able to see these insights in the summary.

  2. Only users who have access to Copilot for Sales and were on the original meeting invite: In this option, only Copilot for Sales users who participated in the meeting are able to access the meeting’s summary. Other users from the admin’s organization don't have access.

  3. Only the organizer: Only the organizer of the meeting has access to the meeting’s summary.

By default, out-of-the-box security roles have permission to access all the new Dataverse entities that hold conversation intelligence data. For custom security roles, admins need to grant permission to access these entities.

Note

Read permission is sufficient for users who are organizers of meetings. Edit/write permissions are required for performing editing operations through the summary page, such as tagging a call or leaving a comment on the transcript.

Data deletion

Deleting Teams related files (recording and transcript) is done through the Teams controls and doesn't affect the conversation intelligence data saved in Dataverse. For information about deleting insights from Dataverse and configuring a retention policy in Dataverse, see Manage data retention policies in Microsoft Dataverse.