Megosztás a következőn keresztül:


Bekapcsolódás csapatértekezletbe

Az Azure Communication Services SDK-k lehetővé teszik a felhasználók számára, hogy rendszeres Microsoft Teams-értekezletekhez csatlakozzanak. Így!

Előfeltételek

Telepítse a SDK-t

npm install A parancs használatával telepítse az Azure Communication Services Common and Calling SDK for JavaScriptet:

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

Szükséges objektumok inicializálása

A CallClient legtöbb hívási művelethez szükség van egy példányra. Új CallClient példány létrehozásakor konfigurálhatja egyéni beállításokkal, például egy példánysal Logger .

CallClient A példánnyal létrehozhat egy példányt CallAgent a createCallAgent. Ez a metódus aszinkron módon egy CallAgent példányobjektumot ad vissza.

A createCallAgent metódus argumentumként használható CommunicationTokenCredential . Elfogad egy felhasználói hozzáférési jogkivonatot.

A példányon található getDeviceManager metódust használhatja a CallClient hozzáféréshez 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()

A Microsoft-infrastruktúra SDK-kapcsolatának legjobb kezelése

A Call Agent példány segít a hívások kezelésében (a hívásokhoz való csatlakozáshoz vagy a hívások indításához). A hívó SDK működéséhez csatlakoznia kell a Microsoft infrastruktúrájához, hogy értesítést kapjon a bejövő hívásokról, és koordinálja az egyéb hívásadatokat. Két Call Agent lehetséges állapota van:

Csatlakoztatott – A Call Agent connectionStatue érték azt Connected jelenti, hogy az ügyfél SDK csatlakoztatva van, és képes értesítéseket fogadni a Microsoft-infrastruktúrából.

Leválasztva – Az Call Agent állapotok connectionStatue értéke Disconnected olyan probléma, amely miatt az SDK nem tud megfelelően csatlakozni. Call Agent újra létre kell hozni.

  • invalidToken: Ha egy jogkivonat lejárt, vagy érvénytelen Call Agent , a példány ezzel a hibával megszakad.
  • connectionIssue: Ha probléma merül fel azzal kapcsolatban, hogy az ügyfél csatlakozik a Microsoft-infrastruktúrához, miután sok újrapróbálkozás Call Agent felfedi a connectionIssue hibát.

A tulajdonság aktuális értékének connectionState vizsgálatával ellenőrizheti, hogy a helyi Call Agent csatlakozik-e a Microsoft-infrastruktúrához. Egy aktív hívás során meghallgathatja az connectionStateChanged eseményt, és megállapíthatja, hogy a kapcsolat megszakadtállapotban van-e.Call Agent

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);

Értekezlet-összeillesztési módszerek

Teams-értekezlethez való csatlakozáshoz használja a join módszert, és adjon meg egy értekezlethivatkozást vagy egy értekezlet koordinátáit.

Csatlakozás értekezlet-hivatkozással:

const locator = { meetingLink: '<MEETING_LINK>'}
const call = callAgent.join(locator);

Csatlakozás értekezletkoordináták használatával (ez jelenleg korlátozott előzetes verzióban érhető el):

const locator = {
    threadId: <thread id>,
    organizerId: <organizer id>,
    tenantId: <tenant id>,
    messageId: <message id>
}
const call = callAgent.join(locator);

A rendszer beállítása

A Visual Studio-projekt létrehozása

UWP-alkalmazások esetén a Visual Studio 2022-ben hozzon létre egy új Üres alkalmazás (Univerzális Windows) projektet. Miután megadta a projekt nevét, nyugodtan válasszon bármelyik Windows SDK-t a 10.0.17763.0-s verziónál később.

WinUI 3-alkalmazások esetén hozzon létre egy új projektet az Üres alkalmazás, csomagolt (WinUI 3 in Desktop) sablonnal egy egyoldalas WinUI 3-alkalmazás beállításához. Windows-alkalmazás SDK 1.3-es vagy újabb verzió szükséges.

Telepítse a csomagot és a függőségeket a NuGet Csomagkezelő

A hívó SDK API-k és kódtárak nyilvánosan elérhetők NuGet-csomagon keresztül.

Az alábbi lépések szemléltetik a hívó SDK NuGet-csomag megkeresését, letöltését és telepítését:

  1. Nyissa meg a NuGet-Csomagkezelő az Tools>NuGet Csomagkezelő> Manage NuGet Packages for Solution lehetőséget választva.
  2. Válassza a Tallózás lehetőséget, majd írja be Azure.Communication.Calling.WindowsClient a keresőmezőbe.
  3. Győződjön meg arról, hogy be van jelölve az Előzetes belefoglalás jelölőnégyzet.
  4. Jelölje ki a Azure.Communication.Calling.WindowsClient csomagot, majd válassza az Azure.Communication.Calling.WindowsClient1.4.0-beta.1 vagy egy újabb verziót.
  5. Jelölje be a jobb oldali lapon a Communication Services projektnek megfelelő jelölőnégyzetet.
  6. Válassza a Telepítés gombot.

