# نقل العميل بعد عدم النشاط

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

## كيف يمكن نقل العميل تلقائيًا عبر القمع؟

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

<figure><img src="/files/9bcefdab2f70b6e4179542ea32af66337c56e685" alt="" width="223"><figcaption><p>شكل 1</p></figcaption></figure>

من المثال (الشكل 1)، يمكنك أن ترى أن العميل ينتقل إلى أسفل القمع فقط إذا نقر زر «نعم!» الذي أرسلته الكتلة ما قبل الأخيرة. (وفي حالات أخرى، يمكن أن يكون المُشغِّل لمتابعة النزول في القمع أي شيء تقريبًا، وذلك وفقًا لشروط مسار روبوت المحادثة لديك.)

في هذا المثال (الشكل 1)، قررت العميلة Nastya عدم النقر على الزر في روبوت المحادثة، فتعلّقت المحادثة في الكتلة ما قبل الأخيرة من القمع:

<figure><img src="/files/e0d5561df02d4e3bf1a3f4b73e504eb30c985ec6" alt="" width="494"><figcaption><p>الشكل 2</p></figcaption></figure>

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

<figure><img src="/files/e2c39611c698ea3ba15942cefc30b2b5ec0ed65d" alt=""><figcaption><p>أنشئ سهمًا ثانيًا يؤدي إلى الكتلة</p></figcaption></figure>

الآن، اضبط مؤقتًا بالفاصل الزمني المطلوب في إعدادات السهم، بحيث ينتقل العميل تلقائيًا إلى الكتلة التالية:

<figure><img src="/files/f656495dd26b5ff106d3a3c1ec320e9c5a635bbf" alt="" width="563"><figcaption><p>الشكل 3</p></figcaption></figure>

تأكد من تفعيل **مفتاح «إلغاء إذا غادرت الكتلة»** (الشكل 3) لمنع إرسال الرسالة مرة أخرى بعد انتهاء المؤقت إذا كان العميل قد انتقل بالفعل إلى الكتلة التالية (على سبيل المثال، بالنقر على زر).

<figure><img src="/files/ef9f9c5b91c86865a90bc46e71c0cf8107617d87" alt="" width="563"><figcaption><p>مثال على الانتقال التلقائي</p></figcaption></figure>

يوضح المثال أعلاه أن الروبوت ينقل العميل تلقائيًا عبر القمع ويرسل الرسالة النهائية — حتى لو لم ينقر الزر. <br>

الآن، وبمساعدة السهم الثاني مع المؤقت المضبوط، سينتقل العميل إلى الأمام عبر القمع بعد فترة زمنية معينة.

## كيف تنقل عميلًا من الكتلة الأخيرة إلى كتلة أخرى؟

في مخطط التدفق (الشكل 4)، يمكنك أن ترى أن الكتلة ما قبل الأخيرة تحدد الكتلة التي سيدخلها عميلك، وذلك اعتمادًا على الزر الذي يضغطه في الكتلة ذات الفرعين:

<figure><img src="/files/74bb92bdeae6b948328fd2862ff2e428bdb6ba51" alt="" width="563"><figcaption><p>الشكل 4. مخطط تدفق بسيط لروبوت محادثة</p></figcaption></figure>

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

<figure><img src="/files/1399779eacfc84879893b923c44710447af4e598" alt="" width="518"><figcaption><p>انتقل العميل إلى الكتلة الأخيرة، ولا يستجيب الروبوت للنقرات المتكررة على الأزرار.</p></figcaption></figure>

في هذه الحالة، يمكنك حل المشكلة بطريقتين:

1. باستخدام **«الحالة غير النشطة»** الكتلة — هذه الوظيفة تُبقي العميل في الكتلة التي تحتوي على خيارات الأزرار دون نقله إلى الكتل التالية.
2. باستخدام **أزرار الاستدعاء** — هذه الوظيفة تنقل العميل إلى الكتل التالية، لكنها تظل تسمح له بتغيير اختياره إذا لم يكن راضيًا عن النتيجة.

