كيفية إرسال رسائل 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 باستخدام مكتبة C# Ozeki.Libs.Rest. هذه المكتبة مقدمة لك مجانًا، ويمكنك استخدامها وتعديلها في أي من مشاريعك.

Program.vb
Imports Ozeki.Libs.Rest

Module Program
    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 msg1 As New Message
        msg1.ToAddress = "+36201111111"
        msg1.Text = "Hello, World 1"

        Dim msg2 As New Message
        msg2.ToAddress = "+36202222222"
        msg2.Text = "Hello, World 2"

        Dim msg3 As New Message
        msg3.ToAddress = "+36203333333"
        msg3.Text = "Hello, World 3"

        Dim api = New MessageApi(configuration)

        Dim result = api.Send({msg1, msg2, msg3})

        Console.WriteLine(result)
        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. يمكنك استخدام فئة Message لإنشاء الرسالة القصيرة. يمكنك استخدام فئة MessageApi لإرسال الرسالة القصيرة إلى بوابة الرسائل القصيرة. ستقوم بوابة الرسائل القصيرة بإعادة توجيه رسالتك إلى شبكة الهاتف المحمول إما عبر اتصال لاسلكي أو عبر الإنترنت.

تنزيل SendMultipleSms.vb

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

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

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

الشكل 2 - ما الموجود داخل SendMultipleSms.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. قم بإنشاء حل يسمى SendMultipleSms.sln
  7. أضف مشروع وحدة تحكم Visual Basic: SendMultipleSms.vbproj
  8. ضع الكود في Program.vb أو SendMultipleSms.vb
  9. قم بإنشاء دالة Visual Basic تسمى Send_SMS
  10. قم بإنشاء بيانات Json للرسالة القصيرة
  11. قم بإنشاء طلب HTTP لإرسال الرسالة القصيرة
  12. اقرأ رد HTTP
  13. اكتب الرد على وحدة التحكم
  14. تحقق من السجلات في بوابة الرسائل القصيرة

قم بتثبيت 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 على نفس الكمبيوتر الذي يعمل عليه تطبيق رسائل SMS الخاص بـ Visual Basic، فيمكن أن يكون هذا 127.0.0.1. إذا كان مثبتًا على كمبيوتر مختلف، فيجب أن يكون عنوان IP الخاص بهذا الكمبيوتر.

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

مصادقة HTTP لإرسال الرسائل القصيرة من Visual Basic

لمصادقة عميل الرسائل القصيرة في Visual Basic، تحتاج إلى إرسال اسم المستخدم وكلمة المرور في سلسلة مشفرة بـ 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. يحتوي على رقم المستلم ونص الرسالة.

POST /api?action=sendmsg HTTP/1.1
Connection: Keep-Alive
Content-Length: 983
Content-Type: application/json
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 127.0.0.1:9509

{
  "messages": [
    {
      "message_id": "62772e17-837b-4630-bf48-bac5b60fc7a0",
      "to_address": "+36201111111",
      "text": "Hello, World 1",
      "create_date": "2021-06-11 14:23:42",
      "valid_until": "2021-06-18 14:23:42",
      "time_to_send": "2021-06-11 14:23:42",
      "submit_report_requested": true,
      "delivery_report_requested": true,
      "view_report_requested": true,
      "tags": []
    },
    {
      "message_id": "f2914efd-45da-4582-9633-f8386c1050d2",
      "to_address": "+36202222222",
      "text": "Hello, World 2",
      "create_date": "2021-06-11 14:23:42",
      "valid_until": "2021-06-18 14:23:42",
      "time_to_send": "2021-06-11 14:23:42",
      "submit_report_requested": true,
      "delivery_report_requested": true,
      "view_report_requested": true,
      "tags": []
    },
    {
      "message_id": "89b877d7-4f62-44da-9e70-aa195c440f85",
      "to_address": "+36203333333",
      "text": "Hello, World 3",
      "create_date": "2021-06-11 14:23:42",
      "valid_until": "2021-06-18 14:23:42",
      "time_to_send": "2021-06-11 14:23:42",
      "submit_report_requested": true,
      "delivery_report_requested": true,
      "view_report_requested": true,
      "tags": []
    }
  ]
}

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

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

HTTP/1.1 200 OK
User-Agent: OZEKI 10.3.118 (www.myozeki.com)
Content-Type: application/json; charset=utf8
Last-Modified: Fri, 11 Jun 2021 08:44:45 GMT
Server: 10/10.3.118
Transfer-Encoding: chunked

{
  "http_code": 200,
  "response_code": "SUCCESS",
  "response_msg": "Messages queued for delivery.",
  "data": {
    "total_count": 3,
    "success_count": 3,
    "failed_count": 0,
    "messages": [
      {
        "message_id": "35864941-4e2d-4757-bfe4-0fd990e9b14d",
        "from_station": "%",
        "to_address": "+36201111111",
        "to_station": "%",
        "text": "Hello, World 1",
        "create_date": "2021-06-11 14:23:42",
        "valid_until": "2021-06-18 14:23:42",
        "time_to_send": "2021-06-11 14:23:42",
        "submit_report_requested": true,
        "delivery_report_requested": true,
        "view_report_requested": false,
        "tags": [
          {
            "name": "Type",
            "value": "SMS:TEXT"
          }
        ],
        "status": "SUCCESS"
      },
      {
        "message_id": "f8e60b66-1a78-47fd-85f0-a9370acfd917",
        "from_station": "%",
        "to_address": "+36202222222",
        "to_station": "%",
        "text": "Hello, World 2",
        "create_date": "2021-06-11 14:23:42",
        "valid_until": "2021-06-18 14:23:42",
        "time_to_send": "2021-06-11 14:23:42",
        "submit_report_requested": true,
        "delivery_report_requested": true,
        "view_report_requested": false,
        "tags": [
          {
            "name": "Type",
            "value": "SMS:TEXT"
          }
        ],
        "status": "SUCCESS"
      },
      {
        "message_id": "c7d6a065-38f6-4be3-a556-1f062bb86477",
        "from_station": "%",
        "to_address": "+36203333333",
        "to_station": "%",
        "text": "Hello, World 3",
        "create_date": "2021-06-11 14:23:42",
        "valid_until": "2021-06-18 14:23:42",
        "time_to_send": "2021-06-11 14:23:42",
        "submit_report_requested": true,
        "delivery_report_requested": true,
        "view_report_requested": false,
        "tags": [
          {
            "name": "Type",
            "value": "SMS:TEXT"
          }
        ],
        "status": "SUCCESS"
      }
    ]
  }
}

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


كيفية تنزيل الحل المثال (مشروع الفيديو)

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

الفيديو 1 - كيفية تنزيل وفتح الحل أعلاه (درس تعليمي بالفيديو)

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

كيفية إرسال رسائل SMS متعددة باستخدام فيجوال بيسك
الشكل 3 - SendMultipleSms.sln

كيفية استخدام الحل (درس تعليمي بالفيديو)

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

الفيديو 2 - كيفية استخدام حل Send-multiple-SMS.vb (درس تعليمي بالفيديو)

تشغيل مثال Visual Basic لإرسال الرسائل القصيرة على ويندوز

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

ملخص

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

واصل دراستك على صفحة الدروس التعليمية لـ Ozeki، حيث يمكنك العثور على المزيد من المعلومات حول موضوعات مثل استقبال الرسائل في VB.

قم بتنزيل Ozeki SMS Gateway الآن ودع العمل يبدأ!

More information