كيفية استقبال رسالة SMS في Visual Basic

أبسط طريقة لاستقبال رسائل SMS من Visual Basic هي استخدام واجهة برمجة تطبيقات HTTP/Rest المدمجة في Ozeki SMS Gateway. عند استخدام هذه الواجهة، ستقوم بإرسال رسائل SMS عن طريق إرسال طلب HTTP Post إلى بوابة الرسائل. سيحتوي طلب HTTP Post على رسالة مُنسقة بتنسيق json. ستقوم بوابة الرسائل بإرسال هذه الرسالة إلى هاتف المستلم، وسيتم إرجاع استجابة HTTP 200 OK لطلبك.

كيفية استقبال رسائل SMS باستخدام Visual Basic
الشكل 1 - استقبال رسائل SMS باستخدام Visual Basic

كود Visual Basic لاستقبال رسائل SMS

يوضح مثال كود Visual Basic لرسائل SMS أدناه كيف يمكنك استقبال رسائل SMS باستخدام واجهة برمجة تطبيقات HTTP Rest الخاصة بـ Ozeki SMS Gateway باستخدام مكتبة Ozeki.Libs.Rest لـ Visual Basic. هذه المكتبة مقدمة لك مجانًا، ويمكنك استخدامها وتعديلها في أي من مشاريعك.

ReceiveSms.vb
Imports Ozeki.Libs.Rest

Module ReceiveSMS
    Sub Main(args As String())

        Dim configuration As New Configuration
        configuration.Username = "http_user"
        configuration.Password = "qwe123"
        configuration.ApiUrl = "http://127.0.0.1:9509/api"

        Dim api As New MessageApi(configuration)

        Dim result = api.DownloadIncoming()

        Console.WriteLine($"There are {result.Length} in the inbox folder:")
        For Each message As Message In result
            Console.WriteLine($"{message}")
        Next

        Console.ReadKey()

    End Sub
End Module

كيفية استخدام مثال Visual Basic لرسائل SMS:

يمكن استخدام هذا مثال Visual Basic لرسائل SMS في أي تطبيق .NET أو .NET core. لاستخدامه، يجب عليك إضافة ملف Ozeki.Libs.Rest dll كمرجع إلى مشروعك. بعد إضافة المرجع إلى المشروع، يجب وضع التوجيه using Ozeki.Libs.Rest; في قسم الرأس من كود مصدر Visual Basic الخاص بك. سيسمح لك ذلك باستخدام الفئات المقدمة من مكتبة Ozeki.Libs.Rest. يمكنك استخدام فئة MessageApi لـ استقبال الرسالة SMS من بوابة الرسائل.

تحميل ReceiveSms.vb

يمكن تنزيل الكود المصدري الموضح في هذه المقالة واستخدامه وتعديله مجانًا.
تحميل: ReceiveSms.vb.zip (39.8Kb)

ما الموجود في ملف ReceiveSms.vb؟

يحتوي ملف ReceiveSms.vb على مكتبة Ozeki.Libs.Rest، والتي تمنحك جميع الأدوات اللازمة لإرسال واستقبال رسائل SMS. ستجد أيضًا مشروع ReceiveSms في ملف zip، والذي يحتوي على الكود المثال ليوضح لك كيفية إرسال رسالة SMS. تم سرد هذا الكود المثال أدناه.

ما الموجود في ملف zip لاستقبال SMS من Ozeki
الشكل 2 - ما الموجود داخل ReceiveSms.vb.zip

كيفية استقبال رسائل SMS من Visual Basic (خطوات سريعة)

لاستقبال رسائل SMS من Visual Basic:

  1. قم بتثبيت Ozeki SMS Gateway
  2. قم بتوصيل Ozeki SMS Gateway بشبكة الهاتف المحمول
  3. أرسل رسالة SMS اختبارية من واجهة Ozeki
  4. قم بإنشاء مستخدم لواجهة برمجة تطبيقات HTTP لرسائل SMS
  5. ابدأ Visual Studio
  6. قم بإنشاء حل يسمى ReceiveSms.sln
  7. أضف مشروع وحدة تحكم Visual Basic: ReceiveSms.vbproj
  8. ضع الكود في Program.vb أو ReceiveSms.vb
  9. قم بإنشاء طلب HTTP لاستقبال الرسالة SMS
  10. اقرأ استجابة HTTP
  11. اكتب الاستجابة على وحدة التحكم
  12. تحقق من السجلات في بوابة الرسائل

قم بتثبيت Ozeki SMS Gateway وإنشاء مستخدم لواجهة برمجة تطبيقات HTTP

