Skip to content
English

إعداد الرسائل القصيرة (SMS) و WhatsApp في نظام نما ​

يدعم نظام نما إرسال الرسائل عبر SMS و WhatsApp إلى المستخدمين والعملاء والموردين وغيرهم. لتفعيل هذه الميزة، قم بتهيئة الإعدادات المناسبة من شاشة الإعدادات العامة (Global Configuration).

قائمتا المزودين ​

تخرج الرسائل من نما عبر واحد من جدولين في الإعدادات العامة: جدول إعدادات SMS وقائمة مزود الخدمة فيه تضم كل بوابات الإرسال التي تشحن مع هذه النسخة، وجدول إعدادات رسائل WhatsApp وقائمته تضم خدمات الواتساب. وتظهر عدة خدمات في القائمتين معاً — فاختيار بوابة واتساب من جدول SMS يرسل الرسالة عبر الواتساب بدلاً من رسالة قصيرة.

قائمة مزود الخدمة في إعدادات SMS تقرأ:

mobilyws · maktoobicom · androidsmsgateway · sms.com.eg · SMS Misr · taqnyat.sa · Vodafone Egypt · jawalbsms.ws · Unifonic · URL Generic · waboxapp · UltraMsg.com WhatsApp Integration · Waapi.app WhatsApp Integration · WaPilot.net · WasenderAPI

وقائمة مزود الخدمة في إعدادات رسائل WhatsApp تقرأ:

Unifonic · Rasayel · Wati · Morasalaty · WaApi · UltraMsg · WaPilot.net · respond.io · WasenderAPI · Yeastar

وبعض المداخل تظهر معرّفاً صغير الأحرف كما هو (mobilyws وmaktoobicom وandroidsmsgateway وwaboxapp) — وهكذا تُقرأ على الشاشة. فاختر المدخل بنصّه لا باسم المزود التجاري، فالشركة الواحدة تحمل اسماً على موقعها واسماً آخر في القائمة.

مزود SMS: SMS Misr (smsmisr.com) ​


مزود SMS: Taqnyat (taqnyat.sa) ​

  • مزود الخدمة: taqnyat.sa
  • Sender: ادخل إلى portal.taqnyat.sa، انتقل إلى Send SMS، وانسخ اسم المرسل من القائمة المنسدلة.

TIP

💡 استخدم أداة Inspect في متصفح Chrome لنسخ القيمة بدقة.

لقطة شاشة حقل المرسل

  • Password (Bearer Token): انتقل إلى Developers > Application، اضغط أيقونة ➕، أدخل اسمًا، ثم اضغط علامة ✔️. انسخ الـ Bearer Token الناتج. لقطة شاشة Bearer Token

مزود SMS: Vodafone Egypt ​

  • مزود الخدمة: Vodafone Egypt

  • User Name: معرّف الحساب (Account ID)

  • Password: كلمة مرور API

  • Sender: اسم المرسل

  • Other Settings: المفتاح السري (Secret Key)

  • استعلام التصحيح (للتأكد من صيغة رقم الهاتف الصحيحة):

    sql
    select case when {to} like '2%' then {to} else concat('2',{to}) end

مزود SMS: URL Generic ​

URL Generic لبوابة رسائل ليس لها بند خاص بها لكنها تقبل عنوان ويب عاديًا. ويُستدعى العنوان بطريقة GET؛ فعّل Use POST Method حين يطلب المزود POST. الصق رابط الإرسال الكامل الخاص بالمزود في إعدادات أخرى (Other Settings) وضع هذه العلامات حيث يتوقع المزود كل قيمة، فيملؤها نما لكل رسالة:

العلامةتُستبدل بـ
{sender}المرسل (Sender) في السطر.
{to}رقم المستقبِل.
{user}User Name في السطر.
{password}Password في السطر.
{message}نص الرسالة كما هو.
{utf8message} / {utf8msg}نص الرسالة مرمَّزًا ليصلح داخل عنوان ويب — وهو الاختيار المعتاد. وتُرسل المسافات فيه بعلامة +.

مثال:

https://api.example.com/send?user={user}&pass={password}&from={sender}&to={to}&text={utf8msg}

واملأ Success Indicator بكلمة يحتويها رد المزود حين يقبل الرسالة؛ فإن تُرك فارغًا عُدّ كل رد يحتوي كلمة error فشلًا.

