Delen via


Reacties

In dit artikel wordt beschreven hoe u reacties implementeert voor Aanroepende SDK's van Azure Communication Services. Met deze mogelijkheid kunnen deelnemers in een groepsgesprek of -vergadering reacties verzenden en ontvangen met deelnemers in Azure Communication Services en Microsoft Teams.

De configuratie- en beleidsinstellingen in Microsoft Teams bepalen reacties voor gebruikers in Teams-vergaderingen. Zie Reacties beheren in Teams-vergaderingen en -webinars en vergaderopties in Microsoft Teams voor meer informatie.

Vereisten

Limieten voor reacties

Het systeem haalt reacties op batches met regelmatige tussenpozen op. De huidige batchbeperking is 20.000 reacties die elke 3 seconden zijn opgehaald.

Als het aantal reacties de limiet overschrijdt, worden restreacties verzonden in de volgende batch.

Ondersteuning

De volgende tabellen definiëren ondersteuning voor reacties in Azure Communication Services.

Ondersteuning voor Teams-vergaderingen is gebaseerd op Teams-beleid.

Identiteiten en oproeptypen

In de volgende tabel ziet u ondersteuning voor reacties in verschillende gespreks- en identiteitstypen.

Identiteiten Teams-interoperabiliteitsvergadering Ruimte 1:1 oproep Groepsgesprek Groepsoproep in Teams
Communication Services-gebruiker ✔️ ✔️ ✔️ ✔️
Microsoft 365-gebruiker ✔️ ✔️ ✔️

Operations

In de volgende tabel ziet u ondersteuning voor reacties in de Aanroep-SDK naar afzonderlijke identiteitstypen.

Operations Communication Services-gebruiker Microsoft 365-gebruiker
Stuur specifieke reacties (zoals liefde, lachen, applaus, verrast) ✔️ ✔️
Ontvang specifieke reacties (zoals liefde, lachen, applaus, verrast) ✔️ ✔️

SDK's

In de volgende tabel ziet u ondersteuning voor de functie Together Mode in afzonderlijke Azure Communication Services SDK's.

Platformen Web Webgebruikersinterface iOS iOS-gebruikersinterface Android Android-gebruikersinterface Windows
Wordt ondersteund ✔️ ✔️

Installeer de SDK

Gebruik de npm install opdracht om de Common and Calling SDK voor Azure Communication Services voor JavaScript te installeren:

npm install @azure/communication-common --save
npm install @azure/communication-calling --save

Vereiste objecten initialiseren

Een CallClient exemplaar is vereist voor de meeste aanroepbewerkingen. Wanneer u een nieuw CallClient exemplaar maakt, kunt u deze configureren met aangepaste opties, zoals een Logger exemplaar.

Met het CallClient exemplaar kunt u een CallAgent exemplaar maken door het createCallAgentaan te roepen. Deze methode retourneert asynchroon een CallAgent exemplaarobject.

De createCallAgent methode gebruikt CommunicationTokenCredential als argument. Het accepteert een toegangstoken van een gebruiker.

U kunt de getDeviceManager methode op het CallClient exemplaar gebruiken om toegang te krijgen tot deviceManager.

const { CallClient } = require('@azure/communication-calling');
const { AzureCommunicationTokenCredential} = require('@azure/communication-common');
const { AzureLogger, setLogLevel } = require("@azure/logger");

// Set the logger's log level
setLogLevel('verbose');

// Redirect log output to console, file, buffer, REST API, or whatever location you want
AzureLogger.log = (...args) => {
    console.log(...args); // Redirect log output to console
};

const userToken = '<USER_TOKEN>';
callClient = new CallClient(options);
const tokenCredential = new AzureCommunicationTokenCredential(userToken);
const callAgent = await callClient.createCallAgent(tokenCredential, {displayName: 'optional Azure Communication Services user name'});
const deviceManager = await callClient.getDeviceManager()