لتتمكن من إرسال رسائل SMS من Visual Basic، تحتاج أولاً إلى إنشاء مستخدم لواجهة برمجة تطبيقات HTTP لرسائل SMS. قم بإنشاء مستخدم باسم مستخدم "http_user"، وكلمة مرور "qwe123" لجعل المثال يعمل دون تعديل.

بعد إعداد البيئة، يمكنك تشغيل كود Visual Basic الخاص بك.

رابط واجهة برمجة تطبيقات HTTP لاستقبال رسائل SMS من Visual Basic

لإرسال رسائل SMS من Visual Basic، سيتعين على Visual Basic الخاص بك إصدار طلب HTTP إلى بوابة الرسائل. يظهر رابط واجهة برمجة التطبيقات أدناه. لاحظ أنه يجب استبدال عنوان IP (127.0.0.1) بعنوان IP الخاص ببوابة الرسائل الخاصة بك. إذا تم تثبيت Ozeki SMS Gateway على نفس الكمبيوتر الذي يعمل عليه تطبيق Visual Basic لرسائل SMS، فيمكن أن يكون هذا 127.0.0.1. إذا كان مثبتًا على كمبيوتر مختلف، فيجب أن يكون عنوان IP لهذا الكمبيوتر.

http://127.0.0.1:9509/api?action=rest

مصادقة HTTP لاستقبال رسائل SMS من Visual Basic

لمصادقة عميل Visual Basic لرسائل SMS، تحتاج إلى إرسال اسم المستخدم وكلمة المرور في سلسلة مشفرة بـ base64 إلى الخادم في طلب HTTP. التنسيق المستخدم هو: base64(username+":"+password). في C# يمكنك استخدام الكود التالي لإجراء هذا التشفير:

var encoding = Encoding.GetEncoding("iso-8859-1");
var usernamePassword = username + ":" + password;
var usernamePasswordEncoded = Convert.ToBase64String(encoding.GetBytes(usernamePassword));

على سبيل المثال، إذا قمت بتشفير اسم المستخدم 'http_user' وكلمة المرور 'qwe123'، فستحصل على السلسلة المشفرة بـ base64 التالية: aHR0cF91c2VyOnF3ZTEyMw==. للإرسال

رأس طلب HTTP لاستقبال الرسائل القصيرة من Visual Basic

لإرسال الرسائل القصيرة، تحتاج إلى تضمين الأسطر التالية كرؤوس في طلب HTTP. لاحظ أننا ندرج نوع المحتوى ورأس التفويض.

Content-Type: application/json
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==

طلب HTTP لاستقبال الرسائل القصيرة باستخدام Visual Basic

لإرسال الرسالة القصيرة، سيقوم تطبيق Visual Basic الخاص بك بإرسال طلب HTTP مشابه للطلب أدناه. لاحظ أن هذا الطلب يحتوي على جزء رأس HTTP وجزء جسم HTTP. جسم HTTP هو سلسلة بيانات مشفرة بتنسيق JSON. يحتوي على رقم المستلم ونص الرسالة.

GET /api?action=receivemsg&folder=inbox HTTP/1.1
Connection: Keep-Alive
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 127.0.0.1:9509
	

استجابة HTTP المستلمة من مثال الرسائل القصيرة في Visual Basic

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

HTTP/1.1 200 OK
User-Agent: OZEKI 10.3.116 (www.myozeki.com)
Content-Type: application/json; charset=utf8
Last-Modified: Thu, 10 Jun 2021 11:02:26 GMT
Server: 10/10.3.116
Transfer-Encoding: chunked
{
	"http_code": 200,
	"response_code": "SUCCESS",
	"response_msg": "",
	"data": {
	  "folder": "inbox",
	  "limit": "1000",
	  "data": [
	    {
	      "message_id": "94219121-e5b5-4845-9721-074f5307c9a4",
	      "from_connection": "http_user@localhost",
	      "from_address": "+36203333333",
	      "from_station": "%",
	      "to_connection": "http_user@localhost",
	      "to_address": "http_user",
	      "to_station": "%",
	      "text": "Hello world 3",
	      "create_date": "2021-06-10 11:46:16",
	      "valid_until": "2021-06-17 11:46:16",
	      "time_to_send": "2021-06-10 11:46:16",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": true,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ]
	    },
	    {
	      "message_id": "d6f832b2-dbc8-4b1b-8b47-44b3bb6658bf",
	      "from_connection": "http_user@localhost",
	      "from_address": "+36202222222",
	      "from_station": "%",
	      "to_connection": "http_user@localhost",
	      "to_address": "http_user",
	      "to_station": "%",
	      "text": "Hello world 2",
	      "create_date": "2021-06-10 11:46:16",
	      "valid_until": "2021-06-17 11:46:16",
	      "time_to_send": "2021-06-10 11:46:16",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": true,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ]
	    },
	    {
	      "message_id": "0bf86b3a-e4a9-4d8e-970c-ed486b02db7a",
	      "from_connection": "http_user@localhost",
	      "from_address": "+362011111111",
	      "from_station": "%",
	      "to_connection": "http_user@localhost",
	      "to_address": "http_user",
	      "to_station": "%",
	      "text": "Hello world 1",
	      "create_date": "2021-06-10 11:46:16",
	      "valid_until": "2021-06-17 11:46:16",
	      "time_to_send": "2021-06-10 11:46:16",
	      "submit_report_requested": true,
	      "delivery_report_requested": true,
	      "view_report_requested": true,
	      "tags": [
	        {
	          "name": "Type",
	          "value": "SMS:TEXT"
	        }
	      ]
	    }
	  ]
	}
}
	

