أدوات MCP
واتساب
أدوات MCP لربط واتساب والتنبيهات عليه والملفات التي تحتفظ بها المحادثة ومجموعات الفريق.
تتعلق هذه الأدوات بمساعد واتساب (هيثم) في أربعة أمور: أرقامك المرتبطة به، وهل ترسل إلى هذه الأرقام تنبيهات المنافسات، والملفات التي تحتفظ بها المحادثة، ومجموعات الفريق على واتساب. وربط الرقم نفسه بلا أداة، فتربطه من الهاتف كما يشرح هيثم، مساعدك.
| الأداة | ما تفعله |
|---|---|
| whatsapp_link_get | عرض أرقام واتساب المرتبطة |
| whatsapp_link_revoke | فصل رقم واتساب |
| whatsapp_alerts_get | عرض حالة تسليم التنبيهات على واتساب |
| whatsapp_alerts_set | ضبط تسليم التنبيهات على واتساب |
| whatsapp_attachments_list | عرض الملفات المحتفظ بها |
| whatsapp_attachment_read | قراءة نص ملف محتفظ به |
| whatsapp_attachment_discard | حذف ملف محتفظ به |
| whatsapp_groups_list | عرض مجموعات واتساب |
| whatsapp_groups_create | إنشاء مجموعة واتساب |
| whatsapp_groups_rename | إعادة تسمية مجموعة واتساب |
| whatsapp_groups_reset_invite_link | تجديد رابط دعوة المجموعة |
| whatsapp_groups_remove_participant | إزالة مشارك من مجموعة |
| whatsapp_groups_delete | حذف مجموعة واتساب |
الأرقام المرتبطة
تعمل أداتا هذا القسم على أرقام العضو صاحب الاتصال وحدها. ويبقى ربط رقم جديد من الهاتف نفسه بمراسلة المساعد.
whatsapp_link_get
يعرض أرقام واتساب التي ربطتها، الأحدث أولا. يظهر كل رقم مقنعا مع وقت ربطه وآخر رسالة منه وهل ترسل إليه التنبيهات. ويستطيع العضو ربط خمسة أرقام معا.
للقراءة فقط · الصلاحية whatsapp.read · كل الأدوار · الخطة الاحترافية وخطة المؤسسات
لا معاملات.
ما يعيده: linked (هل يوجد رقم مرتبط) وlinks (لكل رقم id وphone_masked وlinked_at وlast_message_at وalerts_enabled) وchat_link (الرابط الذي يفتح محادثة مع المساعد)، مع phone_masked وlinked_at وlast_message_at لأحدث رقم في المستوى الأعلى.
- لا يعاد الرقم كاملا أبدا. و
idهو ما تأخذه الأداتانwhatsapp_link_revokeوwhatsapp_alerts_set. وحقول المستوى الأعلى تصف أحدث رقم فقط، فاقرأlinksإن كانت لك عدة أرقام.
whatsapp_link_revoke
يفصل أحد أرقام واتساب الخاصة بك، أو كلها إن لم ترسل link_id. ويفقد المساعد وصوله عبر هذا الرقم فورا. وللربط من جديد راسل المساعد من ذلك الهاتف وافتح رابط التأكيد الذي يرد به.
يحذف بيانات أو يستبدلها · الصلاحية whatsapp.write · الأدوار: المالك، المدير، المبيعات، المشتريات · الخطة الاحترافية وخطة المؤسسات
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
link_id | string | لا | معرف الرقم المراد فصله (UUID)، ويأتي من whatsapp_link_get. إن حذفته فصلت كل أرقامك المرتبطة. |
ما يعيده: success وrevoked وقيمته one أو all.
- حذف
link_idيفصل كل الأرقام، فسم الرقم الذي تقصده. ومعرف لا يطابق رقما مرتبطا فعالا من أرقامك يرد بالخطأ 404. - يوقف الفصل أيضا مفتاح API الذي أنشئ لذلك الرقم، فينتهي وصول المساعد عبره، وتبقى أرقامك الأخرى تعمل.
تسليم التنبيهات
تنبيهات الكلمات المفتاحية والمنتجات تصل دائما إلى الإشعارات داخل المنصة. وتحدد هاتان الأداتان هل ترسل نسخة منها إلى كل رقم واتساب مرتبط. أما التنبيهات نفسها فتديرها أدوات التنبيهات والإشعارات والوسوم والفوترة.
whatsapp_alerts_get
يبين لكل رقم واتساب مرتبط هل ترسل إليه تنبيهات المنافسات المطابقة، وهي تنبيهات الكلمات المفتاحية والمنتجات.
للقراءة فقط · الصلاحية whatsapp.read · كل الأدوار · الخطة الاحترافية وخطة المؤسسات
لا معاملات.
ما يعيده: الرد نفسه الذي تعيده whatsapp_link_get. اقرأ منه links، وفيه لكل رقم id وphone_masked وalerts_enabled.
- يتوقف التسليم أيضا على مفتاح عام للمنصة يتحكم فيه مشغلو بروكداك، ولا تذكر الأداة حالته. فالقيمة
alerts_enabled: trueتعني أن الرقم مسموح له باستلام التنبيهات، لا أن تنبيها وصل. - الرقم الذي يربط حديثا تكون تنبيهاته مفعلة افتراضيا.
whatsapp_alerts_set
يفعل إرسال تنبيهات المنافسات المطابقة على واتساب أو يوقفه، لأحد أرقامك أو لكلها. وهو يضبط تفضيل الرقم وحده، أما التنبيهات فتبقى على حالها وتصل مطابقاتها إلى الإشعارات داخل المنصة في كل الأحوال.
يغير البيانات · الصلاحية whatsapp.write · الأدوار: المالك، المدير، المبيعات، المشتريات · الخطة الاحترافية وخطة المؤسسات
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
link_id | string | لا | معرف الرقم المراد تغييره (UUID)، ويأتي من whatsapp_alerts_get. إن حذفته انطبق التغيير على كل أرقامك المرتبطة. |
alerts_enabled | boolean | نعم | true ترسل التنبيهات المطابقة إلى الرقم، وfalse يكتم الرقم. |
{
"link_id": "3f6c1d52-8a4e-4c7b-9d21-5e0b7a9c4f18",
"alerts_enabled": false
}ما يعيده: success وupdated (one أو all) وalerts_enabled.
- معرف لا يطابق رقما مرتبطا فعالا من أرقامك يرد بالخطأ 404. وبلا
link_idتتغير كل أرقامك، وينجح الطلب حتى إن لم يكن لك رقم مرتبط. - المطابقات التي تظهر والرقم مكتوم لا ترسل حين تعيد التفعيل، ولا يرسل إلا ما يظهر بعد ذلك.
الملفات المحتفظ بها
حين يرسل أحد ملفا على واتساب تحتفظ به المحادثة 48 ساعة ليراه المساعد ويعمل عليه. وتتيح هذه الأدوات إيجاد تلك الملفات وقراءة نصها وحذف ما انتهى العمل عليه. وهي مصممة لمحادثة المساعد على واتساب، حيث يملأ معرف المحادثة تلقائيا، وأي عميل آخر يرسله بنفسه.
whatsapp_attachments_list
يعرض الملفات التي أرسلت على واتساب وما زالت المحادثة تحتفظ بها، الأحدث أولا، أي ما لم يحفظ على سجل بعد. استخدمه لتجد «الملف الذي أرسلوه»، ثم اقرأه بـwhatsapp_attachment_read، أو احفظه بإرسال staged_ref إلى أداة product_attachment_upload_url_create أو manufacturer_attachment_upload_url_create ثم أداة الإنهاء المقابلة، أو استورد جدولا بـsheet_import.
للقراءة فقط · الصلاحية whatsapp.read · كل الأدوار · الخطة الاحترافية وخطة المؤسسات
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
conversation_id | string | لا | معرف المحادثة على واتساب (UUID). يملأ تلقائيا داخل محادثة واتساب. أما من أي عميل آخر فيجب أن ترسله وإلا ردت الأداة بالخطأ 400. والملف لا يتاح إلا عبر المحادثة التي تحتفظ به. |
ما يعيده: attachments، لكل ملف ref (المرجع الذي يبدأ بـwa-staged:) وfile_name وmime_type وsize_bytes وreceived_at، مع count.
- تعرض أحدث 20 ملفا على الأكثر. ويزال الملف تلقائيا بعد 48 ساعة من وصوله، والملف الذي حفظ على سجل لا يظهر هنا.
whatsapp_attachment_read
يعيد نص ملف تحتفظ به المحادثة: الجدول بصيغة جدول مرقم، وملف Word أو PowerPoint أو الملف النصي أسطرا، وملف PDF من طبقة النص صفحة صفحة. والقراءة لا تستهلك الملف، فيبقى متاحا للحفظ والاستيراد بعدها.
للقراءة فقط · الصلاحية whatsapp.read · كل الأدوار · الخطة الاحترافية وخطة المؤسسات
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
ref | string | لا | مرجع الملف الذي يبدأ بـwa-staged: أو معرفه (UUID)، ويأتي من whatsapp_attachments_list، حتى 200 حرف. إن حذفته أو أرسلت latest قرئ أحدث ملف محتفظ به. الافتراضي latest. |
conversation_id | string | لا | معرف المحادثة على واتساب (UUID). يملأ تلقائيا داخل محادثة واتساب. أما من أي عميل آخر فيجب أن ترسله وإلا ردت الأداة بالخطأ 400. والملف لا يتاح إلا عبر المحادثة التي تحتفظ به. |
ما يعيده: ref وfile_name وmime_type وsize_bytes وkind (sheet أو document أو text أو pdf) وtruncated وtext.
- يقطع النص عند 40000 حرف وتصير
truncatedبقيمةtrue. والملف الذي يتجاوز 20 ميغابايت يرد بالخطأ 413، ويمكن حفظه بمرجعه دون قراءة. والجدول الطويل يستورد بـsheet_import الذي يقرأ كل صفوفه. - الصور وملفات PDF الممسوحة والرسائل الصوتية والفيديو لا نص فيها تعيده الأداة، فترد بالخطأ 422. أما الصور والملفات الممسوحة فيراها المساعد في المحادثة نفسها ما دامت محتفظا بها.
- يرد 404 إذا لم تحتفظ المحادثة بأي ملف، أو لم يكن فيها ملف بهذا المرجع.
whatsapp_attachment_discard
يحذف النسخة المخزنة من ملف واحد انتهى العمل عليه، فيتوقف عرضه على المساعد مع كل رسالة جديدة. استخدمه بعد أن تنشأ السجلات التي أرسل الملف من أجلها، أو حين يقول صاحبه إنه انتهى منه. ولا رجعة فيه: لا يعيد الملف إلا إرساله من جديد.
يحذف بيانات أو يستبدلها · الصلاحية whatsapp.write · الأدوار: المالك، المدير، المبيعات، المشتريات · الخطة الاحترافية وخطة المؤسسات
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
ref | string | نعم | المرجع الدقيق للملف المراد حذفه (wa-staged: أو معرفه UUID)، ويأتي من whatsapp_attachments_list، حتى 200 حرف. ولا تقبل القيمة latest حتى لا يحذف ملف خطأ. |
conversation_id | string | لا | معرف المحادثة على واتساب (UUID). يملأ تلقائيا داخل محادثة واتساب. أما من أي عميل آخر فيجب أن ترسله وإلا ردت الأداة بالخطأ 400. والملف لا يتاح إلا عبر المحادثة التي تحتفظ به. |
ما يعيده: discarded (وقيمتها true) وref وfile_name وnote يذكر أن النسخة حذفت.
- الحذف لا ينقض ما قرئ من الملف أو كتب منه أثناء الاحتفاظ به. والملف الذي حفظ على سجل أو حذف أو انتهت مدته يرد بالخطأ 404.
- يرد 400 إذا كان المرجع
latestأو لم يكن مرجعا صالحا.
مجموعات الفريق
مجموعة الفريق مجموعة واتساب تنشئها المؤسسة لفريقها، ولا ينضم الناس إليها إلا عبر رابط الدعوة. ويقبل طلب الانضمام تلقائيا إذا كان الهاتف لعضو في الفريق (رقم جواله المسجل أو رقم واتساب مرتبط به) وكان في المجموعة متسع، والحد الأقصى للمشاركين 8. وكل طلب آخر يرفض. هذه الأدوات للمالك والمدير، وإنشاء مجموعة يتطلب أن تكون المنصة قد فعلت المجموعات وأن تتسع خطتك لها.
whatsapp_groups_list
يعرض مجموعات الفريق على واتساب بحالتها ورابط دعوتها ومشاركيها، ويبين هل فعلت المنصة المجموعات وكم استهلكت من حصة خطتك. ويعلم كل مشارك هل هو عضو في الفريق.
للقراءة فقط · الصلاحية whatsapp.read · الأدوار: المالك، المدير · الخطة الاحترافية وخطة المؤسسات
لا معاملات.
ما يعيده: enabled وmax_participants وlimit (والقيمة -1 تعني بلا حد) وcurrent (عدد المجموعات القائمة) وgroups، لكل مجموعة id وsubject وdescription وstatus وinvite_link وfailure_reason وcreated_at وparticipant_count وparticipants (wa_id وjoined_at وis_team_member وmember_email).
statusهيcreatingأوactiveأوsuspendedأوfailed، ولا تظهر المجموعات المحذوفة. وتبين المجموعة الفاشلة سببها فيfailure_reason، وتعيد الفاشلة والمحذوفة مكانها إلى حصة خطتك.
whatsapp_groups_create
ينشئ مجموعة واتساب بالاسم الذي تعطيه. والإنشاء لا يتم لحظة الطلب: تبدأ المجموعة creating وتصير active مع رابط دعوة حين يؤكد واتساب، فاعرض المجموعات مرة أخرى بعد قليل. وشارك رابط الدعوة مع الفريق.
يغير البيانات · الصلاحية whatsapp.write · الأدوار: المالك، المدير · الخطة الاحترافية وخطة المؤسسات
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
subject | string | نعم | اسم المجموعة كما يظهر في واتساب، من 1 إلى 100 حرف. |
{
"subject": "Acme Tenders Team"
}ما يعيده: success وgroup: المجموعة الجديدة بحالة creating، ويردان بالرمز 201.
- يرد 403 إذا لم تفعل المنصة المجموعات، ولا شيء تغيره من جانبك. ويرد 402 بالرمز
plan_limit_reachedمعfeatureوlimitوcurrentإذا استنفدت حصة خطتك: خطة البداية لا تتيح مجموعات، والاحترافية تتيح 5، وخطة المؤسسات بلا حد. - إذا رفض واتساب الطلب (الخطأ 502) سجلت المجموعة
failedمع السبب، وعاد مكانها إلى الحصة. والمجموعاتcreatingوactiveوsuspendedتحسب من الحصة.
whatsapp_groups_rename
يغير اسم المجموعة في واتساب. ويجب أن تكون المجموعة active.
يغير البيانات · الصلاحية whatsapp.write · الأدوار: المالك، المدير · الخطة الاحترافية وخطة المؤسسات
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
group_id | string | نعم | معرف المجموعة لدى بروكداك (UUID)، ويأتي من whatsapp_groups_list. وهو غير معرفها داخل واتساب. |
subject | string | نعم | الاسم الجديد، من 1 إلى 100 حرف. |
{
"group_id": "c9a1e7b4-52d0-4f36-8b1a-7d4e2f90a6c3",
"subject": "Acme Tenders Team (Riyadh)"
}ما يعيده: success.
- يرد 404 إذا لم توجد المجموعة، و409 إذا لم تصر
activeبعد، و502 إذا رفض واتساب الطلب.
whatsapp_groups_reset_invite_link
ينشئ رابط دعوة جديدا للمجموعة، ويتوقف الرابط السابق عن العمل فورا. استخدمه إذا وصل الرابط إلى من هم خارج الفريق.
يحذف بيانات أو يستبدلها · الصلاحية whatsapp.write · الأدوار: المالك، المدير · الخطة الاحترافية وخطة المؤسسات
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
group_id | string | نعم | معرف المجموعة لدى بروكداك (UUID)، ويأتي من whatsapp_groups_list. وهو غير معرفها داخل واتساب. |
ما يعيده: success وinvite_link الجديد.
- يجب أن تكون المجموعة
active، وإلا ردت الأداة بالخطأ 409. ويرد 404 إذا لم توجد المجموعة، و502 إذا رفض واتساب الطلب.
whatsapp_groups_remove_participant
يزيل مشاركا واحدا من المجموعة برقم هاتفه. وتتحدث قائمة المشاركين حين يؤكد واتساب الإزالة، بعد لحظات.
يحذف بيانات أو يستبدلها · الصلاحية whatsapp.write · الأدوار: المالك، المدير · الخطة الاحترافية وخطة المؤسسات
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
group_id | string | نعم | معرف المجموعة لدى بروكداك (UUID)، ويأتي من whatsapp_groups_list. وهو غير معرفها داخل واتساب. |
wa_id | string | نعم | رقم المشارك أرقاما مع مفتاح الدولة، وهو wa_id الذي تعرضه whatsapp_groups_list، من 8 إلى 20 خانة. وتهمل الرموز غير الأرقام. |
{
"group_id": "c9a1e7b4-52d0-4f36-8b1a-7d4e2f90a6c3",
"wa_id": "966501234567"
}ما يعيده: success: طلبت الإزالة. اعرض المجموعات مرة أخرى لترى أثرها.
- يرد 404 إذا لم توجد المجموعة، و409 إذا لم تنشأ على واتساب بعد، و502 إذا رفض واتساب الطلب.
- الإزالة لا تغير رابط الدعوة. ولإيقاف الروابط القديمة استخدم whatsapp_groups_reset_invite_link.
whatsapp_groups_delete
يحذف المجموعة في واتساب لكل المشاركين. ولا رجعة فيه، ويعود مكان المجموعة إلى حصة خطتك.
يحذف بيانات أو يستبدلها · الصلاحية whatsapp.write · الأدوار: المالك، المدير · الخطة الاحترافية وخطة المؤسسات
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
group_id | string | نعم | معرف المجموعة لدى بروكداك (UUID)، ويأتي من whatsapp_groups_list. وهو غير معرفها داخل واتساب. |
ما يعيده: success.
- المجموعة التي لم تصل إلى واتساب قط، أي الفاشلة أو التي ما زالت تنشأ بلا معرف في واتساب، تزال من جانب بروكداك وحده.
- يرد 404 إذا لم توجد المجموعة. وإذا رفض واتساب الحذف ردت الأداة بالخطأ 502 وبقيت المجموعة.