Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Warning
Azure Communication Services führt bahnbrechende Änderungen ein, und einige Dienste werden eingestellt. Erfahren Sie mehr im Leitfaden für Altersvorsorge und Änderungen.
Azure Communication Services-SDKs können Ihren Benutzern ermöglichen, an regelmäßigen Microsoft Teams-Besprechungen teilzunehmen. So geht's!
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement. Sie können kostenlos ein Konto erstellen.
- Eine bereitgestellte Communication Services-Ressource. Erstellen Sie eine Communication Services-Ressource.
- Ein Benutzerzugriffstoken zum Aktivieren des Anrufclients. Weitere Informationen finden Sie unter Erstellen und Verwalten von Zugriffstoken.
- Optional: Arbeiten Sie den Schnellstart zum Hinzufügen von Sprachanrufen zu Ihrer Anwendung durch.
Das SDK installieren
Verwenden Sie den Befehl npm install, um die Common und Calling SDKs von Azure Communication Services für JavaScript zu installieren:
npm install @azure/communication-common --save
npm install @azure/communication-calling --save
Initialisieren erforderlicher Objekte
Für die meisten Anrufvorgänge ist eine CallClient-Instanz erforderlich. Wenn Sie eine neue CallClient-Instanz erstellen, können Sie diese mit benutzerdefinierten Optionen wie einer Logger-Instanz konfigurieren.
Mit der CallClient-Instanz können Sie eine CallAgent-Instanz erstellen, indem Sie createCallAgent aufrufen. Durch diese Methode wird ein CallAgent-Instanzobjekt asynchron zurückgegeben.
Die Methode createCallAgent verwendet CommunicationTokenCredential als Argument, welches ein Benutzerzugriffstoken akzeptiert.
Sie können die Methode getDeviceManager für die Instanz CallClient verwenden, um auf deviceManager zuzugreifen.
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()
Verwalten der SDK-Konnektivität mit der Microsoft-Infrastruktur
Die Call Agent-Instanz unterstützt Sie bei der Verwaltung von Anrufen (Annehmen oder Starten von Anrufen). Damit Ihr Calling SDK funktioniert, muss eine Verbindung mit der Microsoft-Infrastruktur hergestellt werden, um Benachrichtigungen über eingehende Anrufe zu erhalten und andere Anrufdetails zu koordinieren. Ihre Call Agent-Instanz kann zwei Status haben:
Connected (Verbunden) – Der connectionState-Wert Call Agent für Connected bedeutet, dass das Client-SDK verbunden ist und Benachrichtigungen von der Microsoft-Infrastruktur empfangen kann.
Disconnected – Ein Call AgentconnectionStatue-Wert von Disconnected bedeutet, dass ein Problem vorliegt, das verhindert, dass das SDK ordnungsgemäß eine Verbindung herstellen kann.
Call Agent muss neu erstellt werden.
-
invalidToken: Wenn ein Token abgelaufen oder ungültig ist, trennt dieCall Agent-Instanz die Verbindung mit diesem Fehler. -
connectionIssue: Wenn ein Problem mit dem Client bei der Verbindung zur Microsoft-Infrastruktur auftritt, zeigtCall Agentnach vielen Versuchen denconnectionIssueFehler an.
Sie können überprüfen, ob Ihre lokale Call Agent-Instanz mit der Microsoft-Infrastruktur verbunden ist, indem Sie den aktuellen Wert der connectionState-Eigenschaft prüfen. Während eines aktiven Anrufs können Sie auf das connectionStateChanged-Ereignis lauschen, um zu bestimmen, ob sich der Call Agent-Status von Connected in Disconnected ändert.
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);
Methoden für den Besprechungsbeitritt
Um an einer Teams-Besprechung teilzunehmen, verwenden Sie die Methode join, und geben Sie einen Besprechungslink oder die Besprechungskoordinaten an.
Nehmen Sie über einen Link zur Besprechung teil:
const locator = { meetingLink: '<MEETING_LINK>'}
const call = callAgent.join(locator);
Teilnehmen mithilfe der Besprechungskoordinaten (dies befindet sich derzeit in der eingeschränkten Vorschauphase):
const locator = {
threadId: <thread id>,
organizerId: <organizer id>,
tenantId: <tenant id>,
messageId: <message id>
}
const call = callAgent.join(locator);
Einrichten des Systems
Führen Sie die unten angegebenen Schritte aus, um Ihr System einzurichten.
Erstellen des Visual Studio-Projekts
Erstellen Sie für eine UWP-App (Universelle Windows-Plattform) in Visual Studio 2022 ein neues Projekt vom Typ Leere App (universelles Windows). Nachdem Sie den Projektnamen eingegeben haben, können Sie ein beliebiges Windows SDK höher als Version 10.0.17763.0 auswählen.
Für eine WinUI 3-App erstellen Sie ein neues Projekt mit der Vorlage Leere App, Gepackt (WinUI 3 in Desktop), um eine WinUI 3-Single-Page-Webanwendung einzurichten. Windows-App SDK-Version 1.3 oder höher ist erforderlich.
Installieren Sie das Paket und die Abhängigkeiten mit dem NuGet-Paket-Manager
Die Calling SDK-APIs und -Bibliotheken sind über ein NuGet-Paket öffentlich verfügbar.
So können Sie das NuGet-Paket für das Calling SDK suchen, herunterladen und installieren:
- Öffnen Sie den NuGet-Paket-Manager, indem Sie Tools>NuGet-Paket-Manager>NuGet-Pakete für Lösung verwalten auswählen.
- Wählen Sie Durchsuchen aus, und geben Sie dann Azure.Communication.Calling.WindowsClient in das Suchfeld ein.
- Stellen Sie sicher, dass das Kontrollkästchen Vorabversion einbeziehen aktiviert ist.
- Wählen Sie das Paket Azure.Communication.Calling.WindowsClient und dann Azure.Communication.Calling.WindowsClient1.4.0-beta.1 oder eine neuere Version aus.
- Aktivieren Sie das Kontrollkästchen für das Azure Communication Services-Projekt im rechten Bereich.
- Wählen Sie Installieren aus.
Methoden für den Besprechungsbeitritt
Um an einer Teams-Besprechung teilzunehmen, verwenden Sie die Methode CallAgent.join und übergeben den Anwendungskontext, JoinMeetingLocator und JoinCallOptions.
Besprechungs-ID und Kenncode
Die TeamsMeetingIdLocator Suche nach einer Besprechung mithilfe einer Besprechungs-ID und Kennung. Diese finden Sie unter den Teilnahmeinformationen einer Teams-Besprechung.
Eine Teams-Besprechungs-ID ist 12 Zeichen lang und besteht aus in Dreiergruppen gruppierten numerischen Ziffern (z. B. 000 000 000 000).
Ein Passcode besteht aus 6 Buchstaben (z. B. aBcDeF). Bei dem Passcode müssen Sie die Groß-/Kleinschreibung beachten.
String meetingId, passcode;
TeamsMeetingIdLocator locator = new TeamsMeetingIdLocator(meetingId, passcode);
Link zur Besprechung
Das TeamsMeetingLinkLocator ermittelt eine Besprechung mithilfe eines Links zu einer Teams-Besprechung. Dies finden Sie in den Teilnahmeinformationen einer Teams-Besprechung.
String meetingLink;
TeamsMeetingLinkLocator locator = new TeamsMeetingLinkLocator(meetingLink);
Besprechungskoordinaten
Das TeamsMeetingCoordinatesLocator ermittelt Besprechungen anhand einer Organisator-ID, Mandanten-ID, Thread-ID und Nachrichten-ID. Diese Informationen finden Sie unter Verwendung von Microsoft Graph.
Guid organizerId, tenantId;
String threadId, messageId;
TeamsMeetingCoordinatesLocator locator = new TeamsMeetingCoordinatesLocator(threadId, organizerId, tenantId, messageId);
An einer Besprechung über Locators teilnehmen
Nachdem Sie diese Teams-Besprechungslocatoren erstellt haben, können Sie sie verwenden, um an einer Teams-Besprechung teilzunehmen, mithilfe von CallAgent.join, wie unten gezeigt.
JoinCallOptions options = new JoinCallOptions();
call = agent.join(
getApplicationContext(),
locator,
options);
Einrichten des Systems
Führen Sie die unten angegebenen Schritte aus, um Ihr System einzurichten.
Erstellen des Visual Studio-Projekts
Erstellen Sie für eine UWP-App (Universelle Windows-Plattform) in Visual Studio 2022 ein neues Projekt vom Typ Leere App (universelles Windows). Nachdem Sie den Projektnamen eingegeben haben, können Sie ein beliebiges Windows SDK höher als Version 10.0.17763.0 auswählen.
Für eine WinUI 3-App erstellen Sie ein neues Projekt mit der Vorlage Leere App, Gepackt (WinUI 3 in Desktop), um eine WinUI 3-Single-Page-Webanwendung einzurichten. Windows-App SDK-Version 1.3 oder höher ist erforderlich.
Installieren Sie das Paket und die Abhängigkeiten mit dem NuGet-Paket-Manager
Die Calling SDK-APIs und -Bibliotheken sind über ein NuGet-Paket öffentlich verfügbar.
So können Sie das NuGet-Paket für das Calling SDK suchen, herunterladen und installieren:
- Öffnen Sie den NuGet-Paket-Manager, indem Sie Tools>NuGet-Paket-Manager>NuGet-Pakete für Lösung verwalten auswählen.
- Wählen Sie Durchsuchen aus, und geben Sie dann Azure.Communication.Calling.WindowsClient in das Suchfeld ein.
- Stellen Sie sicher, dass das Kontrollkästchen Vorabversion einbeziehen aktiviert ist.
- Wählen Sie das Paket Azure.Communication.Calling.WindowsClient und dann Azure.Communication.Calling.WindowsClient1.4.0-beta.1 oder eine neuere Version aus.
- Aktivieren Sie das Kontrollkästchen für das Azure Communication Services-Projekt im rechten Bereich.
- Wählen Sie Installieren aus.
Methoden für den Besprechungsbeitritt
Um an einer Teams-Besprechung teilzunehmen, verwenden Sie die Methode CallAgent.join und übergeben Sie eine JoinMeetingLocator und eine JoinCallOptions.
Besprechungs-ID und Kenncode
Das TeamsMeetingIdLocator sucht eine Besprechung mithilfe einer Besprechungs-ID und eines Passcodes. Diese finden Sie unter den Teilnahmeinformationen einer Teams-Besprechung.
Eine Teams-Besprechungs-ID ist 12 Zeichen lang und besteht aus in Dreiergruppen gruppierten numerischen Ziffern (z. B. 000 000 000 000).
Ein Passcode besteht aus 6 Buchstaben (z. B. aBcDeF). Der Passcode beachtet Groß- und Kleinschreibung.
String meetingId, passcode
let locator = TeamsMeetingIdLocator(meetingId: meetingId, passcode: passcode)
Link zur Besprechung
TeamsMeetingLinkLocator findet eine Besprechung über einen Link zu einer Teams-Besprechung. Diesen finden Sie unter den Teilnahmeinformationen einer Teams-Besprechung.
String meetingLink
let locator = TeamsMeetingLinkLocator(meetingLink: meetingLink)
Teilnehmen an Besprechungen mithilfe von Locators
Nachdem Sie diese Teams-Besprechungslocatoren erstellt haben, können Sie sie verwenden, um an einer Teams-Besprechung teilzunehmen, mithilfe von CallAgent.join, wie unten gezeigt.
func joinTeamsMeeting() {
// Ask permissions
AVAudioSession.sharedInstance().requestRecordPermission { (granted) in
if granted {
let joinCallOptions = JoinCallOptions()
// Insert meeting locator code for specific join methods here
// for CallAgent callAgent
self.callAgent?.join(with: teamsMeetingLinkLocator, joinCallOptions: joinCallOptions)
}
}
}
Einrichten des Systems
Führen Sie die unten angegebenen Schritte aus, um Ihr System einzurichten.
Erstellen des Visual Studio-Projekts
Erstellen Sie für eine UWP-App (Universelle Windows-Plattform) in Visual Studio 2022 ein neues Projekt vom Typ Leere App (universelles Windows). Nachdem Sie den Projektnamen eingegeben haben, können Sie ein beliebiges Windows SDK höher als Version 10.0.17763.0 auswählen.
Für eine WinUI 3-App erstellen Sie ein neues Projekt mit der Vorlage Leere App, Gepackt (WinUI 3 in Desktop), um eine WinUI 3-Single-Page-Webanwendung einzurichten. Windows-App SDK-Version 1.3 oder höher ist erforderlich.
Installieren Sie das Paket und die Abhängigkeiten mit dem NuGet-Paket-Manager
Die Calling SDK-APIs und -Bibliotheken sind über ein NuGet-Paket öffentlich verfügbar.
So können Sie das NuGet-Paket für das Calling SDK suchen, herunterladen und installieren:
- Öffnen Sie den NuGet-Paket-Manager, indem Sie Tools>NuGet-Paket-Manager>NuGet-Pakete für Lösung verwalten auswählen.
- Wählen Sie Durchsuchen aus, und geben Sie dann Azure.Communication.Calling.WindowsClient in das Suchfeld ein.
- Stellen Sie sicher, dass das Kontrollkästchen Vorabversion einbeziehen aktiviert ist.
- Wählen Sie das Paket Azure.Communication.Calling.WindowsClient und dann Azure.Communication.Calling.WindowsClient1.4.0-beta.1 oder eine neuere Version aus.
- Aktivieren Sie das Kontrollkästchen für das Azure Communication Services-Projekt im rechten Bereich.
- Wählen Sie Installieren aus.
Methoden für den Besprechungsbeitritt
Um an einer Teams-Besprechung teilzunehmen, verwenden Sie die Methode CallAgent.JoinAsync und übergeben Sie eine JoinMeetingLocator und eine JoinCallOptions.
Besprechungs-ID und Kenncode
Das TeamsMeetingIdLocator sucht eine Besprechung mithilfe einer Besprechungs-ID und eines Passcodes. Diese finden Sie unter den Teilnahmeinformationen einer Teams-Besprechung.
Eine Teams-Besprechungs-ID ist 12 Zeichen lang und besteht aus in Dreiergruppen gruppierten numerischen Ziffern (z. B. 000 000 000 000).
Ein Passcode besteht aus 6 Buchstaben (z. B. aBcDeF). Bei dem Passcode müssen Sie die Groß-/Kleinschreibung beachten.
string meetingId, passcode;
TeamsMeetingIdLocator locator = new TeamsMeetingIdLocator(meetingId, passcode);
Link zur Besprechung
TeamsMeetingLinkLocator findet eine Besprechung über einen Link zu einer Teams-Besprechung. Diesen finden Sie unter den Teilnahmeinformationen einer Teams-Besprechung.
string meetingLink;
TeamsMeetingLinkLocator locator = new TeamsMeetingLinkLocator(meetingLink);
Besprechungskoordinaten
Das TeamsMeetingCoordinatesLocator ermittelt Besprechungen anhand einer Organisator-ID, Mandanten-ID, Thread-ID und Nachrichten-ID. Diese Informationen finden Sie unter Verwendung von Microsoft Graph.
Guid organizerId, tenantId;
string threadId, messageId;
TeamsMeetingCoordinatesLocator locator = new TeamsMeetingCoordinatesLocator(threadId, organizerId, tenantId, messageId);
Teilnehmen an Besprechungen mithilfe von Locators
Nachdem Sie diese Teams-Besprechungslocatoren erstellt haben, können Sie sie verwenden, um an einer Teams-Besprechung teilzunehmen, mithilfe von CallAgent.JoinAsync, wie unten gezeigt.
var joinCallOptions = new JoinCallOptions() {
OutgoingAudioOptions = new OutgoingAudioOptions() { IsMuted = true },
OutgoingVideoOptions = new OutgoingVideoOptions() { Streams = new OutgoingVideoStream[] { cameraStream } }
};
var call = await callAgent.JoinAsync(locator, joinCallOptions);