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
- Een Azure-account met een actief abonnement. Gratis een account maken
- Een geïmplementeerde Communication Services-resource. Een Communication Services-resource maken.
- Een gebruikerstoegangstoken om de aanroepende client in te schakelen. Zie Toegangstokens maken en beheren voor meer informatie.
- Optioneel: Voltooi de quickstart om spraakgesprekken toe te voegen aan uw toepassing.
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 createCallAgent
aan 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 exemplaarCall Agent
wordt verbroken met deze fout.connectionIssue
: Als er een probleem is met de client die verbinding maakt met Microsoft infrascture, wordt deconnectionIssue
fout na veel nieuwe pogingenCall 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 ReactionMessage
krijgt.
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.