Přehled sady SDK pro volání

Služba Azure Communication Services umožňuje koncovým uživatelům, aplikacím a službám řídit komunikaci hlasem a videem. Tato stránka se zaměřuje na volání klientské sady SDK, která se dá vložit do webů a nativních aplikací. Tato stránka obsahuje podrobné popisy funkcí volajícího klienta, jako jsou informace o podpoře platformy a prohlížeče. Služby programově spravují a přistupují k volání pomocí rozhraní API pro automatizaci volání. Rozhraní API místnosti je volitelné rozhraní API služby Azure Communication Services, které přidává další funkce do hlasového hovoru nebo videohovoru, jako jsou role a oprávnění.

Poznámka:

Podělte se s námi o své nápady a zpětnou vazbu o službě Azure Communication Services tím, že si probereme tento krátký průzkum.

Pokud chcete vytvořit vlastní uživatelské prostředí pomocí sady SDK pro volání, podívejte se na ukázku Rychlé zprovoznění volání nebo volání hero.

Pokud chcete pomoct s prostředím koncového uživatele, poskytuje knihovna uživatelského rozhraní Azure Communication Services kolekci opensourcových komponent uživatelského rozhraní připravených k produkčnímu prostředí, které do aplikace zahodí. Pomocí této sady předem připravených ovládacích prvků můžete vytvářet krásné komunikační prostředí pomocí jazyka pro návrh Fluent od Microsoftu. Pokud chcete získat další informace o knihovně uživatelského rozhraní, navštivte web přehledu nebo storybook.

Jakmile začnete s vývojem, podívejte se na stránku známých problémů a najděte chyby, na kterých pracujeme.

Odkazy sady SDK

Platforma Web (JavaScript) Windows (.NET) iOS Android Jiný důvod
Volání npm NuGet GitHub Maven
Knihovna uživatelského rozhraní npm - GitHub GitHub GitHub, Storybook

Klíčové funkce

  • Správa zařízení a média – Volající sada SDK poskytuje zařízení pro vazbu na zvuková zařízení a videoza zařízení, kóduje obsah pro efektivní přenos přes komunikační rovinu dat a vykreslí obsah do výstupních zařízení a zobrazení, která určíte. K dispozici jsou také rozhraní API pro sdílení obrazovky a aplikací.
  • Veřejná telefonní síť – Volání SDK může zahájit hlasové hovory s tradiční veřejně přepnounou telefonní sítí pomocí telefonních čísel, která jste získali na webu Azure Portal nebo prostřednictvím kódu programu. Můžete také použít vlastní čísla pomocí řadičů ohraničení relace.
  • Schůzky a hovory v Teams – Volající sada SDK se může připojit ke schůzkám Teams a komunikovat s datovým rovinou hlasu a videa v Teams.
  • Šifrování – Volající sada SDK šifruje provoz a zabraňuje manipulaci s drátem.
  • Adresování – Azure Communication Services poskytuje obecné identity , které se používají k adresování koncových bodů komunikace. Klienti používají tyto identity k ověřování ve službě a vzájemné komunikaci. Tyto identity se používají v rozhraních API pro volání, která klientům poskytují přehled o tom, kdo je připojený k volání (seznam).
  • Zabezpečení přístupu uživatelů
    • Řízení seznamu, řízení plánu a role/oprávnění uživatelů se vynucují prostřednictvím virtuálních místností.
    • Schopnost uživatele zahájit nové volání nebo připojit se k existujícímu volání je možné spravovat prostřednictvím identit a tokenů uživatelů.
  • Oznámení – Volající sada SDK poskytuje rozhraní API, která klientům umožňují dostávat oznámení o příchozím hovoru. V situacích, kdy vaše aplikace není spuštěná v popředí, jsou vzory dostupné k aktivaci automaticky otevíraných oznámení (informační zprávy), které koncovým uživatelům informují o příchozím hovoru.
  • Statistiky médií – Volající sada SDK poskytuje komplexní přehledy o metrikách volání VoIP a videohovorů. S těmito informacemi mají vývojáři přehlednější znalosti o kvalitě hovorů a můžou se informovaně rozhodovat, aby dále zlepšili své komunikační prostředí.
  • Omezení videa – Volající sada SDK poskytuje rozhraní API, která umožňují regulovat kvalitu videa mimo jiné parametry během videohovorů úpravou parametrů, jako je rozlišení a frekvence snímků podporující různé situace volání pro různé úrovně kvality videa.
  • Diagnostika s přístupem uživatelů (UFD) – Volající sada SDK poskytuje události , které jsou navržené tak, aby poskytovaly přehled o základních problémech, které by mohly ovlivnit kvalitu volání. Vývojáři se můžou přihlásit k odběru triggerů, jako jsou slabé síťové signály nebo ztlumené mikrofony, a zajistit tak, aby vždy věděli o jakýchkoli faktorech, které ovlivňují volání.