TIP

✅ بعد حفظ الإعدادات، سيتمكن نظام نما من إرسال الإشعارات والرسائل عبر المزود المحدد. تأكد من صحة بيانات الاعتماد ومعرّفات المرسل مع مزود الخدمة.


تكامل WhatsApp ​

تكامل WhatsApp عبر WAAPI.app ​

لتفعيل إرسال الرسائل عبر WhatsApp باستخدام منصة waapi.app، اتبع الخطوات التالية:


خطوات الإعداد ​

  1. إنشاء الحساب وربط واتساب
  • قم بإنشاء Instance جديدة على waapi.app
  • سجّل الدخول إلى WhatsApp عبر مسح رمز QR مسح رمز QR من الهاتف

TIP

⚠️ **يجب** مسح رمز QR باستخدام الهاتف الذي عليه حساب WhatsApp الفعّال.
  1. الحصول على API Token
  • انتقل إلى صفحة API Tokens
  • أدخل اسمًا مناسبًا، ثم اضغط "Create"
  • سيتم عرض الـ Token في نافذة منبثقة — انسخه وضعه في حقل كلمة المرور في إعدادات نما شاشة رمز التوكن
  1. الحصول على Instance ID
  • انتقل إلى صفحة Instances
  • انسخ معرّف الـ Instance
  • ضعه في حقل اسم المستخدم أو الإعدادات الأخرى في إعدادات الرسائل القصيرة في نما شاشة معرف الـ Instance

إعدادات نما ​

في شاشة إعدادات الرسائل:

  • مزود الخدمة: Waapi.app WhatsApp Integration
  • اسم المستخدم أو Other Settings: معرّف الـ Instance (Instance ID)
  • كلمة المرور: رمز الـ Token

التكامل مع WhatsApp باستخدام ultramsg.com ​

لإرسال رسائل WhatsApp من نظام نما باستخدام ultramsg.com، اتبع الخطوات التالية:

الخطوة 1: إنشاء وربط الـ Instance ​

  • سجّل الدخول إلى لوحة تحكم UltraMsg.
  • أنشئ Instance جديدًا وقم بربطه بحساب WhatsApp عن طريق مسح رمز QR.

الخطوة 2: الدخول إلى إعدادات الـ Instance ​

لقطة شاشة لإدارة الـ Instance

الخطوة 3: الحصول على الـ Instance ID والرمز (Token) ​

  • ستجد Instance ID في رابط المتصفح، مثلًا: https://user.ultramsg.com/app/instances/instance.php?id=103251 في هذا المثال، الـ Instance ID هو 103251.

  • من قسم اختبار الواجهة، اختر Shell (cURL) لعرض مثال الاستخدام.

لقطة شاشة لاختيار cURL

  • انسخ Instance ID وToken من النموذج الظاهر.

لقطة شاشة لـ Instance ID والرمز

الخطوة 4: الإعداد داخل نظام نما ​

  • استخدم Instance ID كاسم المستخدم (Username) أو كمُعرف للخدمة.
  • استخدم Token ككلمة مرور (Password) للمصادقة.

تكامل WhatsApp عبر WaPilot ​

لتفعيل إرسال رسائل WhatsApp من نظام نما باستخدام wapilot.net، اتبع الخطوات التالية:


خطوات الإعداد ​

  1. إنشاء حساب وربط واتساب

    • قم بإنشاء حساب على app.wapilot.net
    • أنشئ Instance جديدًا وقم بربطه بحساب WhatsApp عن طريق مسح رمز QR
  2. الحصول على Instance ID

    • من لوحة التحكم، انتقل إلى قائمة الـ Instances
    • انسخ Instance ID الخاص بك
  3. الحصول على API Token

    • من إعدادات الحساب أو صفحة API، قم بإنشاء أو نسخ API Token

إعدادات نما ​

في شاشة إعدادات رسائل الواتساب:

  • مزود الخدمة: WaPilot.net
  • اسم المستخدم (Public ID): معرّف الـ Instance (Instance ID)
  • كلمة المرور (Secret): رمز الـ API Token

TIP

يمكن استخدام WaPilot أيضًا كمزود للرسائل القصيرة (SMS) من خلال شاشة إعدادات الرسائل القصيرة، حيث يتم إرسال الرسائل عبر WhatsApp بدلاً من SMS التقليدي.


