تخطَّ إلى المحتوى الرئيسي
العودة إلى المدونة

روبوتات المحادثة للمواقع

روبوت محادثة الموقع لا يُحمّل؟ افحصوا CSP والموافقة بأمان

شخّص تعطل تحميل روبوت المحادثة. ميّز بين CSP والموافقة والبرنامج النصي والإعداد وطلبات الإجابة بمصفوفة آمنة للموارد والحالات.

ملاحظات عمليةAchla AI
نُشر
حُدّث

7 دقائق للقراءة

عدسة مكبرة أمام بوابة برتقالية على مسار داكن، وخلفها فقاعة محادثة خضراء مزرقة.

عندما لا يُحمّل روبوت محادثة الموقع، حددوا المرحلة التي أخفقت قبل تغيير الإعدادات: قد لا تحتوي الصفحة على المحمل، أو قد يحجب المتصفح موردًا، أو تؤخر قاعدة موافقة التحميل عمدًا، أو لا يكون الإعداد متاحًا، أو تكون واجهة مُركبة مخفية. الأداة المرئية التي لا تجد إجابة مشكلة مختلفة. ابدأوا بالصفحة وحالة الزائر وأدلة المتصفح، ثم أعطوا المسؤول الصحيح مشكلة محددة النطاق.

يقدم هذا الدليل قائمة أصلية للموارد والحالات لتقييم أداة محادثة الموقع. لا يوصي بتعطيل Content Security Policy أو نسخ قائمة السماح الخاصة بمورد آخر أو إعلان توافق إعداد للموافقة مع المتطلبات. قد ينتهي تشخيص مفيد بتعليق التكامل لعدم التوافق بدل تعليمات لإضعاف سياسة الموقع.

الكاتب: Achla AI، مؤسسة. المراجعة: 14 أكتوبر 2026. يجمع الإطار بين توثيق المتصفحات والموردين الحالي وإرشادات تثبيت Achla التي فُحصت، وأُعد بمساعدة الذكاء الاصطناعي. الأمثلة افتراضية؛ لم يُقَس حادث لعميل أو نتائج اختبار متصفح. الهدف جعل مشكلة التحميل قابلة للفحص قبل تقييم الأداة أو تغييرها من مالك الموقع.

ما المفقود: الواجهة أم الطلب أم مصدر الإجابة؟

صفوا ما يراه الزائر فعلًا. عبارة «روبوت المحادثة معطل» تجمع ملاحظات متعددة تحتاج إلى مسؤولين وتصحيحات مختلفة.

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

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

سجلوا الصفحة العامة بدقة والحالة التي تحدث فيها المشكلة. معاينة محرر مسجل الدخول ليست دليلًا على تجربة الزائر المجهول. دوّنوا هل فُتحت الصفحة للتو، أم أُعيدت زيارتها، أم وصل إليها الزائر بعد اختيار الموافقة.

اتبعوا مصفوفة الموارد والحالات

استخدموا ورقة العمل الأصلية هذه لتسجيل الأدلة بدل تخمين حل. تصف الصفوف حالات محتملة، لا قياسات لحادث حقيقي.

المرحلةالأدلة المطلوب تسجيلهاسؤال للمسؤول
ترميز الصفحةوجود التكامل المتوقع أو غيابه في الصفحة المنشورةهل يملك القالب أو الموصل نطاق الصفحات المقصود؟
المحملرابط البرنامج النصي وحالة الطلب ورسالة وحدة التحكم ذات الصلةهل طُلب المحمل أم حُجب أم تعذر تحميله؟
الإعدادطلب الإعداد والاستجابة القابلة للملاحظةهل وصل إلى الخدمة المتوقعة وهل الحالة الموثقة جاهزة؟
طلب الإجابةما يحدث بعد إرسال سؤال اختبار عامهل الطلب محجوب أو مرفوض أم يعيد استجابة قابلة للاستخدام؟
الواجهة المُركبةعناصر التحكم المرئية وأي عنصر مخفي أو مزاحهل رُكبت الأداة لكنها لم تظهر حيث يُتوقع؟
تسلسل الموافقةملاحظات زيارة جديدة ورفض وقبول وعودةهل تأخير التحميل مقصود وهل يعمل التسلسل الموافق عليه؟

اتركوا الحقل المجهول مجهولًا. «لم يُرصد طلب» و«رُفض الطلب» سجلان مختلفان. التقطوا رسالة محددة من وحدة التحكم أو نتيجة طلب إن توفرت، بدل وصف كل إخفاق بأنه CORS.

أضيفوا شرط قبول بجوار الصف الذي أخفق. مثلًا، «بعد اختيار الموافقة المعتمد، يصل طلب الإعداد الموثق إلى خدمته المقصودة» أنفع من «اجعل الروبوت يظهر». للواجهة المخفية قد يحدد الشرط الصفحة المنشورة وموضع عنصر التحكم المقصود. كلاهما معايير مقترحة، لا فحوص مكتملة.

