إرسال واستقبال رسائل SMS باستخدام بوابات OpenVox VoIP

بدون مبالغة ، يمكننا القول أن السؤال الأكثر شيوعًا حول بوابات GSM VoIP يتعلق بإرسال واستقبال رسائل SMS. في وقت سابق ، طرحنا هذا الموضوع بالفعل وفحصنا بوابات الشركات المصنعة مثل GoIP و Yeastar. لكن بوابات OpenVox GSM لم تدخل بعد في مراجعتنا والآن حان الوقت لتصحيح هذا الإغفال.



كقاعدة ، تحاول جميع الشركات المصنعة توفير عدة طرق مختلفة للعمل مع SMS و OpenVox هنا ليست استثناء. فكر في كل واحد منهم:


WEB


أكثر الخيارات القياسية والمنطقية والأكثر إزعاجًا. وهي أكثر ملاءمة للتحقق من الأداء أو بعض الإجراءات لمرة واحدة من الاستخدام المستمر.




إنه سهل الاستخدام ، ونشير من خلال المنافذ التي يجب إرسالها وقائمة المستلمين ونص الرسالة.


توفر واجهة WEB أيضًا القدرة على عرض الرسائل الواردة والصادرة ، ما عليك سوى تمكين القدرة أولاً على تلقي الرسائل وتخزينها محليًا.


البريد الإلكتروني


يمكن أيضًا أن تُعزى الرسائل القصيرة إلى البريد الإلكتروني إلى الميزات القياسية لهذه الأجهزة.




OpenVox VS Series GSM Gateways ليست استثناء. نحدد البيانات اللازمة للاتصال بـ SMTP ، وعناوين البريد الإلكتروني لإعادة توجيه الرسائل القصيرة الواردة ، وتكوين نموذج الرسائل المرسلة. في هذه الحالة ، لدينا 4 متغيرات متوفرة في النموذج: رقم المرسل ورقم منفذ بطاقة SIM ووقت الاستلام ونص الرسالة الواردة نفسها.


في أغلب الأحيان ، يوفر المصنعون أيضًا الاحتمال المعاكس - إرسال بريد إلكتروني إلى رسالة نصية قصيرة: نرسل بريدًا إلكترونيًا إلى بعض العناوين التي تتحقق بشكل دوري من البوابة وتولد رسائل SMS من الرسائل الواردة ، لكن OpenVox قررت عدم تنفيذ هذه الفرصة.


HTTP


ربما يكون إرسال واستقبال رسائل SMS عبر طلبات HTTP من أسهل الطرق لدمج هذه الإجراءات في عمل تطبيقات الطرف الثالث.




لإرسال رسالة نصية ، نحتاج إلى تلبية طلب النموذج:


http://172.16.99.1/sendsms?username=smsuser&password=password&phonenumber=89996135801&message=Hello


  { "message":"Hello", "report":[{ "1":[{ "port":"umts-1.1", "phonenumber":"89996135801", "time":"1970-01-01 09:49:03", "result":"success" }] }] } 

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


باختصار حول المعلمات:


 username –  ,      password –    phonenumber –  ,      «,» message –    port –     ,           report –      JSON  String timeout –      SMS 

بالإضافة إلى الإرسال ، تتيح لك بوابات OpenVox تلقي رسائل SMS عبر HTTP.




كل شيء بسيط للغاية: نحدد عنوان معالجنا ومسار وأسماء المعلمات. عند استلام الرسائل الواردة ، ستفي البوابة بالطلب الذي قمنا بتكوينه.


AMI


نظرًا لأن بوابات OpenVox GSM و UMTS ، بالإضافة إلى بوابات Yeastar GSM ، يتم بناؤها باستخدام خادم Asterisk IP الهتفي ، فإنهم يقومون بتنفيذ واجهة Asterisk Managment Interface ، والتي يمكن استخدامها أيضًا لإرسال رسائل SMS. خاصة لهذا ، يتم توفير الأمر:


GSM send sms <span> <destination> <message> <timeout>


باختصار حول المعلمات:


 span –      destination –   message –   timeout –      /*   USSD    sms  ussd */ 

تم وصف العمل من خلال AMI مع الأمثلة في المرة الأخيرة ، لذلك ليس هناك جدوى من التفكير فيه بمزيد من التفاصيل. ألاحظ فقط أن تطبيق OpenVox لا يؤدي إلى إنشاء حدث منفصل خاص عند تلقي الرسائل القصيرة ، كما هو الحال في Yeastar - نحن بحاجة إلى تتبع الأحداث مثل VarSet ، من هذا النوع:


 Event: VarSet Privilege: dialplan,all Channel: EXTRA-SMS/1-1 Variable: SMSPDU Value: “pdu data” Uniqueid: 625.1 

وهناك ذبابة أخرى في المرهم: إذا أردنا تلقي الرسائل عبر AMI ، فسيتعين علينا التخلي عن استخدام HTTP إلى SMS ، لأن إذا تم تمكين هذا الخيار ، فلن نرى الأحداث عند استلام الرسائل القصيرة.


في الختام


يمكنك العمل مع أي جهاز في السوق ، ولكن إذا كانت لدي مهمة إرسال واستقبال رسائل SMS ، فإنني أفضل بوابات OpenVox على أنها الأكثر ملاءمة لأداء مثل هذه المهام.

Source: https://habr.com/ru/post/ar405075/


All Articles