我正在用带有瓶子的Python创建一个web应用程序,它的任务是从Plivo检索消息。首先,当我向Plivo发送消息时,就像我没有发送消息一样,我找不到Python示例,也不太了解web协议等等。以下是我无法解决的问题:
1.设置Plivo来转发消息。在站点中,可以使用以下输入选项创建应用程序:
设置它的至少一部分应该会将我的消息发送到我的服务器。我不知道是什么。
2.我有以下代码:从瓶子导入路由,运行,请求
@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通知我的消息时,我的服务器应该回答一些特定的内容吗?
我希望你至少能帮我找出我该去哪里解决我的问题。对不起,如果我有点凌乱,我是新的网络开发,我只是想了解一些东西。谢谢大家
发布于 2013-10-02 19:37:54
您的Plivo号码必须链接到具有"Message url“当前的应用程序。当您的号码收到短信时,Plivo将发送一个挂钩到"Message“,参数为Text、From、To、Type和MessageUUID。用于发送这些参数的HTTP方法是应用程序中设置的"Message方法“。

对于您所描述的设置,您的瓶子服务器正在监听8080,并且有一个打开的路由/hello/。您的Message应该是http://<your-server-name>:8080/hello/,消息方法应该设置为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时,您将能够在控制台上看到传入的消息。
https://stackoverflow.com/questions/19139835
复制相似问题