Podrobné funkce

Následující seznam obsahuje sadu funkcí, které jsou aktuálně dostupné v sadách SDK pro volání služeb Azure Communication Services.

Skupina funkcí Schopnost JS Windows Java (Android) Objective-C (iOS)
Základní možnosti Volání 1:1 mezi dvěma uživateli ✔️ ✔️ ✔️ ✔️
Skupinové volání s více než dvěma uživateli (až 100 uživatelů) ✔️ ✔️ ✔️ ✔️
Zvýšení úrovně volání 1:1 se dvěma uživateli do skupinového hovoru s více než dvěma uživateli ✔️ ✔️ ✔️ ✔️
Připojení ke skupinovému hovoru po spuštění ✔️ ✔️ ✔️ ✔️
Pozvat dalšího účastníka VoIP, aby se připojil k probíhajícímu skupinovému hovoru ✔️ ✔️ ✔️ ✔️
Mid call control Zapnutí nebo vypnutí videa ✔️ ✔️ ✔️ ✔️
Ztlumení nebo zrušení ztlumení mikrofonu ✔️ ✔️ ✔️ ✔️
Ztlumení ostatních účastníků ✔️1 ✔️1 ✔️1 ✔️1
Přepínání mezi fotoaparáty ✔️ ✔️ ✔️ ✔️
Místní blokování nebo zrušení blokování ✔️ ✔️ ✔️ ✔️
Aktivní reproduktor ✔️ ✔️ ✔️ ✔️
Volba mluvčího pro hovory ✔️ ✔️ ✔️ ✔️
Volba mikrofonu pro hovory ✔️ ✔️ ✔️ ✔️
Zobrazení stavu účastníka
Nečinná, Časná média, Připojení, Připojení, Přidržené, V předsálí, Odpojeno
✔️ ✔️ ✔️ ✔️
Zobrazení stavu hovoru
Počáteční média, příchozí, Připojení, vyzvánění, Připojení ed, přidržení, odpojení, odpojení
✔️ ✔️ ✔️ ✔️
Zobrazit, jestli je účastník ztlumený ✔️ ✔️ ✔️ ✔️
Zobrazení důvodu, proč účastník opustil hovor ✔️ ✔️ ✔️ ✔️
Sdílení obrazovky Sdílení celé obrazovky z aplikace ✔️ ✔️2 ✔️2 ✔️2
Sdílení konkrétní aplikace (ze seznamu spuštěných aplikací) ✔️ ✔️2
Sdílení karty webového prohlížeče ze seznamu otevřených karet ✔️
Sdílení systémového zvuku během sdílení obrazovky ✔️
Účastník může zobrazit sdílenou vzdálenou obrazovku. ✔️ ✔️ ✔️ ✔️
Seznamu Seznam účastníků ✔️ ✔️ ✔️ ✔️
Odebrání účastníka ✔️ ✔️ ✔️ ✔️
Veřejná telefonní síť Volání 1:1 s účastníkem veřejné telefonní sítě ✔️ ✔️ ✔️ ✔️
Umístění skupinového hovoru s účastníky veřejné telefonní sítě ✔️ ✔️ ✔️ ✔️
Zvýšení úrovně hovoru 1:1 s účastníkem veřejné telefonní sítě do skupinového hovoru ✔️ ✔️ ✔️ ✔️
Vytáčení ze skupinového hovoru jako účastník veřejné telefonní sítě ✔️ ✔️ ✔️ ✔️
Podpora pro časná média ✔️ ✔️ ✔️ ✔️
OBECNÉ Otestujte mikrofon, reproduktor a kameru pomocí služby pro testování zvuku (k dispozici voláním 8:echo123) ✔️ ✔️ ✔️ ✔️
Správa zařízení Požádat o oprávnění k používání zvuku nebo videa ✔️ ✔️ ✔️ ✔️
Získání seznamu fotoaparátů ✔️ ✔️ ✔️ ✔️
Nastavení kamery ✔️ ✔️ ✔️ ✔️
Získání vybrané kamery ✔️ ✔️ ✔️ ✔️
Získání seznamu mikrofonů ✔️ ✔️ 3 3
Nastavení mikrofonu ✔️ ✔️ 3 3
Získání vybraného mikrofonu ✔️ ✔️ 3 3
Získání seznamu mluvčích ✔️ ✔️ 3 3
Nastavení reproduktoru ✔️ ✔️ 3 3
Získání vybraného mluvčího ✔️ ✔️ 3 3
Vykreslování videa Vykreslení jednoho videa na mnoha místech (místní kamera nebo vzdálený stream) ✔️ ✔️ ✔️ ✔️
Nastavení nebo aktualizace režimu škálování ✔️ ✔️ ✔️ ✔️
Vykreslení vzdáleného streamu videa ✔️ ✔️ ✔️ ✔️
Efekty videa Rozostření pozadí ✔️ ✔️ ✔️ ✔️
Obrázek vlastního pozadí ✔️
Zvukové efekty Hudební režim ✔️ ✔️ ✔️
Zvukové filtry ✔️ ✔️ ✔️
Šum supression ✔️
Oznámení 4 Nabízená oznámení ✔️ ✔️ ✔️ ✔️

