SMPP (اختصار: بروتوكول نظير إلى نظير للرسائل القصيرة) مترجم من الإنجليزية يعني " رسالة قصيرةالعقد النظيرة" ويسمح لك بوصف التفاعل بين خادم الرسائل القصيرة والعميل النهائي. يعد هذا البروتوكول أحد أكثر البروتوكولات شيوعًا بين موفري خدمة الرسائل القصيرة الذين يستخدمونه للتبادل رسائل نصيةبين مراكز الرسائل القصيرة بحقوق متساوية. للعمل مع بروتوكول SMPP، يجب أن يكون لديك خادم قيد التشغيل باستمرار وبرنامج مناسب متوافق مع بوابة الرسائل القصيرة الخاصة بالموفر.
لا غنى عن البروتوكول لإرسال كمية كبيرة من الرسائل بشكل منتظم عبر قناة موثوقة وعالية السرعة. لذلك، يستخدم موفر خدمة الرسائل القصيرة عادةً هذا البروتوكول لتبادل رسائل SMS وUSSD في أنظمة خدمات القيمة المضافة، لتوصيل مختلف الأجهزة الأنظمة الخارجيةإلخ. يمكنك معرفة المزيد حول بروتوكول SMPP وكيفية إرسال البريد عن طريق الاتصال بالمتخصصين لدينا.
يمكن العثور على وصف الخطأ في مواصفات SMPP 3.4.
تنبيه: أنت بحاجة إلى إرسال قائمة بعناوين IP التي سترسل منها
اتصل قبل البدء في استخدام SMPP.
إعدادات الاتصال باستخدام SMPP
أوامر SMPP المدعومة
ستتلقى الأوامر غير المدعومة رسائل GENERIC_NAK مع رمز الخطأ ESME_RINVCMDID.
معلمات إرسال الرسالة (SUBMIT_SM) بواسطة بروتوكول smpp
قواعد العمل مع اتصال SMPP
عند إنشاء اتصال، يُمنح العميل 10 ثوانٍ لإرسال أمر BIND_TRANSMITTER أو BIND_TRANSCEIVER، وإلا سيتم إغلاق الاتصال.
يجب أن يستجيب العميل لجميع الحزم المستلمة عبر البوابة بحزمة إعادة الإرسال المقابلة خلال دقيقة واحدة، وإلا سيتم إغلاق الاتصال دون إرسال UNBIND.
الحصول على حالة تسليم الرسالة
هناك خياران للحصول على حالة التسليم باستخدام بروتوكول smpp (النشط والسلبي). ويفضل الخيار السلبي.
يتضمن الخيار السلبي تعيين علامة Registered_delivery لحزمة SUBMIT_SM.
بعد أن تصل الرسالة إلى حالتها النهائية، سيرسل الخادم حزمة DELIVER_SM مع رسالة إيصال التسليم. تنسيق رسالة إيصال التسليم أدناه.
خيار نشطيوفر الاستقصاء الدوري لحالة الرسالة عن طريق الإرسال
QUERY_SM.
صيغة إيصال التسليم
"id:IIIIIIIIII sub:SSS dlvrd:DDD تاريخ الإرسال:YYMMDDhhmm تاريخ الانتهاء:YYMMDDhhmm
الإحصائيات: DDDDDDD خطأ: E النص: . . . . . . . . "
رموز الخطأ المحجوزة للاتصال smpp
شفرة | وصف |
0x0400 (1024) |
لم يتم التعرف على الترميز |
0x0401 (1025) |
نص الرسالة كبير جدًا. الحد الأقصى لطوليجب ألا يتجاوز 160 |
بايت. 0x0402 (1026) |
حدث خطأ أثناء تسجيل الرسالة للإرسال. عندما يحدث هذا الخطأ اتصل بالدعم. |
0x0403 (1027) |
لم يتم التحقق من نص الرسالة بحثًا عن كلمات و/أو عبارات غير مناسبة |
0x0404 (1028) |
المرسل أو المستلم المدرج في القائمة السوداء |
0x0453 (1107) |
تم تفعيل تقييد الإرسال نفس النصلنفس الرقم خلال فترة قصيرة من الزمن. اتصل بالدعم إذا كنت تريد تعطيل الفترة أو تقليلها. |
0x043C (1084) |
لا تعريفة بأسعار معقولةللاتجاه المطلوب. |
0x043F (1087) |
لا التعريفة المناسبةمن الطرف المقابل المتفوق. |
0x045A (1114) |
لم يتم العثور على سياسة التوجيه. |
0x0446 (1094) |
خطأ في النقل. في حالة حدوث هذا الخطأ، يرجى الاتصال بخدمة العملاء. يدعم. |
0x433 (1075) |
لا توجد أموال كافية في الحساب. |
إرسال الرسائل القصيرة عبر بوابة smpp، smpp
أحد البروتوكولات لإرسال رسائل SMS هو SMPP. فهو يصف عملية التفاعل بين مستلم الرسالة، أي عميل smpp وخادم smpp، باستخدام نظام خاصنقل البيانات.
باستخدام إرسال رسائل CMC عبر بروتوكول SMPP كأساس، سوف تكون قادرًا على:
هكذا، بروتوكول smppيتمتع بقدرات كبيرة، والتي ترتبط مع ذلك ببعض ميزات الاستخدام والتثبيت، والتي سننظر فيها.
هل تحتاج إلى بوابة SMPP عالية الجودة؟اتصل بنا وسنوفر لك إمكانية الوصول للاختبار!
ميزات العمل مع SMPP
للعمل مع بروتوكول SMPP، يجب أن يكون لديك البرنامج المناسب (عميل SMPP، الإصدار 3.4). في هذه الحالة، يجب أن يكون الجهاز متصلاً باستمرار ببوابة شركة SMS-Agent. للتأكد من أن إرسال الرسائل القصيرة عبر SMPP يتم بسرعة ودون تأخير، يخضع جميع عملاء شركتنا لاختبار توافق المعدات. يتيح لك ذلك التخلص من العديد من الصعوبات التقنية في المرحلة الأولية.
بالإضافة إلى ذلك، قبل استخدام بروتوكول إرسال رسائل SMS، يمكن للمستخدمين اختبار إرسال رسائل SMS عبر SMPP لتحديد سرعة التسليم المطلوبة.
متخصصو SMS-Agent مستعدون دائمًا لتقديم المشورة بشأن استخدام خدمة SMPP واتصالها واختبارها، مما سيبسط مهمتك.
الاتصال عبر بروتوكول SMPP
System_id - اسم المستخدم المسجل في النظام
كلمة المرور - كلمة مرور المستخدم
عنوان - smpp.site
ميناء - 2775
المنفذ المستخدم لاتصال SSL المشفر هو 3443
أوامر SMPP المدعومة
معلمات إرسال الرسالة (SUBMIT_SM) عبر SMPP
قواعد العمل مع اتصال SMPP
عند إنشاء اتصال، يُمنح العميل 10 ثوانٍ لإرسال الأمر BIND_TRANSMITTER أو BIND_TRANSCEIVER. وإلا سيتم إغلاق الاتصال من قبل الخادم.
يلتزم العميل بالرد على جميع الحزم التي يرسلها الخادم مع حزمة الاستجابة المقابلة خلال دقيقة واحدة. وإلا، فسيتم إغلاق الاتصال من قبل الخادم دون إرسال UNBIND.
الحصول على حالة تسليم الرسالة
هناك خياران للحصول على حالة التسليم باستخدام بروتوكول smpp (النشط والسلبي). ويفضل الخيار السلبي.
يتضمن الخيار السلبي تعيين علامة Registered_delivery لحزمة SUBMIT_SM.
بعد أن تصل الرسالة إلى حالتها النهائية، سيرسل الخادم حزمة DELIVER_SM مع رسالة إيصال التسليم.
تنسيق رسالة إيصال التسليم أدناه.
يوفر الخيار النشط استقصاءً دوريًا لحالة الرسالة عن طريق إرسال QUERY_SM.
صيغة إيصال التسليم
"id:IIIIIIIIII sub:SSS dlvrd:DDD تاريخ الإرسال:YYMMDDhhmm تاريخ الانتهاء:YYMMDDhhmm stat:DDDDDD err:E النص: . . . . . . .."
رموز الخطأ المحجوزة للاتصال smpp
شفرة | وصف |
0x0400 (1024) | لم يتم التعرف على الترميز |
0x0401 (1025) | نص الرسالة كبير جدًا. يجب ألا يتجاوز الحد الأقصى للطول 160 بايت |
0x0402 (1026) | خطأ في تسجيل الرسالة. في حالة حدوث هذا الخطأ، يرجى الاتصال بالدعم |
0x0403 (1027) | لم يتم التحقق من نص الرسالة بحثًا عن كلمات و/أو عبارات غير مناسبة |
0x0404 (1028) | المرسل أو المستلم المدرج في القائمة السوداء |
0x0453 (1107) | لقد نجح التقييد المفروض على إرسال نفس النص إلى نفس الرقم |
0x043C (1084) | لا توجد أجرة متاحة للوجهة المطلوبة |
0x043F (1087) | لا توجد تعريفة مناسبة من الطرف المقابل المنبع |
0x045A (1114) | لم يتم العثور على سياسة التوجيه |
0x0446 (1094) | خطأ في النقل. في حالة حدوث هذا الخطأ، يرجى الاتصال بالدعم |
0x0433 (1075) | عدم كفاية الأموال في الحساب |
SMPP- نوع شائع من البروتوكول يستخدم لاستقبال وإرسال رسائل SMS وطلبات USSD. خصوصيتها هي الاتصال المستمر الذي يعطي المرء غاية ميزة مهمة- لا ينقطع الاتصال ويتم إرسال الرسائل القصيرة معه السرعه العاليه(تصل إلى عدة مرات أعلى من الطرق الأخرى).
لذلك، عند استخدام بروتوكول smpp، تحصل على الميزات التالية:
1 متاح تنسيقات مختلفة، بما في ذلك الواب دفع الرسائل القصيرة;
2. لا يمكن أن تكون الرسائل المرسلة عبر smpp بتنسيق قصير فحسب؛
4. قناة الرسائل القصيرة في اتجاهين.
5. تعديل السرعة.
كما ترون، يوفر بروتوكول smpp حرية استخدام كبيرة، ولكن، مثل أي أداة، لديه خاصته خصائص فريدةالمتعلقة بالإعداد والعمل الفعلي. سنتحدث عن هذا أدناه.
لكي يعمل smpp، يلزم وجود خادم مُكيَّف للعمل معه هذا البروتوكول، وخاصة برمجة(عميل). بالإضافة إلى ذلك، تحتاج إلى اتصال ثابت ومستقر ببوابة الموفر. ولذلك نحن في إلزامينقوم باختبار المعدات التي يمتلكها عملاؤنا - يجب أن يكون الخادم متوافقًا مع السرعة العالية إرسال الرسائل القصيرة. وبالتالي، فإننا في البداية نقوم بتبسيط تقديم خدمات عالية الجودة.
تعتبر واجهة برمجة التطبيقات (API) مناسبة للمواقع المكتوبة بأي لغة، بما في ذلك لغة PHP.
يمكن للعملاء أنفسهم اختبار تشغيل قناة SMPP التي تم تكوينها، ويتم توفير جميع الفرص حتى قبل البدء في استخدام الخدمات. يتيح لك ذلك فهم مدى سرعة تسليم رسائلك المرسلة عبر بروتوكول smpp إلى المستلمين.
سيكون موظفو الخدمة سعداء بمساعدتك في فهم جميع تعقيدات العمل من خلال بروتوكول smpp، والتكامل باستخدام php على موقع الويب الخاص بك، والمساعدة في توصيل واختبار جميع الخدمات، والإجابة على أي أسئلة.
وصف |
|
BIND_TRANSMITTER |
الاتصال كجهاز الإرسال |
BIND_TRANSCEIVER |
الاتصال كجهاز إرسال واستقبال |
ارسل رسالة |
|
طلب حالة الرسالة |
|
إرسال إيصال التسليم عن طريق الخادم |
|
تحقق من اتصال |
|
أمر خاطئ |
|
اغلق |
إذا قمت بإدخال أمر غير صحيح، فسوف تتلقى استجابة مثل GENERIC_NAK، والتي سيحتوي نصها على رمز الخطأ ESME_RINVCMDID.
لدى العميل 10 ثوانٍ لإنشاء اتصال من خلال بوابة smpp، ويجب إرسال أحد الأوامر خلالها: BIND_TRANSCEIVER، BIND_TRANSMITTER. وإلا، سيتم فقدان الاتصال.
كما سيحدث انقطاع إذا لم يستجب العميل لأي حزمة يرسلها الخادم في موعد لا يتجاوز دقيقة واحدة تحددها القواعداحترام الحزمة. في حالة حدوث مثل هذا الفاصل، لن يتم إرسال UNBIND.
يُسمح باتصال smpp فقط من اسم مستخدم واحد في المرة الواحدة. ستتلقى كافة الاتصالات الأخرى الخطأ 0x00000005 ESME موجود بالفعل في حالة الربط. ومع ذلك، إذا كنت بحاجة إلى إجراء أكثر من اتصال واحد داخل حسابك، فيمكنك إنشاء مستخدم خاص بك لكل من هذه الاتصالات.
في حالة إرسال Submit_sm، الذي تم وضع علامة عليه بعلامة Registered_delivery، يكون إرسال حالة الرسائل القصيرة ممكنًا فقط للمستخدم الذي أرسل الرسالة.
عند العمل باستخدام هذا البروتوكول، يمكن أن تكون حالة التسليم سلبية (يفضل) أو نشطة.
لتلقي تقرير سلبي، يجب عليك إرسال حزمة SUBMIT_SM مع تمكين علامة التسليم المسجل مسبقًا.
يأتي نص إيصال التسليم الموجود في حزمة DELIVER_SM من الخادم عند وصول الرسالة النصية القصيرة المرحلة الأخيرةرسائل بريدية.
عندما يكون التقرير نشطًا، يتم فحص حالة الرسائل القصيرة بانتظام عن طريق إرسال QUERY_SM.
"id:IIIIIIIIII sub:SSS dlvrd:DDD تاريخ الإرسال:YYMMDDhhmm تاريخ الانتهاء:YYMMDDhhmm
الإحصائيات: DDDDDDD خطأ: E النص: . . . . . . . . "
وصف |
|
لم يتم التعرف على الترميز |
|
نص الرسالة كبير جدًا. يجب ألا يتجاوز الطول الأقصى 160 |
|
0x0402 (1026) |
حدث خطأ أثناء تسجيل الرسالة للإرسال. عندما يحدث هذا الخطأ |
لم يتم التحقق من نص الرسالة بحثًا عن كلمات و/أو عبارات غير مناسبة |
|
المرسل أو المستلم المدرج في القائمة السوداء |
|
كان هناك قيود على إرسال نفس النص إلى نفس الرقم خلال فترة زمنية قصيرة. اتصل بالدعم إذا كنت تريد تعطيل الفترة أو تقليلها. |
|
لا توجد أجرة متاحة للوجهة المطلوبة. |
|
ليس لدى الطرف المقابل المنبع تعريفة مناسبة. |
|
لم يتم العثور على سياسة التوجيه. |
|
خطأ في النقل. في حالة حدوث هذا الخطأ، يرجى الاتصال بخدمة العملاء. يدعم. |
|
لا توجد أموال كافية في الحساب. |
هناك مثل هذه الفئة من الخدمات على الشبكة،
والتي تمنح المستخدمين الفرصة
استدعاء أي وظائف عن طريق إرسال الرسائل القصيرة إلى
أرقام خاصةوتلقي الإجابات أيضا في
رسالة قصيرة على سبيل المثال، يمكنك التسجيل
صندوق البريد الإلكتروني الذي يمكنك ضبطه
إعادة توجيه الصابون الواردإلى هاتفك.
يمكنك الحصول على الأخبار في الوقت الحقيقي و
المشاركة في الدردشات. ممكن عن طريق الرسائل القصيرة
ترتيب الصور والألحان الخاصة بك
الهواتف المحمولة. وأخيرا، يمكنك المشاركة في
التصويت. بعض OpSoS
دعم مثل هذه الخدمة عندما لكل منهما
فهو لا يدفع ثمن الرسائل القصيرة المرسلة من قبل المستخدم
فقط لـ OpSoSu، ولكن أيضًا لمالك الخدمة،
عند الدفع مقابل الخدمات، في أغلب الأحيان
افتراضي. عند استخدام الهاتف، لا نفعل ذلك
نعلق المصاريف المرافقة من المال
نفس القيمة عند استخدام WebMoney
أو عند إجراء الدفعات من خلال SberBank.
توفر إمكانيات الرسائل القصيرة مجالًا واسعًا لـ
الأعمال الإلكترونية. ينجذب الكثير من الناس إلى
الاحتمال المغري للحصول على الرئتين
المال عندما تشاهد فقط
عملية وحساب المال، ولكنهم يعملون من أجل
لك البرامج النصية على الخادم. أنا لا أحدد الأهداف
إنشاء دليل لنوع جديد من "الأعمال"
لشخص واحد." في هذه المقالة أنا
سأذكر فقط الجانب الفنيمشاكل
معالجة الرسائل القصيرة الآلي.
مقاربات مختلفة
اعتمادا على المهام الموكلة وعلى
المبلغ المتاح من المال الذي يمكنك اختياره
أحد الحلول التالية:
في هذه المقالة سأتحدث عن SMPP باعتباره
طريقة متقدمة للعمل مع بوابات الرسائل القصيرة.
مع هذا البروتوكول يمكنك الحصول على
وإرسال الرسائل القصيرة من خلال ما يسمى بمراكز الرسائل القصيرة.
مراكز الرسائل القصيرة هي بوابات بين الإنترنت
و الشبكات الخلوية. للعمل مع هذا
البروتوكول هناك حلول جاهزة،
على سبيل المثال Net::SMPP في بيرل. وصف البروتوكول و
روابط ل منتجات البرمجياتيمكن ايجاده
على www.smpp.org.
احدث اصدارالبروتوكول في ذلك الوقت
كتابة مقال - 3.4. يمكنك أيضًا التنزيل هناك
برنامج لاختبار برنامج العميل - SMPP
أداة اختبار العميل (SCTT). لم أقم بشراء الوصول إلى بعد
مركز الرسائل القصيرة الحقيقي، تحتاج إلى اختباره بطريقة أو بأخرى
برامجك. الشيء الوحيد غير المريح هو أن SCTT
مكتوب لنظام التشغيل Linux، لذا عليك القيام بذلك
العبث مع Virtual PC أو التعليمات البرمجية على الفور ضمن Linux.
وصف البروتوكول
يمكن بدء الاتصال على النحو التالي:
المستخدم المذكور في الوصف
البروتوكول الخارجي رسالة قصيرةالكيان (ESME) ومركز الرسائل القصيرة
(سمسك). لاحظ أنه بسبب هذا الاحتمال
سيكون من الخطأ تسميته بمركز الرسائل القصيرة
الخادم، لأنه يمكن أن يكون
عميل. يتم استخدام الخيار الأول كما
عادة عند إرسال الرسائل، والثانية
عند الاستلام، على الرغم من أن لا أحد يحظر
ارسال رسائل عبر الاتصال,
يتم تثبيتها بواسطة مركز الرسائل القصيرة واستقبالها عبر
اتصال أنشأته بنفسك. الجميع
البيانات الموجودة في بروتوكول SMPP متداخلة في كتل،
تسمى وحدات بيانات البروتوكول (PDUs)، والتي تحتوي على
رأس يشير إلى حجم الكتلة و
رمز العملية.
تنسيق رأس PDU:
طول DWORD - طول الكتلة بأكملها، بما في ذلك
عنوان
أمر DWORD
حالة DWORD - 0 في الطلبات ورمز الخطأ والاستجابات
رقم تسلسل DWORD - رقم التسلسل.
يجب أن يكون الرقم التسلسلي في الرد
يساوي الرقم الموجود في الطلب
يتم تشفير كافة الأرقام في SMPP بحيث يكون الأعلى
بايت على اليسار. لهذا يمكنك استخدام
الدالة htonl(). يتم تقسيم جميع وحدات PDU إلى طلبات و
إجابات. في رموز الطلب، الجزء الأكثر أهمية هو
صفر، حوالي إجابة واحدة. لكل طلب
وينبغي أن يأتي الجواب، إلا
إشعارات حول الرسائل المستلمة. الوداع
لم يتم تلقي أي رد، وتعتبر العملية
غير مكتمل. إذا لم يكن هناك رد
قبل فقدان الاتصال، المشارك، سواء كان ذلك SMSC
أو ESME، يجب تكرار الطلب. بروتوكول
غير متزامن، أي يمكن لمرسل الطلب
إرسال طلب آخر دون انتظار
الإجابة، ويمكن أن تتبع الإجابات في أي وقت
تسلسلات. جميع العمليات أيضا
وتنقسم إلى تلك التي يمكن استخدامها
ESMEs التي يمكن استخدامها بواسطة SMSC وتلك
والتي يمكن استخدامها من قبل كليهما
حفلات. قد يكون الاتصال في
الدول التالية:
- مفتوح (لم تتم المصادقة عليه بعد)
- تحويل
- استقبال
- الاستقبال والإرسال
- مغلق
في حالة "الفتح" أي بعدها مباشرة
إنشاء اتصال TCP ESME الذي يرغب
إرسال الرسائل القصيرة، يجب إرسال طلب إلى bind_transmitter.
للاستقبال - bind_receiver. لكلا الإجراءين
على الفور - bind_transceiver. يرسل هذا الطلب
تسجيل الدخول وكلمة المرور. إذا تم تأسيس الاتصال
SMSC، فيجب عليه أولاً إرسال طلب صادر
وتمرير تسجيل الدخول وكلمة المرور فيه، لأنه في
في هذه الحالة، أنت بحاجة بالفعل إلى حقوق الوصول الخاصة به
يفحص. على سبيل المثال، سأوضح لك كيفية كيها
أمر bind_transmitter:
عنوان:
طول الكلمة المزدوجة
أمر DWORD = BIND_TRANSMITTER
حالة DWORD = 0
رقم تسلسل DWORD
بيانات:
تسجيل الدخول الخط
كلمة مرور السلسلة
نوع نظام السلسلة (على سبيل المثال، WWW أو Mail)
إصدار بروتوكول BYTE = 0x34
BYTE addr_ton (نوع الرقم)، 0 = الافتراضي
BYTE addr_npi (خطة الأرقام)، 0 = الافتراضي
نطاق سلسلة من الأرقام، سلسلة فارغة،
إذا كان المزود نفسه يعرف ما هي الأرقام التي لدينا
نحن نخدم
السلاسل هي ASCIIZ، أي منتهية بقيمة خالية.
معظم معلمات هذا الطلب
قد تكون أصفار أو خطوط فارغة. في
سيأتي الرد على مثل هذا الطلب
والتي، بالإضافة إلى الرأس، ستحتوي على SystemId الخاص بمركز الرسائل القصيرة،
وسيكون حقل الحالة صفرًا في حالة نجاحه. لو
تم إنشاء اتصال نقل، ثم نحن
لدينا الحق في إرسال طلبات Submit_sm، وإذا
تم تأسيس اتصال للاستقبال، فأنت بحاجة
انتظر طلبات Delivery_sm التي تحتوي على نصوص
تلقي الرسائل ومعالجتها.
بعد الانتهاء من العمل، نرسل رسالة فك الارتباط و
قطع الاتصال.
معظم الاستفسارات لديها مجموعة
المعلمات التي لا يمكنك بشكل خاص
أخذ حمام بخار وإبطالها. على الرغم من ذلك
كمية هائلة من الوثائق،
جهاز الرد على الرسائل القصيرة بسيط يعتمد على
والتي يمكنك بناء بعض
نظام المساعدة، حصلت عليه
بحجم 25 كيلو بايت فقط من النص في C++، واختبار لـ
أظهر SCTT أن كل شيء يعمل ويبقى
مجرد شراء الوصول إلى SMSC :).
لمن تتصل
الرسائل عبر بروتوكول SMPP بنفسك
تقبل العديد من OpSoSs العملاء، لذلك
لا توجد مراجع محددة. ابحث عن معلومات حول
موقع OpSoS الذي تفضله
عمل. بالإضافة إلى ذلك، مركز الرسائل القصيرة الخاص بك،
يعمل على بروتوكول SMPP، ويوفر