This page is no longer maintained and may contain inaccurate or out-of-date information.
For the latest information, please visit the English site.
# 使用 Heroku 建立範例聊天機器人
本頁介紹如何使用 Messaging API SDK for Java (opens new window) 於 Heroku (opens new window) 上部署一個簡單的 “echo” 聊天機器人,以及一個功能齊全的 “kitchensink” 聊天機器人。
如欲透過其他程式語言部署範例聊天機器人,請見下列 Messaging API SDK repository。
- PHP (opens new window)
- Go (opens new window)
- Perl (opens new window)
- Ruby (opens new window)
- Python (opens new window)
- Node.js (opens new window)
# 開始之前
請確認下列項目已完成:
- 為聊天機器人建立專屬的 Messaging API channel。
- 建立 Heroku 帳號 (opens new window) (可免費建立)
# 部署 "echo" 範例聊天機器人
請依照下列步驟,部署一個聊天機器人,使它在接收到文字訊息後,可回傳一模一樣的訊息。
從 LINE Developers Console 取得 channel secret 及 channel access token。
點選 README 檔案 (opens new window) 中的 Deploy to Heroku 按鈕,該檔案位於
sample-spring-boot-echo
GitHub 目錄中。將透過步驟 1 取得的值填入 "App name" (選填)、"LINE_BOT_CHANNEL_TOKEN",以及 "LINE_BOT_CHANNEL_SECRET" 欄位,並點選 Deploy app。請複製 app 名稱,下一個步驟將使用該名稱。部署需要一些時間,請稍加等候。
點選 Messaging API 表單。
於 LINE Developers Console 中輸入 webhook URL,請使用此 URL 格式:
https://{HEROKU_APP_NAME}.herokuapp.com/callback
。注意{HEROKU_APP_NAME} 請使用來自步驟 3 的 app 名稱。
開啟 Use webhook。
注意此處預設值為 "Disabled"。
前往 LINE Developers Console 掃描位於 channel 設定頁面下 Messaging API 表單中的 QR code,將與此聊天機器人連接的 LINE 官方帳號加為好友。
對此 LINE 官方帳號發送一則文字訊息,並確認該帳號回傳一模一樣的訊息。
# 透過 Heroku CLI 查看 log
請依照下列步驟,於 Heroku 中查看聊天機器人的 log:
透過 terminal 或 command line 應用登入 Heroku:
$ heroku login
查看 log 內容。
注意{HEROKU_APP_NAME} 請使用來自上方步驟 3 的 app 名稱。
$ heroku logs --tail --app {HEROKU_APP_NAME}
# 部署 kitchensink 範例聊天機器人 app
kitchensink (opens new window) 範例聊天機器人 app 具有 Messaging API 的完整功能,例如 template 與圖文訊息。為了部署 kitchensink 聊天機器人,請於 Heroku dashboard 建立新的 Heroku app。
於 LINE Developers Console 中建立新的 channel,並取得 channel secret 與 channel access token。掃描 Basic settings 表單中的 QR code,將與此聊天機器人連接的 LINE 官方帳號加為好友。
將 line-bot-sdk-java (opens new window) GitHub 目錄複製至 local machine。
開啟
Procfile
並以echo
instance 取代所有kitchensink
instance。// Before web: java $JAVA_OPTS -jar sample-spring-boot-echo/build/libs/sample-spring-boot-echo-*.jar --server.port=$PORT // After web: java $JAVA_OPTS -jar sample-spring-boot-kitchensink/build/libs/sample-spring-boot-kitchensink-*.jar --server.port=$PORT
把
sample-spring-boot-kitchensink/src/main/resources/
下面的檔案application-template.yml
命名為application.yml
。將來自步驟 1 的值填入channel-secret
與channel-token
欄位。請刪除 "This is a template for the configuration file. Make a copy called `application.yml` and change the values below."。請於 Heroku dashboard 建立新的 Heroku app,並複製 app 名稱。
前往
line-bot-sdk-java
目錄並新增 Git™ 遠端目錄。注意{HEROKU_APP_NAME} 請使用來自步驟 5 的 app 名稱。
$ heroku git:remote -a {HEROKU_APP_NAME}
將變更提交至 Heroku。
$ git add . $ git commit -m 'First commit' $ git push heroku master
於 LINE Developers Console 中輸入 webhook URL,請使用此 URL 格式:
https://{HEROKU_APP_NAME}.herokuapp.com/callback
。透過 LINE 官方帳號,試用下列功能:
- 輸入 "profile" 以取得用戶檔案。
- 輸入 "buttons"、"confirm" 或 "carousel" 以傳送 template message。
- 輸入 "imagemap" 以傳送 imagemap message。
- 將 LINE 官方帳號加入群聊,並輸入 "bye" 使它離開聊天群組。
- 將圖檔、音訊、影片,或位置訊息發送至 LINE 官方帳號,聊天機器人將取得內容,並回傳此內容。
回應延遲部署後可能需要一些時間以啟動聊天機器人。如聊天機器人未立即回覆訊息,請於數分鐘後重試。
# 下一步
如欲取得更多訊息、了解如何使用 Messaging API 建立聊天機器人,請查看 building a bot 與 Messaging API reference。