三.Web Service的建立及LineBot webhook設定

(完整操作影片)

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. 下載ngrokhttps://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傳送到我們網頁伺服器的訊息,如下圖紅色標示。