1 Možnost ztlumit ostatní je aktuálně ve verzi Public Preview.

2 Funkce Sdílet obrazovku lze dosáhnout pomocí rozhraní API raw media. Další informace najdete v úvodní příručce pro nezpracovaný přístup k médiím.

3 Volající sada SDK nemá pro tyto funkce explicitní rozhraní API, měli byste místo toho použít rozhraní API operačního systému Android a iOS.

4 Maximální hodnota hodnoty TTL v nativních platformách je 180 dní (15 552 000 sekund) a minimální hodnota je 5 minut (300 sekund). U CTE (vlastní koncový bod Teams)/M365 Identity je maximální hodnota TTL 24 hodin (86 400 sekund).

Podpora sady JavaScript Call SDK podle operačního systému a prohlížeče

Následující tabulka představuje sadu podporovaných prohlížečů, které jsou aktuálně k dispozici. Podporujeme nejnovější tři hlavní verze prohlížeče (nejnovější tři podverze pro Safari), pokud není uvedeno jinak.

Platforma Chrome Safari Edge Firefox Webové zobrazení Electron
Android ✔️ ✔️ ✔️
iOS ✔️ ✔️ ✔️
macOS ✔️ ✔️ ✔️ ✔️ ✔️
Windows ✔️ ✔️ ✔️ ✔️
Ubuntu/Linux ✔️
  • Sdílení odchozích obrazovek není v mobilních prohlížečích s iOSem nebo Androidem podporované.
  • Podpora Firefoxu je ve veřejné verzi Preview.
  • V současné době volající sada SDK podporuje pouze Android System WebView v Androidu, iOS WebView (WKWebView) ve veřejné verzi Preview. Jiné typy vložených prohlížečů nebo WebView na jiných platformách operačního systému se oficiálně nepodporují, například GeckoView, Chromium Embedded Framework (CEF), Microsoft Edge WebView2. Spuštění sady JavaScript Call SDK na těchto platformách se aktivně neotestuje, může nebo nemusí fungovat.
  • Aplikace pro iOS v Safari nemůže vypsat nebo vybrat zařízení mikrofonu a reproduktoru (například Bluetooth). Tento problém je omezením iOSu a operační systém řídí výchozí výběr zařízení.

Volání klienta – model zabezpečení prohlížeče

Použití WebRTC přes HTTPS

Rozhraní API WebRTC, jako getUserMedia je například, vyžadují, aby aplikace, která tato rozhraní API volá, byla obsluhována přes protokol HTTPS. Pro místní vývoj můžete použít http://localhost.

Vložení sady SDK pro volání komunikačních služeb do prvku iframe

V různých prohlížečích jsou k dispozici nové zásady oprávnění (označované také jako zásady funkcí). Tato zásada ovlivňuje scénáře volání tím, že řídí, jak můžou aplikace přistupovat ke kameře a mikrofonu zařízení prostřednictvím elementu iframe mezi zdroji.