تكامل WhatsApp عبر WasenderAPI ​

لإرسال رسائل WhatsApp من نظام نما باستخدام wasenderapi.com، اتبع الخطوات التالية:


خطوات الإعداد ​

  1. إنشاء جلسة (Session) وربط واتساب

    • قم بإنشاء حساب على wasenderapi.com ثم افتح تبويب Sessions في لوحة التحكم
    • أنشئ Session جديدة وقم بربطها برقم WhatsApp عن طريق مسح رمز QR
  2. نسخ مفتاح API الخاص بالجلسة

    • لكل جلسة API Key خاص بها يظهر في صفحة الجلسة بعد ربط الرقم
    • هذا المفتاح مرتبط بالجلسة فقط؛ حذف الجلسة يلغي صلاحية المفتاح

إعدادات نما ​

في شاشة إعدادات رسائل الواتساب:

  • مزود الخدمة: WasenderAPI
  • كلمة المرور (Secret): مفتاح API الخاص بالجلسة
  • اسم المستخدم (Public ID): يُترك فارغًا. لا يستخدم WasenderAPI معرّف Instance، لذلك يكون الحقل معطلًا مع هذا المزود

للإرسال من عدة أرقام، أنشئ جلسة لكل رقم وأضف سطرًا لكل مرسل في جدول المعرفات العامة حسب المرسل (Public IDs by Sender) مع وضع مفتاح API الخاص بالجلسة في عمود Secret. اترك عمود Public ID فارغًا؛ فهو مطلوب فقط مع المزودين الذين يعملون بمعرّفات Instance.

رسائل الوسائط

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

حدود الإرسال

تسمح الخطط المدفوعة في WasenderAPI بإرسال رسالة واحدة تقريبًا كل 5 ثوانٍ لكل جلسة، بينما تقتصر الحسابات التجريبية على رسالة واحدة في الدقيقة و50 رسالة في اليوم. الرسائل التي تُرسل أسرع من ذلك يرفضها المزود وتظهر كمهام فاشلة تحمل تلميح "retry after" من المزود.

TIP

يمكن استخدام WasenderAPI أيضًا كمزود للرسائل القصيرة (SMS) من خلال شاشة إعدادات الرسائل القصيرة (مزود الخدمة WasenderAPI، كلمة المرور = مفتاح API الخاص بالجلسة)، حيث يتم إرسال الرسائل عبر WhatsApp بدلاً من SMS التقليدي.


تكامل WhatsApp عبر Yeastar ​

بعض الشركات تُشغّل رقم WhatsApp Business الخاص بها من خلال سنترال Yeastar P-Series، فيرد الموظفون على العملاء من تحويلاتهم الداخلية. يستطيع نما إرسال رسائل القوالب من نفس الرقم، مع نسبة كل رسالة إلى تحويلة الموظف المسؤول عن السجل: عرض السعر المرسل إلى العميل يظهر في السنترال باسم مندوب المبيعات صاحب العرض.

لا يتصل نما بالسنترال مباشرة. تنشر الشركة رابطاً صغيراً (Endpoint) أمام السنترال محمياً برمز (Token)، ويرسل نما كل رسالة إلى هذا الرابط، ثم يسلّمها الرابط إلى Yeastar.

قوالب فقط

هذا المزود يرسل قوالب WhatsApp المعتمدة فقط. لا توجد رسالة نصية حرة ولا نوع وسائط يُختار: المرفق، إن وُجد، يُرسل كمستند القالب.

ما تجهزه الشركة في جانب Yeastar ​

  1. ربط قناة WhatsApp بالسنترال واعتماد قوالب الرسائل، ولكل قالب متغيراته المسماة (مثل code1 وcode2).
  2. نشر الرابط على عنوان عام وتحديد رمز له. هاتان القيمتان هما كل ما يحتاجه نما: الرابط والرمز.

إعدادات رسائل WhatsApp لمزود Yeastar ​

