Připojení ke schůzce týmů
Sady SDK služby Azure Communication Services umožňují uživatelům připojovat se k běžným schůzkám Microsoft Teams. Tady je postup!
Požadavky
- Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
- Nasazený prostředek komunikační služby. Vytvořte prostředek komunikační služby.
- Přístupový token uživatele pro povolení volajícího klienta. Další informace najdete v tématu Vytváření a správa přístupových tokenů.
- Volitelné: Dokončením rychlého startu přidáte do aplikace hlasové hovory.
Nainstalujte sadu SDK .
npm install
Pomocí příkazu nainstalujte sadu AZURE Communication Services Common and Calling SDK pro JavaScript:
npm install @azure/communication-common --save
npm install @azure/communication-calling --save
Inicializace požadovaných objektů
Pro CallClient
většinu operací volání se vyžaduje instance. Když vytvoříte novou CallClient
instanci, můžete ji nakonfigurovat s vlastními možnostmi, jako je Logger
instance.
CallClient
S instancí můžete vytvořit CallAgent
instanci voláním createCallAgent
. Tato metoda asynchronně vrátí CallAgent
objekt instance.
Metoda createCallAgent
se používá CommunicationTokenCredential
jako argument. Přijímá přístupový token uživatele.
K přístupu deviceManager
můžete použít metodu getDeviceManager
v CallClient
instanci .
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()
Jak nejlépe spravovat připojení sady SDK k infrastruktuře Microsoftu
Tato Call Agent
instance vám pomůže spravovat hovory (pro připojení nebo zahájení hovorů). Aby bylo možné pracovat s vaší sadou SDK volání, musí se připojit k infrastruktuře Microsoftu, aby bylo možné dostávat oznámení o příchozích hovorech a koordinovat další podrobnosti volání. Máte Call Agent
dva možné stavy:
Připojeno – Call Agent
Hodnota connectionStatue znamená, Connected
že klientská sada SDK je připojená a dokáže přijímat oznámení z infrastruktury Microsoftu.
Odpojeno – Call Agent
Hodnota Disconnected
connectionStatue stavů existuje problém, který brání sadě SDK, aby se správně připojil. Call Agent
by se mělo znovu vytvořit.
invalidToken
: Pokud vypršela platnost tokenu nebo je neplatnáCall Agent
instance, odpojí se s touto chybou.connectionIssue
: Pokud došlo k problému s klientem, který se připojuje k infrascture Microsoftu, po mnoha opakovaných pokusechCall Agent
connectionIssue
se zobrazí chyba.
Zkontrolujte, jestli je vaše místní Call Agent
infrastruktura připojená k infrastruktuře Microsoftu, a to kontrolou aktuální hodnoty connectionState
vlastnosti. Během aktivního volání můžete naslouchat connectionStateChanged
události a zjistit, jestli Call Agent
se změny ze stavu Připojeno k Odpojeno .
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);
Metody připojení ke schůzce
Pokud se chcete připojit ke schůzce Teams, použijte metodu join
a předejte odkaz na schůzku nebo souřadnice schůzky.
Připojte se pomocí odkazu na schůzku:
const locator = { meetingLink: '<MEETING_LINK>'}
const call = callAgent.join(locator);
Připojte se pomocí souřadnic schůzek (v současné době je v omezené verzi Preview):
const locator = {
threadId: <thread id>,
organizerId: <organizer id>,
tenantId: <tenant id>,
messageId: <message id>
}
const call = callAgent.join(locator);
Nastavení systému
Podle těchto kroků nastavte systém.
Vytvoření projektu sady Visual Studio
V případě Univerzální platforma Windows aplikace vytvořte v sadě Visual Studio 2022 nový projekt Prázdná aplikace (Universal Windows). Po zadání názvu projektu si můžete vybrat libovolnou sadu Windows SDK později než 10.0.17763.0.
V případě aplikace WinUI 3 vytvořte nový projekt pomocí šablony Prázdná aplikace zabalená (WinUI 3 v desktopové verzi) pro nastavení jednostráňové aplikace WinUI 3. Vyžaduje se sada Windows App SDK verze 1.3 nebo novější.
Instalace balíčku a závislostí pomocí Správce balíčků NuGet
Rozhraní API a knihovny volající sady SDK jsou veřejně dostupné prostřednictvím balíčku NuGet.
Vyhledání, stažení a instalace balíčku NuGet volající sady SDK:
- Otevřete Správce balíčků NuGet výběrem nástrojů>NuGet Správce balíčků> Nabídky NuGet pro řešení.
- Vyberte Procházet a do vyhledávacího pole zadejte Azure.Communication.Calling.WindowsClient .
- Ujistěte se, že je zaškrtnuté políčko Zahrnout předběžné verze .
- Vyberte balíček Azure.Communication.Calling.WindowsClient a pak vyberte Azure.Communication.Calling.WindowsClient 1.4.0-beta.1 nebo novější verzi.
- Zaškrtněte políčko odpovídající projektu Azure Communication Services v pravém podokně.
- Vyberte volbu Instalovat.
Metody připojení ke schůzce
Pokud se chcete připojit ke schůzce Teams, použijte metodu CallAgent.join
a předejte kontext JoinMeetingLocator
aplikace a JoinCallOptions
.
ID schůzky a heslo
Vyhledá TeamsMeetingIdLocator
schůzku pomocí ID schůzky a hesla. Najdete je v informacích o připojení ke schůzce Teams.
ID schůzky v Teams bude dlouhé 12 znaků a bude se skládat z číselných číslic seskupených do tří (tj. 000 000 000 000
).
Heslo se skládá ze 6 abecedních znaků (tj. aBcDeF
). U hesla se rozlišují malá a velká písmena.
String meetingId, passcode;
TeamsMeetingIdLocator locator = new TeamsMeetingIdLocator(meetingId, passcode);
Odkaz na schůzku
Vyhledá TeamsMeetingLinkLocator
schůzku pomocí odkazu na schůzku v Teams. Najdete ho v informacích o připojení ke schůzce v Teams.
String meetingLink;
TeamsMeetingLinkLocator locator = new TeamsMeetingLinkLocator(meetingLink);
Souřadnice schůzek
Vyhledá TeamsMeetingCoordinatesLocator
schůzky pomocí ID organizátora, ID tenanta, ID vlákna a ID zprávy. Tyto informace najdete v Microsoft Graphu.
Guid organizerId, tenantId;
String threadId, messageId;
TeamsMeetingCoordinatesLocator locator = new TeamsMeetingCoordinatesLocator(threadId, organizerId, tenantId, messageId);
Připojení ke schůzce pomocí lokátorů
Po vytvoření těchto lokátorů schůzek Teams ho můžete použít k připojení ke schůzce Teams pomocí CallAgent.join
následujícího obrázku.
JoinCallOptions options = new JoinCallOptions();
call = agent.join(
getApplicationContext(),
locator,
options);
Nastavení systému
Podle těchto kroků nastavte systém.
Vytvoření projektu sady Visual Studio
V případě Univerzální platforma Windows aplikace vytvořte v sadě Visual Studio 2022 nový projekt Prázdná aplikace (Universal Windows). Po zadání názvu projektu si můžete vybrat libovolnou sadu Windows SDK později než 10.0.17763.0.
V případě aplikace WinUI 3 vytvořte nový projekt pomocí šablony Prázdná aplikace zabalená (WinUI 3 v desktopové verzi) pro nastavení jednostráňové aplikace WinUI 3. Vyžaduje se sada Windows App SDK verze 1.3 nebo novější.
Instalace balíčku a závislostí pomocí Správce balíčků NuGet
Rozhraní API a knihovny volající sady SDK jsou veřejně dostupné prostřednictvím balíčku NuGet.
Vyhledání, stažení a instalace balíčku NuGet volající sady SDK:
- Otevřete Správce balíčků NuGet výběrem nástrojů>NuGet Správce balíčků> Nabídky NuGet pro řešení.
- Vyberte Procházet a do vyhledávacího pole zadejte Azure.Communication.Calling.WindowsClient .
- Ujistěte se, že je zaškrtnuté políčko Zahrnout předběžné verze .
- Vyberte balíček Azure.Communication.Calling.WindowsClient a pak vyberte Azure.Communication.Calling.WindowsClient 1.4.0-beta.1 nebo novější verzi.
- Zaškrtněte políčko odpovídající projektu Azure Communication Services v pravém podokně.
- Vyberte volbu Instalovat.
Metody připojení ke schůzce
Pokud se chcete připojit ke schůzce Teams, použijte metodu CallAgent.join
a předejte JoinMeetingLocator
a a JoinCallOptions
.
ID schůzky a heslo
Vyhledá TeamsMeetingIdLocator
schůzku pomocí ID schůzky a hesla. Najdete je v informacích o připojení ke schůzce Teams.
ID schůzky v Teams bude dlouhé 12 znaků a bude se skládat z číselných číslic seskupených do tří (tj. 000 000 000 000
).
Heslo se skládá ze 6 abecedních znaků (tj. aBcDeF
). U hesla se rozlišují malá a velká písmena.
String meetingId, passcode
let locator = TeamsMeetingIdLocator(meetingId: meetingId, passcode: passcode)
Odkaz na schůzku
Vyhledá TeamsMeetingLinkLocator
schůzku pomocí odkazu na schůzku v Teams. Najdete ho v informacích o připojení ke schůzce v Teams.
String meetingLink
let locator = TeamsMeetingLinkLocator(meetingLink: meetingLink)
Připojení ke schůzce pomocí lokátorů
Po vytvoření těchto lokátorů schůzek Teams ho můžete použít k připojení ke schůzce Teams pomocí CallAgent.join
následujícího obrázku.
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)
}
}
}
Nastavení systému
Podle těchto kroků nastavte systém.
Vytvoření projektu sady Visual Studio
V případě Univerzální platforma Windows aplikace vytvořte v sadě Visual Studio 2022 nový projekt Prázdná aplikace (Universal Windows). Po zadání názvu projektu si můžete vybrat libovolnou sadu Windows SDK později než 10.0.17763.0.
V případě aplikace WinUI 3 vytvořte nový projekt pomocí šablony Prázdná aplikace zabalená (WinUI 3 v desktopové verzi) pro nastavení jednostráňové aplikace WinUI 3. Vyžaduje se sada Windows App SDK verze 1.3 nebo novější.
Instalace balíčku a závislostí pomocí Správce balíčků NuGet
Rozhraní API a knihovny volající sady SDK jsou veřejně dostupné prostřednictvím balíčku NuGet.
Vyhledání, stažení a instalace balíčku NuGet volající sady SDK:
- Otevřete Správce balíčků NuGet výběrem nástrojů>NuGet Správce balíčků> Nabídky NuGet pro řešení.
- Vyberte Procházet a do vyhledávacího pole zadejte Azure.Communication.Calling.WindowsClient .
- Ujistěte se, že je zaškrtnuté políčko Zahrnout předběžné verze .
- Vyberte balíček Azure.Communication.Calling.WindowsClient a pak vyberte Azure.Communication.Calling.WindowsClient 1.4.0-beta.1 nebo novější verzi.
- Zaškrtněte políčko odpovídající projektu Azure Communication Services v pravém podokně.
- Vyberte volbu Instalovat.
Metody připojení ke schůzce
Pokud se chcete připojit ke schůzce Teams, použijte metodu CallAgent.JoinAsync
a předejte JoinMeetingLocator
a a JoinCallOptions
.
ID schůzky a heslo
Vyhledá TeamsMeetingIdLocator
schůzku pomocí ID schůzky a hesla. Najdete je v informacích o připojení ke schůzce Teams.
ID schůzky v Teams bude dlouhé 12 znaků a bude se skládat z číselných číslic seskupených do tří (tj. 000 000 000 000
).
Heslo se skládá ze 6 abecedních znaků (tj. aBcDeF
). U hesla se rozlišují malá a velká písmena.
string meetingId, passcode;
TeamsMeetingIdLocator locator = new TeamsMeetingIdLocator(meetingId, passcode);
Odkaz na schůzku
Vyhledá TeamsMeetingLinkLocator
schůzku pomocí odkazu na schůzku v Teams. Najdete ho v informacích o připojení ke schůzce v Teams.
string meetingLink;
TeamsMeetingLinkLocator locator = new TeamsMeetingLinkLocator(meetingLink);
Souřadnice schůzek
Vyhledá TeamsMeetingCoordinatesLocator
schůzky pomocí ID organizátora, ID tenanta, ID vlákna a ID zprávy. Tyto informace najdete v Microsoft Graphu.
Guid organizerId, tenantId;
string threadId, messageId;
TeamsMeetingCoordinatesLocator locator = new TeamsMeetingCoordinatesLocator(threadId, organizerId, tenantId, messageId);
Připojení ke schůzce pomocí lokátorů
Po vytvoření těchto lokátorů schůzek Teams ho můžete použít k připojení ke schůzce Teams pomocí CallAgent.JoinAsync
následujícího obrázku.
var joinCallOptions = new JoinCallOptions() {
OutgoingAudioOptions = new OutgoingAudioOptions() { IsMuted = true },
OutgoingVideoOptions = new OutgoingVideoOptions() { Streams = new OutgoingVideoStream[] { cameraStream } }
};
var call = await callAgent.JoinAsync(locator, joinCallOptions);