الرئيسية التطبيقات والتكامل كيفية استخدام تطبيقات لوحة التحكم؟

كيفية استخدام تطبيقات لوحة التحكم؟

آخر تحديث في May 28, 2026

باستخدام تطبيقات لوحة التحكم، يمكنك دمج تطبيق داخل لوحة تحكم Voxys Connect ليستخدمه وكلاء الخدمة. تتيح لك هذه الميزة إنشاء تطبيق بشكل مستقل، يمكن بعد ذلك تضمينه لتوفير معلومات العملاء والطلبات وسجل الدفعات السابقة، وما إلى ذلك.

عند تضمين تطبيقك في لوحة تحكم Voxys Connect، سيحصل التطبيق على سياق المحادثة وبيانات جهة الاتصال كحدث نافذة. قم بتنفيذ مستمع لحدث الرسالة على صفحتك لتلقي السياق.

ملاحظة: شاهد بثنا المباشر على YouTube حول إنشاء تطبيق لوحة التحكم.

كيفية إنشاء تطبيق لوحة التحكم؟

الخطوة 1. انتقل إلى الإعدادات → التكاملات → تطبيقات لوحة المعلومات. انقر على زر "تكوين" المقابل لتطبيقات لوحة المعلومات.

الخطوة 2. أضف اسم التطبيق وعنوان URL الذي يستضيف التطبيق.

بمجرد الانتهاء، ستظهر علامة تبويب جديدة تحمل الاسم الذي أطلقتَه على التطبيق في نافذة المحادثة. في هذه الحالة، يكون الاسم هو "طلبات العملاء".

عند النقر فوق علامة التبويب الجديدة، ستتمكن من رؤية تطبيقك وهو يجلب البيانات على لوحة معلومات Voxys Connect.

استلام البيانات من Voxys Connect إلى تطبيقك

سيقوم Voxys Connect بتسليم سياق المحادثة والجهة المتصلة كحدث نافذة. يمكن الوصول إلى هذا داخل تطبيقك من خلال تنفيذ مستمع للحدث، كما هو موضح هنا:

window.addEventListener("message", function (event) {
  if (!isJSONValid(event.data)) {
    return;
  }

  const eventData = JSON.parse(event.data);
});

طلب البيانات عند الطلب من Voxys Connect

إذا كنت بحاجة إلى طلب بيانات المحادثة عند الطلب من Voxys Connect، يمكنك إرسال رسالة إلى النافذة الأصلية باستخدام واجهة برمجة تطبيقات postMessage في جافا سكريبت.

سيستمع Voxys Connect إلى هذا المفتاح: chatwoot-dashboard-app:fetch-info.

مثال

يمكن استخدام الكود التالي للاستعلام عن تطبيق لوحة التحكم. سيستجيب Voxys Connect لهذا الطلب من خلال توفير حمولة المحادثة المحدثة على الفور.

window.parent.postMessage('chatwoot-dashboard-app:fetch-info', '*')

// ستتلقى رسالة في مستمع الرسائل مع حمولة appContext.

حمولة الحدث

كائن المحادثة​

{
  "meta": {
    "sender": {
 "additional_attributes": {
 "description": "سلسلة"،
 "company_name": "سلسلة"،
 "social_profiles": {
 "github": "سلسلة"،
          "twitter": "سلسلة"،
 "facebook": "سلسلة"،
 "linkedin": "سلسلة"
 }
 },
 "availability_status": "سلسلة"،
 "email": "سلسلة"،
 "id": "عدد صحيح"،
      "name": "string",
 "phone_number": "string",
 "identifier": "string",
 "thumbnail": "string",
 "custom_attributes": "object",
 "last_activity_at": "integer"
    },
    "channel": "string",
    "assignee": {
 "id": "integer",
 "account_id": "integer",
 "availability_status": "string",
 "auto_offline": "boolean",
 "confirmed": "boolean",
 "email": "string",
      "available_name": "string",
 "name": "string",
 "role": "string",
 "thumbnail": "string"
    },
    "hmac_verified": "boolean"
  },
  "id": "integer",
  "messages": [
    {
 "id": "integer",
 "content": "Hello",
 "inbox_id": "integer",
 "conversation_id": "integer",
 "message_type": "integer",
 "content_type": "string",
 "content_attributes": {},
 "created_at": "integer",
 "private": "boolean",
 "source_id": "string",
 "sender": {
 "additional_attributes": {
 "description": "string",
 "company_name": "string",
          "social_profiles": {
 "github": "سلسلة"،
 "twitter": "سلسلة"،
 "facebook": "سلسلة"،
 "linkedin": "سلسلة"
 }
 },
        "custom_attributes": "object",
 "email": "string",
 "id": "integer",
 "identifier": "string",
 "name": "string",
 "phone_number": "string",
 "thumbnail": "string",
 "type": "string"
      }
    }
  ],
  "account_id": "integer",
  "additional_attributes": {
    "browser": {
 "device_name": "string",
 "browser_name": "string",
 "platform_name": "string",
      "إصدار_المتصفح": "سلسلة"،
 "إصدار_النظام_الأساسي": "سلسلة"
    },
    "referer": "سلسلة"،
    "initiated_at": {
 "timestamp": "سلسلة"
    }
  },
  "agent_last_seen_at": "عدد صحيح"،
  "assignee_last_seen_at": "عدد صحيح"،
  "can_reply": "منطقية"،
  "contact_last_seen_at": "integer",
  "custom_attributes": "object",
  "inbox_id": "integer",
  "labels": "array",
  "muted": "boolean",
  "snoozed_until": null,
  "status": "string",
  "timestamp": "integer",
  "unread_count": "integer",
  "allMessagesLoaded": "boolean",
  "dataFetched": "boolean"
}

كائن جهة الاتصال​

{
  "additional_attributes": {
    "description": "string",
    "company_name": "string",
    "social_profiles": {
 "github": "string",
 "twitter": "string",
 "facebook": "string",
 "linkedin": "string"
    }
  },
  "availability_status": "string",
  "email": "string",
  "id": "integer",
  "name": "string",
  "phone_number": "+91 9000000001",
  "identifier": "string || null",
  "thumbnail": "+91 9000000001",
  "custom_attributes": {},
  "last_activity_at": "integer"
}

كائن currentAgent​

{
  "email": "string",
  "id": "integer",
  "name": "string"
}

الحمولة النهائية​

{
  "event": "appContext",
  "data": {
    "conversation": {
 // <...سمات المحادثة>
    },
    "contact": {
 // <...سمات جهة الاتصال>
    },
    "currentAgent": {
 // <...سمات الوكيل الحالي>
    }
  }
}