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

نظرة عامة على البرامج المصغرة

البرامج المصغرة هي تطبيقات ويب معزولة تعمل مباشرة داخل منصة AISCouncil. إنها توسع المنصة بوظائف مخصصة -- من أدوات مزامنة الأجهزة إلى منشئي الصفحات المرئية -- كل ذلك أثناء التشغيل في بيئة آمنة ومتحكم في أذوناتها.

ما هي البرامج المصغرة؟

البرنامج المصغر هو تطبيق ويب عادي بـ HTML/CSS/JS يعمل داخل iframe معزول داخل المنصة. بدلاً من الانتقال إلى موقع ويب منفصل، يطلق المستخدمون البرامج المصغرة من قسم التطبيقات في الشريط الجانبي. يستبدل التطبيق منطقة المحادثة ويمكنه الوصول إلى واجهات برمجة تطبيقات المنصة عبر SDK window.ais.

يمكن للبرامج المصغرة:

  • قراءة وإرسال رسائل المحادثة للتفاعل مع نماذج الذكاء الاصطناعي
  • تخزين البيانات محلياً مع تخزين معزل لكل تطبيق
  • الوصول إلى إعدادات البوت لمعرفة النموذج النشط
  • إظهار الإشعارات ومربعات الحوار من خلال واجهة المستخدم للمنصة
  • قراءة معلومات المستخدم للتخصيص
  • تسجيل الخطافات لتوسيع سلوك المنصة

كيف تعمل

+---------------------------+
| AISCouncil |
| (الصفحة المضيفة) |
| |
| +---------------------+ |
| | iframe معزل | |
| | (أصل null) | |
| | | |
| | window.ais SDK | |
| | | | |
| +---|------------------+ |
| | postMessage |
| v |
| جسر الرسائل |
| (فحص الأذونات) |
| (توزيع الطرق) |
+---------------------------+
  1. حقن SDK -- عند إطلاق برنامج مصغر، تنشئ المنصة iframe معزول وتحقن SDK window.ais (~2 كيلوبايت) كتمهيد <script> قبل كود تطبيقك.

  2. جسر postMessage -- كل استدعاء SDK (ais.storage.get()، ais.chat.send()، إلخ) يرسل postMessage إلى الصفحة المضيفة. يتحقق المضيف من أذونات التطبيق المستدعي ويوزع الطلب على وحدة المنصة المناسبة.

  3. الاستجابات -- يتم إرسال النتائج مرة أخرى إلى iframe عبر postMessage، حيث يحل SDK الـ Promise المقابل.

نموذج الأمان

تعمل البرامج المصغرة في صندوق أمان صارم:

الحمايةكيفية
أصل nullsandbox="allow-scripts allow-forms" -- لا allow-same-origin، لذا يحصل iframe على أصل null
لا وصول إلى DOM الأبلا يمكن قراءة أو تعديل DOM الصفحة المضيفة، أو localStorage، أو ملفات تعريف الارتباط
لا وصول شبكي لأصل المضيفلا يمكن إجراء طلبات من نفس الأصل إلى aiscouncil.net
واجهات برمجة تطبيقات مقيدة بالأذوناتكل طريقة SDK بعد التخزين تتطلب منح إذن صريح من المستخدم
عزل التخزين لكل تطبيقمفاتيح التخزين مسبوقة بـ mp:{app-name}: -- التطبيقات لا يمكنها قراءة بيانات بعضها البعض
تخزين مؤقت موجه بالمحتوىيتم جلب HTML للمدخل وتخزينه مؤقتاً وقت التثبيت، لا يتم تحميله من الشبكة عند كل إطلاق
تحذير

لا تزال البرامج المصغرة قادرة على إجراء طلبات شبكية لأصول خارجية (شبكة CDN الخاصة بها، واجهات برمجة تطبيقات الطرف الثالث، إلخ) حيث يسمح allow-scripts بـ fetch() و XMLHttpRequest. إذن network:fetch مخصص للطلبات الموسطة المستقبلية عبر المنصة، وليس لتقييد الوصول الشبكي الصادر.

مربع حوار الأذونات

