Rövid útmutató: Kimenő hívás telefonszámra
Ismerkedjen meg az Azure Communication Services szolgáltatással a Communication Services Calling SDK használatával, hogy PSTN-hívásokat vegyen fel az alkalmazásba.
Fontos
Az Azure Communication Services csak a Egyesült Államok, Puerto Rico, Kanada, Dánia, Egyesült Királyság és Ausztrália területén támogatja a segélyhívásokat.
Az Azure Communication Services hanghívás (PSTN) a 911-es segélyhívószám tárcsázására használható a Egyesült Államok, Puerto Rico és Kanada területén, a 112-es segélyhívó szám tárcsázására Dániában, a 000-es segélyhívó szám tárcsázására Ausztráliában, valamint a 999-es és a 112-es segélyhívó számok tárcsázására az Egyesült Királyságban. Az Azure Communication Services jelenleg nem támogatja a segélyhívó számok tárcsázását ezen országokon vagy régiókon kívülről, vagy más országokban vagy régiókban tárcsázott segélyhívási szolgáltatásokat.
Mintakód
A rövid útmutató véglegesített kódjának megkeresése a GitHubon
Feljegyzés
A telefonszámra irányuló kimenő hívás az Azure Communication Services felhasználói felületi kódtárával érhető el. A felhasználói felületi kódtár lehetővé teszi a fejlesztők számára, hogy csak néhány sornyi kóddal adjanak hozzá egy PSTN-kompatibilis hívásügyfélt az alkalmazásukhoz.
Előfeltételek
- Egy Azure-fiók, aktív előfizetéssel. Fiók ingyenes létrehozása.
- Üzembe helyezett Communication Services-erőforrás. Hozzon létre egy Communication Services-erőforrást.
- A Communication Services-erőforrásban beszerzett telefonszám, vagy az Azure Communication Services Direct útválasztása konfigurálva. Ha ingyenes előfizetéssel rendelkezik, beszerezheti a próbaverzió telefonszámát.
- A
User Access Token
a hívásügyfél engedélyezéséhez. További információ aUser Access Token
Beállítás
Új Node.js-alkalmazás létrehozása
Nyissa meg a terminált vagy a parancsablakot, és hozzon létre egy új könyvtárat az alkalmazáshoz, és navigáljon hozzá.
mkdir calling-quickstart
cd calling-quickstart
Futtassa npm init -y
az alapértelmezett beállításokkal rendelkező package.json fájl létrehozásához.
npm init -y
Telepítse a(z) csomagot
npm install
A parancs használatával telepítse az Azure Communication Services Calling SDK for JavaScriptet.
npm install @azure/communication-common --save
npm install @azure/communication-calling --save
A --save
beállítás függőségként sorolja fel a tárat a package.json fájlban.
Az alkalmazás-keretrendszer beállítása
Ez a rövid útmutató csomaggal köti össze az alkalmazásegységeket. Futtassa a következő parancsot a telepítéshez, és sorolja fel fejlesztési függőségként a package.json:
npm install parcel --save-dev
Hozzon létre egy index.html fájlt a projekt gyökérkönyvtárában. Ezzel a fájllal olyan alapszintű elrendezést konfigurálunk, amely lehetővé teszi a felhasználó számára a hívás indítását.
A kód a következő:
<!DOCTYPE html>
<html>
<head>
<title>Communication Client - Calling Sample</title>
</head>
<body>
<h4>Azure Communication Services</h4>
<h1>Calling Quickstart</h1>
<input
id="callee-phone-input"
type="text"
placeholder="Who would you like to call?"
style="margin-bottom:1em; width: 230px;"
/>
<div>
<button id="call-phone-button" type="button">
Start Call
</button>
<button id="hang-up-phone-button" type="button" disabled="true">
Hang Up
</button>
</div>
<script src="./app.js" type="module"></script>
</body>
</html>
Hozzon létre egy fájlt a projekt gyökérkönyvtárában app.js , amely tartalmazza a rövid útmutató alkalmazáslogikát. Adja hozzá a következő kódot a hívó ügyfél importálásához és a DOM-elemekre mutató hivatkozások lekéréséhez, hogy csatolhassuk az üzleti logikát.
import { CallClient, CallAgent } from "@azure/communication-calling";
import { AzureCommunicationTokenCredential } from '@azure/communication-common';
let call;
let callAgent;
const calleePhoneInput = document.getElementById("callee-phone-input");
const callPhoneButton = document.getElementById("call-phone-button");
const hangUpPhoneButton = document.getElementById("hang-up-phone-button");
async function init() {
const callClient = new CallClient();
const tokenCredential = new AzureCommunicationTokenCredential('<USER ACCESS TOKEN with VoIP scope>');
callAgent = await callClient.createCallAgent(tokenCredential);
//callPhoneButton.disabled = false;
}
init();
Hívás indítása telefonon
Adja meg a hívás indításához használt Communication Services-erőforrásban beszerzett telefonszámot:
Figyelmeztetés
A telefonszámokat E.164 nemzetközi szabvány formátumban kell megadni. (például: +12223334444)
Adjon hozzá egy eseménykezelőt, a gombra kattintáskor callPhoneButton
megadott telefonszám hívásának elindításához:
callPhoneButton.addEventListener("click", () => {
// start a call to phone
const phoneToCall = calleePhoneInput.value;
call = callAgent.startCall(
[{phoneNumber: phoneToCall}], { alternateCallerId: {phoneNumber: 'YOUR AZURE REGISTERED PHONE NUMBER HERE: +12223334444'}
});
// toggle button states
hangUpPhoneButton.disabled = false;
callPhoneButton.disabled = true;
});
Hívás befejezése
Adjon hozzá egy eseményfigyelőt az aktuális hívás befejezéséhez a hangUpPhoneButton
kattintáskor:
hangUpPhoneButton.addEventListener("click", () => {
// end the current call
call.hangUp({
forEveryone: true
});
// toggle button states
hangUpPhoneButton.disabled = true;
callPhoneButton.disabled = false;
});
A forEveryone
tulajdonság az összes hívás résztvevőjének hívását befejezi.
A kód futtatása
Használja a parancsot npx parcel index.html
az alkalmazás létrehozásához és futtatásához.
Nyissa meg a böngészőt, és keresse meg a következőt http://localhost:1234/
: . A következő webalkalmazásnak kell megjelennie:
Valós telefonszámra is hívhat, ha megad egy telefonszámot a hozzáadott szövegmezőben, és a Hívás indítása gombra kattint.
Fontos
Az Azure Communication Services csak a Egyesült Államok, Puerto Rico, Kanada, Dánia, Egyesült Királyság és Ausztrália területén támogatja a segélyhívásokat.
Az Azure Communication Services hanghívás (PSTN) a 911-es segélyhívószám tárcsázására használható a Egyesült Államok, Puerto Rico és Kanada területén, a 112-es segélyhívó szám tárcsázására Dániában, a 000-es segélyhívó szám tárcsázására Ausztráliában, valamint a 999-es és a 112-es segélyhívó számok tárcsázására az Egyesült Királyságban. Az Azure Communication Services jelenleg nem támogatja a segélyhívó számok tárcsázását ezen országokon vagy régiókon kívülről, vagy más országokban vagy régiókban tárcsázott segélyhívási szolgáltatásokat.
Mintakód
A rövid útmutató véglegesített kódjának megkeresése a GitHubon
Előfeltételek
- Egy Azure-fiók, aktív előfizetéssel. Fiók ingyenes létrehozása.
- Üzembe helyezett Communication Services-erőforrás. Hozzon létre egy Communication Services-erőforrást.
- A Communication Services-erőforrásban beszerzett telefonszám, vagy konfigurálva van az Azure Communication Services közvetlen útválasztása. Ha ingyenes előfizetéssel rendelkezik, beszerezheti a próbaverzió telefonszámát.
- A
User Access Token
a hívásügyfél engedélyezéséhez. További információ aUser Access Token
- A hívás alkalmazáshoz való hozzáadásának első lépéseit ismertető rövid útmutató befejezése
Előfeltételek ellenőrzése
- A Communication Services-erőforráshoz társított telefonszámok megtekintéséhez jelentkezzen be az Azure Portalra, keresse meg a Communication Services-erőforrást, és nyissa meg a telefonszámok lapot a bal oldali navigációs panelen.
Beállítás
PSTN-funkciók hozzáadása az alkalmazáshoz
Adja hozzá a PhoneNumber
típust az alkalmazáshoz a MainActivity.java módosításával:
import com.azure.android.communication.common.PhoneNumberIdentifier;
Hívás indítása telefonon
Adja meg a Communication Services-erőforrásból beszerzett telefonszámot. Ez a szám hívóazonosítóként használatos a hívás indításához:
Figyelmeztetés
Vegye figyelembe, hogy a telefonszámokat E.164 nemzetközi szabvány formátumban kell megadni. (például: +12223334444)
Módosítsa startCall()
az eseménykezelőt a MainActivity.java, hogy kezelje a telefonhívásokat:
private void startCall() {
EditText calleePhoneView = findViewById(R.id.callee_id);
String calleePhone = calleePhoneView.getText().toString();
PhoneNumberIdentifier callerPhone = new PhoneNumberIdentifier("+12223334444");
StartCallOptions options = new StartCallOptions();
options.setAlternateCallerId(callerPhone);
options.setVideoOptions(new VideoOptions(null));
call = agent.startCall(
getApplicationContext(),
new PhoneNumberIdentifier[] {new PhoneNumberIdentifier(calleePhone)},
options);
}
Indítsa el az alkalmazást, és hívja meg az echo robotot
Az alkalmazás most már elindítható az eszköztár "Alkalmazás futtatása" gombjával (Shift+F10). Hívás indításához adjon meg egy telefonszámot a hozzáadott szövegmezőben, és válassza a HÍVÁS gombot.
Figyelmeztetés
Vegye figyelembe, hogy a telefonszámokat E.164 nemzetközi szabvány formátumban kell megadni. (például: +12223334444)
Fontos
Az Azure Communication Services csak a Egyesült Államok, Puerto Rico, Kanada, Dánia, Egyesült Királyság és Ausztrália területén támogatja a segélyhívásokat.
Az Azure Communication Services hanghívás (PSTN) a 911-es segélyhívószám tárcsázására használható a Egyesült Államok, Puerto Rico és Kanada területén, a 112-es segélyhívó szám tárcsázására Dániában, a 000-es segélyhívó szám tárcsázására Ausztráliában, valamint a 999-es és a 112-es segélyhívó számok tárcsázására az Egyesült Királyságban. Az Azure Communication Services jelenleg nem támogatja a segélyhívó számok tárcsázását ezen országokon vagy régiókon kívülről, vagy más országokban vagy régiókban tárcsázott segélyhívási szolgáltatásokat.
Előfeltételek
- Egy Azure-fiók, aktív előfizetéssel. Fiók ingyenes létrehozása.
- Üzembe helyezett Communication Services-erőforrás. Hozzon létre egy Communication Services-erőforrást.
- A Communication Services-erőforrásban beszerzett telefonszám, vagy az Azure Communication Services Direct útválasztása konfigurálva. Ha ingyenes előfizetéssel rendelkezik, beszerezheti a próbaverzió telefonszámát.
- A
User Access Token
a hívásügyfél engedélyezéséhez. További információ aUser Access Token
- A hívás alkalmazáshoz való hozzáadásának első lépéseit ismertető rövid útmutató befejezése
Előfeltételek ellenőrzése
- A Communication Services-erőforráshoz társított telefonszámok megtekintéséhez jelentkezzen be az Azure Portalra, keresse meg a Communication Services-erőforrást, és nyissa meg a telefonszámok lapot a bal oldali navigációs panelen.
- Az alkalmazást az iOS-hez készült Azure Communication Services Calling SDK-val hozhatja létre és futtathatja:
Beállítás
Hívás indítása telefonon
Adja meg a hívás indításához használt Communication Services-erőforrásban beszerzett telefonszámot:
Figyelmeztetés
Vegye figyelembe, hogy a telefonszámokat E.164 nemzetközi szabvány formátumban kell megadni. (például: +12223334444)
A Hívás indítása gomb leképezésekor végrehajtott eseménykezelő módosításastartCall
:
func startCall() {
// Ask permissions
AVAudioSession.sharedInstance().requestRecordPermission { (granted) in
if granted {
let startCallOptions = StartCallOptions()
startCallOptions.alternateCallerId = PhoneNumberIdentifier(phoneNumber: "<YOUR AZURE REGISTERED PHONE NUMBER>")
self.callAgent!.startCall(participants: [PhoneNumberIdentifier(phoneNumber: self.callee)], options: startCallOptions) { (call, error) in
if (error == nil) {
self.call = call
} else {
print("Failed to get call object")
}
}
}
}
}
A kód futtatása
Az alkalmazást iOS-szimulátoron is létrehozhatja és futtathatja a Termékfuttatás> vagy a (⌘-R) billentyűparanccsal.
Hívás kezdeményezéséhez adjon meg egy telefonszámot a hozzáadott szövegmezőben, és kattintson a Hívás indítása gombra.
Figyelmeztetés
Vegye figyelembe, hogy a telefonszámokat E.164 nemzetközi szabvány formátumban kell megadni. (például: +12223334444)
Feljegyzés
Az első híváskor a rendszer kérni fogja a mikrofonhoz való hozzáférést. Éles alkalmazásokban az AVAudioSession
API-val ellenőrizze az engedély állapotát , és ha nincs megadva engedély, frissítse az alkalmazás viselkedését.
Az erőforrások eltávolítása
Ha törölni és eltávolítani szeretne egy Communication Services-előfizetést, törölheti az erőforrást vagy az erőforráscsoportot. Az erőforráscsoport törlése a hozzá társított egyéb erőforrásokat is törli. További információ az erőforrások tisztításáról.
Következő lépések
További információért tekintse át az alábbi cikkeket: