Dela via


Azure Communication Call Automation-klientbibliotek för Python – version 1.1.0

Det här paketet innehåller en Python SDK för Azure Communication Call Automation. Samtalsautomatisering ger utvecklare möjlighet att skapa serverbaserade, intelligenta samtalsarbetsflöden och samtalsinspelning för röst- och PSTN-kanaler.

Översikt över samtalsautomatisering | Produktdokumentation

Friskrivning

Stöd för Azure SDK Python-paket för Python 2.7 upphörde den 1 januari 2022. Mer information och frågor finns i https://github.com/Azure/azure-sdk-for-python/issues/20691

Komma igång

Förutsättningar

  • Python 3.7 eller senare krävs för att använda det här paketet.
  • Du behöver en Azure-prenumeration för att använda det här paketet.
  • En distribuerad Communication Services-resurs. Du kan använda Azure-portalen eller Azure PowerShell för att konfigurera den.

Installation

Installera Azure Communication Service Call Automation SDK.

pip install azure-communication-callautomation

Viktiga begrepp

Name Beskrivning
CallAutomationClient CallAutomationClient är det primära gränssnittet för utvecklare som använder det här klientbiblioteket. Den kan användas för att initiera anrop av createCall eller answerCall. Den kan också användas för att utföra inspelningsåtgärder som startRecording
CallConnectionClient CallConnectionClient representerar ett pågående samtal. När anropet har upprättats med createCall eller answerCallkan ytterligare åtgärder utföras för anropet, till exempel transfer eller play_media.
Motringningshändelser Motringningshändelser är händelser som skickas tillbaka under samtalets varaktighet. Den ger information och tillstånd för anropet, till exempel CallConnected. CallbackUrl måste anges under createCall och answerCall, och återanropshändelser skickas till den här URL:en.
Inkommande samtalshändelse När inkommande samtal inträffar (som kan besvaras med answerCall) skickas eventgrid-händelsen för inkommande samtal. Detta skiljer sig från motringningshändelser ovan och bör konfigureras på Azure Portal. Mer information finns i Inkommande samtal .

Exempel

Initiera CallAutomationClient

from azure.communication.callautomation import (CallAutomationClient)

# Your unique Azure Communication service endpoint
endpoint_url = '<ENDPOINT>'
client = CallAutomationClient.from_connection_string(endpoint_url)

Skapa samtal

from azure.communication.callautomation import (
    CallAutomationClient,
    CommunicationUserIdentifier
)

# target endpoint for ACS User
user = CommunicationUserIdentifier("8:acs:...")

# callback url to receive callback events
callback_url = "https://<MY-EVENT-HANDLER-URL>/events"

# send out the invitation, creating call
result = client.create_call(user, callback_url)

# this id can be used to do further actions in the call
call_connection_id = result.call_connection_id

Spela upp media

# using call connection id, get call connection
call_connection = client.get_call_connection(call_connection_id)

# from callconnection of result above, play media to all participants
my_file = FileSource(url="https://<FILE-SOURCE>/<SOME-FILE>.wav")
call_connection.play_media(my_file)

Felsökning

Nästa steg

Ge feedback

Om du stöter på buggar eller har förslag kan du skicka in ett problem i avsnittet Problem i projektet

Bidra

Det här projektet välkomnar bidrag och förslag. Merparten av bidragen kräver att du godkänner ett licensavtal för bidrag, där du deklarerar att du har behörighet att bevilja oss rättigheten att använda ditt bidrag, och att du dessutom uttryckligen gör så. Mer information finns på https://cla.microsoft.com.

När du skickar en pull-förfrågan avgör en CLA-robot automatiskt om du måste tillhandahålla ett licensavtal för bidrag med lämplig PR (t.ex. etikett eller kommentar). Följ bara robotens anvisningar. Du behöver bara göra detta en gång för alla repor som använder vårt licensavtal för bidrag.

Det här projektet har antagit [Microsofts uppförandekod för öppen källkod][code_of_conduct]. Du hittar mer information i Vanliga frågor om uppförandekod eller kontakta opencode@microsoft.com för ytterligare frågor eller kommentarer.