LINE在2018/7月底推出了Quick Reply機制,他可以讓使用者可以更輕鬆的回覆Line bot所發送的問題,官方細節你可以參可底下連結:
https://developers.line.me/en/news/2018/07/31
過去,我們要讓用戶回答Line bot的某個問題,除了透過自然語言(讓用戶隨意打)的方式,就是透過Template Message,讓line bot跳出一整塊大面積的選單訊息,像是:
但這樣的Tempalte Message佔用了很大一塊版面,每塊卻又只能最多放四個選項,有些時候顯得大而無當。特別是若你其實只是要用戶選擇一個簡單的答案時,根本不需要像上面這樣的Template Message又是大圖又是標題的。
這時,你可以採用底下這樣的QuickReply來解決:
Quick Reply 就是上圖Menu上方的小小選項(Action),最多可以出現13個Action,並且支援postback, message, datetime picker, camera, camera roll等各種action。
要實現這樣的功能很簡單,請參考底下這樣的程式碼:
過去我們在發送訊息的時候,也是採用PushMessage,而為了支援QuickReply的功能,我們額外建立了一個TextMessage類別(第2行),你可以直接建立該物件,並指定要顯示的訊息。
接著,透過該物件的quickReply屬性,你可以在items集合中以Add方法加入想要新增的QuickReply item。
在上面例子中,我們新增了三個都是一般的QuickReplyMessageAction,該action的行為如同先前介紹過在TemplateMessage中的MessageAction一般,就是顯示一個標題,執行結果如下:
圖示則是第三個參數 new Uri(…)所指定的,別忘了必須是https並且為.png格式。
如此一來,用戶就可以直接點選上面的『特休』、『事假』、『病假』其中之一。點選時的行為就等同於用戶說了『特休』、『事假』、『病假』這幾個字一般,這就是QuickReplyMessageAction所呈現的功能。
而更精彩的是,除了QuickReplyMessageAction之外,前面提到過,還有可以讓用戶直接選擇時間日期的QuickReplyDatetimePickerAction,支援地圖位置選擇的QuickReplyLocationAction,支援相機的QuickReplyCameraAction與QuickReplyCamerarollAction…,這些功能可以讓你的Line bot,直接要求用戶提供座標位置、照片、輸入時間日期…等,像是:
如此一來,就不用全部仰賴自然語言輸入了,不錯吧,快試試看囉…
要透過LineBotSDK使用此功能,別忘了要升級到 0.8.2以上的版本唷。更詳細的教學影片請參考我們的線上課程囉。
------------------
LineBotSDK:https://www.nuget.org/packages/LineBotSDK
相關課程:http://www.studyhost.tw/NewCourses/LineBot
線上課程:https://www.udemy.com/line-bot/
更多內容,請參考電子書:https://www.pubu.com.tw/ebook/103305
LINE Bot實體書籍:https://www.tenlong.com.tw/products/9789865020354
如果需要即時取得更多相關訊息,可按這裡加入FB專頁。若這篇文章對您有所幫助,請幫我們分享出去,謝謝您的支持。