Delen via


Microsoft Teams-vergadering Audiovergadering

In dit artikel wordt beschreven hoe u azure Communication Services Calling SDK gebruikt om microsoft Teams Meeting Audiovergadering details op te halen. Met deze functie kunnen gebruikers die al zijn verbonden met een Microsoft Teams-vergadering, de vergadering-id en het inbeltelefoonnummer ophalen dat aan de vergadering is gekoppeld. De functie Teams-vergadering Audiovergadering retourneert een verzameling van alle betaalde en gratis nummers. De verzameling bevat gelijktijdige land-/regionamen en stadsnamen, zodat gebruikers bepalen welke inbelgegevens van Teams-vergaderingen moeten worden gebruikt.

Vereisten

Ondersteuning

In deze sectie wordt ondersteuning voor Audiovergadering in Azure Communication Services beschreven.

Identiteiten en oproeptypen

In de volgende tabel ziet u ondersteuning voor oproep- en identiteitstypen.

Identiteiten Teams-vergadering Ruimte 1:1 oproep Groepsgesprek 1:1 Teams-interopgesprek Gesprek tussen Teams groeperen
Communication Services-gebruiker ✔️
Microsoft 365-gebruiker ✔️

Operations

In de volgende tabel ziet u ondersteuning voor afzonderlijke API's bij het aanroepen van SDK voor afzonderlijke identiteitstypen.

Operations Communication Services-gebruiker Microsoft 365-gebruiker
Details van audiovergaderingen ophalen ✔️ ✔️

SDK's

In de volgende tabel ziet u ondersteuning voor de Audiovergadering-functie 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);

Microsoft Teams Meeting Audiovergadering is een uitgebreide functie van de kern-APICall. U moet eerst aanroepende functies importeren uit de Calling SDK:

import { Features} from "@azure/communication-calling";

Vervolgens kunt u het functie-API-object ophalen uit het aanroepexemplaren:

const audioConferencingFeature = call.feature(Features.TeamsMeetingAudioConferencing);

De details van een vergadering voor audiovergaderingen ophalen

Gebruik de volgende API om de details van een vergadering voor audiovergaderingen op te halen

try {
     const details: SDK.TeamsMeetingAudioConferencingDetails = audioConferencingFeature.getTeamsMeetingAudioConferencingDetails();
     console.log(`Microsoft Teams Meeting Conference Id: ${details.phoneConferenceId}`);
     details.phoneNumbers.forEach(dialInPhoneNumber => {
        if (dialInPhoneNumber.tollPhoneNumber) { 
            console.log(`Dial-In Toll PhoneNumber: ${dialInPhoneNumber.tollPhoneNumber.phoneNumber}`);
        }
        else if (dialInPhoneNumber.tollFreePhoneNumber) { 
            console.log(`Dial-In TollFree PhoneNumber: ${dialInPhoneNumber.tollFreePhoneNumber.phoneNumber}`);
        } 
        else if (dialInPhoneNumber.countryName) {
            console.log(`Dial-In Country Name: ${dialInPhoneNumber.countryName}`);
        }
        else if (dialInPhoneNumber.cityName) {
            console.log(`Dial-In City Name: ${dialInPhoneNumber.cityName}`);
        }
    })
} catch (e) {
    console.error(e);
}

Probleemoplossing

Code Subcode Resultaatcategorie Reden Oplossing
400 45950 ExpectedError Functie voor audiovergaderingen is alleen beschikbaar in Teams-vergaderingen Deelnemen aan Teams-vergadering met geconfigureerde audiovergaderingen
405 45951 ExpectedError Acs-service heeft audiovergaderingen uitgeschakeld Een Azure-ondersteuningsticket maken om hulp te vragen
403 45952 ExpectedError Details van audiovergaderingen zijn niet beschikbaar voordat u deelneemt aan de vergadering Zorg ervoor dat het aanroepobject de connected status heeft voordat u de API aanroept om de details van de audiovergadering op te halen
403 45953 ExpectedError Details van audiovergaderingen zijn niet beschikbaar in de lobby Zorg ervoor dat het aanroepobject de connected status heeft voordat u de API aanroept om de details van de audiovergadering op te halen

Volgende stappen