> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerix.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# استبيانات NPS

> اسأل مستخدميك عن مدى احتمال أن يوصوا بتطبيقك، وفق جدول تتحكم فيه من لوحة التحكم.

## ما الذي تقدّمه

يطرح مؤشر صافي الترويج (NPS) سؤالاً واحداً: "ما مدى احتمال أن توصي بنا
لصديق؟"، وتكون الإجابة على مقياس من 0 إلى 10. يعرض Lerix السؤال في لوحة
منبثقة من أسفل الشاشة داخل تطبيقك، ثم يطرح سؤال متابعة يختلف بحسب الدرجة،
ثم يشكر المستخدم.

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

<CodeGroup>
  ```dart Flutter theme={"dark"}
  await Lerix.surveys.maybeShowNps(context);
  ```

  ```swift Swift theme={"dark"}
  Task { await Lerix.surveys.maybeShowNps() }
  ```

  ```kotlin Kotlin theme={"dark"}
  lifecycleScope.launch { Lerix.surveys.maybeShowNps(activity) }
  ```

  ```ts Web theme={"dark"}
  await Lerix.surveys.maybeShowNps();
  ```
</CodeGroup>

استدعِه في لحظة هادئة، كظهور الشاشة الرئيسية أو بعد إتمام طلب شراء. تقرّر
الحزمة على الجهاز ما إذا كان هذا التثبيت مستحقاً للاستبيان، ولا تعرض شيئاً
إن لم يكن كذلك. مرّر `force: true` أثناء الاختبار لتجاوز كل القواعد.

يعمل NPS في الحزم ذات الواجهة: Flutter، وSwift (iOS 15+ وmacOS 12+)، وKotlin،
وReact، وNext.js، وAngular، والويب (JS). راجع دليل كل إطار عمل في
[آخر هذه الصفحة](#الإعداد) للاستدعاء الدقيق.

## فئات الدرجات

تضع كل إجابة المستخدم في واحدة من ثلاث فئات:

| الفئة | الدرجات |
| - | - |
| **المنتقدون** | من 0 إلى 6 |
| **المحايدون** | 7 و8 |
| **المروّجون** | 9 و10 |

**NPS = نسبة المروّجين − نسبة المنتقدين**، فتتراوح النتيجة بين −100 و+100.
ويُحتسب المحايدون في المجموع دون أن يُضافوا إلى أي من الطرفين.

ويمكن أن يختلف سؤال المتابعة ورسالة الشكر بحسب الفئة، كأن تسأل المنتقدين
"ما الذي يمكننا تحسينه؟" وتسأل المروّجين "ما أكثر ما يعجبك؟".

## متى يظهر الاستبيان

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

| القاعدة | القيمة الافتراضية | المعنى |
| - | - | - |
| **الحد الأدنى لمرات التشغيل** | 3 | لا يُسأل المستخدمون الجدد تماماً. |
| **أول سؤال بعد** | 7 أيام | تُحسب من أول تشغيل للتطبيق. |
| **العيّنة** | 100% | نسبة التثبيتات التي يمكن أن ترى الاستبيان أصلاً. |
| **السؤال كل** | 90 يوماً | فترة الانتظار بعد أن يجيب المستخدم. |
| **بعد الإغلاق** | 14 يوماً | فترة الانتظار بعد أن يغلق المستخدم الاستبيان دون إجابة. |

بعض التفاصيل:

* **أول الاستبيانات موزّعة.** يحصل كل تثبيت على أول استبيان له في وقت عشوائي
  ضمن الدورة الأولى، فلا يُسأل كل المستخدمين في اليوم نفسه بعد إصدار جديد.
* **العيّنة ثابتة.** يُحدَّد دخول التثبيت في العيّنة من معرّف التثبيت، فيحصل
  التثبيت نفسه على النتيجة نفسها دائماً، وفي كل الحزم.
* **الإغلاق ليس إجابة.** إغلاق الاستبيان قبل اختيار درجة ينتظر فترة ما بعد
  الإغلاق فقط، لا الدورة كاملة. واختيار درجة يُعدّ إجابة حتى لو تخطى المستخدم
  سؤال المتابعة.
* **ما الذي يُعدّ تشغيلاً.** على الجوال وسطح المكتب: فتح التطبيق في الواجهة.
  وعلى الويب: جلسة جديدة (بعد 30 دقيقة من عدم النشاط).
* **سجلات التصحيح تشرح السبب.** مع تفعيل `debugMode`، تسجّل الحزمة القاعدة
  التي منعت ظهور الاستبيان وموعد استحقاقه التالي.

## الإعداد من لوحة التحكم

افتح **الملاحظات ← الاستبيانات**. يُنشأ استبيان NPS افتراضي بنصوص عربية
وإنجليزية في أول مرة تطلب فيها إحدى الحزم الاستبيانات، فيعمل `maybeShowNps()`
دون أي إعداد. افتحه لتغيير:

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

## النتائج

لكل استبيان تبويبان.

يعرض تبويب **النتائج**:

* قيمة NPS مع توزيع المروّجين والمحايدين والمنتقدين. وتنبّهك اللوحة إن قلّت
  الإجابات عن 30 إلى أن إجابة واحدة تحرّك النتيجة كثيراً.
* **معدل الاستجابة**: الإجابات ÷ مرات العرض، مع عدد المرات التي أُغلق فيها
  الاستبيان أو لم يُتخذ فيها إجراء بعد. يدلّك هذا على ما إذا كان الاستبيان
  يظهر في لحظة مناسبة.
* **الاتجاه الأسبوعي** و**توزيع الدرجات**.
* قيمة NPS لكل إصدار من التطبيق ولكل منصة، لترى إن كان إصدار ما قد غيّر شعور
  المستخدمين.

ويسرد تبويب **الإجابات** كل إجابة بدرجتها ورسالتها ومنصتها وإصدار التطبيق
ومعرّف المستخدم. صفِّها حسب الفئة، أو حسب وجود رسالة.

### تنبيهات المنتقدين

حين يجيب مستخدم بدرجة من 0 إلى 6، يتلقى أعضاء المشروع تنبيهاً، وبريداً
إلكترونياً إن فعّلوا تنبيهات المنتقدين. ولنشر إجابات المنتقدين في Slack أو
على خادمك، أضِف [Webhook](/ar/developers/webhooks) للحدث `nps.detractor`. وإن
استدعى التطبيق [`setUser`](/ar/modules/users-identity)، فستعرف بالضبط من
تتابع معه.

## الإعداد

* [Flutter](/ar/frameworks/flutter/feedback-analytics)
* [Swift](/ar/frameworks/ios/feedback-analytics)
* [Kotlin](/ar/frameworks/android/feedback-analytics)
* [React](/ar/frameworks/react/feedback-analytics)
* [Next.js](/ar/frameworks/nextjs/feedback-analytics)
* [Angular](/ar/frameworks/angular/feedback-analytics)
* [الويب (JS)](/ar/frameworks/web/feedback-analytics)

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


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.