التعرّف على العميل المسجّل الدخول (user_token)
يثبت توقيع خادمك هوية العميل، ليتسنى لـ AI الاستعلام عن الطلبات ومساعدة العميل على إتمامها.
قبل أن يتمكن AI من البحث عن الطلبات، يجب أن يعرف من هو العميل. هوية العميل يُثبتها توقيع صادر من خادمك، ولا يمكن للمتصفح تزويرها.
مفتاح التوقيع تجده في صفحة «接入» في لوحة التحكم (المالك فقط يمكنه رؤيته)، وصيغته whsec_.... يُستخدم في الاتجاهين: أنت تستخدمه لتوقيع user_token؛ ونحن نستخدمه لتوقيع طلبات الـ webhook واستعلامات الطلبات التي نرسلها إليك.
صيغة user_token: base64url(JSON) + "." + hex(HMAC-SHA256(签名密钥, base64url(JSON)))
حقول JSON:
| الحقل | مطلوب | الوصف |
|---|---|---|
user_id | نعم | معرّف العميل في نظامك، ويُعاد إليك كما هو عند الاستعلام عن الطلبات |
exp | نعم | وقت الانتهاء (بالثواني Unix)، بحد أقصى 7 أيام |
name / email | لا | يظهران في مساحة عمل الموظفين |
مثال Node.js:
import crypto from "node:crypto"
function signUserToken(user, secret) {
const payload = { user_id: user.id, name: user.name, email: user.email, exp: Math.floor(Date.now() / 1000) + 3600 }
const body = Buffer.from(JSON.stringify(payload)).toString("base64url")
const mac = crypto.createHmac("sha256", secret).update(body).digest("hex")
return `${body}.${mac}`
}
في الصفحة:
<script>window.AICS_USER_TOKEN = "服务器签发的 user_token"</script>
<!-- 页面加载后才登录的,调用 AICS.identify(token) -->
يمكنك أيضًا عدم كتابته في الصفحة، وإضافة data-user-token-url="/你的地址" إلى وسم script: قبل أن تبدأ نافذة خدمة العملاء المحادثة، تُرسل طلبًا باستخدام ملف تعريف ارتباط العميل (cookie) إلى هذا العنوان من نفس المصدر، ويُرجَع {"token": "user_token"} (وإذا لم يكن العميل مسجّل الدخول، يُرجَع {"token": null}). وبعد تثبيت تطبيق Yinke في متجر Shopify، تحصل نافذة الدردشة تلقائيًا على هوية العميل المسجّل بهذه الطريقة، دون الحاجة إلى أي تكامل إضافي.
هل كانت هذه الصفحة مفيدة؟
آخر تحديث:
