كيفية إرسال رسالة نصية من Visual Basic
أبسط طريقة لإرسال رسائل SMS من Visual Basic هي استخدام واجهة برمجة تطبيقات HTTP/Rest المدمجة في Ozeki SMS Gateway. عند استخدام هذه الواجهة، ستقوم بإرسال رسائل SMS عن طريق إرسال طلب HTTP Post إلى بوابة الرسائل النصية. سيحتوي طلب HTTP Post على رسالة مُنسقة بتنسيق json. ستقوم بوابة الرسائل النصية بإرسال هذه الرسالة إلى هاتف المستلم، وسيتم إرجاع استجابة HTTP 200 OK لطلبك.
مثال كود Visual Basic لإرسال رسالة نصية
Program.vbImports 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 msg As New Message msg.ToAddress = "+36201111111" msg.Text = "Hello, World!" Dim api = New MessageApi(configuration) Dim result = api.Send(msg) Console.WriteLine(result) Console.ReadKey() End Sub End Module
تحميل SendSms.vb
يمكن تنزيل كود المصدر الموضح في هذه المقالة واستخدامه وتعديله مجانًا.
تحميل: SendSms.vb.zip (48.6 كيلوبايت)
ما الموجود في ملف SendSms.vb.zip؟
يحتوي ملف SendSms.vb.zip على مكتبة Ozeki.Libs.Rest، والتي توفر لك جميع الأدوات اللازمة لإرسال واستقبال رسائل SMS. ستجد أيضًا مشروع SendSms في الملف المضغوط، والذي يحتوي على كود المثال ليوضح لك كيفية إرسال رسالة نصية. يتم سرد كود المثال هذا أدناه.
كيفية إرسال رسالة نصية من Visual Basic (خطوات سريعة)
لإرسال رسالة نصية من Visual Basic:
- تثبيت Ozeki SMS Gateway
- توصيل Ozeki SMS Gateway بشبكة الهاتف المحمول
- إرسال رسالة نصية اختبارية من واجهة Ozeki
- إنشاء مستخدم لواجهة برمجة تطبيقات HTTP SMS
- بدء تشغيل Visual Studio
- إنشاء مشروع باسم Send-SMS.sln
- إضافة مشروع وحدة تحكم Visual Basic: Send-SMS.vbproj
- وضع الكود في Program.vb أو Send-SMS.vb
- إنشاء دالة Visual Basic باسم Send_SMS
- إنشاء بيانات Json للرسالة النصية
- إنشاء طلب HTTP لإرسال الرسالة النصية
- قراءة استجابة HTTP
- كتابة الاستجابة على وحدة التحكم
- فحص السجلات في بوابة الرسائل النصية
تثبيت Ozeki SMS Gateway وإنشاء مستخدم لواجهة برمجة تطبيقات HTTP
لتتمكن من إرسال رسائل SMS من Visual Basic، تحتاج أولاً إلى تثبيت Ozeki SMS Gateway. يمكن تثبيت بوابة الرسائل النصية على نفس الكمبيوتر الذي تقوم فيه بتطوير كود Visual Basic في Visual Studio. بعد التثبيت، تكون الخطوة التالية هي توصيل Ozeki SMS Gateway بشبكة الهاتف المحمول. يمكنك إنشاء مستخدم لواجهة برمجة تطبيقات HTTP SMS. قم بإنشاء مستخدم باسم مستخدم "http_user"، وكلمة مرور "qwe123" لجعل المثال يعمل دون تعديل.
بعد إعداد البيئة، يمكنك تشغيل كود Visual Basic الخاص بك.
رابط واجهة برمجة تطبيقات HTTP لإرسال رسالة نصية من Visual Basic
لإرسال رسائل SMS من Visual Basic، سيتعين على Visual Basic إصدار طلب HTTP إلى بوابة الرسائل النصية. يظهر رابط واجهة برمجة التطبيقات أدناه. لاحظ أنه يجب استبدال عنوان IP (127.0.0.1) بعنوان IP الخاص ببوابة الرسائل النصية. إذا كان Ozeki SMS Gateway مثبتًا على نفس الكمبيوتر الذي يعمل عليه تطبيق 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
لإرسال رسائل SMS، تحتاج إلى تضمين الأسطر التالية كرؤوس في طلب 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: 336 Content-Type: application/json Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw== Host: 127.0.0.1:9509 { "messages": [ { "message_id": "4b486234-1dde-4975-b233-47267e988287", "to_address": "+36201111111", "text": "Hello, World!", "create_date": "2021-06-11 14:19:47", "valid_until": "2021-06-18 14:19:47", "time_to_send": "2021-06-11 14:19:47", "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": 1, "success_count": 1, "failed_count": 0, "messages": [ { "message_id": "7e4fa89b-df8a-4267-afe3-da348bf200ef", "from_station": "%", "to_address": "+36201111111", "to_station": "%", "text": "Hello, World!", "create_date": "2021-06-11 14:19:47", "valid_until": "2021-06-18 14:19:47", "time_to_send": "2021-06-11 14:19:47", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": false, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ], "status": "SUCCESS" } ] } }
كيفية إرسال الرسائل القصيرة من Visual Basic (فيديو تعليمي)
يُظهر لك هذا الفيديو كيفية إنشاء مشروع وحدة تحكم جديد بـ .Net core في Visual Studio، وكيفية تسميته إلى Send-SMS.sln. بمجرد إنشاء الحل، قد تلاحظ أنه تمت إضافة Send-SMS.vbproj إلى الحل، وبشكل افتراضي يتم فتح ملف Program.cs. يمكنك تغيير اسم Program.vb إلى Send-SMS.vb إذا رغبت. ستشاهد أيضًا في الفيديو، كيف يمكن نسخ كود المثال أدناه إلى ملف Send-SMS.vb، وكيفية تجميعه وتنفيذه.
SendSms.sln
كود المثال أدناه هو جزء من حل Visual Studio SendSms.sln. يمكن أن يحتوي حل Visual Studio على مشاريع وملفات متعددة. في هذا الحل يوجد مشروعان فقط: SendSms.vbproj، Ozeki.Libs.Rest.csproj، وملف واحد: Program.vb.
كيفية التحقق من قبول HTTP user للرسالة القصيرة
بعد إرسال الرسالة القصيرة، من الجيد التحقق من بوابة الرسائل القصيرة الخاصة بك، لمعرفة ما تم استلامه. يمكنك التحقق من السجل عن طريق فتح تفاصيل مستخدم HTTP من وحدة تحكم إدارة بوابة Ozeki للرسائل القصيرة. يُظهر لك الفيديو التالي ما يجب البحث عنه.
كيفية التحقق من إرسال الرسالة القصيرة إلى شبكة الهاتف المحمول
الخطوة الأخيرة في التحقق من الإجراء هي الاطلاع على سجلات اتصال شبكة الهاتف المحمول. قد تحتاج إلى تفعيل التسجيل في إعدادات الاتصال قبل إرسال الرسالة لرؤية السجلات. إذا تم تفعيل التسجيل، سترى رقم الهاتف والنص الرسالة التي أرسلتها.
تشغيل مثال الرسائل القصيرة في Visual Basic على Windows
عند استخدام Windows لتشغيل مثال الرسائل القصيرة هذا المكتوب بلغة Visual Basic، ستلاحظ أنك تحصل على أداء أفضل قليلاً مقارنة بتشغيله على Linux. لفهم سبب حدوث ذلك، يجب أن تضع في اعتبارك أن Visual Basic يستخدم إطار عمل .NET لتنفيذ الكود. هذا لأن تنفيذ .NET على Windows مُحسّن للأداء، بينما mono، تنفيذ .NET على Linux، ما زال يحتاج إلى بعض التطوير في هذا المجال.
ملخص
لقد شرح الدليل أعلاه خطوات إرسال الرسائل القصيرة من Visual Basic. توفر Ozeki كل المعرفة والأدوات لجعل عملك أسهل. إذا تم اتباع الخطوات بعناية، فإن المراسلة مع العملاء عبر الهاتف المحمول من VB بمساعدة Ozeki SMS Gateway لن تكون معقدة. يتيح لك الأداء العالي لـ Ozeki SMS Gateway إرسال ما يصل إلى 1000 رسالة نصية في الثانية.
تأكد من مواصلة القراءة في صفحة البرنامج التعليمي لـ Ozeki، حيث توجد معلومات حول مواضيع مشابهة، مثل استلام الرسائل في VB.
ما عليك فعله بعد ذلك هو تنزيل Ozeki SMS Gateway والبدء في العمل!
More information
- إرسال SMS بـ VB باستخدام واجهة برمجة التطبيقات REST لـ HTTP (عينة كود)
- إرسال عدة رسائل SMS بـ VB باستخدام واجهة برمجة التطبيقات REST لـ HTTP (عينة كود)
- جدولة SMS بـ VB باستخدام واجهة برمجة التطبيقات REST لـ HTTP (عينة كود)
- استقبال SMS بـ VB باستخدام واجهة برمجة التطبيقات REST لـ HTTP (عينة كود)
- حذف SMS بـ VB باستخدام واجهة برمجة التطبيقات REST لـ HTTP (عينة كود)
- Github: واجهة برمجة تطبيقات VB لـ SMS
- مكتبة NuGet لـ SMS لـ Visual Basic (VB)