أسندوا الصف إلى مسؤول تلك الطبقة. مشكلة القالب لمسؤول صيانة الموقع؛ ومتطلب السياسة المختلف عليه لمسؤول الأمان؛ والتأخير المتعمد لمسؤول الموافقة. وقد يحتاج دعم المورد إلى توضيح شرط موثق. تجنبوا تغيير طبقة أخرى لمجرد سهولة الوصول إلى إعداداتها.

حددوا آلية التكامل أيضًا. يستخدم موصل WordPress ووحدة Drupal لدى Achla محملًا خاصًا، بدل وسم /w.js ملصق مباشرة. تشرح تعليمات التثبيت الحالية هذا الفرق. غياب ذلك الوسم بعينه وحده لا يثبت إخفاق الموصل.

استخدموا سؤالًا عامًا مضبوطًا واحدًا عند فحص مرحلة الإجابة. المهمة هنا معرفة هل يعمل مسار الطلب، لا إنشاء معيار جديد لجودة الإجابات. أبقوا تفاصيل الحساب الحساسة خارج مدخلات الاختبار والسجلات التشخيصية.

اقرأوا خطأ سياسة المتصفح قبل تعديل توجيه

Content Security Policy سياسة موارد في المتصفح. يشرح دليل CSP من MDN كيف تقيد المحتوى الذي تستطيع الصفحة تحميله أو تنفيذه. قد تعتمد الأداة على أكثر من برنامجها النصي الأول؛ لذلك قد ينجح المحمل ثم يُحجب طلب الإعداد أو التنسيق.

يتناول توثيق script-src مصادر البرامج النصية وتنفيذها. ويتناول توثيق connect-src الاتصالات التي تجريها واجهات مثل fetch. وللتنسيقات والإطارات اعتبارات خاصة بها. طابقوا رسالة المتصفح الفعلية مع المورد والتوجيه اللذين تسميهما.

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

تصف صفحة Intercom لحل أخطاء CSP الموارد وتشخيص السياسة الخاصة بـIntercom. وتصف إرشادات tawk.to عن صور الأداة المفقودة أعراض مواردها. توضح الصفحات لماذا قد تكون لدى واجهة ظاهرة جزئيًا مشكلة مرتبطة بمورد معين؛ وليست وصفات إعداد لـAchla.

إذا استخدم مسؤول الأمان سياسة للإبلاغ فقط لأغراض الملاحظة، فافصلوها عن السياسة المفروضة. تميز MDN بين الإبلاغ والإنفاذ. الملاحظة في وضع الإبلاغ فقط لا تثبت أن السياسة المفروضة تسمح بالأداة، وإضافتها لا تجيز إزالة وسائل الحماية الموجودة.

تعاملوا مع الموافقة كتسلسل حالات

قد يكون التحميل المتأخر مقصودًا. قبل اعتبار البرنامج النصي المفقود عيبًا، حددوا سلوك التحميل المعتمد للموقع والمسؤول عن إعداد موافقته.

يصف توثيق ChatLab للتحميل بعد الموافقة نهجًا صريحًا خاصًا بـChatLab. لا يثبت تكاملًا تلقائيًا مع كل مدير موافقة، ولا يثبت اتباع مورد آخر التسلسل نفسه. يجب على مسؤول الموقع تحديد التصنيف والمتطلبات المنطبقة.

استخدموا سجلًا مستقلًا لكل حالة مقصودة:

حالة الزائرما يجب ملاحظتهما يجب ألا يفترضه السجل
زائر جديدهل يُطلب المحمل قبل الاختيارأن كل روبوت محادثة يجب أن يُحمّل فورًا
الرفضهل يُحافظ على سلوك الرفض المعتمدأن غياب الأداة عيب تلقائيًا
القبولهل يبدأ تسلسل التحميل المتوقع ويكتملأن نجاح برنامج نصي واحد يثبت عمل التفاعل كله
العودةهل تنتج الخيارات المخزنة السلوك المقصودأن جلسة المحرر تمثل كل زائر

هذه إرشادات للملاحظة، لا استنتاجات قانونية أو نتائج اختبارات مُدعاة. إذا اختلف المتوقع عن المرصود، فسجلوا الحالة وأعطوا مسؤول الموافقة مشكلة قابلة لإعادة الإنتاج. لا تتجاوزوا آلية الموافقة بوصفها اختصارًا عامًا لحل الأخطاء.

قد تتحكم أداة الموافقة في تحميل البرنامج النصي بينما تتحكم سياسة المتصفح في طلب لاحق. سجلوا الاثنين بدل اختيار تفسير مبكر. قد تكشف حالة واحدة أكثر من مشكلة مستقلة.