### الكتلة «الحالة غير النشطة»

الكتلة «الحالة غير النشطة» هي كتلة رمادية. وعلى عكس كتلة «حالة الحوار»، لا تحتوي على شروط، ولا يمكن نقل العملاء إليها مباشرة.

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

لإعداد ذلك، انتقل إلى منشئ القمع وحدد نوع الكتلة **«الحالة غير النشطة»** (لا تخلط بينها وبين **«الحالة غير النشطة مع شرط»**).

<figure><img src="/files/52a5e7a311a041b4f7e722a6af8e0e3b49d856a9" alt=""><figcaption><p>الشكل 5 «الكتلة "الحالة غير النشطة"»</p></figcaption></figure>

الآن يبدو مخطط التدفق لدينا كما يلي:

<figure><img src="/files/e02fdebaf606e8c39b63aad9224aa4b18c442c69" alt="" width="563"><figcaption><p>الشكل 6</p></figcaption></figure>

لاختبار أن المسار يعمل بشكل صحيح، افتح مختبر الروبوت. هناك سترى أنه يمكن الضغط على أي زر بغض النظر عن اختيار العميل السابق:

<figure><img src="/files/9f26c61708ccd6caf8dfb14d71fd95d5d9ba0e90" alt="" width="518"><figcaption></figcaption></figure>

### أزرار الاستدعاء (Callback)

إذا كنت تحتاج فعلًا إلى أن ينتقل العميل إلى الأمام عبر القمع وينتقل إلى كتل أخرى، فإن وظيفة زر الاستدعاء ستساعدك.

للقيام بذلك، أزل الأسهم المؤدية إلى الكتل النهائية في مخطط التدفق واضبط نوع تلك الكتل على **«فحص الشرط الأساسي»**:

<figure><img src="/files/17143629ee8ddf1619374aa1ec1bb93557dae7b4" alt="" width="563"><figcaption><p>الشكل 7. مخطط تدفق مع كتل «فحص الشرط الأساسي»</p></figcaption></figure>

لننتقل إلى إعدادات الأزرار داخل الكتلة:

<figure><img src="/files/b0af891131b4ebea4c4818654486d4e7ca7dba84" alt=""><figcaption><p>الشكل 8. </p></figcaption></figure>

ستُفتح نافذة إعدادات زر «نعم!». هنا، قم بما يلي:

* حدد نوع الزر **«زر الاستدعاء»**
* في نص رسالة الرد، أدخل الكلمات أو العبارات اللازمة لحقل الشرط في **«فحص الشرط الأساسي»** الكتلة.

<figure><img src="/files/cfa96754ae7031393ef03f5451aabd8a1896b002" alt="" width="563"><figcaption><p>الشكل 9. تغيير إعدادات الزر</p></figcaption></figure>

اضبط الزر الثاني بالطريقة نفسها (في مسارنا، هذا هو زر "لا").

{% hint style="warning" %}
استخدم نصوصًا/عبارات مختلفة لحقلَي **«نص رسالة الرد»** في إعدادات الأزرار داخل المشروع نفسه لتجنب أخطاء روبوت المحادثة.
{% endhint %}

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

<figure><img src="/files/98269e36e1046ca06a37f03ed08ab803b975dfbf" alt="" width="563"><figcaption><p>الشكل 10. إعدادات كتلة «فحص الشرط الأساسي»</p></figcaption></figure>

اضبط الكتلة الثانية لزر «لا» بالطريقة نفسها.

وبهذه الطريقة، تكون قد تعلّمت كيفية نقل عميل تلقائيًا عبر القمع باستخدام ثلاث طرق مختلفة.

## النسخة المصوّرة من المقال

{% embed url="<https://youtu.be/vO5Q8aLKkrk>" %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/ar/kyfyh-.../nql-alamyl-bad-adm-alnshat.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
