聯絡人 (Contact) 串接
聯絡人串接流程
使用說明
Contact 對話權限功能主要用於以下場景:
企業內部權限管理:透過 Contact 設定,管理不同用戶的對話權限範圍
Web Chat 嵌入:當 Web Chat 嵌入至企業網站後,在沒有 MaiAgent 會員資料的情況下,企業可透過 contact 的串接設定來達到對話的權限管理目的
跳過會員建立:可略過 MaiAgent 成員的建立與角色分配,直接透過 Contact ID 管理對話權限
此功能特別適用於需要細緻權限控制的企業應用場景。
系統架構概述
企業系統:主要系統,負責用戶管理和 Web Chat 整合
MaiAgent:提供 Web Chat 功能的服務方
通訊協定:RESTful API
對接流程
步驟 1:用戶身份檢查
企業系統需要檢查當前用戶是否已在 MaiAgent 系統中註冊過 Contact。
步驟 2:建立或更新 Contact
如果用戶尚未在 MaiAgent 系統註冊,需要調用 Create Contact API;如果已存在但需要更新資料,則調用 Update Contact API。
創建聯絡人 API 端點: POST /api/contacts
更新聯絡人 API 端點: PUT /api/contacts/{contact_id}
處理邏輯:
企業系統需要妥善保存回傳的
contact_id
(Create 時)建議將
contact_id
與企業系統的用戶 ID 進行關聯存儲Update 時需要在 URL 路徑中提供現有的
contact_id
步驟 3:初始化 Web Chat
在確認 contact_id 存在後,初始化 MaiAgent 的 Web Chat:
配置方式:
<script>
window.maiagentChatbotConfig = {
webChatId: '從 Admin 嵌入視窗中獲得的 Web Chat ID',
baseUrl: 'https://chat.maiagent.ai/web-chats',
primaryColor: '#3854d8',
allowDrag: true,
contactId: '從步驟2獲得的contact_id' // 整合 contact_id
};
</script>
<script
src="https://chat.maiagent.ai/js/embed.min.js"
defer>
</script>
初始化說明:
嵌入腳本載入後會自動註冊 document.body.onload
事件處理器來執行 Web Chat 初始化。若需要控制初始化時機(例如等待其他資源載入完成或延遲渲染),可採用以下方式:
延遲載入腳本:控制
embed.min.js
的載入時機手動觸發初始化:在適當時機調用
document.body.onload()
方法
此機制允許開發者將 DOM 渲染與 Web Chat 初始化解耦,提供更靈活的整合方式。
實作建議
建議在企業系統中建立 Contact ID 管理表,包含:
企業用戶 ID
MaiAgent Contact ID
創建時間
最後更新時間
實作冪等性檢查,避免重複創建 Contact
建立日誌記錄機制,追蹤 API 調用狀況
考慮實作異步處理,提升用戶體驗
Last updated
Was this helpful?