2013-10-02 52 views
1

我使用Bottle创建了一个Python应用程序,它具有从Plivo中检索消息的任务。首先,当我向Plivo发送消息时,就好像我没有。我找不到一个Python示例,并且我对Web协议等知之甚少,无法自行配置。 我有以下问题,我一直无法修复:Plivo python消息

1.设置Plivo转发消息。在该网站,你可以用这些输入选项创建应用程序:

  • 应用程序名称
  • 子帐户
  • 回答网址
  • 解答方法
  • Fallback_answer网址
  • 备用方法
  • 挂断url
  • Hangup方法
  • 帖子的网址
  • 消息的方法
  • 默认数量的应用程序
  • 终端默认的应用程序
  • 公共URI

设置至少它的一部分应该得到我的邮件到我的服务器。我不知道是什么。

2.我有以下Python代码: 从瓶进口路线,运行,要求

@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向我通知我的消息时回答某些具体问题吗?

我希望你至少能帮我弄清楚我应该在哪里解决我的问题。对不起,如果我有点混乱,我是网络开发的新手,我只是开始了解一些东西。 谢谢大家

回答

2

您的Plivo号码必须链接到具有“Message url”的应用程序。当您的号码收到短信时,Plivo会发送一个挂钩到参数Text,From,To,TypeMessageUUID的“消息url”。用于发送这些参数的HTTP方法是在应用程序中设置的“消息方法”。

Plivo Application

对于您所描述的设置,你的瓶子服务器监听8080,都有一个路由/hello/开放。您的邮件网址应为http://<your-server-name>:8080/hello/,并且邮件方法应设为POST。点击“创建”创建您的应用程序

下一步是将您的Plivo编号链接到您刚创建的应用程序。点击dashboard中的“Numbers”选项卡。您将能够在“您的号码”部分查看您的所有Plivo号码。通过点击这个号码,你将有一个选择你的应用程序的选项。选择“接收消息”应用程序,然后点击“更新”。

Attach the application to the number

此示例代码应该让你和运行。

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号码接收短信在控制台上收到的消息。