Twilio拒绝使用TWIML使用PHP的Webhooks使用PHP

问题描述:

背景:使用webhooks将传入的语音呼叫引导到我们的应用程序处理器,该处理器将呼叫者连接到可用的代表手机。Twilio拒绝使用TWIML使用PHP的Webhooks使用PHP

该应用程序的第一部分检查来电来电电话号码是否在内部黑名单(忽略robo拨号程序等) - 如果有匹配,我们的应用程序将拒绝电话,所以我们不会得到计费。这种排斥正在做一个呼应拒绝TWIML动词如下:

echo '<Response><Reject reason="rejected"/></Response>'; 
exit; 

的代码工作正常,发送XML响应并退出PHP脚本,但是,来电者没有得到一个“忙”信号或“不在服务中”的消息 - 相反,它只是在沉默中挂起。

此外,Twilio webhooks处理程序会每隔大约2秒持续触发CallStatus = no-answer呼叫,直到呼叫方挂机。

任何想法,我做错了什么?

我确定问题是xml响应的格式被回显出来。事实证明,XML响应的格式需要保存格式和空白,XML的等等(???):

这不起作用(twilio将在沉默中挂起,直到呼叫方挂断):

echo '<Response><Reject reason="rejected"/></Response>'; 
exit; 

这个工作(呼叫者将收到忙音信号):

echo '<?xml version="1.0" encoding="UTF-8"?> 
<Response> 
    <Reject reason="busy" /> 
</Response>'; 
exit;