الصفقات في نظام CRM
تُعرض الصفقات في CRM كبطاقات تحتوي على معلومات عن العميل، واسم الصفقة، والوصف، والمبلغ.

يمكنك إضافة حقول أخرى إذا لزم الأمر (انظر الشكل 8-12).
زر "إنشاء صفقة"

الـ إنشاء صفقة تتيح لك النافذة إعداد صفقة جديدة وحفظها بسرعة.

املأ النموذج لإنشاء عميل. إذا كان العميل موجودًا، فسيطلب منك MaviBot تحديده من قاعدة البيانات.

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

يمكن أيضًا إضافة متغيرات الصفقة في النموذج المنبثق:

بعد ذلك، انقر على "إنشاء" لإضافة الصفقة إلى النظام.
زر "الإضافة السريعة"
يمكن أن يساعد هذا الزر أيضًا في إضافة عميل جديد يدويًا إلى CRM.

انقر على الزر لفتح نافذة يمكنك فيها إدخال تفاصيل العميل.

الشكل 26 نافذة إنشاء صفقة سريعة (ملاحظة: جميع البيانات خيالية؛ وأي تشابه هو محض صدفة.)
وبذلك، سيتم إنشاء الصفقة في "مهتم" المرحلة.
تم!
الآن أصبحت تعرف كيفية إنشاء الصفقات.
كيفية إنشاء صفقة من روبوت الدردشة
مثال لتدفق روبوت الدردشة لإنشاء صفقة عبر دالة
نظرة عامة على العملية:
أنشئ كتلة Start

أنشئ كتلتين للأزرار.

انتقل إلى إعدادات الاتصال، وفعّل خيار "يدخل المستخدم البيانات"، وحدد اسم الخدمة التي سيدخلها المستخدم.

ثم أضف السؤال "ما اسمك؟" في كتلة بيضاء. أنشئ كتلة جديدة أسفلها وفعّل "User enters data" في إعدادات السهم الخاصة بها.

الإعداد "يدخل المستخدم البيانات" مع المتغير name مفعّل في كل اتصال يؤدي إلى كتلة "أدخل رقم هاتفك".
الآن، أنشئ كتلتين — "Chat" و "Fallback" — من كتلة "أدخل رقم هاتفك".

حدد "RegEx math" النوع في إعدادات الاتصال.
فعّل الإعداد "يدخل المستخدم البيانات".
أدخل اسم المتغير:
phone.

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

فعّل "User enters data" الإعداد في الاتصال وأدخل اسم المتغير:
budget.

فعّل "User enters data" خانة الاختيار في الاتصال وحدد متغير الهاتف client_name.
يمكنك إما تغيير نوع الكتلة الأخيرة إلى "Leads" أو استخدام
create_order.هذا هو الخيار مع الكتلة الحمراء "Leads".

مثال.

تُستخدم الدالة create_order(name, budget, description, client_name, phone, email, state_id) لإنشاء صفقة من روبوت الدردشة في CRM.
المعلمات
ستكون الصفقة النشطة الحالية في القمع، إلى جانب المتغيرات، متاحة فقط في وظائف إدارة الصفقات وCRM.
name
اسم الصفقة.
معامل اختياري، وإذا لم يتم تمريره، فسيُطبَّق على الصفقة النشطة الحالية للعميل
budget
قيمة الصفقة (رقم). معامل اختياري، وإذا لم يتم تمريره، فسيُطبَّق على الصفقة النشطة الحالية للعميل. إذا مرّرت قيمة غير رقمية في budget المعامل، فستُرجع الدالة الرد: 'budget must be a number'
description
وصف الصفقة. معامل اختياري؛
client_name
(معامل اختياري) سلسلة نصية، اسم عميل جديد
phone
(معامل اختياري) سلسلة نصية، رقم هاتف لعميل جديد
البريد الإلكتروني
(معامل اختياري) سلسلة نصية، بريد إلكتروني لعميل جديد
state_id
يتيح لك الرقم تحديد الحالة التي ستكون عليها الصفقة بعد الإنشاء (معامل اختياري)
لإنشاء عميل، يجب تحديد متغير الهاتف أو البريد الإلكتروني. إذا تم تحديد الهاتف ولا يوجد عميل بهذا الهاتف في المشروع، فسيتم إنشاء عميل جديد.
إذا تم تحديد متغير البريد الإلكتروني دون متغير الهاتف، ولا يوجد عميل في المشروع بهذا العنوان، فسيتم إنشاء عميل جديد.
في التدفق، جمعنا البيانات التالية على مراحل:
Name - اسم الصفقة (في المثال، I need a website و I need a landing);
Budget — تكلفة الصفقة، والتي تم الإعلان عنها في الكتل بعد أن اختار العميل نوع الموقع الإلكتروني؛
Phone — رقم هاتف العميل
Client_name — اسم العميل
إذا كنت بحاجة إلى إنشاء صفقة في حالة معاملة محددة، فمرّر المعامل state_id.
مهم!
إذا لم تمرّر أي معاملات، فمرّر none بدلًا من المعامل (كما في الشكل 36، حيث تم تحديد none بدلًا من معامل البريد الإلكتروني).
أين تجد معرّف الحالة (المعامل state_id)

معرّف المرحلة:

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

Filter: يتيح لك تصفية الصفقات بمعايير مختلفة. يمكنك أيضًا حفظ الفلتر الذي أنشأته إذا كنت تستخدمه كثيرًا.

