前言说我是完全陌生的。
我在 amazon S3 上"创建"了一个基本账户来建立一个静态网站,以便我可以创建 webhook。基本思想是将短信发送到电话号码并将这些消息转发到电子邮件地址。
Twilio 给我的 webhook 代码如下:
<?php
/**
* This section ensures that Twilio gets a response.
*/
header('Content-type: text/xml');
echo '<?xml version="1.0" encoding="UTF-8"?>';
echo '<Response></Response>'; //Place the desired response (if any) here
/**
* This section actually sends the email.
*/
/* Your email address */
$to = "your-email@example.com";
$subject = "Message from {$_REQUEST['From']} at {$_REQUEST['To']}";
$message = "You have received a message from {$_REQUEST['From']}. Body:
{$_REQUEST['Body']}";
$headers = "From: webmaster@example.com"; // Who should it come from?
mail($to, $subject, $message, $headers);
我在$to和$headers的引号之间添加了我的电子邮件地址 - "来自行。然后,我将我在文本编辑中制作的这个文件保存到一个.php中,并将其上传到 S3 网站。我确保它是公开的。
我将自动生成的 URL 放入 twilio"消息进来"网络钩子字段中。
但它不起作用。知道为什么吗?是 S3 静态网站不适合这样做,还是我上传的文件错误?
您可以从Web浏览器或像curl这样的http实用程序访问URL? 第一步是确保您的网站在 Twilio 之外运行并返回您期望的 XML。
此外,您的网页是否接受 Twilio 配置为使用的 HTTP 动词(默认情况下为 POST(。