跳转到主要内容

Microsoft Azure Communication Call Automation Python客户端库

项目描述

Azure Communication Call Automation Python客户端库

此包包含一个用于Azure Communication Call Automation的Python SDK。Call Automation为开发人员提供了构建基于服务器、智能呼叫工作流程和语音及PSTN通道的呼叫记录的能力。

呼叫自动化概述 | 产品文档

免责声明

Azure SDK Python包对Python 2.7的支持已于2022年1月1日结束。有关更多信息及疑问,请参阅https://github.com/Azure/azure-sdk-for-python/issues/20691

入门

先决条件

  • 使用此包需要Python 3.7或更高版本。
  • 您需要Azure订阅才能使用此包。
  • 已部署的Communication Services资源。您可以使用Azure PortalAzure PowerShell来设置它。

安装

安装Azure Communication Service Call Automation SDK。

pip install azure-communication-callautomation

关键概念

名称 描述
CallAutomationClient CallAutomationClient 是开发者使用此客户端库的主要接口。它可以用于通过 createCallanswerCall 启动通话。它还可以用于执行录音等操作,例如 startRecording
CallConnectionClient CallConnectionClient 表示一个正在进行的通话。一旦通过 createCallanswerCall 建立了通话,就可以为通话执行进一步的操作,例如 transferplay_media
回调事件 回调事件是在通话过程中发送的事件。它提供了通话的信息和状态,例如 CallConnected。在 createCallanswerCall 时必须提供 CallbackUrl,回调事件将发送到该 URL。
来电事件 当发生来电(可以使用 answerCall 进行应答)时,会发送来电事件网格事件。这与上面的回调事件不同,应在 Azure 门户中进行设置。有关详细信息,请参阅 来电

示例

初始化 CallAutomationClient

from azure.communication.callautomation import (CallAutomationClient)

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

创建通话

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(
    target_participant=user,
    callback_url=callback_uri
)

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

播放媒体

# 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_to_all(my_file)

故障排除

下一步

提供反馈

如果您遇到任何错误或有任何建议,请在项目的 问题 部分提交问题

贡献

此项目欢迎贡献和建议。大多数贡献都需要您同意贡献者许可协议(CLA),声明您有权利并且实际上确实授予我们使用您的贡献的权利。有关详细信息,请访问 https://cla.microsoft.com

当您提交拉取请求时,CLA-bot 将自动确定您是否需要提供 CLA,并相应地装饰 PR(例如,标签、注释)。只需遵循机器人提供的说明即可。您只需在整个使用我们的 CLA 的所有存储库中这样做一次。

此项目采用了 [Microsoft 开源行为准则][code_of_conduct]。有关更多信息,请参阅行为准则常见问题解答或通过 opencode@microsoft.com 联系我们以获取任何其他问题或评论。

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分布

azure-communication-callautomation-1.2.0.tar.gz (111.3 kB 查看散列值)

上传时间

构建分布

azure_communication_callautomation-1.2.0-py3-none-any.whl (120.0 kB 查看散列值)

上传时间 Python 3

由以下支持