Azure Communication Call Automation-clientbibliotheek voor JavaScript - versie 1.2.0
Dit pakket bevat een JavaScript-SDK voor Azure Communication Call Automation. Oproepautomatisering biedt ontwikkelaars de mogelijkheid om op servers gebaseerde, intelligente oproepwerkstromen en oproepopnamen te bouwen voor spraak- en PSTN-kanalen.
Overzicht van Gespreksautomatisering | Productdocumentatie
Aan de slag
Vereisten
- Een Azure-abonnement.
- Een bestaande Communication Services-resource. Als u de resource moet maken, kunt u azure portal, de Azure PowerShell of de Azure CLI gebruiken.
Installeren
npm install @azure/communication-call-automation
Browserondersteuning
JavaScript-bundel
Als u deze clientbibliotheek in de browser wilt gebruiken, moet u eerst een bundler gebruiken. Raadpleeg onze bundeldocumentatie voor meer informatie over hoe u dit doet.
Belangrijkste concepten
Naam | Beschrijving |
---|---|
CallAutomationClient | CallAutomationClient is de primaire interface voor ontwikkelaars die deze clientbibliotheek gebruiken. Het kan worden gebruikt om aanroepen createCall door of answerCall te initiƫren. |
CallConnection | CallConnection vertegenwoordigt een doorlopende oproep. Zodra de aanroep tot stand is gebracht met createCall of answerCall , kunnen verdere acties voor de aanroep worden uitgevoerd, zoals transfer of addParticipant . |
CallMedia | CallMedia kan worden gebruikt om mediagerelateerde acties uit te voeren, zoals play , om een mediabestand af te spelen. Dit kan worden opgehaald uit tot stand gebrachte CallConnection . |
Oproeprecording | CallRecording kan worden gebruikt voor het uitvoeren van opnamegerelateerde acties, zoals startRecording . Dit kan worden opgehaald uit CallAutomationClient . |
Callback-gebeurtenissen | Callback-gebeurtenissen zijn gebeurtenissen die worden teruggestuurd tijdens de duur van de oproep. Het geeft informatie en status van de aanroep, zoals CallConnected . CallbackUrl moet worden opgegeven tijdens createCall en answerCall , en callback-gebeurtenissen worden verzonden naar deze URL. U kunt gebruiken callAutomationEventParser om deze gebeurtenissen te parseren wanneer deze binnenkomen. |
Gebeurtenis binnenkomende oproep | Wanneer een binnenkomende oproep plaatsvindt (die kan worden beantwoord met answerCall ), wordt de eventgrid-gebeurtenis voor binnenkomende oproep verzonden. Dit verschilt van callback-gebeurtenissen hierboven en moet worden ingesteld op Azure Portal. Zie Inkomende oproep voor meer informatie. |
CallAutomationEventProcessor | CallAutomationEventProcessor is een convinient manier om callbackgebeurtenissen te verwerken, zoals CallConnected . Dit zorgt ervoor dat de correlatie tussen aanroep en gebeurtenissen eenvoudiger wordt. Zie het onderstaande voorbeeld voor het gebruik. |
Voorbeelden
CallAutomationClient initialiseren
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);
Creatie bellen
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);
Media afspelen
// 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);
Callback-gebeurtenissen Mid-Connection afhandelen
De SDK van Aanroepautomatisering biedt een eenvoudigere manier om deze gebeurtenissen af te handelen om gebeurtenissen in het midden van de verbinding af te handelen. Bekijk CallAutomationEventProcessor. Dit zorgt ervoor dat de correlatie tussen aanroep en gebeurtenissen eenvoudiger wordt.
const eventProcessor: CallAutomationEventProcessor = await callAutomationClient.getEventProcessor();
eventProcessor.processEvents(incomingEvent);
EventProcessor werkt alleen met ProcessEvents. Nadat de gebeurtenis is verbruikt door EventProcessor, kunt u de functie ervan gaan gebruiken.
Zie hieronder bijvoorbeeld: waar u een oproep maakt met CreateCall en wacht op de gebeurtenis CallConnected van het gesprek.
// 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!;
}
Problemen oplossen
Volgende stappen
- Overzicht van oproepautomatisering
- Concept van binnenkomende oproep
- Een werkstroom voor klantinteractie bouwen met behulp van Gespreksautomatisering
- Inkomende telefoongesprekken omleiden met Gespreksautomatisering
- Snelstart: Actie afspelen
- Quickstart: Actie herkennen
- Lees meer over het opnemen van gesprekken in Azure Communication Services
- Oproepen opnemen en downloaden met Event Grid
Bijdragen
Als u een bijdrage wilt leveren aan deze bibliotheek, leest u de handleiding voor bijdragen voor meer informatie over het bouwen en testen van de code.
Azure SDK for JavaScript