مثال الرسائل القصيرة في Visual Basic: ReceiveSMS.sln


في هذا الفيديو، ستتعلم كيفية تنزيل وتشغيل مشروع المثال ReceiveSMS.sln. سيبدأ الفيديو بصفحة التنزيل وينتهي بفتح محرر الأكواد. سنوضح لك كيفية تنزيل وفتح ملف المشروع. يستغرق الفيديو 58 ثانية فقط، لكنه يحتوي على جميع المعلومات التي تحتاجها لإنجاز المهمة. يمكنك بدء عملية التنزيل من صفحة البرنامج التعليمي.

الفيديو 1 - كيفية تنزيل وتشغيل مشروع المثال أعلاه (برنامج تعليمي بالفيديو)

الكود المثال أدناه هو جزء من حل Visual Studio ReceiveSms.sln. يمكن أن يحتوي حل Visual Studio على مشاريع متعددة وملفات متعددة. في هذا الحل هناك مشروعان فقط: ReceiveSms.vbproj، Ozeki.Libs.Rest.csproj، وملف واحد: Program.vb.

كيفية استقبال الرسائل القصيرة باستخدام Visual Basic
الشكل 3 - ReceiveSms.sln

كيفية استخدام مشروع المثال (برنامج تعليمي بالفيديو)

في الفيديو التالي، ستتعلم كيفية تشغيل كود المثال وكيفية التحقق من سجل العملية. سيبدأ بتشغيل بوابة Ozeki للرسائل القصيرة وسيأخذك حتى قائمة الرسائل المستلمة. المهمة سهلة التنفيذ وهذا الفيديو مفصل جدًا ولكنه قصير. يستغرق مشاهدته 46 ثانية فقط. ستتعلم كيفية تنزيل جميع الرسائل المستلمة بمساعدة Visual Basic.

الفيديو 2 - كيفية استخدام حل ReceiveSms.vb (برنامج تعليمي بالفيديو)

تشغيل مثال الرسائل القصيرة في Visual Basic على Windows

عند استخدام Windows لتشغيل مثال الرسائل القصيرة هذا المكتوب بلغة Visual Basic، ستلاحظ أنك تحصل على أداء أفضل قليلاً مقارنة بتشغيله على Linux. لفهم سبب حدوث ذلك، يجب أن تضع في اعتبارك أن Visual Basic يستخدم إطار عمل .NET لتنفيذ الأكواد. هذا لأن تنفيذ .NET على Windows مُحسّن للأداء، بينما mono، وهو تنفيذ .NET على Linux، لا يزال بحاجة إلى اللحاق بهذا المجال.

الختام

لقد قدم المقال خطوات استقبال الرسائل القصيرة في VB بمساعدة بوابة Ozeki للرسائل القصيرة. إذا تم اتباع الخطوات بعناية، فيجب أن تكون قادرًا على استقبال الرسائل في Visual Basic. تعتبر بوابة Ozeki للرسائل القصيرة الرابط بين مستخدمي الهواتف المحمولة وبينك، لذا فإن تنزيل هذا البرنامج أمر لا مفر منه. كما رأيت في هذا الدليل، يمكن إدارة بوابة Ozeki للرسائل القصيرة بسهولة كبيرة وهي موثوقة.

تأكد من عدم إنهاء القراءة هنا، وتصفح صفحة البرامج التعليمية لـ Ozeki وابحث عن المزيد من المعلومات حول المواضيع المشابهة، مثل الجدولة في Visual Basic.

كل ما عليك فعله الآن هو تنزيل بوابة Ozeki للرسائل القصيرة والبدء في العمل!

More information