Line Chatbot 開發攻略(一)
Line帳戶端申請與設定
======================
Line公眾號帳戶種類介紹
1. Line@ Account
2. Messaging API(Bot) Account
Line @ Manager — 用來管理Line帳戶的後台
======================
Line公眾號帳戶種類介紹
- Line@ Account
Line@公眾號帳戶開立以後,透過下載Line@App來管理其他用戶透過Line與這個公眾號間的訊息互動;同時可以加入其他管理者一同經營這個帳號。
Line@ Account可以轉換為Messaging API帳戶,但為不可逆的,一旦開通Messaging API功能,就無法再透過Line@App與其他用戶1對1直接互動。
欲開發Line Chatbot,必須使用以下第二種 Messaing API(Bot) 帳戶。
2. Messaging API Account
https://developers.line.me/en/
開發Chatbot必須申請Messaging API的帳號
- 建立一個新的Channel
這一個步驟,需要注意的是Plan的選擇:
(1) Developer Trial可以使用所有的Message API功能,但是帳戶可以加入的人數上限為50人,同時此方案無法升級為其他方案。
(2) Free方案無人數上限,可是僅能被動回覆使用者的輸入,不能主動推送訊息給使用者,未來可以根據需要升級方案。
— 被動回覆使用者:
使用者輸入一個訊息,Line server會以POST方式送至開發者程式後台Webhook URL,每個訊息帶有一個Reply Token,這個Token有時效性,可以根據這個Token使用Reply API回覆使用者。
— 主動推送訊息給使用者
由開發者程式後台透過Push API主動推送訊息給使用者。
帳戶範例
- App Type:Bot (Messaging API)
- Plan:For Developer (Developer Trial)
- Available features
— REPLY_MESSAGE:回覆使用者輸入的API功能
— PUSH_MESSAGE:主動推送訊息給使用者的API功能
- Allow bot to join group chats:Bot是否可以被加入群組中,群聊時使用。
- Auto-reply messages:使用者在Bot輸入文字時,是否會自動回覆如以下的訊息:
若要透過開發者程式後台回覆,則選擇Disabled。
- Greeting messages:使用者第一次加入或封鎖後重新解除封鎖Bot帳戶時會看到的歡迎訊息。
- QR code of your bot:掃描QR code加入bot。另有兩種方式可以加入Bot帳戶(在Line @ Manager中詳述)
- Your user ID:Bot帳戶對於每個加入的使用者都給予一個Unique ID,這個ID跟Line帳戶帳號無關,故無安全性的考量。此ID特別列在這邊為方便開發者測試API功能,如用Push API傳訊息給自己。
Line @ Manager — 用來管理Line帳戶的後台
儘管使用Messaging API不能使用Line@App,仍可以透過Line @ Manager後台來做為Bot的操作與管理:
- Message:即時/排程傳送訊息、(關鍵字)自動回覆訊息、歡迎訊息。
- Rich menu:如下圖Taxi Go與中國信託Line bot為例,進入後最下方的功能即是選單。最多被設計使用的是六格式的" Image type I "選單,對於每個圖案點擊後所產生的Event,大致上可以分為四種:
— Keyword:產生一個關鍵字並且回覆對應的訊息。
— URL:訪問一個網址
— Text:產生一個關鍵字,不對應回覆的訊息。(串接開發者使用程式後台使用這個選項)
— No action
- Line Beacon:採用Google 陣營的Eddystone Beacon Protocol,Line自行定義了自己的UUID。Beacon Hardware ID即為每個Bot對應會產生Line Beacon event的Frame data。
https://admin-official.line.me/beacon/register
到這個連結處來產生Line bot所對應的Beacon Hardware ID,每個Bot最多可以對應到10組Hardware ID。
- Settings
— Basic account settings:基礎的bot設置,透過@[Account ID]、QR code及Add friend button中的link(Mobile)可以用來加入bot。
— Manage user authorizations:用來產生不同權限的Token URL提供其他使用者操作Line@ Manager。這個Token在幾周後會失效,必須重新產生,一個Token URL僅供一位使用者登入使用。
以上總結,可以觀察,Line @ Manager和Messaging API 後台介面(https://developers.line.me/en/)有部分功能重疊。同時,Line @ Manager當中Rich menu的部分,也已經有API可以用程式方式即時上傳與設定。
======================
Copyright © 2018 Josh Chang, Obaiot All rights reserved
To be continued~
箴言 3:5–6
你要專心仰賴耶和華,不可倚靠自己的聰明,
在你一切所行的事上都要認定他,他必指引你的路。
======================