私の携帯電話から私のTwilio番号に電話したい、Twilioは私の番号を認識し、その電話を拒否してから私に電話をかけます。ここでは、コードは次のとおりです。TwilioでPythonを使用するにはどうすればreject()とコールバックを実装できますか?
@application.route("/test", methods=['GET', 'POST'])
def test():
whitelist = ['81808730xxxx', '44753810xxxx', '+44753810xxxx', '+44792834xxxx', '44792834xxxx']
call_from = request.values.get('From', 'None')
if call_from in whitelist:
# "<Response><Reject /></Response>"
resp = twilio.twiml.Response()
resp.reject()
time.sleep(10)
account_sid = "account_sid"
auth_token = "account_auth_token"
client = TwilioRestClient(account_sid, auth_token)
call = client.calls.create(to=call_from, from_="+1646480xxxx", url="https://zshizuka.herokuapp.com/gather")
print call.sid
else:
resp = twilio.twiml.Response()
call_to = "+44792834xxxx"
resp.dial(call_to)
#return json.dumps({'success':True}), 200
return str(resp)
これは恐ろしい応答を生成します:「我々はシステムエラーがさよならを発生していて申し訳ありません。」。
ただし、最初の呼び出し後に番号をダイヤルしてハングアップすると完全に機能します。だから私は問題が拒否動詞であると仮定しています。あなたが見ることができるように、私はtwimlの有無にかかわらず試しました。
私はビジー信号を取得したい、拒否されたコール(携帯電話の請求書に費用はかかりません)、そしてコールバックを取得したいと思います。
助けに感謝します。
ありがとう、私はあなたのコメントをいただきありがとうございます。 time.sleep()とは対照的に、私はスケジューラーを試してみます。 – user1903663