ماذا لو تعارضت سياسة تنسيق صارمة مع الأداة؟

أحيانًا يكون الاستنتاج الصحيح أن متطلبات الأداة الموثقة لا تلائم سياسة الموقع.

يقول دليل تثبيت Achla الحالي إن الأداة تُدرج ورقة أنماطها كعنصر style، ويذكر السماح بالأنماط المضمنة ضمن متطلبات CSP. هذه حقيقة توافق تُراجع مع مسؤول الأمان، وليست توصية بمنح استثناء شامل من نوع unsafe-inline. لا يثبت التوثيق المفحوص وجود API لدى Achla لتكامل nonce أو hash.

قد يوثق مورد مختلف آلية أخرى. يصف سجل تغييرات CSP لدى SiteSpeakAI دعم nonce لأداته الخاصة. لا تثبت العبارة دعمًا مكافئًا لدى Achla ولا تبرر نسخ السمة إلى برنامج نصي آخر.

إذا كان الموقع يتطلب سياسة nonce أو hash صارمة، فعلّقوا التكامل حتى يتم التحقق من سلوك متوافق. اطلبوا من المورد أدلة حالية، أو قيّموا بديلًا تلبي متطلباته الموثقة السياسة. أشركوا مسؤولها؛ عمل الزر ظاهريًا لا يعني قبول تغيير في حدود الأمان.

وتناقش إرشادات BoldDesk لحل مشاكل CSP بدورها متطلبات أداة المحادثة الحية الخاصة بها. استخدموا توثيق كل مورد لصياغة الأسئلة، لا لجمع استثناءات عدة موردين في سياسة متساهلة واحدة.

جهزوا حزمة تشخيص أزيلت منها المعلومات الخاصة

يتيح التسليم المفيد لمسؤول صيانة الموقع أو مسؤول الموافقة أو المورد إعادة إنتاج المشكلة دون تلقي معلومات خاصة.

أدرجوا الصفحة العامة وتاريخ الملاحظة وآلية التكامل والموضع المقصود وحالة موافقة الزائر والمرحلة التي أخفقت في المصفوفة. أضيفوا أصل المورد المعني ونتيجة الطلب ورسالة وحدة التحكم. وضحوا هل كانت الواجهة غائبة أو مخفية أو مُعدّة لكنها لا تجيب، أم تنتظر اختيار موافقة مقصودًا.

مثلًا، قد يقول سجل افتراضي: «صفحة سياسة منشورة؛ جلسة مجهولة جديدة؛ اختير القبول؛ طُلب المحمل؛ حُجب طلب الإعداد بتوجيه الاتصال المحدد؛ لا طلب إجابة بعد». يضيق ذلك نطاق البحث دون الزعم بأن عميلًا حقيقيًا مر بهذا التسلسل.

احجبوا بيانات الدخول والمفاتيح الخاصة ومعرفات الجلسات والرسائل الشخصية وبيانات الحساب. ينبغي ألا تحتوي الحزمة على محادثة خاصة كاملة أو أرشيف شبكة غير مُراجع. سجلوا الحد الأدنى من المعلومات اللازمة لتمييز المورد والحالة المخفقين، مع مسؤول محدد عن القرار التالي.

أعيدوا اختبار الحالة نفسها بعد تصحيح واحد موافق عليه

حددوا التصحيح والمسؤول عنه قبل تنفيذه. ثم كرروا الصفحة نفسها وحالة الزائر والسؤال العام. سجلوا ما تغير والمرحلة التي نجحت أو بقيت مجهولة. تجنبوا جمع استبدال البرنامج النصي وتغييرات الموافقة والسياسة في نتيجة واحدة بلا تفسير.

إذا استمرت وحدة التحكم في الإبلاغ عن انتهاك، فأعيدوا التوجيه والأصل الدقيقين إلى مسؤول الأمان. وإذا لم تكن استجابة الإعداد جاهزة، فاتبعوا شروط المورد المسبقة الموثقة. وإذا كانت الواجهة وحدها مخفية، فافحصوا موضعها بدل تعديل أذونات الشبكة.

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

قيّموا متطلبات Achla الحالية قبل الربط

استخدموا المصفوفة المكتملة كقائمة توافق: هل تتلاءم متطلبات التثبيت والسياسة والمحتوى العام الموثقة للأداة مع هذا الموقع بالذات؟ لمسارات CMS المحددة، راجعوا موصل WordPress الموجود أو وحدة Drupal. يعتمد مسار البرنامج النصي العام على قدرة الموقع الفعلية على تضمينه والسماح به؛ ولا يثبت تكاملًا مخصصًا مع CMS آخر.

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