在这里从 Twilio 抢劫。
感谢您在尝试记录 Twilio Say Verb(又名文本到语音)的输出时提供更多色彩。如果您只是在寻找一些高质量的计算机语音录音,可以使用一些更简单的选项,例如 TTS-API 或 iSpeech。
但是,如果您正在寻找一种快速的技巧来准确地听到您的用户从您的 Say 动词中无损听到的内容,这里有一种利用 the parameter Record=true 的方法。
第 1 步
创建一个 TwiML 文档,其中包含您要捕获的文本的 <Say> 动词。
<Response>
<Say voice="alice">I am totally going to capture this text in a robot voice.</Say>
</Response>
确保将此文档存放在可公开访问的地方(例如a twimlbin like this)。
第 2 步
创建一个端点以捕获 Twilio 将为您提供的 RecordingUrl。这是一个记录接收到的 RecordingUrl 的 Python Flask app 的快速示例。
from flask import Flask
from flask import request
app = Flask(__name__)
@app.route('/recordingHandler', methods=['POST'])
def recording_handler():
if request.form.get('RecordingUrl'):
app.logger.info("New recording: %s" % request.form['RecordingUrl'])
return "Recording Url logged."
if __name__ == "__main__":
app.debug = True
app.run(host='0.0.0.0', port=5000)
第 3 步
创建对执行该 TwiML 文档集以记录的电话的呼叫。这是一个 Python 示例。
from twilio.rest import TwilioRestClient
ACCOUNT_SID = "ACxxxxxxxxxx"
AUTH_TOKEN = "yyyyyyyyyyyyy"
client = TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN)
client.calls.create(from_="[INSERT TWILIO PHONE NUMBER]",
to="[INSERT YOUR PHONE NUMBER]",
url="[LINK TO TWIML DOCUMENT IN STEP 1]",
status_callback="[LINK TO RECORDING HANDLER IN STEP 2]")
第 4 步
接听来电,收听 TTS 并让来电自行挂断。然后检查您在第 2 步中创建的处理程序的输出,以获取指向清晰 mp3 的链接。
显然,要获得您正在寻找的东西,这有点麻烦,而且合成语音的方法比使用 Twilio 更容易、更便宜且保真度更高。但是,对creating a call using the Twilio REST API时的可选参数进行一些创造性的争论,绝对可以生成您要查找的文件。
希望这会有所帮助!