Megosztás a következőn keresztül:


Azure Communication Call Automation JavaScript-ügyféloldali kódtár – 1.5.0-s verzió

Ez a csomag egy JavaScript SDK-t tartalmaz az Azure Communication Call Automationhez. A Call Automation 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.

Call Automation | termékdokumentációjának áttekintése

Kezdetekhez

Előfeltételek

Telepítése

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 módjáról további információt a csomagküldő dokumentációbantalál.

Főbb fogalmak

Név Leírás
CallAutomationClient CallAutomationClient az ügyfélkódtárat használó fejlesztők elsődleges felülete. Segítségével hívásokat kezdeményezhet createCall vagy answerCall.
Hívás CallConnection egy folyamatban lévő hívást jelöl. Ha a hívás létrejött createCall vagy answerCall, 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. Ez lekérhető a létrehozott CallConnection.
Hívás rögzítése CallRecording használható a kapcsolódó műveletek, például a startRecordingrögzítésére. Ez CallAutomationClient- ból 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 meg kell adni a és és createCallanswerCalla lehetőséget, és a visszahívási események erre az URL-címre lesznek elküldve. Ezeket callAutomationEventParser az eseményeket elemezheti, amikor megérkezik.
Bejövő hívás esemény Bejövő hívás esetén (amely a következővel answerCallválaszolható), a bejövő hívás eventgrid eseménye lesz elküldve. Ez eltér a fenti visszahívási eseményektől, és a Azure Portalon kell beállítani. A részletekért lásd a Bejövő hívást .

Példák

A CallAutomationClient inicializálása

import { DefaultAzureCredential } from "@azure/identity";
import { CallAutomationClient } from "@azure/communication-call-automation";

// Your unique Azure Communication service endpoint
const credential = new DefaultAzureCredential();
const endpointUrl = "<ENDPOINT>";
const callAutomationClient = new CallAutomationClient(endpointUrl, credential);

Hívás létrehozása

import { DefaultAzureCredential } from "@azure/identity";
import { CallAutomationClient } from "@azure/communication-call-automation";

// Your unique Azure Communication service endpoint
const credential = new DefaultAzureCredential();
const endpointUrl = "<ENDPOINT>";
const callAutomationClient = new CallAutomationClient(endpointUrl, credential);

// target endpoint for ACS User
const target = {
  communicationUserId: "8:acs:...",
};

// make invitation
const callInvite = {
  targetParticipant: target,
};

// callback url to receive callback events
const callbackUrl = "https://<MY-EVENT-HANDLER-URL>/events";

// send out the invitation, creating call
const response = await callAutomationClient.createCall(callInvite, callbackUrl);

Média lejátszása

import { DefaultAzureCredential } from "@azure/identity";
import { CallAutomationClient, FileSource } from "@azure/communication-call-automation";

// Your unique Azure Communication service endpoint
const credential = new DefaultAzureCredential();
const endpointUrl = "<ENDPOINT>";
const callAutomationClient = new CallAutomationClient(endpointUrl, credential);

const target = { communicationUserId: "8:acs:..." };
const callInvite = { targetParticipant: target };
const callbackUrl = "https://<MY-EVENT-HANDLER-URL>/events";

const createCallResult = await callAutomationClient.createCall(callInvite, callbackUrl);
const callConnection = createCallResult.callConnection;
// from callconnection of response above, play media of media file
const myFile: FileSource = { url: "https://<FILE-SOURCE>/<SOME-FILE>.wav", kind: "fileSource" };
const response = await callConnection.getCallMedia().playToAll([myFile]);

Hibaelhárítás

Fakitermelés

A naplózás engedélyezése segíthet a hibákról szóló hasznos információk feltárásában. A HTTP-kérések és válaszok naplójának megtekintéséhez állítsa a AZURE_LOG_LEVEL környezeti változót info. Másik lehetőségként a naplózás futásidőben is engedélyezhető a setLogLevel meghívásával a @azure/logger:

import { setLogLevel } from "@azure/logger";

setLogLevel("info");

Következő lépések

Hozzájárulá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.