Azure Communication Call Automation ügyfélkódtár JavaScripthez – 1.2.0-s verzió
Ez a csomag egy JavaScript SDK-t tartalmaz az Azure Communication Call Automationhez. A Hívásautomatizálás lehetővé teszi a fejlesztők számára, hogy kiszolgálóalapú, intelligens hívási munkafolyamatokat, valamint hívásrögzítést készítsenek hang- és PSTN-csatornákhoz.
A hívásautomatizálás | áttekintéseTermékdokumentáció
Első lépések
Előfeltételek
- Egy Azure-előfizetés.
- Egy meglévő Communication Services-erőforrás. Ha létre kell hoznia az erőforrást, használhatja az Azure Portalt, a Azure PowerShell vagy az Azure CLI-t.
Telepítés
npm install @azure/communication-call-automation
Böngészőtámogatás
JavaScript-csomag
Ahhoz, hogy ezt az ügyfélkódtárat a böngészőben használhassa, először egy kötegelőt kell használnia. Ennek részleteiért tekintse meg a csomagküldő dokumentációt.
Fő fogalmak
Név | Leírás |
---|---|
CallAutomationClient | CallAutomationClient az ügyfélkódtárat használó fejlesztők elsődleges felülete. A vagy answerCall a használatával indíthat hívásokatcreateCall . |
CallConnection | CallConnection egy folyamatban lévő hívást jelöl. A hívás vagy answerCall a createCall használatával történő létrehozása után további műveletek is végrehajthatók a híváshoz, például transfer vagy addParticipant . |
CallMedia | CallMedia médiafájl lejátszására használható, például play médiafájl lejátszására. Ez a létrehozott CallConnection fájlból kérhető le. |
CallRecording | CallRecording segítségével rögzíthetők a kapcsolódó műveletek, például startRecording a . Ez a forrásból CallAutomationClient kérhető le. |
Visszahívási események | A visszahívási események a hívás időtartama alatt visszaküldött események. Információt és a hívás állapotát adja meg, például CallConnected . CallbackUrl a és answerCall alatt createCall kell megadni, és a visszahívási eseményeket erre az URL-címre küldjük. Ezeket callAutomationEventParser az eseményeket a beérkezéskor elemezheti. |
Bejövő hívási esemény | Amikor bejövő hívás történik (amely a következővel answerCall válaszolható meg), a rendszer a bejövő hívás eseménynaplós eseményét küldi el. Ez eltér a fenti Visszahívási eseményektől, és Azure Portal kell beállítani. A részletekért lásd: Bejövő hívás . |
CallAutomationEventProcessor | CallAutomationEventProcessor konvergens módszer a visszahívási események (például CallConnected ) kezelésére. Ez egyszerűbben biztosítja a hívás és az események közötti korrelációt. Lásd az alábbi példát a használatára vonatkozóan. |
Példák
CallAutomationClient inicializálása
import { CallAutomationClient } from '@azure/communication-call-automation';
import { DefaultAzureCredential } from "@azure/identity";
// Your unique Azure Communication service endpoint
const credential = new DefaultAzureCredential();
const endpointUrl = '<ENDPOINT>'
const callAutomationClient = new CallAutomationClient(endpointUrl, credential);
Létrehozás hívás
import { CommunicationUserIdentifier } from "@azure/communication-common";
import { CallAutomationClient, CallInvite } from '@azure/communication-call-automation';
// target endpoint for ACS User
const target: CommunicationUserIdentifier = {
communicationUserId:
"8:acs:...",
}
// make invitation
const callInvite: CallInvite = {
targetParticipant:target
};
// callback url to recieve callback events
const callbackUrl = "https://<MY-EVENT-HANDLER-URL>/events";
// send out the invitation, creating call
const response = callAutomationClient.createCall(callInvite, callbackUrl);
Média lejátszása
// from callconnection of response above, play media of media file
const myFile: FileSource = { uri: "https://<FILE-SOURCE>/<SOME-FILE>.wav" }
const response = callConnection.getCallMedia().playToAll(myFile);
Mid-Connection visszahívási események kezelése
A kapcsolatközi események egyszerű kezeléséhez a Call Automation SDK-jával egyszerűbben kezelhetők ezek az események. Tekintse meg a CallAutomationEventProcessort. Ez egyszerűbben biztosítja a hívás és az események közötti korrelációt.
const eventProcessor: CallAutomationEventProcessor = await callAutomationClient.getEventProcessor();
eventProcessor.processEvents(incomingEvent);
Az EventProcessor működéséhez ProcessEvents szükséges. Miután az EventProcessor felhasználta az eseményt, megkezdheti a funkció használatát.
Lásd alább például azt, hogy hol kezdeményez hívást a CreateCall használatával, és várja meg a hívás CallConnected eseményét.
// send out the invitation, creating call
const callInvite = new CallInvite(target);
const callbackUrl = "https://<MY-EVENT-HANDLER-URL>/events";
const callResult = callAutomationClient.createCall(callInvite, callbackUrl);
// giving 30 seconds timeout for waiting on createCall's event, 'CallConnected'
const createCallEventResult : CreateCallEventResult = await callResult.waitForEventProcessor(undefined, 30000);
// once this returns, call is now established!
// check if it was successful
if (createCallEventResult.isSuccess)
{
// work with callConnected event
const callConnectedEvent : CallConnected = createCallEventResult.successResult!;
}
Hibaelhárítás
Következő lépések
- Hívásautomatizálás áttekintése
- Bejövő hívás fogalma
- Ügyfél-interakciós munkafolyamat létrehozása a Hívásautomatizálás használatával
- Bejövő telefonos hívások átirányítása a Hívásautomatizálással
- Rövid útmutató: Lejátszási művelet
- Rövid útmutató: Művelet felismerése
- További információ a hívásfelvételről a Azure Communication Services
- Hívások rögzítése és letöltése az Event Grid használatával
Közreműködés
Ha hozzá szeretne járulni ehhez a kódtárhoz, olvassa el a közreműködői útmutatót , amelyből többet is megtudhat a kód összeállításáról és teszteléséről.
Azure SDK for JavaScript
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: