2013-10-02 60 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號碼接收短信在控制檯上收到的消息。