عندما يثبت المستخدم برنامجاً مصغراً، يعرض مربع حوار الأذونات اسم التطبيق والوصف وقائمة الأذونات التي يطلبها. يجب على المستخدم الموافقة قبل متابعة التثبيت. التطبيقات التي تطلب storage فقط (مسموح بها دائماً) لا تزال تعرض مربع الحوار للشفافية.

المقارنة مع المنصات الأخرى

الميزةبرامج aiscouncil المصغرةبرامج WeChat المصغرةإضافات ChromePWAs
وقت التشغيلiframe معزلWebView مخصصعالم معزول + service workerعلامة تبويب متصفح كاملة
الحجم الأقصى5 ميجابايت (HTML) / 50 ميجابايت (حزمة)2-20 ميجابايتلا حد صارمبلا حدود
المراجعة مطلوبةلا (تثبيت مباشر)نعم (إلزامية)نعم (Chrome Web Store)لا
دعم عدم الاتصالنعم (مخزن مؤقتاً وقت التثبيت)نعمنعمنعم (Service Worker)
واجهات برمجة التطبيقات للمنصةSDK window.aisAPI wxAPI chromeواجهات برمجة تطبيقات الويب فقط
نموذج الأمانiframe بأصل nullصندوق حماية مخصصسياسة أمان المحتوىنفس الأصل
التوزيعURL، رفع ملف، سجلمتجر WeChat فقطChrome Web StoreURL فقط

إيجاد وتثبيت التطبيقات

من متجر التطبيقات

  1. انقر على أيقونة التطبيقات في الشريط الجانبي الأيسر (أو أيقونة شبكة التطبيقات في الرأس على الهاتف المحمول)
  2. تصفح قسم متجر التطبيقات في أسفل لوحة التطبيقات
  3. انقر تثبيت على أي بطاقة تطبيق
  4. راجع الأذونات في مربع الحوار وانقر سماح

عبر URL (التحميل الجانبي)

  1. في لوحة التطبيقات، ابحث عن قسم التحميل الجانبي
  2. الصق URL البيان في حقل النص
  3. انقر تثبيت
  4. راجع الأذونات ووافق

عبر رفع الملف

  1. في لوحة التطبيقات، انقر رفع تطبيق
  2. اختر ملف .html (تطبيق ملف واحد) أو حزمة .ais (أرشيف ZIP)
  3. راجع الأذونات ووافق

راجع التحميل الجانبي للتطبيقات للاطلاع على التفاصيل الكاملة حول جميع طرق التثبيت.

إطلاق وإغلاق التطبيقات

إطلاق: انقر على زر فتح على أي بطاقة تطبيق مثبت. يستبدل التطبيق منطقة المحادثة ويسيطر على لوحة المحتوى الرئيسية.

إغلاق: يمكن للتطبيقات إغلاق نفسها عن طريق استدعاء ais.close()، أو يمكن للمستخدم النقر على زر X في شريط عنوان التطبيقات للعودة إلى عرض المحادثة.

عند إغلاق تطبيق:

  • يتم تدمير iframe وإزالة معالج الرسائل الخاص به
  • يتم استعادة منطقة المحادثة
  • أي حالة غير محفوظة في التطبيق تُفقد (يجب أن تستخدم التطبيقات ais.storage للاحتفاظ بالبيانات)

التطبيقات المدمجة

تأتي المنصة مع برنامجين مصغرين مدمجين:

مزامنة الجهاز

مزامنة الملفات الشخصية، مفاتيح API، والإعدادات بين الأجهزة. تدعم ثلاث طرق نقل:

  • مزامنة LAN -- اتصال مباشر بين الأجهزة على نفس الشبكة
  • رمز QR -- امسح رمزاً لاقتران الأجهزة
  • مرحل الإنترنت -- إشارات WebRTC عبر API للأجهزة على شبكات مختلفة

الأذونات: storage، config:read، auth:read، ui:toast، secrets:sync

منشئ التطبيقات

ابني صفحات ويب بصرياً مع توليد محتوى الذكاء الاصطناعي. اختر قالباً، حرر الأقسام باستخدام نموذج الذكاء الاصطناعي النشط، وصدّر كـ URL أو ملف HTML. انشر مباشرة إلى bcz.co مع اسم مخصص.

الأذونات: storage، chat:read، chat:write، ui:toast، auth:read، pages:publish

الخطوات التالية