انتقل إلى المحتوى الرئيسي

الاتصال

تقوم هذه الطريقة بإنشاء وإرجاع مثيل لكائن Socket.io مع اتصال. تتطلب هذه الطريقة تفويض المستخدم الإلزامي.

const socket = await WS.connect()

socket.on('my_event', callback)

عندما تتغير السمات (إذا كان المستخدم مشتركًا في الحدث المقابل وخيار Websocket مفعل في الحدث) يحتوي حقل "attributes" دائمًا على سمات الحدث (حقل "events")، وبناءً على نوع الحدث المحدد في الكتالوج أو النموذج، تحتوي الحقول ذات السمات "product" على سمات المنتج، و"user" تحتوي على حقول من نموذج المستخدم، على التوالي. بالنسبة للمنتج، هناك حقل إضافي "title" (اسم المنتج كسلسلة نصية)، وبالنسبة لنماذج التسجيل وتقديم الرموز، هناك حقول إضافية "code" و"email".

يتم تخزين قيمة السمة بتنسيق *key - marker*, *value - {type, identifier, value}*.

مثال:

{
"message": "رسالة",
"attributes": {
"company": {
"identifier": "company",
"type": "string",
"value": "OneEntry"
}
}
}
المخطط

message string
نص الرسالة
مثال: رسالة

attributes: Record<string, any>
يحتوي على سمات الحدث
مثال:

{
"company": {
"identifier": "company",
"type": "string",
"value": "OneEntry"
}
}

مثال المنتج:

{
"product": {
"id": 10,
"info": {
"title": "كوكب وردي",
},
"status": {
"identifier": "متاح",
"info": {
"title": "أضف إلى السلة"
}
},
"attributes": {
"currency": {
"identifier": "currency",
"type": "string",
"value": "USD"
}
}
}
}

مثال المستخدم:

{
"user": {
"notificationData": {},
"attributes": {}
},
"order": {
"id": 1,
"attributes": {}
}
}

مثال الطلب:

{
"user": {
"notificationData": {},
"attributes": {}
},
"order": {
"id": 1,
"attributes": {}
}
}

مثال النموذج:

{
"email": "string",
"formData": {}
}