更新於 2022/04/03閱讀時間約 1 分鐘

Python+LINE Bot 輕鬆打造股市機器人(九) : LINE Bot基本功能- 快速回覆

上一篇教學中,我們教了大家如何自製客製化選單,今天我們來教最後一個常用基本功能,那就是「快速回覆」,這功能常用於同性質的關鍵字分支中做使用,像我就是用於三大法人籌碼中,分別區分成外資、投信、自營商等選項,所以也是一個相當實用的功能,我們就來開始教學吧!!

快速回覆

示範
先給大家看我使用到快速回覆的地方,當我們輸入「股票 台積電」時,就會跳出個股資訊供大家選擇,其中我們在「大戶籌碼」中就使用到了「快速回覆」的功能,點選後機器人就會跳出「請選擇要顯示的買賣超資訊」,而下方紅框中就是我們這次要做的「快速回覆
thon
thon
而當我們點選其中的「外資」作買賣超查詢時,機器人就會根據我們所點選的選項列出我們的結果出來

LINE Bot程式碼
程式碼其實也相當簡單,我們這裡使用到linebot中內建的QuickReply中的QuickReplyButton,而QuickReplyButton中又有兩個參數,一個是label,一個是text
大致上重點如下:
  • if ‘大戶籌碼 ‘ in message: 這if函式我們在先前的教學中就有提到,是代表「部分符合」時所使用,也就是說我們輸入的關鍵字中包含了「大戶籌碼 」這4個字,機器人就會觸發我們的條件式
  • TextSendMessage中的text : 這是我們一開始輸入關鍵字後,機器人所回覆的訊息
  • QuickReply : 為LINE提供的快速回覆函式
  • QuickReplyButton : 為快速回覆的選項按鈕,做多只能存放13個按鈕
  • label : 為選項按鈕顯式的文字
  • text : 為選項選擇後所輸出的文字
if '大戶籌碼 ' in message:
  flex_message = TextSendMessage(text="請選擇要顯示的買賣超資訊",
                quick_reply=QuickReply(items=[
                QuickReplyButton(action=MessageAction(label="最新法人", text="最新法人買賣超 " + message[5:])),
                QuickReplyButton(action=MessageAction(label="歷年法人", text="歷年法人買賣超 " + message[5:])),
                QuickReplyButton(action=MessageAction(label="外資", text="外資買賣超 " + message[5:])),
                QuickReplyButton(action=MessageAction(label="投信", text="投信買賣超 " + message[5:])),
                QuickReplyButton(action=MessageAction(label="自營商", text="自營商買賣超 " + message[5:])),
                QuickReplyButton(action=MessageAction(label="三大法人", text="三大法人買賣超 " + message[5:]))
              ]))
  line_bot_api.reply_message(event.reply_token, flex_message)
else:
  line_bot_api.reply_message(event.reply_token, TextSendMessage(message))

總結

今天這是最後一篇基本教學的文章了,往後LINE Bot的實戰經驗教學我會寫在方格子中,有興趣的可以等我方格子寫好後,會再分享連結並介紹,但其實學到現在,如果這些基本功能都有好好學習,你也是可以自己開始親手製作屬於自己的LINE Bot了,這些基本功能加上一些python的程式能力,想必已經很多人躍躍欲試了,現在就開始打造自己的LINE Bot吧!!
分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.