Nexmo API 文本转语音有变化吗?

Nexmo API change on Text to Speech?

很长一段时间以来,我一直在使用以下方法从我的应用程序发送 text-to-speech 警报。

curl 'https://api-us-1.nexmo.com/tts/json' \
-d api_key=****** \
-d api_secret=****** \
-d to=0035193xxxxxxx \
-d from=0035193xxxxxxx \
--data-urlencode 'text=Alert! Check Something... ' \
-d repeat=2 \
-d voice="male" \

最近该服务已停止为某些运营商提供服务。
在浏览 Nexmo 文档时,我看不到 /tts/json API 记录。

有人知道发生了什么吗?
/tts/json API 还能用吗?
/v1/calls API 对我的需求来说绝对是矫枉过正了。

不幸的是 API 很久以前就已经落幕了,取而代之的是更新的语音 API。

https://developer.nexmo.com/voice/voice-api/code-snippets/make-an-outbound-call-with-ncco 将是语音 API 最接近的替代方案。最大的变化是切换到使用 JWT 进行身份验证,而不是 key/secret 使用较旧的 API 身份验证。

如果您安装了 Nexmo CLI,您可以生成 JWT 作为脚本的一部分。以下应该有效:

#!/bin/bash
#
# Send voice message to a user
#
# ./script.sh <number to call> <vonage number> "<message to speak>"

PATH_TO_PRIVATE_KEY=<path to private key>
VONAGE_APPLICATION_ID=<application ID>
TO_NUMBER=
VONAGE_NUMBER=
MESSAGE=
JWT=$(nexmo jwt:generate $PATH_TO_PRIVATE_KEY application_id=$VONAGE_APPLICATION_ID)

curl -X POST https://api.nexmo.com/v1/calls\
    -H "Authorization: Bearer "$JWT\
    -H "Content-Type: application/json"\
    -d "{\"to\":[{\"type\": \"phone\",\"number\": \"$TO_NUMBER\"}],
        \"from\": {\"type\": \"phone\",\"number\": \"$VONAGE_NUMBER\"},
        \"ncco\": [
          {
            \"action\": \"talk\",
            \"text\": \"$MESSAGE\"
          }
        ]}"