كيفية تشغيل روبوت عند انتقال صفقة إلى مرحلة جديدة في القمع
لتشغيل روبوت عند تغيير مرحلة الصفقة في قمع CRM:
انتقل إلى إعدادات المشروع.
افتح "Callbacks" .

انقر على "إعدادات رد النداء لتبديل مرحلة CRM":

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

ثم احفظ الإعدادات.
الآن، عندما تتغير حالة الصفقة — سواء تلقائيًا أو يدويًا — يتم إنشاء إشعار من أي مكان في الموقع، ويمكن استخدامه لتشغيل رد من الروبوت.
يبدو الإشعار كالتالي: crm_state_changed Funnel name:Stage name
سيظهر المتغير callback_query_id أيضًا في بطاقة العميل، ويخزن معرّف الصفقة التي تم إرسال الإشعار لها.

لتشغيل روبوتك استجابةً لهذا الحدث، أدخل نص رد النداء في حقل المشغل لاتصال أو كتلة قائمة على المشغّل (مثل كتلة Start أو Trigger).

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

عندما يتم نقل صفقة إلى "Failed" أو "Archived," تظهر نافذة منبثقة تطلب منك تحديد السبب. ينشئ هذا الإجراء متغير صفقة مطابقًا: failed_reason أو archived_reason.
يُحفظ السبب المُقدَّم في المتغير المقابل. إذا تمت استعادة الصفقة لاحقًا، فسيُضاف المتغير restored_from_failed أو restored_from_archived بالقيمة "true".
كيفية منع نقل صفقة إلى المرحلة المحددة
إذا كنت بحاجة إلى تقييد المراحل التي يمكن نقل الصفقات إليها يدويًا، فقم بتكوين التقييد في إعدادات الحالة.
افتح القمع وانتقل إلى إعدادات المرحلة.

استخدم إعدادات المرحلة لتقييد حركة الصفقة إلى مراحل محددة. حدّد المراحل المطلوبة في قائمة الاختيار (يسمح بتحديد عدة خيارات) واحفظ التغييرات.

بعد الحفظ، ستُبرز المراحل المقيّدة بصريًا في MaviBot CRM. ستظهر أغمق، وسيتم تعطيل نقل الصفقات إليها. وإذا طُبِّقت قيود حركة المرحلة، فستُخفى هذه المراحل أيضًا في واجهة دردشة العميل.
الاستجابة لحذف الصفقة في CRM
عند حذف صفقة في CRM، يستقبل الروبوت رد نداء باسم crm_lead_removed لإخطار العميل.

كيفية تبديل الصفقات
عند تنفيذ إجراءات على الصفقات مباشرة داخل صفحة CRM، يتم تشغيل ردود النداء التالية:
change_responsible_order— تغيّر المدير المعيّن للصفقة.crm_state_changed— تم نقل الصفقة إلى مرحلة أخرى في القمع.crm_system_state_changed— تم نقل الصفقة إلى Lost, Won، أو Archived.crm_lead_removed— تم حذف الصفقة.
بالإضافة إلى ذلك، ستتضمن متغيرات العميل callback_order_id، والذي يحتوي على معرّف الصفقة المحددة المتأثرة بإجراء CRM.
عند معالجة أحد هذه الردود، تصبح الصفقة المقابلة نشطة مؤقتًا داخل كتلة المعالجة، مما يتيح لك الوصول إلى متغيراتها مباشرةً.
وبمجرد انتقال التدفق إلى الكتلة التالية، تستأنف MaviBot منطقها القياسي — وسيؤدي أي وصول لاحق إلى متغيرات الصفقة إلى إرجاع القيم من أحدث صفقة نشطة للعميل.
كيفية تبديل صفقة إلى مرحلة نشطة في الروبوت
الـ switch_order(order_id) تتيح لك الدالة جعل صفقة محددة نشطة من أجل الوصول إلى متغيراتها.
order_id— معامل اختياري لمعرّف الصفقة المحددة. إذا لم يُذكر، تصبح أحدث صفقة للعميل نشطة.لتنشيط صفقة معينة، مرّر معرّفها إلى
switch_order(order_id).إذا استدعيت هذه الدالة داخل كتلة آلة حاسبة ووفّرت معرّف الصفقة المستهدف، فستتمكن من الوصول إلى متغيرات تلك الصفقة في جميع الكتل اللاحقة.

إذا كان switch_order إذا استُدعيت الدالة مع معرّف صفقة محذوفة أو غير موجودة، فلن يحدث أي تبديل. في هذه الحالة، ستعيد الدالة معرّف الصفقة النشط حاليًا للعميل (أو None إذا لم يكن لدى العميل أي صفقة نشطة).
لذلك يمكنك التحقق مما إذا كان التبديل ناجحًا من خلال مقارنة order_id الممرر إلى الدالة بالقيمة التي تُرجعها:
switch_result = switch_order(order_id)
result = if(switch_result == order_id, value_if_true, value_if_false)

إذا لم يتم تمرير أي وسيط إلى switch_order() فستقوم الدالة بتنشيط أحدث صفقة للعميل. يتيح لك ذلك إعادة الصفقة النشطة أو إعادة تعيينها — على سبيل المثال، بعد تنفيذ عمليات مع صفقة أخرى، أو عندما لا تحتاج إلى إبقاء صفقة مفعّلة مؤقتًا بواسطة رد نداء CRM.
Last updated