Sdk-connectiviteit met Microsoft-infrastructuur het beste beheren

Het Call Agent exemplaar helpt u bij het beheren van gesprekken (om aanroepen deel te nemen of te starten). Als u wilt werken met uw aanroepende SDK, moet u verbinding maken met de Microsoft-infrastructuur om meldingen van binnenkomende oproepen te ontvangen en andere gespreksgegevens te coördineren. Uw Call Agent heeft twee mogelijke statussen:

Verbonden : een Call Agent connectionStatue-waarde van Connected het middel dat de client-SDK is verbonden en meldingen van de Microsoft-infrastructuur kan ontvangen.

Verbinding verbroken - Een Call Agent connectionStatue-waarde van Disconnected statussen is er een probleem dat verhindert dat de SDK verbinding maakt. Call Agent moet opnieuw worden gemaakt.

  • invalidToken: Als een token is verlopen of een ongeldig exemplaar Call Agent wordt verbroken met deze fout.
  • connectionIssue: Als er een probleem is met de client die verbinding maakt met Microsoft infrascture, wordt de connectionIssue fout na veel nieuwe pogingen Call Agent weergegeven.

U kunt controleren of uw lokale Call Agent verbinding heeft met de Microsoft-infrastructuur door de huidige waarde van connectionState de eigenschap te controleren. Tijdens een actieve oproep kunt u naar de connectionStateChanged gebeurtenis luisteren om te bepalen of Call Agent de status Verbonden naar Verbroken is gewijzigd.

const connectionState = callAgentInstance.connectionState;
console.log(connectionState); // it may return either of 'Connected' | 'Disconnected'

const connectionStateCallback = (args) => {
    console.log(args); // it will return an object with oldState and newState, each of having a value of either of 'Connected' | 'Disconnected'
    // it will also return reason, either of 'invalidToken' | 'connectionIssue'
}
callAgentInstance.on('connectionStateChanged', connectionStateCallback);

Reacties implementeren voor deelnemers aan de vergadering

Deelnemers aan Azure Communication Services kunnen reacties verzenden en ontvangen tijdens een groepsgesprek:

  • Als
  • Liefde
  • Applaus
  • Lachen
  • Verrassen

Gebruik de sendReaction(reactionMessage) API om een reactie te verzenden. Als u een reactie wilt ontvangen, wordt het bericht gebouwd met het type ReactionMessage enums Reaction als een kenmerk.

U moet zich abonneren op gebeurtenissen die de gebeurtenisgegevens van de abonnee verstrekken:

export interface ReactionEventPayload {
    /**
     * identifier for a participant
     */
    identifier: CommunicationUserIdentifier | MicrosoftTeamsUserIdentifier;
    /**
     * reaction type received
     */
    reactionMessage: ReactionMessage;
}

U kunt bepalen welke reactie afkomstig is van welke deelnemer het identifier kenmerk gebruikt en van het type reactie ReactionMessagekrijgt.

Voorbeeld van het verzenden van een reactie in een vergadering

const reaction = call.feature(SDK.Features.Reaction);
const reactionMessage: SDK.ReactionMessage = {
       reactionType: 'like'
};
await reaction.sendReaction(reactionMessage);

Voorbeeld van het ontvangen van een reactie in een vergadering

const reaction = call.feature(SDK.Features.Reaction);
reaction.on('reaction', event => {
    // user identifier
    console.log("User Mri - " + event.identifier);
    // received reaction
    console.log("User Mri - " + event.reactionMessage.reactionType);
    // reaction message
    console.log("reaction message - " + JSON.stringify(event.reactionMessage));
}

Belangrijke punten bij het gebruik van reacties

  • Reacties worden ondersteund voor interoperabiliteitsscenario's van Microsoft Teams. Ondersteuning is gebaseerd op Teams-beleid.
  • Reacties worden ondersteund in de Web Calling SDK.
  • Reacties worden momenteel niet ondersteund in de systeemeigen SDK's.

Volgende stappen