(完整操作影片)
1. 撰寫接收Line Bot傳送過來訊息的網頁程式(在此使用spring mvc寫一個restful API)。
a. 在eclipse建立一個maven project,File->New->Maven Project,專案架構如下圖。
完整程式碼請參考 https://github.com/lihenry12345/StoneBot
建立專案過程可看"使用SpringMVC的RestController作為Bot(聊天機器人)Webhook的網址 "影片
b. 建立好後,在local端執行此網頁專案(預設監聽8080 port)。
2. 使用ngrok建立一個臨時的https網址(接收Line Bot傳送過來訊息的網頁須走https協定)。
a. 下載ngrok,https://ngrok.com/download,並解壓縮。
b. 執行"命令提示字元(系統管理員)(A)" (win+x) -> 轉換到ngrok.exe目錄 -> 執行 ngrok http 8080。
ngrok http 8080
c. ngrok執行結果為下圖,紅色標示為ngrok臨時指派的網址。
3. 連到Line Bot設定網頁,如下圖。點擊"EDIT"按鈕,進入webhook設定網頁。
4. 在webhook設定網頁中,填入Webhook URL,並點擊"SAVE"按鈕,回到Line Bot設定網頁。
在此說明範例中,Webhook URL 為 https://e276ec08.ngrok.io/StoneBot/springExample/callback
e276ec08.ngrok.io 為 ngrok給予的臨時網址
StoneBot 為 spring mvc 專案名稱
springExample 為 spring mvc dispatch servlet的名稱
callback 為 spring mvc中的controller接收Line bot訊息的方法的網址
5. 在Line Bot設定網頁中,點擊"VERIFY"按鈕,驗證此Webhook URL是正確,若正確會在Webhook URL下出現Success
6. 在eclipse中的console中,會顯示由line bot傳送到我們網頁伺服器的訊息,如下圖紅色標示。