Értekezlet-összeillesztési módszerek

Teams-értekezlethez való csatlakozáshoz használja a metódust, és adja át az CallAgent.join alkalmazáskörnyezetet, JoinMeetingLocatorés JoinCallOptions.

Értekezlet azonosítója és pin-kódja

A TeamsMeetingIdLocator rendszer egy értekezlet azonosítóját és pin-kódját használó értekezletet keres. Ezek a Teams-értekezletek csatlakozási adatai között találhatók. A Teams-értekezlet azonosítója 12 karakter hosszú lesz, és numerikus számjegyekből áll, amelyek három (azaz) csoportba lesznek csoportosítva. 000 000 000 000 A pin-kód 6 betűből (azaz) áll. aBcDeF A pin-kód megkülönbözteti a kis- és nagybetűkét.

String meetingId, passcode; 
TeamsMeetingIdLocator locator = new TeamsMeetingIdLocator(meetingId, passcode);

A TeamsMeetingLinkLocator rendszer megkeres egy értekezletet egy Teams-értekezletre mutató hivatkozással. Ez a Teams-értekezletek csatlakozási adatai között található.

String meetingLink; 
TeamsMeetingLinkLocator locator = new TeamsMeetingLinkLocator(meetingLink);

Értekezlet koordinátái

A TeamsMeetingCoordinatesLocator rendszer egy szervezőazonosítót, bérlőazonosítót, szálazonosítót és üzenetazonosítót használó értekezleteket keres. Ezek az információk a Microsoft Graph használatával találhatók.

Guid organizerId, tenantId;
String threadId, messageId;
TeamsMeetingCoordinatesLocator locator = new TeamsMeetingCoordinatesLocator(threadId, organizerId, tenantId, messageId);

Bekapcsolódás értekezletbe lokátorokkal

Miután létrehozta ezeket a Teams-értekezletkeresőket, az alábbi módon csatlakozhat a Teams-értekezletekhez CallAgent.join .

JoinCallOptions options = new JoinCallOptions();
call = agent.join(
        getApplicationContext(),
        locator,
        options);

A rendszer beállítása

A Visual Studio-projekt létrehozása

UWP-alkalmazások esetén a Visual Studio 2022-ben hozzon létre egy új Üres alkalmazás (Univerzális Windows) projektet. Miután megadta a projekt nevét, nyugodtan válasszon bármelyik Windows SDK-t a 10.0.17763.0-s verziónál később.

WinUI 3-alkalmazások esetén hozzon létre egy új projektet az Üres alkalmazás, csomagolt (WinUI 3 in Desktop) sablonnal egy egyoldalas WinUI 3-alkalmazás beállításához. Windows-alkalmazás SDK 1.3-es vagy újabb verzió szükséges.

Telepítse a csomagot és a függőségeket a NuGet Csomagkezelő

A hívó SDK API-k és kódtárak nyilvánosan elérhetők NuGet-csomagon keresztül.

Az alábbi lépések szemléltetik a hívó SDK NuGet-csomag megkeresését, letöltését és telepítését:

  1. Nyissa meg a NuGet-Csomagkezelő az Tools>NuGet Csomagkezelő> Manage NuGet Packages for Solution lehetőséget választva.
  2. Válassza a Tallózás lehetőséget, majd írja be Azure.Communication.Calling.WindowsClient a keresőmezőbe.
  3. Győződjön meg arról, hogy be van jelölve az Előzetes belefoglalás jelölőnégyzet.
  4. Jelölje ki a Azure.Communication.Calling.WindowsClient csomagot, majd válassza az Azure.Communication.Calling.WindowsClient1.4.0-beta.1 vagy egy újabb verziót.
  5. Jelölje be a jobb oldali lapon a Communication Services projektnek megfelelő jelölőnégyzetet.
  6. Válassza a Telepítés gombot.

Értekezlet-összeillesztési módszerek

Teams-értekezlethez való csatlakozáshoz használja a CallAgent.join metódust, és adjon át egy JoinMeetingLocator és egy JoinCallOptions.

Értekezlet azonosítója és pin-kódja

A TeamsMeetingIdLocator rendszer egy értekezlet azonosítóját és pin-kódját használó értekezletet keres. Ezek a Teams-értekezletek csatlakozási adatai között találhatók. A Teams-értekezlet azonosítója 12 karakter hosszú lesz, és numerikus számjegyekből áll, amelyek három (azaz) csoportba lesznek csoportosítva. 000 000 000 000 A pin-kód 6 betűből (azaz) áll. aBcDeF A pin-kód megkülönbözteti a kis- és nagybetűkét.

