使用 Twilio 接收短信并将其存储在数据库中

Sat*_*man 5 php sms-gateway twilio twilio-php

我正在使用 Twilio API 发送和接收来自客户的短信。

每次我的手机短信发送到我的客户,我店像精密组件tobody在我的数据库。

我已经实现了用于发送消息的 API,该 API 工作正常,并且只是将字段保存到我的数据库中。

我的问题

当我收到客户发送到我的 twilio 号码的短信时。我想获得像from number和这样的字段body并保存到我的数据库中。

我看了这里的文档

https://www.twilio.com/docs/api/twiml

https://www.twilio.com/blog/2012/04/get-started-with-twilio-sms-receiving-incoming-sms-quickstart.html

但这仅显示了如何在收到消息时向客户发送响应。

我想将收到的短信保存到我的数据库中。

有人可以帮助我得到最高的from numbermessage body 收到短信时。tnx..

eth*_*pil 2

Twilio SMS 响应的文档位于: https: //www.twilio.com/docs/api/twiml/sms/twilio_request

这是一个相关的引用:

当 Twilio 收到您的某个 Twilio 号码的消息时,它会向为该号码配置的消息 URL 发出同步 HTTP 请求,并期望收到 TwiML 响应。Twilio 将以下参数作为 POST 参数或 URL 查询参数随其请求发送,具体取决于您配置的 HTTP 方法。

您应该只将数据字段放在 PHP$_REQUEST[]变量中。

$_REQUEST['MessageSid']- 消息的 34 个字符的唯一标识符。稍后可用于从 REST API 检索此消息。

$_REQUEST['SmsSid']- 与 MessageSid 相同的值。已弃用并包含在内以实现向后兼容性。

$_REQUEST['AccountSid']- 与此消息关联的帐户的 34 个字符 ID。

$_REQUEST['From']- 发送此消息的电话号码。

$_REQUEST['To']- 收件人的电话号码。

$_REQUEST['Body']- 消息的文本正文。最长 1600 个字符。

$_REQUEST['NumMedia']- 与您的消息相关的媒体项目数量

以下是您可以与 MySQL 数据库一起使用的示例查询。您还应该向 Twilio 发送回正确的 TWIXML 响应,并在运行这样的查询之前清理接收到的数据。

$sql = "INSERT INTO messages (sid, from, body) 
        VALUES (
                 '".$_REQUEST['MessageSid']."',
                 '".$_REQUEST['From']."',
                 '".$_REQUEST['Body']."'
               )";
Run Code Online (Sandbox Code Playgroud)