如何使用 JSON 訊息?
Last updated
Last updated
BotBonnie 提供特殊的JSON 訊息格式,可以利用此種訊息格式,串接您的服務,由您的伺服器動態提供不同的訊息內容。僅需提供您的 JSON API URL
,在呼叫您的 API 時,BotBonnie 會自動帶入以下資料:
在 Request Body 帶入用戶識別資料
在 Request Header 帶入 X-Hub-Signature
做安全性驗證
而您的 API 需回傳 BotBonnie 特定訊息 JSON 格式。
BotBonnie 會在 Request POST body 自動帶入用戶識別資料,可搭配帳號串接使用。
當您的 JSON API 需要使用者的相關資料時,可以在 JSON API 網址中加上相關參數,BotBonnie 會在 Request POST body 中將相關的資訊一併傳送至您的伺服器。
您可以在 JSON API URL
上攜帶額外網址參數來獲取 BotBonnie 提供的額外資訊。 目前支援的網址參數類型如下:
範例的 Body 如下:
所有與用戶相關的資訊
企業儲存於用戶身上額外的參數
BotBonnie 會在 Request Header 帶入 X-Hub-Signature
確保來源安全性。
X-Hub-Signature
是為了驗證 POST 請求是來自 BotBonnie 伺服器,而不是來自惡意用戶。我們使用 SHA1 將 API Secret
與原始請求做雜湊,您可以在您的伺服器做來源驗證。
API Secret
?BotBonnie 提供每個 bot 專屬的 API Secert
。可進入 bot 主控台,點選「設定 > 進階設定」,即可取得此 bot 的 API Secert
。
X-Hub-Signature
?假設您有一個基本的伺服器監聽 webhooks 。
使用 API Secret
與原始請求做驗證。
參數名稱
類型
描述
bot_id
String
機器人的 ID
bot_uid
(deprecated)
String
用戶 ID (加密)
bot_raw_uid
String
用戶 ID (未加密)
bot_pid
String
粉絲頁 ID
bot_channel
Number
渠道代號 (0
:Facebook / 1
:LINE)
bot_isLinked
(deprecated)
Boolean
用戶目前是否已經帳號連結 (true
/ false
)
參數名稱
類型
支援的種類
fields
String
user
: 提供當下的用戶資料 user_params
: 提供儲存於 BotBonnie 端的自訂用戶參數
鍵值
數值
必定存在
id
BotBonnie 認定之用戶 ID (加密)
ex: 3e69e881732e38b290e39a28b87403bd
o
rawId
BotBonnie 認定之用戶 ID (未加密)
ex: 2452158751517100
o
created
BotBonnie 建立此用戶的時間,unixtime 以毫秒表示 ex: 1505360797321
o
name
用戶全名 ex: 陳邦妮
last_name
用戶姓氏 ex: 陳
first_name
用戶名稱 ex: 邦妮
gender
用戶性別 male
or female
pic
用戶大頭照網址
locale
用戶所在地區 ex: zh_TW
timezone
用戶時區 ex: 8
鍵值
數值
必定存在
input
觸發此 JsonAPI 的用戶輸入