将音频文件播放到 Cisco WebEx Extension

问题描述 投票:0回答:1

我正在转换用 C# 创建的应用程序,该应用程序使用 Google 文本转语音 (gTTS) 通过 PA 系统播放消息。电话系统正在迁移到基于云的 Cisco WebEx 架构。我正在尝试使用 WebEx API 来完成此任务,但我不知道如何执行此操作。我需要做的是拨打分机电话,当收件人(在本例中为 PA 系统)接听时,播放声音,然后挂断。仅使用 WebEx API 端点是否可以实现这一点?

我尝试使用https://webexapis.com/v1/telephony/calls/actions/playsound/invoke,但似乎这可能不存在,并且我在其上找到的文档不正确。以下是我在 C# 应用程序之外尝试使用此端点的一些示例 Python 代码。

def play_wav_to_extension(extension, wav_file_url):
    url = f"{WEBEX_BASE_URL}/telephony/calls/actions/playsound/invoke"

    headers = {
        "Authorization": f"Bearer {ACCESS_TOKEN}",
        "Content-Type": "application/json"
    }

    payload = {
        "extension": extension,
        "soundUrl": wav_file_url
    }

    response = requests.post(url, headers=headers, data=json.dumps(payload))

我还尝试执行 https://webexapis.com/v1/telephony/calls/dial 来拨打电话并附加playbackUrl作为通过API传递的数据的一部分,但也没有成功。这是我在应用程序之外尝试过的一些示例 Python 代码。

def initiate_call(destination, audio_url):
    url = f"{base_url}/telephony/calls/dial"
    headers = {
        "Authorization": f"Bearer {access_token}",
        "Content-Type": "application/json"
    }
    data = {
        "destination": destination,
        "mediaType": "AUDIO",
        "playbackUrl": audio_url  
    }

    response = requests.post(url, headers=headers, json=data)
    response.raise_for_status()

    call_id = response.json().get("callId")
    print(f"Call initiated. Call ID: {call_id}")
    return call_id

任何有关我如何做到这一点的帮助将不胜感激。如果无法单独使用 WebEx API 来完成此任务,但有第三方替代方案(例如 Twilio),我愿意接受建议。

voip cisco webex
1个回答
0
投票

与 Cisco WebEx 技术支持合作后,我们认为无法使用此 API 或任何 API 以这种方式将音频注入呼叫中。

© www.soinside.com 2019 - 2024. All rights reserved.