我如何知道是否接听电话?
对于StatusCallback,我可以设置以下值:
当Twilio向我发送状态时,我看不到“已回答”的值,我看到以下内容:
我想知道为什么没有返回状态:
虽然我将“已回答”设置为StatusCallback的值之一。
令我困惑的是Twilio发送“已完成”,无论是否接听电话。
我需要一个明确的状态来接听电话。如果未接听电话,那么我需要稍后重试或围绕它建立业务逻辑。
当电话未接听时,我得到“未接听”。
当接听电话时,我会“完成”,但“完成”并不一定意味着假设电话进入语音信箱或其他地方,电话实际已经得到了解答。
另外,我还在呼叫请求中设置“IfMachine”参数。虽然我知道这是一个实验性功能,但我的呼叫状态为“已完成”,因为在这种情况下,我的期望是“未得到回答”。
我如何知道电话是否真的得到了解答?
答案 0 :(得分:-1)
只想在这里澄清一些事情。您提到使用需要URL的StatusCallback
。 answered
值实际上是使用StatusCallbackEvent
设置的,因为您可以看到here in the docs。
我不知道您使用的是哪种语言,但Python中的示例(您可以在该文档页面上找到其他语言):
# Your Account Sid and Auth Token from twilio.com/user/account
account_sid = "YOUR_ACCOUNT_SID"
auth_token = "YOUR_AUTH_TOKEN"
client = TwilioRestClient(account_sid, auth_token)
call = client.calls.create(
url="http://demo.twilio.com/docs/voice.xml",
to="+14155551212",
from_="+18668675309",
method="GET",
status_callback="https://www.myapp.com/events",
status_callback_method="POST",
status_events=["initiated", "ringing", "answered", "completed"],
)
print call.sid
关于使用IfMachine
的最后说明。目前,我们实际上建议您使用Twilio的<Gather>
动词来检测人是否按照in this question here解释。
希望这有帮助!