Oproepen voor Teams-gebruikers beheren met Communication Services-aanroep-SDK
Meer informatie over het beheren van aanroepen met de Azure Communication Services SDKS. We leren hoe u gesprekken plaatst, hun deelnemers en eigenschappen beheert.
Vereisten
- Een Azure-account met een actief abonnement. Gratis een account maken
- Een geïmplementeerde Communication Services-resource. Een Communication Services-resource maken.
- Een
User Access Token
om de aanroepende client in te schakelen. Voor meer informatie over het verkrijgen van eenUser Access Token
- Optioneel: Voltooi de quickstart om aan de slag te gaan met het toevoegen van videogesprekken aan uw toepassing
Installeer de SDK
Gebruik de npm install
opdracht om de aanroepen van Azure Communication Services en algemene SDK's voor JavaScript te installeren.
npm install @azure/communication-common --save
npm install @azure/communication-calling --save
Vereiste objecten initialiseren
Maak een CallClient
exemplaar om de aanroepende stack te initiëren. U kunt logboekregistratie van de aanroepende SDK configureren met het exemplaar en setLogLevel
de AzureLogger
methode. U kunt toegang krijgen tot deviceManager
het besturingssysteem met de methode getDeviceManager
.
Gebruik vervolgens de methode createTeamsCallAgent
om asynchroon een TeamsCallAgent
exemplaar te maken waarmee binnenkomende en uitgaande oproepen voor een Teams-gebruiker worden beheerd. De methode wordt CommunicationTokenCredential
gebruikt als een argument dat het toegangstoken vertegenwoordigt voor teams-gebruikers.
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 wherever desired. To console, file, buffer, REST API, etc...
AzureLogger.log = (...args) => {
console.log(...args); // Redirect log output to console
};
const userToken = '<USER_TOKEN>';
callClient = new CallClient();
const tokenCredential = new AzureCommunicationTokenCredential(userToken);
const teamsCallAgent = await callClient.createTeamsCallAgent(tokenCredential);
const deviceManager = await callClient.getDeviceManager();
Een oproep doen
Start een synchrone een-op-een- of groepsaanroep met startCall
API op teamsCallAgent
. U kunt het doel van de aanroep opgeven MicrosoftTeamsUserIdentifier
of PhoneNumberIdentifier
als parameter definiëren. De methode retourneert het TeamsCall
exemplaar waarmee u zich kunt abonneren op oproepevenementen.
Notitie
Voor het starten van een groepsgesprek met teamsCallAgent
is chat threadId
vereist bij het aanroepen startCall
van de methode. Het gemaakte TeamsCall
exemplaar heeft eigenschap threadId
die deze thread vastlegt. Communication Services Calling SDK houdt deelnemers niet gesynchroniseerd met chatten en bellen. Microsft moedigt ontwikkelaars aan om het rooster gesynchroniseerd te houden voor de beste gebruikerservaring. Meer informatie over het beheren van chatthreads.
Start een voIP-aanroep (one-to-one Voice-over IP) voor teams-gebruikers:
const userCallee = { microsoftTeamsUserId: '<MICROSOFT_TEAMS_USER_ID>' };
const oneToOneCall = teamsCallAgent.startCall(userCallee);
Start een een-op-een-telefoongesprek naar E.164-telefoonnummer:
const phoneCallee = { phoneNumber: '<PHONE_NUMBER_E164_FORMAT>' }
const oneToOneCall = teamsCallAgent.startCall(phoneCallee );
Start een groepsgesprek met teams-gebruikers met VoIP (Voice-over IP) en telefoonnummer:
const userCallee = { microsoftTeamsUserId: '<MICROSOFT_TEAMS_USER_ID>' }
const phoneCallee = { phoneNumber: '<PHONE_NUMBER_E164_FORMAT>'};
const groupCall = teamsCallAgent.startCall([userCallee, phoneCallee], { threadId: '<THREAD_ID>' });
Deelnemen aan een gesprek
Deelnemen aan een Teams-vergadering
U kunt deelnemen aan Teams-vergaderingen met de methode join
op het teamsCallAgent
exemplaar. Teams-gebruikers kunnen deelnemen aan teams-vergaderingen door een TeamsMeetingLinkLocator
, TeamsMeetingCoordinatesLocator
of TeamsMeetingIdLocator
.
Neem deel aan een Teams-vergadering met de URL van de vergadering:
const meetingCall = teamsCallAgent.join({ meetingLink: '<MEETING_LINK>' });
Neem deel aan de Teams-vergadering met een combinatie van thread-id, organisator-id, tenant-id en bericht-id:
const meetingCall = teamsCallAgent.join({ threadId: '<THREAD_ID>', organizerId: '<ORGANIZER_ID>', tenantId: '<TENANT_ID>', messageId: '<MESSAGE_ID>' });
Neem deel aan de Teams-vergadering met vergaderingscode en wachtwoordcode:
const meetingCall = teamsCallAgent.join({ meetingId: '<MEETING_CODE>', passcode: '<PASSCODE>'});
Neem deel aan de Teams-vergadering met vergaderings-id en wachtwoordcode:
Ontwikkelaars kunnen deelnemers op meerdere manieren verbinden met een Teams-vergadering. Een manier is door een vergaderings-id en wachtwoordcode te gebruiken, zodat mensen kunnen deelnemen aan de Teams-vergadering waarvoor ze zijn uitgenodigd vanaf een apparaat of toepassing. U moet altijd zowel de vergaderings-id als de wachtwoordcode opgeven om deel te nemen aan de vergadering. Wachtwoordcode is hoofdlettergevoelig.
Indeling van de vergaderings-id en wachtwoordcode:
- Vergaderings-id: 12 cijfers.
- Wachtwoordcode: 6 tekens
Hoe vaak moet u de vergaderings-id en wachtwoordcode vernieuwen?
- De vergaderings-id en wachtwoordcode worden niet gewijzigd nadat deze zijn gemaakt. Ontwikkelaars hoeven er geen te vernieuwen.
- Een organisator van een Teams-vergadering kan de vergaderings-id en wachtwoordcode niet opnieuw genereren.
Is er een verschil in een Teams-vergadering als een persoon deelneemt via de URL of vergaderings-id en wachtwoordcode?
- Nee, deelnemers hebben dezelfde ervaring als ze deelnemen aan een Teams-vergadering met behulp van de URL van de Teams-vergadering of de vergaderings-id en wachtwoordcode.
Hoe moeten ontwikkelaars wachtwoordcodes opslaan en beheren?
- Vergaderings-id en wachtwoordcode zijn coördinaten om deel te nemen aan de vergadering. Ontwikkelaars moeten ze behandelen als geheimen, die moeten worden versleuteld en als ze zijn opgeslagen, ervoor zorgen dat ze zich in een door toegang beheerde omgeving bevinden.
- Als de coördinaten zichtbaar zijn, kan iedereen deelnemen aan de vergadering en de ervaring voor iedereen in de vergadering verpesten.
Hoe haal ik de vergaderings-id en wachtwoordcode op?
- Graph API: Graph API gebruiken om informatie over
onlineMeeting
de resource op te halen en het object in de eigenschapjoinMeetingIdSettings
te controleren. - Teams: Ga in uw Teams-toepassing naar
Calendar
de app en open details van een vergadering. Onlinevergaderingen hebben vergaderings-id en wachtwoordcode in de definitie van de vergadering. - Outlook: U kunt de vergaderings-id en wachtwoordcode vinden in agendagebeurtenissen of in uitnodigingen voor een e-mailvergadering.
- Ontwikkelaars kunnen de vergaderings-id en wachtwoordcode niet ophalen via de SDK voor aanroepen of ophalen uit uitgebreide consolelogboeken.
- Graph API: Graph API gebruiken om informatie over
Hoe kan ik controleren of de vergaderings-id en wachtwoordcode juist zijn?
- Verificatie van MeetingId en wachtwoordcode kan worden uitgevoerd via: https://www.microsoft.com/en-us/microsoft-teams/join-a-meeting.
Een inkomende teams-oproep ontvangen
U kunt zich abonneren op incomingCall
een gebeurtenis op teamsCallAgent
het exemplaar om binnenkomende oproepen te registreren bij de Teams-gebruiker. De gebeurtenis heeft een teamsIncomingCall
eigenschap met TeamsIncomingCall
een exemplaar waarmee u accept
of reject
de binnenkomende oproep kunt uitvoeren.
const incomingCallHandler = async (args: { teamsIncomingCall: TeamsIncomingCall }) => {
const incomingCall = args.teamsIncomingCall;
// Get Teams incoming call ID
const incomingCallId = incomingCall.id;
// Get information about this Call. This API is provided as a preview for developers
// and may change based on feedback that we receive. Do not use this API in a production environment.
// To use this API please use 'beta' release of Azure Communication Services Calling Web SDK
const callInfo = incomingCall.info;
// Get information about caller
const callerInfo = incomingCall.callerInfo
// Accept the call
const teamsCall = await incomingCall.accept();
// Reject the call
incomingCall.reject();
// Subscribe to callEnded event and get the call end reason
incomingCall.on('callEnded', args => {
console.log(args.callEndReason);
});
// callEndReason is also a property of IncomingCall
var callEndReason = incomingCall.callEndReason;
};
teamsCallAgent.on('incomingCall', incomingCallHandler);
Video in- en uitschakelen
U kunt uw lokale videostreamverzameling ophalen uit de eigenschap localVideoStreams
in het TeamsCall
exemplaar. Als deze optie is ingeschakeld, bevat de verzameling een stream voor het delen van schermen en videofeeds voor camera's. U kunt videostreams van externe deelnemers krijgen door de eigenschap TeamsCall
te inspecteren.remoteParticipants
waarbij elke deelnemer een verzameling videostreams in eigenschap videoStreams
heeft.
Dempen en dempen opheffen
U kunt api's en unmute
asynchrone API's op het TeamsCall
exemplaar gebruiken mute
om Teams-gebruikers lokaal te dempen of het dempen ervan op te heffen. Lokale demping voorkomt dat audio naar andere deelnemers wordt verzonden.
//mute local device
await call.mute();
//unmute local device
await call.unmute();
Andere deelnemers dempen
Als u alle andere deelnemers wilt dempen of een specifieke deelnemer wilt dempen, kunt u de asynchrone API's muteAllRemoteParticipants
voor het gesprek en mute
de externe deelnemer gebruiken:
//mute all participants except yourself
await call.muteAllRemoteParticipants();
//mute a specific participant
await call.remoteParticipants[0].mute();
Notitie
Deze API is beschikbaar als preview-versie voor ontwikkelaars en wordt mogelijk gewijzigd op basis van de feedback die we ontvangen. Gebruik deze API niet in een productie-omgeving. Als u deze API wilt gebruiken, gebruikt u de bètaversie van de Web-SDK voor aanroepen van Azure Communication Services
Externe deelnemers beheren
Andere gespreksdeelnemers zijn beschikbaar in het TeamsCall
exemplaar onder de eigenschap remoteParticipants
. Het is een verzameling RemoteParticipant
objecten. U kunt andere deelnemers aan het gesprek weergeven, toevoegen en verwijderen.
Notitie
Voor het toevoegen van een deelnemermethode is chat threadId
vereist. Communication Services Calling SDK houdt deelnemers niet gesynchroniseerd met chatten en bellen. Microsft moedigt ontwikkelaars aan om het rooster gesynchroniseerd te houden voor de beste gebruikerservaring. Meer informatie over het beheren van chatthreads.
U kunt nieuwe Teams-gebruikers of -telefoonnummers toevoegen aan de Teams-oproep of Teams-vergadering door de methode addParticipant
op het object TeamsCall
aan te roepen. De methode accepteert id's MicrosoftTeamsUserIdentifier
of PhoneNumberIdentifier
als invoer en retourneert synchroon het exemplaar van RemoteParticipant
en activeert de gebeurtenis remoteParticipantsUpdated
op het TeamsCall
exemplaar.
U kunt een deelnemer uit de Teams-oproep of Teams-vergadering verwijderen door de removeParticipant
methode asynchroon aan te roepen op het TeamsCall
exemplaar. De methode accepteert id's MicrosoftTeamsUserIdentifier
of PhoneNumberIdentifier
als invoer. De methode wordt opgelost wanneer RemoteParticipant
deze uit de remoteParticipants
verzameling wordt verwijderd en de gebeurtenis remoteParticipantsUpdated
op het TeamsCall
exemplaar wordt geactiveerd.
Andere oproepdeelnemers weergeven:
const participants = call.remoteParticipants; // [remoteParticipant, remoteParticipant....]
Voeg teams-gebruikers en -telefoonnummers toe aan de Teams-oproep of Teams-vergadering:
const teamsUser = { microsoftTeamsUserId: '<MICROSOFT_TEAMS_USER_ID>' };
const phoneUser = { phoneNumber: '<PHONE_NUMBER_E164_FORMAT>' }
const remoteParticipant = call.addParticipant(teamsUser , { threadId: '<THREAD_ID>' });
const remoteParticipant2 = call.addParticipant(phoneUser , { threadId: '<THREAD_ID>' });
Verwijder Teams-gebruikers en -telefoonnummers uit Teams-oproep of Teams-vergadering:
const teamsUser = { microsoftTeamsUserId: '<MICROSOFT_TEAMS_USER_ID>' };
const phoneUser = { phoneNumber: '<PHONE_NUMBER_E164_FORMAT>' }
await call.removeParticipant(teamsUser);
await call.removeParticipant(phoneUser);
Externe deelnemers
Externe deelnemers vertegenwoordigen een eindpunt dat is verbonden met de lopende Teams-oproep of Teams-vergadering. De klasse remoteParticipant
heeft de volgende set eigenschappen en verzamelingen:
identifier
: retourneert een van de volgende id's:CommunicationUserIdentifier
,MicrosoftTeamsUserIdentifier
,PhoneNumberIdentifier
ofUnknownIdentifier
.
const identifier = remoteParticipant.identifier;
state
: retourneert eenstring
status van een externe deelnemer. De status kan een van de volgende waarden hebben:
Statuswaarde | Wanneer | Beschrijving |
---|---|---|
Idle |
Begintoestand | Dit is de eerste status van de deelnemer |
Connecting |
Na Idle |
Overgangsstatus terwijl een deelnemer verbinding maakt met de oproep. |
Ringing |
Na Connecting |
De deelnemer heeft een incomingCall melding ontvangen of de Teams-client gaat over |
Connected |
NaRinging , Connecting , of EarlyMedia InLobby |
De deelnemer heeft de oproepuitnodiging geaccepteerd of toegevoegd aan het gesprek. De media stromen naar de deelnemer. |
Hold |
Na Connected |
De deelnemer aan het gesprek staat in de wachtstand. |
EarlyMedia |
Na Connecting |
De media worden afgespeeld voordat een deelnemer verbinding maakt met het gesprek |
InLobby |
Na Ringing , Connecting of EarlyMedia |
De deelnemer bevindt zich in de lobby van de Teams-vergadering. |
Disconnected |
Uiteindelijke status | De deelnemer wordt losgekoppeld van het gesprek. Als de externe deelnemer de netwerkverbinding verliest, wordt de status na twee minuten gewijzigd Disconnected . |
Statussen van externe deelnemers aan een-op-een- of groepsgesprekken:
Statussen van externe deelnemers aan Teams-vergaderingen:
const state = remoteParticipant.state;
callEndReason
: retourneert een object met aanvullende informatie over de reden waarom de aanroep is beëindigd. Eigenschapcode
retourneert een getal dat is gekoppeld aan de reden ensubCode
retourneert een getal dat is gekoppeld aan de code en de reden. Zie Problemen met antwoordcodes voor aanroepen oplossen voor meer informatie over foutcodes.
const callEndReason = remoteParticipant.callEndReason;
const callEndReasonCode = callEndReason.code
const callEndReasonSubCode = callEndReason.subCode
isMuted
: retourneert een waarde die een status van lokale mute vertegenwoordigtBoolean
.
const isMuted = remoteParticipant.isMuted;
isSpeaking
: RetourneertBoolean
de waarde die de status aangeeft van geenmpty-audio die wordt verzonden.
const isSpeaking = remoteParticipant.isSpeaking;
videoStreams
: retourneert een verzameling objecten dieRemoteVideoStream
door deelnemers zijn verzonden.
const videoStreams = remoteParticipant.videoStreams; // [RemoteVideoStream, ...]
displayName
: retourneert eenstring
weergavenaam die de weergavenaam vertegenwoordigt. Communication Services die SDK aanroept, stelt deze waarde niet in voor Teams-gebruikers.
const displayName = remoteParticipant.displayName;
Bellen
id
: retourneert een tekenreeks die een unieke aanroep-id vertegenwoordigt.
const callId = call.id;
• info
: retourneert informatie over de oproep:
Notitie
Deze API is beschikbaar als preview-versie voor ontwikkelaars en wordt mogelijk gewijzigd op basis van de feedback die we ontvangen. Gebruik deze API niet in een productie-omgeving. Als u deze API wilt gebruiken, gebruikt u de bètaversie van de Web-SDK voor aanroepen van Azure Communication Services
• info
: retourneert een object met informatie over de aanroep. De eigenschap threadId
is een tekenreeks die de thread-id van de chat vertegenwoordigt die wordt weergegeven in de Teams-client.
const callInfo = call.info;
const threadId = call.info.threadId;
• remoteParticipants
: retourneert een verzameling remoteParticipant
objecten die andere deelnemers vertegenwoordigen in de Teams-oproep of Teams-vergadering.
const remoteParticipants = call.remoteParticipants;
• callerInfo
: retourneert het CallerInfo
object voor binnenkomende oproepen. De eigenschap identifier
kan een van de volgende objecten CommunicationUserIdentifier
, MicrosoftTeamsUserIdentifier
, PhoneNumberIdentifier
of UnknownIdentifier
. De eigenschap displayName
is een tekenreeks die de naam vertegenwoordigt die moet worden weergegeven als deze is ingesteld.
const callerIdentity = call.callerInfo.identifier;
const callerIdentity = call.callerInfo.displayName;
• state
: retourneert een tekenreeks die de status van de aanroep aangeeft. De eigenschap kan een van de volgende waarden hebben:
Statuswaarde | Wanneer | Beschrijving |
---|---|---|
None |
Begintoestand | De initiële status van de aanroep. |
Connecting |
Na None |
De status wanneer een Teams-oproep of Teams-vergadering wordt geplaatst, toegevoegd of geaccepteerd. |
Ringing |
Na Connecting |
De externe deelnemer heeft de incomingCall gebeurtenis ontvangen of de Teams-client gaat over. |
EarlyMedia |
Na Ringing of Connecting |
De media worden afgespeeld voordat de oproep is verbonden. |
Connected |
Na Ringing , EarlyMedia , InLobby , , en LocalHold RemoteHold |
De oproep is verbonden. Media stromen tussen lokale eindpunten en externe deelnemers. |
LocalHold |
Na Connected |
Het gesprek werd in de wacht gezet door een lokale deelnemer. Er stromen geen media tussen het lokale eindpunt en externe deelnemers. |
RemoteHold |
Na Connected |
Het gesprek werd in de wacht gezet door een externe deelnemer. Er stromen geen media tussen het lokale eindpunt en externe deelnemers. |
InLobby |
Na Ringing of Connecting |
De externe deelnemer bevindt zich in de Teams-vergaderingslobby. Er stromen geen media tussen het lokale eindpunt en externe deelnemers. |
Disconnecting |
Na elke status | De overgangsstatus voordat de aanroep naar een Disconnected status gaat. |
Disconnected |
Uiteindelijke status | De laatste status van het gesprek. Als de netwerkverbinding is verbroken, wordt de status na twee minuten gewijzigd Disconnected . |
Statussen voor een-op-een- of groepsgesprekken:
Statussen voor Teams-vergaderingen:
const callState = call.state;
• callEndReason
: Retourneert een object CallEndReason
met aanvullende informatie over het beëindigen van de oproep. De eigenschap code
retourneert een getal dat is gekoppeld aan de reden en subCode
retourneert een getal dat is gekoppeld aan de code en de reden. Zie Problemen met antwoordcodes voor aanroepen oplossen voor meer informatie over foutcodes.
const callEndReason = call.callEndReason;
const callEndReasonCode = callEndReason.code
const callEndReasonSubCode = callEndReason.subCode
• direction
: retourneert een string
weergave van de richting van het gesprek. De eigenschap kan een van de volgende waarden hebben: 'Inkomend' of Outgoing
.
const isIncoming = call.direction == 'Incoming';
const isOutgoing = call.direction == 'Outgoing';
• isMuted
: retourneert de waarde die een status van de lokale mute vertegenwoordigt Boolean
.
const muted = call.isMuted;
• isScreenSharingOn
Retourneert Boolean
de waarde waar als u een stream voor het delen van het scherm naar andere deelnemers verzendt.
const isScreenSharingOn = call.isScreenSharingOn;
• localVideoStreams
: retourneert een verzameling LocalVideoStream
objecten die videostreams vertegenwoordigen die naar externe deelnemers worden verzonden.
const localVideoStreams = call.localVideoStreams;
Chatthread beheren
Belangrijk
De optionele chat-id is alleen beschikbaar in 1.29.1 of hoger van de Calling SDK voor JavaScript. Als u een eerdere versie gebruikt, moet u handmatig een unieke chat-id opgeven.
Het opgegeven van een chat-id is optioneel voor het plaatsen van groepsgesprekken en het toevoegen van deelnemers aan bestaande oproepen. Gekoppelde chat en oproep hebben een aparte lijst met deelnemers. Voordat u deelnemers aan het gesprek toevoegt, voegt u de gebruiker toe aan de chat om de beste gebruikerservaring te bieden en te voldoen aan de vereisten voor informatiebarrières. Als u een gebruiker aan het gesprek toevoegt zonder de gebruiker toe te voegen aan de chat, kan dit leiden tot uitzonderingen als er een informatiebarrière is ingesteld.
Houd rekening met het volgende scenario, waarbij Alice bob belt, waarna Alice Charlie toevoegt en 3 minuten later Charlie uit de oproep verwijdert.
- Maak een chatgesprek tussen Alice, Bob en Charlie. Houd de chat
threadId
voor later. - Alice roept Bob en Charlie aan met behulp van de
startCall
methode opTeamsCallAgent
exemplaar. - Dan toevoegen aan chatthread met
threadId
behulp van Chat Graph API om lid toe te voegen - Alice voegt Dan toe aan de aanroep met behulp van
addParticipant
de methode aancall
en geeft dethreadId
- Alice verwijdert Dan uit de aanroep met behulp van
removeParticipant
de methode oncall
en geeft dethreadId
- Dan verwijderen uit chatthread met
threadId
chat graph API om lid te verwijderen
Als teams-gebruikers het opnemen van gesprekken stoppen, wordt de opname in de chat geplaatst die is gekoppeld aan de thread. De opgegeven chat-id heeft invloed op de ervaring van Teams-gebruikers in Teams-clients.
Aanbevelingen voor het beheer van chat-id:
- Escalatie van het telefoongesprek van 1:1 door een andere telefoondeelnemer toe te voegen:
- Met de methode
addParticipant
kunt u optionele parameterchat-id opgeven. Als de parameter niet is opgegeven, wordt er een nieuwe groepschat gemaakt en worden alle deelnemers toegevoegd aan de lijst met gespreks- en chatdeelnemers. Als de parameter is opgegeven, kunnen Teams-gebruikers een doorlopend gesprek zien dat is gekoppeld aan deze groepschat in de Teams-app. U kunt een nieuwe groepschat maken via Graph API.addParticipant(participant: MicrosoftTeamsUserIdentifier | PhoneNumberIdentifier | MicrosoftTeamsAppIdentifier | UnknownIdentifier)
- Met de methode
- Groepsgesprek starten met één Microsoft 365-gebruiker en meerdere telefoondeelnemers:
- Met de methode-API
startCall
kunt u een groepsgesprek starten met meerdere deelnemers en eventueel een chat-id opgeven. Als de parameter niet is opgegeven, wordt er een nieuwe groepschat gemaakt en worden alle Microsoft 365-deelnemers toegevoegd aan de lijst met gespreks- en chatdeelnemers. Als de parameter is opgegeven, kunnen Teams-gebruikers een doorlopend gesprek zien dat is gekoppeld aan deze groepschat in de Teams-app. U kunt een nieuwe groepschat maken via Graph API.startCall(MicrosoftTeamsUserIdentifier | PhoneNumberIdentifier | MicrosoftTeamsAppIdentifier | UnknownIdentifier)[])
- Gebruik Graph API om bestaande chat-id op te halen met alleen Teams-gebruikers als deelnemer of maak een nieuwe groepschat met deelnemers: Gebruikers-id van Teams en '0000000-0000-0000-00000000000000000'.
- Met de methode-API
- Groepsgesprek starten met meer dan 2 Microsoft 365-gebruikers:
- (Optionele manier) Wanneer u een groepsoproep maakt met meer dan 2 Microsoft 365-gebruikers met behulp van de ACS Calling SDK, wordt de thread automatisch door de SDK gemaakt.
startCall(MicrosoftTeamsUserIdentifier | PhoneNumberIdentifier | MicrosoftTeamsAppIdentifier | UnknownIdentifier)[])
- Indien gewenst kan de ontwikkelaar een unieke chat-id opgeven om het groepsgesprek te starten of deelnemers toe te voegen. In dit geval gebruikt de ACS Calling SDK de opgegeven chat-id om de groepsoproep te maken. Er wordt een chatgesprek gemaakt voor de Teams-gebruikers en deze thread is gekoppeld aan de groepsoproep voor gebruikers in de Teams-app. Hierdoor kunnen ze tijdens het gesprek chatten. Beheer van chatthreads kan worden uitgevoerd via Graph API
- (Optionele manier) Wanneer u een groepsoproep maakt met meer dan 2 Microsoft 365-gebruikers met behulp van de ACS Calling SDK, wordt de thread automatisch door de SDK gemaakt.