Översikt av SDK för samtal
Viktigt
Uppgradera till Azure Communication Services Calling SDK 1.1.0 (eller nyare) för JavaScript senast den 31 juli 2021.
Api:et Plan B Session Description Protocol (SDP) håller på att bli inaktuellt. Uppdatera dina Communication Services Anropa SDK:er till v1.1.0 (eller nyare) senast den 31 juli 2021 för att förhindra att utfasningen påverkar användarna. Mer information finns i viktig information om anropsbiblioteket.
Med anropande SDK kan slutanvändarenheterna använda röst- och videokommunikation. Den här sidan innehåller detaljerade beskrivningar av anropsfunktioner, inklusive supportinformation för plattformar och webbläsare. Om du vill komma igång direkt kan du ta en titt i Anropa snabbstarter eller Anropa hero-exempel.
När du har börjat utveckla kan du titta på sidan med kända problem för att hitta buggar som vi arbetar med.
Viktiga funktioner i anropande SDK:
- Adressering – Azure Communication Services innehåller allmänna identiteter som används för att hantera kommunikationsslutpunkter. Klienter använder dessa identiteter för att autentisera till tjänsten och kommunicera med varandra. Dessa identiteter används i Anropa API:er som ger klienter insyn i vem som är ansluten till ett anrop (förteckning).
- Kryptering – Anropande SDK krypterar trafik och förhindrar manipulering av kabeln.
- Enhetshantering och media – Den anropande SDK:n tillhandahåller funktioner för bindning till ljud- och videoenheter, kodar innehåll för effektiv överföring över kommunikationsdataplanet och återger innehåll till utdataenheter och vyer som du anger. API:er tillhandahålls också för skärm- och programdelning.
- PSTN – Det anropande SDK:t kan ta emot och initiera röstsamtal med det traditionella offentligt växlade telefonisystemet, med hjälp av telefonnummer som du får i Azure Portal eller programmatiskt.
- Teams Möten – Det anropande SDK:t kan delta i Teams möten och interagera med Teams och videodataplanet.
- Meddelanden – Den anropande SDK:n tillhandahåller API:er som gör att klienter kan meddelas om ett inkommande anrop. I situationer där din app inte körs i förgrunden är mönster tillgängliga för att skicka popup-meddelanden ("popup-meddelanden") för att informera slutanvändarna om ett inkommande anrop.
Detaljerade funktioner
I följande lista visas den uppsättning funktioner som för närvarande är tillgängliga i Azure Communication Services anropar-SDK:er.
| Grupp med funktioner | Funktion | JS | Windows | Java (Android) | Objective-C (iOS) |
|---|---|---|---|---|---|
| Kärnfunktioner | Placera ett en-till-ett-anrop mellan två användare | ✔️ | ✔️ | ✔️ | ✔️ |
| Placera ett gruppanrop med fler än två användare (upp till 350 användare) | ✔️ | ✔️ | ✔️ | ✔️ | |
| Höja upp ett en-till-ett-anrop med två användare i ett gruppsamtal med fler än två användare | ✔️ | ✔️ | ✔️ | ✔️ | |
| Delta i ett gruppsamtal när det har startat | ✔️ | ✔️ | ✔️ | ✔️ | |
| Bjud in en annan VoIP-deltagare att delta i ett pågående gruppanrop | ✔️ | ✔️ | ✔️ | ✔️ | |
| Mid-anropskontroll | Aktivera/inaktivera videon | ✔️ | ✔️ | ✔️ | ✔️ |
| Stänga av/slå på ljudet på mic | ✔️ | ✔️ | ✔️ | ✔️ | |
| Växla mellan kameror | ✔️ | ✔️ | ✔️ | ✔️ | |
| Håll/av håll lokalt | ✔️ | ✔️ | ✔️ | ✔️ | |
| Aktiv talare | ✔️ | ✔️ | ✔️ | ✔️ | |
| Välja talare för anrop | ✔️ | ✔️ | ✔️ | ✔️ | |
| Välj mikrofon för anrop | ✔️ | ✔️ | ✔️ | ✔️ | |
| Visa status för en deltagare Inaktiv, Tidig media, Ansluta, Ansluten, Håller på, InTr, Frånkopplad |
✔️ | ✔️ | ✔️ | ✔️ | |
| Visa status för ett anrop Tidiga medier, inkommande, ansluta, ringning, ansluten, hålla, koppla från, frånkopplad |
✔️ | ✔️ | ✔️ | ✔️ | |
| Visa om en deltagare är avstängd | ✔️ | ✔️ | ✔️ | ✔️ | |
| Visa orsaken till att en deltagare lämnade ett anrop | ✔️ | ✔️ | ✔️ | ✔️ | |
| Skärmdelning | Dela hela skärmen inifrån programmet | ✔️ | ❌ | ❌ | ❌ |
| Dela ett specifikt program (från listan över program som körs) | ✔️ | ❌ | ❌ | ❌ | |
| Dela en webbläsarflik från listan över öppna flikar | ✔️ | ❌ | ❌ | ❌ | |
| Deltagare kan visa fjärrskärmsresurs | ✔️ | ✔️ | ✔️ | ✔️ | |
| Deltagarlistan | Visa en lista över deltagare | ✔️ | ✔️ | ✔️ | ✔️ |
| Ta bort en deltagare | ✔️ | ✔️ | ✔️ | ✔️ | |
| PSTN | Placera ett ett-till-ett-anrop med en PSTN-deltagare | ✔️ | ✔️ | ✔️ | ✔️ |
| Ringa ett gruppsamtal med PSTN-deltagare | ✔️ | ✔️ | ✔️ | ✔️ | |
| Höja upp ett ett-till-ett-anrop med en PSTN-deltagare i ett gruppanrop | ✔️ | ✔️ | ✔️ | ✔️ | |
| Uppringning från ett gruppsamtal som PSTN-deltagare | ✔️ | ✔️ | ✔️ | ✔️ | |
| Allmänt | Testa mic, talare och kamera med en ljudtestningstjänst (tillgänglig genom att anropa 8:echo123) | ✔️ | ✔️ | ✔️ | ✔️ |
| Enhetshantering | Be om tillstånd att använda ljud och/eller video | ✔️ | ✔️ | ✔️ | ✔️ |
| Hämta kameralista | ✔️ | ✔️ | ✔️ | ✔️ | |
| Ställ in kamera | ✔️ | ✔️ | ✔️ | ✔️ | |
| Hämta vald kamera | ✔️ | ✔️ | ✔️ | ✔️ | |
| Hämta mikrofonlista | ✔️ | ✔️ | ❌ | ❌ | |
| Ange mikrofon | ✔️ | ✔️ | ❌ | ❌ | |
| Hämta vald mikrofon | ✔️ | ✔️ | ❌ | ❌ | |
| Hämta talarlista | ✔️ | ✔️ | ❌ | ❌ | |
| Ange talare | ✔️ | ✔️ | ❌ | ❌ | |
| Hämta vald talare | ✔️ | ✔️ | ❌ | ❌ | |
| Videoåtergivning | Rendera en video på många platser (lokal kamera eller fjärrström) | ✔️ | ✔️ | ✔️ | ✔️ |
| Ange/uppdatera skalningsläge | ✔️ | ✔️ | ✔️ | ✔️ | |
| Rendera fjärrvideoström | ✔️ | ✔️ | ✔️ | ✔️ |
Anropa SDK-stöd för direktuppspelning
Den Communication Services-anropande SDK:n stöder följande konfigurationer för direktuppspelning:
| Gräns | Webb | Windows/Android/iOS |
|---|---|---|
| Maximalt antal utgående lokala strömmar som kan skickas samtidigt | 1 video eller 1 skärmdelning | 1 video + 1 skärmdelning |
| Maximalt antal inkommande fjärrströmmar som kan renderas samtidigt | 4 videor + 1 skärmdelning | 6 videor + 1 skärmdelning |
Även om anropande SDK inte tillämpar dessa gränser kan dina användare uppleva prestandaförsämring om de överskrids.
Anropa SDK-tidsgränser
Följande tidsgränser gäller för Communication Services ANROPAR:
| Åtgärd | Tidsgräns i sekunder |
|---|---|
| Återanslutning/borttagning av deltagare | 120 |
| Lägga till eller ta bort nya funktioner från ett anrop (Starta/stoppa video eller skärmdelning) | 40 |
| Tidsgräns för anropsöverföringsåtgärd | 60 |
| 1:1 Timeout för anropsetablering | 85 |
| Tidsgräns för gruppanropsetablering | 85 |
| Tidsgräns för PSTN-anropsetablering | 115 |
| Höja upp 1:1-anrop till en tidsgräns för gruppanrop | 115 |
Stöd för Sdk för JavaScript-anrop av operativsystem och webbläsare
Följande tabell representerar den uppsättning webbläsare som stöds och som för närvarande är tillgängliga. Vi stöder de senaste tre versionerna av webbläsaren om inget annat anges.
| Plattform | Chrome | Safari | Edge (Chromium) |
|---|---|---|---|
| Android | ✔️ | ❌ | ❌ |
| iOS | ❌ | ✔️ | ❌ |
| macOS | ✔️ | ✔️ | ❌ |
| Windows | ✔️ | ❌ | ✔️ |
| Ubuntu/Linux | ✔️ | ❌ | ❌ |
- Utgående skärmdelning stöds inte på iOS eller Android.
- En iOS-app i Safari kan inte räkna upp/välja mic- och talarenheter (till exempel Bluetooth). Det här är en begränsning av operativsystemet och det finns alltid bara en enhet, OS kontrollerar standardvalet av enheter.
Stöd för Sdk för Android-anrop
Stöd för Android API-nivå 21 eller senare
Stöd för Java 7 eller senare
Stöd för Android Studio 2.0
Stöd för iOS-anropande SDK
Stöd för iOS 10.0+ vid byggtid och iOS 12.0+ vid körning
Xcode 12.0+
Anropa klienten – webbläsarsäkerhetsmodell
Användarens WebRTC via HTTPS
WebRTC-API:er getUserMedia som kräver att appen som anropar dessa API:er betjänas via HTTPS.
För lokal utveckling kan du använda http://localhost .
Bädda in Communication Services anropa SDK i en iframe
En ny behörighetsprincip (kallas även en funktionsprincip) används av olika webbläsare. Den här principen påverkar anropsscenarier genom att styra hur program kan komma åt en enhets kamera och mikrofon via ett iframe-element med korsande ursprung.
Om du vill använda en iframe som värd för en del av appen från en annan domän måste du lägga till attributet med allow rätt värde i din iframe.
Till exempel tillåter den här iframe både kamera- och mikrofonåtkomst:
<iframe allow="camera *; microphone *">
Nästa steg
Mer information finns i följande artiklar:
- Bekanta dig med allmänna anropsflöden
- Läs mer om anropstyper
- Planera din PSTN-lösning