String meetingId, passcode
let locator = TeamsMeetingIdLocator(meetingId: meetingId, passcode: passcode)

A TeamsMeetingLinkLocator rendszer megkeres egy értekezletet egy Teams-értekezletre mutató hivatkozással. Ez a Teams-értekezletek csatlakozási adatai között található.

String meetingLink
let locator = TeamsMeetingLinkLocator(meetingLink: meetingLink)

Bekapcsolódás értekezletbe lokátorokkal

Miután létrehozta ezeket a Teams-értekezletkeresőket, az alábbi módon csatlakozhat a Teams-értekezletekhez CallAgent.join .

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) 
        }
    }
}

A rendszer beállítása

A Visual Studio-projekt létrehozása

UWP-alkalmazások esetén a Visual Studio 2022-ben hozzon létre egy új Üres alkalmazás (Univerzális Windows) projektet. Miután megadta a projekt nevét, nyugodtan válasszon bármelyik Windows SDK-t a 10.0.17763.0-s verziónál később.

WinUI 3-alkalmazások esetén hozzon létre egy új projektet az Üres alkalmazás, csomagolt (WinUI 3 in Desktop) sablonnal egy egyoldalas WinUI 3-alkalmazás beállításához. Windows-alkalmazás SDK 1.3-es vagy újabb verzió szükséges.

Telepítse a csomagot és a függőségeket a NuGet Csomagkezelő

A hívó SDK API-k és kódtárak nyilvánosan elérhetők NuGet-csomagon keresztül.

Az alábbi lépések szemléltetik a hívó SDK NuGet-csomag megkeresését, letöltését és telepítését:

  1. Nyissa meg a NuGet-Csomagkezelő az Tools>NuGet Csomagkezelő> Manage NuGet Packages for Solution lehetőséget választva.
  2. Válassza a Tallózás lehetőséget, majd írja be Azure.Communication.Calling.WindowsClient a keresőmezőbe.
  3. Győződjön meg arról, hogy be van jelölve az Előzetes belefoglalás jelölőnégyzet.
  4. Jelölje ki a Azure.Communication.Calling.WindowsClient csomagot, majd válassza az Azure.Communication.Calling.WindowsClient1.4.0-beta.1 vagy egy újabb verziót.
  5. Jelölje be a jobb oldali lapon a Communication Services projektnek megfelelő jelölőnégyzetet.
  6. Válassza a Telepítés gombot.

Értekezlet-összeillesztési módszerek

Teams-értekezlethez való csatlakozáshoz használja a CallAgent.JoinAsync metódust, és adjon át egy JoinMeetingLocator és egy JoinCallOptions.

Értekezlet azonosítója és pin-kódja

A TeamsMeetingIdLocator rendszer egy értekezlet azonosítóját és pin-kódját használó értekezletet keres. Ezek a Teams-értekezletek csatlakozási adatai között találhatók. A Teams-értekezlet azonosítója 12 karakter hosszú lesz, és numerikus számjegyekből áll, amelyek három (azaz) csoportba lesznek csoportosítva. 000 000 000 000 A pin-kód 6 betűből (azaz) áll. aBcDeF A pin-kód megkülönbözteti a kis- és nagybetűkét.

string meetingId, passcode; 
TeamsMeetingIdLocator locator = new TeamsMeetingIdLocator(meetingId, passcode);

A TeamsMeetingLinkLocator rendszer megkeres egy értekezletet egy Teams-értekezletre mutató hivatkozással. Ez a Teams-értekezletek csatlakozási adatai között található.

string meetingLink; 
TeamsMeetingLinkLocator locator = new TeamsMeetingLinkLocator(meetingLink);

Értekezlet koordinátái

A TeamsMeetingCoordinatesLocator rendszer egy szervezőazonosítót, bérlőazonosítót, szálazonosítót és üzenetazonosítót használó értekezleteket keres. Ezek az információk a Microsoft Graph használatával találhatók.

Guid organizerId, tenantId;
string threadId, messageId;
TeamsMeetingCoordinatesLocator locator = new TeamsMeetingCoordinatesLocator(threadId, organizerId, tenantId, messageId);

Bekapcsolódás értekezletbe lokátorokkal

Miután létrehozta ezeket a Teams-értekezletkeresőket, az alábbi módon csatlakozhat a Teams-értekezletekhez CallAgent.JoinAsync .

var joinCallOptions = new JoinCallOptions() {
        OutgoingAudioOptions = new OutgoingAudioOptions() { IsMuted = true },
        OutgoingVideoOptions = new OutgoingVideoOptions() { Streams = new OutgoingVideoStream[] { cameraStream } }
    };
var call = await callAgent.JoinAsync(locator, joinCallOptions);

Következő lépések