Twilio PHP 网络挂钩?
Twilio PHP Web Hooks?
我在使用 Studio 的 Twilio 中有一个 webhook,大部分工作正常,直到从 Web 服务器获取响应。
查看 Twilio 日志,我可以看到返回的响应如下:
"widgets": {
"ReplyWithJobDetail": {},
"AskServer": {
"status_code": 200,
"content_type": "text/xml",
"body": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><Response><Message>Thank you for accepting this position.<From>From=MCC</From><Body>Body=Here is the body content</Body></Message></Response>"
},
但我在 Twilio 中收到一条错误消息:
Body:
Failure sending message: Message body is required.
这很奇怪,因为尸体显然在那里。
我的网络钩子是:
function trigger_receive_sms($from) {
header ('Content-Type:text/xml');
echo ('<?xml version="1.0" encoding="UTF-8"?>');
echo ('<Response>');
echo ('<Message>Thank you for accepting this position.');
echo ('<From>From=MCC</From>');
echo ('<Body>Body=Here is the body content</Body>');
echo ('</Message>');
echo ('</Response>');
die();
}
这是在 WordPress 中,还安装了 Twilio.Core 插件。
我已经尝试让这个工作 4 天了...我哪里出错了?
如果我没有正确回答您的问题,我深表歉意。我不清楚您的设置如何、您的 Studio 流程包含什么、WordPress 有什么等等...
这是响应传入消息的 TwiML:
<Response>
<Message>Hello from Twilio!</Message>
</Response>
不需要From
,因为它会从你的Twilio号码发送,消息的body
就在<Messsage>
标签之间,所以还有不需要 <Body>
个标签。
因此,尝试使用:
function trigger_receive_sms($from) {
header ('Content-Type:text/xml');
echo ('<?xml version="1.0" encoding="UTF-8"?>');
echo ('<Response>');
echo ('<Message>Thank you for accepting this position.');
echo ('</Message>');
echo ('</Response>');
die();
}
告诉我们进展如何。如果我说错了,请详细说明,我会尽量理解的。
原来我只需要将输出转换为 JSON...
是否使用以下内容:
function trigger_receive_sms($from) {
header ('Content-Type:application/json');
$message = '<?xml version="1.0" encoding="UTF-8"?>';
$message .= '<Response>';
$message .= '<Message>Thank you for accepting this position.';
$message .= '</Message>';
$message .= '</Response>';
$simplexml = simplexml_load_string($message);
$json = json_encode($simplexml);
return $json;
die();
}
我在使用 Studio 的 Twilio 中有一个 webhook,大部分工作正常,直到从 Web 服务器获取响应。
查看 Twilio 日志,我可以看到返回的响应如下:
"widgets": {
"ReplyWithJobDetail": {},
"AskServer": {
"status_code": 200,
"content_type": "text/xml",
"body": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><Response><Message>Thank you for accepting this position.<From>From=MCC</From><Body>Body=Here is the body content</Body></Message></Response>"
},
但我在 Twilio 中收到一条错误消息:
Body:
Failure sending message: Message body is required.
这很奇怪,因为尸体显然在那里。
我的网络钩子是:
function trigger_receive_sms($from) {
header ('Content-Type:text/xml');
echo ('<?xml version="1.0" encoding="UTF-8"?>');
echo ('<Response>');
echo ('<Message>Thank you for accepting this position.');
echo ('<From>From=MCC</From>');
echo ('<Body>Body=Here is the body content</Body>');
echo ('</Message>');
echo ('</Response>');
die();
}
这是在 WordPress 中,还安装了 Twilio.Core 插件。
我已经尝试让这个工作 4 天了...我哪里出错了?
如果我没有正确回答您的问题,我深表歉意。我不清楚您的设置如何、您的 Studio 流程包含什么、WordPress 有什么等等...
这是响应传入消息的 TwiML:
<Response>
<Message>Hello from Twilio!</Message>
</Response>
不需要From
,因为它会从你的Twilio号码发送,消息的body
就在<Messsage>
标签之间,所以还有不需要 <Body>
个标签。
因此,尝试使用:
function trigger_receive_sms($from) {
header ('Content-Type:text/xml');
echo ('<?xml version="1.0" encoding="UTF-8"?>');
echo ('<Response>');
echo ('<Message>Thank you for accepting this position.');
echo ('</Message>');
echo ('</Response>');
die();
}
告诉我们进展如何。如果我说错了,请详细说明,我会尽量理解的。
原来我只需要将输出转换为 JSON...
是否使用以下内容:
function trigger_receive_sms($from) {
header ('Content-Type:application/json');
$message = '<?xml version="1.0" encoding="UTF-8"?>';
$message .= '<Response>';
$message .= '<Message>Thank you for accepting this position.';
$message .= '</Message>';
$message .= '</Response>';
$simplexml = simplexml_load_string($message);
$json = json_encode($simplexml);
return $json;
die();
}