Pokud chcete použít prvek iframe k hostování části aplikace z jiné domény, musíte do prvku iframe přidat allow atribut se správnou hodnotou.

Tento prvek iframe například umožňuje přístup k fotoaparátu i mikrofonu:

<iframe allow="camera *; microphone *">

Podpora sady Android Call SDK

  • Podpora rozhraní ANDROID API úrovně 21 nebo vyšší
  • Podpora Pro Javu 7 nebo novější
  • Podpora pro Android Studio 2.0
  • Zařízení s Androidem Auto a IoT s Androidem se v současné době nepodporují.

Podpora volací sady SDK pro iOS

  • Podpora pro iOS 10.0+ v době sestavení a iOS 12.0+ za běhu
  • Xcode 12.0+
  • Podpora pro iPadOS 13.0+

Maximální doba trvání volání

Maximální doba trvání hovoru je 30 hodin, účastníci, kteří dosáhnou maximální doby trvání hovoru 30 hodin, se od hovoru odpojí.

Podporovaný počet příchozích streamů videa

Sada SDK pro volání služeb Azure Communication Services podporuje následující konfigurace streamování:

Limit Web Windows/Android/iOS
Maximální počet odchozích místních datových proudů, které lze odeslat současně 1 video a 1 sdílení obrazovky 1 video + 1 sdílení obrazovky
Maximální počet příchozích vzdálených datových proudů, které lze vykreslit současně 9 videí + 1 sdílení obrazovky v desktopových prohlížečích*, 4 videa + 1 sdílení obrazovky ve webových mobilních prohlížečích 9 videí + 1 sdílení obrazovky

* Počínaje sadou SDK webového volání služeb Azure Communication Services verze 1.16.3 Zatímco volající sada SDK nevynucuje tyto limity, můžou uživatelé zaznamenat snížení výkonu, pokud dojde k jejich překročení. Pomocí rozhraní API optimálního počtu videí určete, kolik aktuálních příchozích datových proudů videa může vaše webové prostředí podporovat.

Podporovaná rozlišení videa

Sada SDK pro volání ve službě Azure Communication Services automaticky upravuje rozlišení videa a sdílení obrazovek během hovoru.

Poznámka:

Rozlišení se může lišit v závislosti na počtu účastníků hovoru, množství šířky pásma dostupné klientovi, hardwarové schopnosti místního účastníka, který vykresluje vzdálené video streans a další celkové parametry volání.

Sada SDK pro volání služeb Azure Communication Services podporuje odesílání následujících rozlišení videa.

Maximální rozlišení videa WebJS iOS Android Windows
Odesílání videa 720P 720P 720P 1080P
Odesílání sdílené složky obrazovky 1080P 1080P 1080P 1080P
Příjem vzdáleného streamu videa nebo sdílení obrazovky 1080P 1080P 1080P 1080P

Počet účastníků na telefonickou podporu

  • 350 uživatelů se může připojit ke skupinovému hovoru, místnosti nebo volání teams + ACS.
  • Jakmile velikost hovoru dosáhne 100+ účastníků hovoru, můžete vidět pouze prvních 4 dominantní reproduktory, které mají zapnutou kameru videa.
  • Pokud je počet lidí na hovoru 100+, zobrazí se počet příchozích videí automaticky z 3x3 (9 příchozích videí) až na 2x2 (4 příchozí videa).
  • Když počet uživatelů klesne pod 100, počet podporovaných příchozích videí se vrátí až na 3x3 (9 příchozích videí).

Vypršení časových limitů sady SDK

Následující časové limity platí pro sady SDK pro volání komunikačních služeb:

Akce Časový limit v sekundách
Opětovné připojení nebo odebrání účastníka 60
Přidání nebo odebrání nových způsobů volání (spuštění/zastavení sdílení videa nebo obrazovky) 40
Vypršení časového limitu operace přenosu volání 60
1:1 Vypršení časového limitu pro vytvoření hovoru 85
Časový limit pro vytvoření skupinového volání 85
Časový limit pro vytvoření volání do veřejné telefonní sítě 115
Zvýšení úrovně 1:1 volání na časový limit skupinového volání 115

Další kroky

Další informace najdete v následujících článcích: