帳號綁定
本教學將說明如何在對話訊息流程中引導用戶綁定企業的個人帳號,並在用戶完成登入後,提供用戶個人化服務功能。例如:訂單查詢、點數查詢等。
綁定帳號可將 BotBonnie 中的用戶 ID 與企業用戶 ID 綁定,用戶綁定完成之後,企業可以藉由 JSON API 識別對話中的用戶是企業資料庫中的哪一名註冊用戶,進而提供個人化的服務。
BotBonnie 提供進階套件 帳號綁定,並在套件中預設之 開始綁定 模組設定有 登入 按鈕。藉由在對話視窗中登入企業會員帳號,即可將 BotBonnie 之 userId 與企業用戶 ID 綁定。
請於 BotBonnie 後台設定綁定帳號的按鈕,並填入基本的設定。
企業登入網頁網址,當用戶點擊 登入 時會以 webview 形式在對話介面中開啟。
當用戶按下 登入 按鈕時,用戶會在訊息視窗內開啟您的登入網址,BotBonnie 會根據 LINE / Messenger 添加網址參數。
LINE 網址參數(query string):
BotBonnie 用來判斷往後流程的參數(僅用於 BotBonnie Redirect)
LINE 產生之 一次性 驗證權杖,每個帳號綁定按鈕只可綁定(點擊)一次, 有效時間 10 分鐘(僅用於 BotBonnie Redirect)
Messenger 網址參數(query string):
BotBonnie 用來判斷往後流程的參數(僅用於 BotBonnie Redirect)
Messenger 指定綁定完成後需重導向之網址(僅用於 BotBonnie Redirect)
Messenger 產生之短期權杖,有效時間 5 分鐘(僅用於 BotBonnie Redirect)
記得將 userId 存入您的資料庫內,爾後的個人化服務可依此資料做用戶識別。
當用戶綁定(登入)成功時,建議您提供一個頁面告知用戶已登入成功,並重導向至 BotBonnie Redirect, 重導向時須根據 LINE / Messenger 平台帶入網址參數, BotBonnie 會依據平台幫用戶重新導向。
BotBonnie Redirect:
帶入 LINE 網址參數(query string):
LINE 產生之 一次性 驗證權杖,每個帳號綁定按鈕只可綁定(點擊)一次, 有效期間 10 分鐘
String ( 10 ~ 255 characters )
使用用戶在企業內之相對應 ID 產生之不重複字串,ex: 使用 secure random function 產生 128 bytes 之隨機碼並轉換成 base64 字串
帶入 Messenger 網址參數(query string):
Messenger 產生之短期權杖,有效時間 5 分鐘
3. 處理「解除綁定帳號成功」
有兩種情況會使 BotBonnie 與用戶的帳號解除綁定,第一種是用戶主動在對話式介面中點擊解除綁定帳號按鈕,第二種是企業主動透過 API 方式通知 BotBonnie 解除與用戶的帳號綁定關係。
3.1 企業主動解除與用戶的帳號綁定
企業也可以主動解除與用戶的帳號綁定,請呼叫 BotBonnie API,通知我們進行以下動作:
在您的伺服器呼叫 BotBonnie API :
Request headers
用戶 ID (請帶入網址參數中相對應之 userId)
4.1. 準備個人化服務 API
BotBonnie 在呼叫您的個人化服務 API 時,會在 Request Body 內攜帶 用戶識別資料,並在 Request Header 攜帶 X-Hub-Signature 確保來源安全性,而您的個人化服務 API 需回傳 BotBonnie 特定訊息 JSON 格式。
詳細使用方法可參考如何使用 JSON 訊息。
在對話腳本內,放置個人化服務按鈕,連結至含有「JSON 訊息(JSON API)」的模組,並將您的個人化服務 API 網址填上即可。