استخدام ميزة "المراسلة من إطار إلى إطار"

توضّح هذه الصفحة كيفية إرسال رسائل من جهة العميل من إضافة تعمل في إطار iframe الخاص باللوحة الجانبية إلى إضافة تعمل في إطار iframe الخاص بالنافذة الرئيسية. تحدث المراسلة من إطار إلى إطار على جهة العميل فقط، لذا يكون تسليم الرسائل فوريًا تقريبًا.

يُرجى اتّباع الخطوات التالية لإرسال رسالة:

  • من اللوحة الجانبية إلى الشاشة الرئيسية، استخدِم طريقة notifyMainStage().
    await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
  • من الشاشة الرئيسية إلى اللوحة الجانبية، استخدِم طريقة notifySidePanel().
    await mainStageClient.notifySidePanel("YOUR_MESSAGE");

يجب أن يتوافق طول payload مع الحد الأقصى المحدّد للحجم.

لتلقّي الرسالة، يجب أن تشترك الإضافة في frameToFrameMessage لإعادة الاتصال. يوضّح نموذج الرمز البرمجي التالي كيفية الاشتراك في دالة رد اتصال frameToFrameMessage:

sidePanelClient.on('frameToFrameMessage', (arg: FrameToFrameMessage) => {
    // YOUR_CODE
});

يتضمّن نموذج الإضافة"الرسوم المتحركة" على GitHub مثالاً كاملاً على المراسلة من إطار إلى إطار. بعد بدء النشاط، تُرسِل اللوحة الجانبية إشعارًا إلى المسرح الرئيسي كلما غيّر المستخدم إدخالاً. تتضمّن المرحلة الرئيسية أيضًا اشتراكًا في دالة رد النداء frameToFrameMessage لتلقّي الحالة المعدَّلة.

ملاحظات

  • إنّ الرسائل التي يرسلها مشارك معيّن في كل إطار لا يراها سوى هذا المشارك. لإرسال رسائل أو حالة إلى مشاركين آخرين، تعرَّف على كيفية مشاركة حالة الإضافة.

  • يتم محاولة تسليم الرسالة مرة واحدة فقط. لتلقّي الرسائل، يجب أن تكون اللوحة المستقبلة مفتوحة وأن يشترك التطبيق في وظيفة معاودة الاتصال قبل إرسال الرسالة.