我正在开发一个 python 脚本,它将查找特定位置的纬度和经度并将其存储在文本文件中。该位置将通过 SMS 发送到 python 脚本。我可以使用 python 中的“geocode”库查找纬度和经度,但我不确定如何接受来自 SMS 的数据。
我之前使用过 TWILIO 模块,并且我知道如何使用它通过 Python 脚本向电话号码发送短信。但我想知道接收从电话号码发送的短信,然后在python脚本中使用该消息正文进行进一步操作的过程。
这就是我向电话号码发送短信的方式 -
import os
from twilio.rest import TwilioRestClient
accountSID = '****'
authToken = '***'
twilioCli = TwilioRestClient(accountSID, authToken)
myTwilioNumber = '+1 ***'
myCellPhone = '+***'
message = twilioCli.messages.create(body=string, from_=myTwilioNumber, to=myCellPhone)
如果您可以提供一个解决方案来执行与上述过程相反的操作,即通过 TWILIO 服务接收短信而不是发送短信,这将非常有帮助。
最佳答案
如果您熟悉Twilio,那么您也可以使用它来接收短信。只需注册一个号码(这将是我们的接收者)并在 Messaging
-> A message comes in
部分添加 webhook。您的 webhook 是一个端点,它实现在 POST
操作上获取消息。然后你就可以process received messages如你所愿。
您可以在 official website 上找到详细教程.
编辑:
流量是多少?
- 您准备一个应用程序(在教程中 - 在 Flask 中实现)。您必须在应用程序服务器上运行它。例如,您的域名是 john-smith.com。
- 您将端点注册为 Webhook。您的端点是 john-smith.com/sms。
- 您向您在 Twilio 中注册的号码发送一条短信。
- 收到短信后,它会由 Twilio 进行处理,并作为
POST
请求发送到您的应用程序指定为 Webhook 的 URL。
这是教程中的您的 python 代码(flask 应用程序)。这是您提取号码和消息的地方。这也是您的应用程序。
from flask import Flask, request from twilio import twiml app = Flask(__name__) @app.route('/sms', methods=['POST']) def sms(): number = request.form['From'] message_body = request.form['Body'] resp = twiml.Response() resp.message('Hello {}, you said: {}'.format(number, message_body)) return str(resp) if __name__ == '__main__': app.run()
message_body
变量是收到的短信消息。你可以用它做任何你想做的事。
关于python - 如何向python脚本发送短信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41791199/