في شاشة WhatsApp Message Configuration:

  • مزود الخدمة: Yeastar
  • Public Id / API Endpoint: رابط الـ Endpoint
  • Secret / Access Token: الرمز. يرسله نما كـ Bearer Token مع كل رسالة
  • استعلام تصحيح رقم الهاتف: ينتظر الرابط رقم المستلم بالصيغة الدولية مسبوقاً بعلامة + (مثل +201065837043). إذا كانت أرقام الجوال مخزنة بصيغة أخرى فاستخدم هذا الاستعلام لتحويلها إلى هذه الصيغة

صفحة Yeastar في رسالة WhatsApp ​

افتح شاشة WhatsApp Message واملأ صفحة Yeastar:

الحقلما يُكتب فيه
الإعدادات (Configuration)إعدادات Yeastar التي أنشأتها في الخطوة السابقة
Template Nameاسم القالب كما هو معتمد تماماً، مثل salsequotion_ar
ملحق كود المرسل (Sender Code Extension)التحويلة التي تُرسل الرسالة باسمها. يقبل صيغة Tempo، فيمكن أن يكون تحويلة ثابتة (102) أو قيمة تُقرأ من السجل ({n1})
Media URLاختياري. رابط الملف المرفق، مثل طباعة عرض السعر. يجب أن يكون متاحاً عبر الإنترنت
قالب اسم الملف (File Name Template)اختياري. الاسم الذي يراه المستلم للملف المرفق، مثل {code}
المدخلات (Parameters)سطر لكل متغير في القالب: المدخل يحمل اسم المتغير (code1) وقالب المدخل يحمل قيمته ({code})

بهذه القيم يخرج عرض السعر SQ260902208 من نما بهذا الشكل:

json
{
  "to": "+201065837043",
  "template": "salsequotion_ar",
  "sender_ext": "102",
  "file_url": "https://erp.example.com/erp/r/sq/SQ260902208.pdf",
  "file_name": "SQ260902208",
  "params": {
    "code1": "SQ260902208",
    "code2": "SQ260902208"
  }
}

ملحق كود المرسل إلزامي

لا يمكن حفظ الرسالة بدون ملحق كود المرسل. وإذا كان الحقل يقرأ قيمته من السجل، فالسجل الذي تكون فيه هذه القيمة فارغة لا تُرسل رسالته أصلاً: تفشل المهمة بدلاً من إرسال رسالة بلا تحويلة.

حالة الرسالة

تُعتبر الرسالة مرسلة بمجرد قبول السنترال لها، وتظهر بعدها ضمن السجلات المرتبطة بالرسالة مع رقم الرسالة في السنترال. لا يعود الرابط لاحقاً بأي تحديث، فلا تنتقل الحالة إلى «تم التسليم» أو «تمت القراءة».

رسائل قد تظهر لك مع Yeastar ​

ثلاث من هذه الرسائل ليس لها نص عربي، فتظهر بالإنجليزية على الشاشات العربية أيضاً.

الرسالةالسببما العمل
«حقل Public Id / API Endpoint مطلوب مع مزود الخدمة {0}»حُفظت الإعدادات بدون رابط الـ Endpointأدخل الرابط في حقل Public Id / API Endpoint
Sender code extension is required with {0} Providerرسالة WhatsApp تستخدم إعدادات Yeastar وحقل ملحق كود المرسل فيها فارغاملأ الحقل بتحويلة أو بصيغة Tempo
Could not send whatsapp message {0} via Yeastar: template name and sender code extension are requiredعند الإرسال كان اسم القالب فارغاً، أو أعطت صيغة التحويلة قيمة فارغة لهذا السجلاملأ Template Name، وتأكد أن السجل يحمل القيمة التي تُقرأ منها التحويلة
Could not send whatsapp message via Yeastar, response: {0}رفض الرابط أو السنترال الرسالة؛ والنص بعد النقطتين هو سبب السنترال نفسهراجع اسم القالب وأسماء المتغيرات ورقم المستلم مقابل المعتمد في السنترال

إرسال الواتساب من هواتف الموظفين (المرسل الديناميكي) ​

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

TIP

هذه الميزة متاحة لجميع مزودي خدمة WhatsApp المدعومين في النظام.


إعداد أرقام متعددة في إعدادات WhatsApp ​

في شاشة إعدادات رسائل WhatsApp، يوجد جدول Public IDs by Sender يتيح تعريف عدة أرقام (Instances) لنفس الإعدادات:

