1

我正在使用 Bottle 在 Python 中创建一个 Web 应用程序,该应用程序的任务是从 Plivo 检索消息。首先,当我向 Plivo 发送消息时,就像我没有发送消息一样。我找不到 Python 示例,我对 Web 协议等也不太了解,只能自己配置。我有以下无法解决的问题:

1.设置Plivo转发消息。在站点中,您可以使用以下输入选项创建应用程序:

  • 应用名称
  • 子帐户
  • 回复网址
  • 回答方法
  • Fallback_answer 网址
  • 回退方法
  • 挂断网址
  • 挂机方式
  • 留言网址
  • 留言方式
  • 默认号码应用
  • 默认端点应用
  • 公共 uri

至少设置它的一部分应该将我的消息发送到我的服务器。我不知道是什么。

2.我有以下python代码:from bottle import route, run, request

@route('/hello', method=['GET', 'POST'])
def hello():
    return "Hello World!"
    bottlelog = open('bottlelog.txt').read
    bottlelog.append(request + '\n')
    bottlelog.close()

run(host='0.0.0.0', port=8080, debug=True)

它应该将请求信息保存在此文件中,但至少现在没有。 3.回答。当 Plivo 通知我我的消息时,我的服务器是否应该回答一些特定的问题?

我希望你能帮助我至少找出我应该去哪里解决我的问题。对不起,如果我有点乱,我是网络开发的新手,我只是开始了解一些东西。谢谢你们

4

1 回答 1

2

您的 Plivo 号码必须链接到具有“消息 url”的应用程序。当您的号码收到短信时,Plivo 将使用参数、 、 和TextFromTo消息url”发送一个钩子。用于发送这些参数的 HTTP 方法是应用程序中设置的“消息方法”。TypeMessageUUID

Plivo 应用程序

对于您描述的设置,您的瓶子服务器正在侦听 8080 并/hello/打开了一条路由。您的 Message Url 应该是http://<your-server-name>:8080/hello/并且 Message 方法应该设置为POST. 单击“创建”以创建您的应用程序

下一步是将您的 Plivo 号码链接到您刚刚创建的应用程序。单击仪表板中的“数字”选项卡。您将能够在“您的号码”部分下看到您所有的 Plivo 号码。通过单击该数字,您将获得一个选项来选择您的应用程序。选择“接收消息”应用程序,然后单击“更新”。

将应用程序附加到号码

此示例代码应该让您启动并运行。

from bottle import run, request, HTTPResponse

@route('/hello/', method=['POST']) 
def hello(): 
    Text = request.forms.get('Text')
    From = request.forms.get('From')
    print "Message received: %s - by %s" % (Text, From)
    return HTTPResponse(status=200)

run(host='0.0.0.0', port=8080, debug=True)

在您的服务器上运行此代码,当您的 Plivo 号码收到 SMS 时,您将能够在控制台上看到传入的消息。

于 2013-10-02T19:37:54.213 回答