Partager via


Bibliothèque cliente Azure Communication Call Automation pour JavaScript - version 1.5.0

Ce package contient un Kit de développement logiciel (SDK) JavaScript pour Azure Communication Call Automation. Call Automation fournit aux développeurs la possibilité de créer des flux de travail d’appels intelligents basés sur le serveur et d’enregistrer des appels pour les canaux vocaux et RTC.

Vue d’ensemble de la documentation sur le produit | Automation des appels

Commencer

Conditions préalables

  • Un abonnement Azure .
  • Ressource Communication Services existante. Si vous devez créer la ressource, vous pouvez utiliser le portail Azure , le Azure PowerShellou leAzure CLI .

Installation

npm install @azure/communication-call-automation

Prise en charge du navigateur

JavaScript groupé

Pour utiliser cette bibliothèque cliente dans le navigateur, vous devez d’abord utiliser un bundler. Pour plus d’informations sur la procédure à suivre, reportez-vous à notre documentation de regroupement .

Concepts clés

Nom Descriptif
CallAutomationClient CallAutomationClient est l’interface principale pour les développeurs qui utilisent cette bibliothèque cliente. Il peut être utilisé pour lancer des appels par createCall ou answerCall.
CallConnection CallConnection représente un appel en cours. Une fois l’appel établi avec createCall ou answerCall, d’autres actions peuvent être effectuées pour l’appel, telles que transfer ou addParticipant.
CallMedia CallMedia pouvez être utilisé pour effectuer des actions liées aux médias, telles que play, pour lire le fichier multimédia. Cette opération peut être récupérée à partir de CallConnectionétablies.
Enregistrement d’appels CallRecording pouvez être utilisé pour effectuer des actions associées à l’enregistrement, telles que startRecording. Cette opération peut être récupérée à partir de CallAutomationClient.
Événements de rappel Les événements de rappel sont des événements renvoyés pendant la durée de l’appel. Il donne des informations et l’état de l’appel, tels que CallConnected. CallbackUrl doivent être fournis pendant createCall et answerCall, et les événements de rappel seront envoyés à cette URL. Vous pouvez l’utiliser callAutomationEventParser pour analyser ces événements lorsqu’ils arrivent.
Événement d’appel entrant Lorsqu’un appel entrant se produit (auquel on peut répondre avec answerCall), l’événement eventgrid d’appel entrant est envoyé. Ceci est différent des événements de rappel ci-dessus et doit être configuré sur le portail Azure. Voir Appel entrant pour plus de détails.

Exemples

Initialiser CallAutomationClient

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);

Créer un appel

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);

Lire le média

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]);

Dépannage

Exploitation forestière

L’activation de la journalisation peut vous aider à mieux comprendre les échecs. Pour avoir un journal des requêtes et réponses HTTP, définissez la variable d’environnement AZURE_LOG_LEVEL sur info. Vous pouvez également activer la journalisation au moment de l’exécution en appelant setLogLevel dans @azure/logger :

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

setLogLevel("info");

Étapes suivantes

Contribuant

Si vous souhaitez contribuer à cette bibliothèque, lisez le guide de contribution pour en savoir plus sur la génération et le test du code.