الحقلالوصفمطلوب
Sender IDمعرّف المرسل (مثل رقم الهاتف أو كود الموظف)نعم
Public IDمعرّف الـ Instance الخاص بهذا الرقمنعم، ما عدا Morasalaty وWasenderAPI لأنهما لا يستخدمانه
Secretالرمز السري - يمكن تركه فارغاً ليُقرأ من الحقل الرئيسيلا

TIP

إذا تُرك حقل Secret فارغاً في أي سطر، سيستخدم النظام القيمة الموجودة في الحقل الرئيسي (Secret) في رأس الشاشة.


تحديد المرسل المفضل في الإشعارات والموافقات ​

في شاشة تعريف الإشعار أو تعريف الموافقة، يوجد حقل المرسل المفضل لواتساب (WhatsApp Preferred Sender) يدعم صيغة Tempo للقيم الديناميكية.

أمثلة على صيغة المرسل المفضل: ​

الصيغةالوصف
{salesRep.mobile}رقم هاتف مندوب المبيعات المرتبط بالسجل
{createdByUser.mobile}رقم هاتف المستخدم الذي أنشأ السجل
{customer.accountManager.mobile}رقم هاتف مدير حساب العميل

كيف يعمل النظام

  1. عند إرسال رسالة WhatsApp، يحسب النظام قيمة المرسل المفضل باستخدام صيغة Tempo
  2. يبحث النظام عن هذه القيمة في جدول Public IDs by Sender
  3. إذا وُجد تطابق، يستخدم الـ Public ID والـ Secret من ذلك السطر
  4. إذا لم يُوجد تطابق، يستخدم القيم الافتراضية من رأس الشاشة

تكامل WhatsApp عبر WaboxApp ​

لتفعيل إرسال رسائل WhatsApp من نظام نما باستخدام WaboxApp، اتبع الخطوات التالية:


خطوات الإعداد ​

  1. تسجيل رقم الهاتف قم بتسجيل رقم WhatsApp الخاص بالشركة على هاتف متصل دائمًا بالإنترنت. 💡 يفضل استخدام محاكي أندرويد مثل www.memuplay.com لتوفير اتصال دائم.

  2. إنشاء حساب في WaboxApp

  • انتقل إلى www.waboxapp.com
  • أنشئ حسابًا جديدًا (يتطلب إدخال بيانات بطاقة ائتمان)
  1. إضافة رقم الهاتف إلى WaboxApp
  1. إعداد إضافة كروم الخاصة بـ WaboxApp
  • حمّل الإضافة من متجر Chrome
  • انسخ API Key من موقع WaboxApp إلى الإضافة، ثم اضغط Validate
  1. ربط واتساب ويب
  • افتح web.whatsapp.com باستخدام نفس متصفح كروم الذي يحتوي على الإضافة
  • امسح رمز QR من الهاتف
  1. الحصول على بيانات الاتصال
  • من لوحة التحكم في WaboxApp، انسخ:

    • API Token
    • رقم الهاتف بصيغة دولية (مثال: 201065122360 بدلاً من 01065122360)
  1. إعداد نما
  • افتح شاشة إعدادات الرسائل القصيرة

  • أضف سطرًا جديدًا واختر المزود: waboxapp

  • أدخل:

    • رقم الهاتف بصيغة دولية في حقل المرسل أو اسم المستخدم
    • API Token في حقل كلمة المرور

ملاحظات مهمة

  • يجب إبقاء الهاتف يعمل دائمًا واتصال الإنترنت مستمر.
  • يجب إبقاء WhatsApp Web مفتوحًا في متصفح كروم.
  • في حالة إغلاق أي من الطرفين، لن تُرسل الرسائل.
  • WaboxApp يخصم مبلغًا من بطاقة الائتمان إذا تجاوزت 100 رسالة/شهر (مرسلة أو مستقبلة).
  • يفضل استخدام هذا المزود في حقل مزود الرسائل المفضل ضمن إعدادات التنبيهات والمهام المجدولة.
  • استخدم الحقل يُستعمل فقط إذا كان مضافًا في المرسل المفضل في إعدادات مزود الخدمة (كما في الطلب KKDRQ00577) لتجنب استبدال مزود الرسائل دائمًا بـ WhatsApp.
  • يجب أن يكون رقم الهاتف بصيغة دولية، أي يبدأ بـ كود الدولة.