iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 8
0
AI & Machine Learning

ChatBot&Chatbase系列 第 8

Day8[Messenger ChatBot]buttons常用的type之一:postback

今天要介紹的是messenger chatbot中buttons所使用的type之一,也就是postback。
postback在messenger chatbot也是相當常用的方法~~
postback 是將 messaging_postbacks 事件傳送至 Webhook,並且在 payload 屬性中設定字串。這讓用戶點按按鈕時採取任意動作。

如同下圖,點選娛樂新聞的按鈕之後,使用者回覆就為娛樂新聞。接著再用這個訊息進入get_news_elements抓新聞。
https://ithelp.ithome.com.tw/upload/images/20171227/20107144X2dKoKW4Iu.png

程式碼如下圖:

  1. 在utils2.py指定buttons的type與payload(相當於value的概念)
    紅框的部分就是在指定buttons的type時,指定為postback,並在payload寫下buttons要代表的值
    https://ithelp.ithome.com.tw/upload/images/20171227/20107144NCU7DIOJ3i.png
  2. 要讀取postback所傳送的值,在app.py需要撰寫如下圖的程式碼
    紅框的部分是新增messaging_event去得到postback事件,並讓payload成為messaging_text
    黃框的部分則是讓messaging_text進到get_news_elements抓新聞
    https://ithelp.ithome.com.tw/upload/images/20171227/20107144l7XTgZDyIc.png

3.測試一下!!
https://ithelp.ithome.com.tw/upload/images/20171227/20107144wCkldVDJcb.png


上一篇
Day7[Messenger ChatBot]自己的回覆內容自己+!
下一篇
Day9[Messenger ChatBot]總結這八回合
系列文
ChatBot&Chatbase30

尚未有邦友留言

立即登入留言