كيفية إرسال رسالة نصية من جافا
أبسط طريقة لإرسال رسائل SMS من جافا هي استخدام واجهة برمجة تطبيقات HTTP/Rest المدمجة في بوابة Ozeki SMS. عند استخدام هذه الواجهة، ستقوم بإرسال رسائل SMS عن طريق إرسال طلب HTTP Post إلى بوابة الرسائل النصية. سيحتوي طلب HTTP Post على رسالة بتنسيق json. ستقوم بوابة الرسائل النصية بإرسال هذه الرسالة إلى هاتف المستلم، وسيتم إرجاع استجابة HTTP 200 OK لطلبك.
كود جافا لإرسال رسالة نصية إلى الهاتف المحمول
يوضح مثال كود جافا لإرسال الرسائل النصية أدناه كيفية إرسال الرسائل النصية باستخدام واجهة برمجة تطبيقات HTTP Rest الخاصة بـ Ozeki SMS Gateway باستخدام مكتبة Ozeki.Libs.Rest في جافا. هذه المكتبة متاحة لك مجانًا، ويمكنك استخدامها وتعديلها في أي من مشاريعك.
Main.javaimport Ozeki.Libs.Rest.*; public class Main { public static void main(String[] args) { var configuration = new Configuration(); configuration.Username = "http_user"; configuration.Password = "qwe123"; configuration.ApiURL = "http://127.0.0.1:9509/api"; var msg = new Message(); msg.ToAddress = "+36201111111"; msg.Text = "Hello world"; var api = new MessageApi(configuration); var result = api.Send(msg); System.out.println(result); } }
كيفية استخدام مثال جافا لإرسال الرسائل النصية:
يمكنك استخدام فئة Message لإنشاء الرسالة النصية، ويمكنك استخدام فئة MessageApi لإرسال الرسالة النصية إلى بوابة الرسائل النصية. ستقوم بوابة الرسائل النصية بإعادة توجيه رسالتك إلى شبكة الهاتف المحمول إما عبر اتصال لاسلكي أو عبر الإنترنت.
تحميل SendSms.java
يمكن تنزيل كود المصدر الموضح في هذه المقالة واستخدامه وتعديله مجانًا.
تحميل: SendSms.java.zip (89.3 كيلوبايت)
ما الموجود في ملف SendSms.java.zip؟
يحتوي ملف SendSms.java.zip على مكتبة Ozeki، التي توفر لك جميع الأدوات اللازمة لإرسال واستقبال الرسائل النصية. ستجد أيضًا ملف Main.java في المشروع، الذي يحتوي على كود المثال ليوضح لك كيفية إرسال رسالة نصية. تم سرد كود المثال هذا أدناه.
كيفية إرسال رسالة نصية من جافا (خطوات سريعة)
لإرسال رسالة نصية من جافا:
- قم بتثبيت بوابة Ozeki SMS
- قم بتوصيل بوابة Ozeki SMS بشبكة الهاتف المحمول
- أرسل رسالة نصية تجريبية من واجهة Ozeki
- قم بإنشاء مستخدم لواجهة برمجة تطبيقات HTTP للرسائل النصية
- قم بتثبيت Apache NetBeans
- قم بإنشاء مشروع باسم SendSms
- ضع الكود في ملف Main.java جديد أو استخدم ملف Main.java الموجود في ملف .zip
- قم بإنشاء الرسالة النصية عن طريق إنشاء كائن Message جديد
- قم بإنشاء واجهة برمجة تطبيقات لإرسال رسالتك
- استخدم طريقة Send لإرسال رسالتك
- اقرأ رسالة الاستجابة على وحدة التحكم
- تحقق من السجلات في بوابة الرسائل النصية
قم بتثبيت بوابة Ozeki SMS وقم بإنشاء مستخدم لواجهة برمجة تطبيقات HTTP
لتتمكن من إرسال رسائل نصية من جافا، تحتاج أولاً إلى إنشاء مستخدم لواجهة برمجة تطبيقات HTTP للرسائل النصية. قم بإنشاء مستخدم باسم مستخدم "http_user"، وكلمة مرور "qwe123" لجعل المثال يعمل دون تعديل.
بعد إعداد البيئة، يمكنك تشغيل كود جافا الخاص بك.
رابط واجهة برمجة تطبيقات HTTP لإرسال رسائل نصية من جافا
لإرسال رسائل SMS من جافا، سيتعين على جافا إصدار طلب HTTP إلى بوابة الرسائل النصية. يظهر رابط واجهة برمجة التطبيقات أدناه. لاحظ أنه يجب استبدال عنوان IP (127.0.0.1) بعنوان IP الخاص ببوابة الرسائل النصية الخاصة بك. إذا تم تثبيت Ozeki SMS Gateway على نفس الكمبيوتر الذي يعمل عليه تطبيق جافا لإرسال الرسائل النصية، فيمكن أن يكون هذا 127.0.0.1. إذا كان مثبتًا على كمبيوتر مختلف، فيجب أن يكون عنوان IP الخاص بهذا الكمبيوتر.
http://127.0.0.1:9509/api?action=rest
مصادقة HTTP لإرسال رسائل نصية من جافا
لمصادقة عميل جافا لإرسال الرسائل النصية، تحتاج إلى إرسال اسم المستخدم وكلمة المرور في سلسلة مشفرة بـ base64 إلى الخادم في طلب HTTP. التنسيق المستخدم هو: base64(اسم المستخدم+":"+كلمة المرور). في جافا، يمكنك استخدام الكود التالي لإجراء هذا التشفير:
var usernamePassword = username + ":" + password; var encodedUsernamePassword = usernamePassword.getBytes(); return "Basic " + Base64.getEncoder().encodeToString(encodedUsernamePassword);
على سبيل المثال، إذا قمت بتشفير اسم المستخدم 'http_user' وكلمة المرور 'qwe123'، فستحصل على السلسلة المشفرة بـ base64 التالية: aHR0cF91c2VyOnF3ZTEyMw==. لإرسال
رأس طلب HTTP لإرسال رسائل نصية من جافا
لإرسال الرسائل النصية، تحتاج إلى تضمين الأسطر التالية كرؤوس في طلب HTTP. لاحظ أننا ندرج نوع المحتوى ورأس المصادقة.
Content-Type: application/json Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
طلب HTTP لإرسال رسالة SMS من جافا
لإرسال الرسالة القصيرة، سيقوم تطبيق جافا الخاص بك بإرسال طلب HTTP مشابه للطلب أدناه. لاحظ أن هذا الطلب يتكون من جزء رأس HTTP وجزء جسم HTTP. جسم HTTP هو سلسلة بيانات مشفرة بتنسيق JSON. يحتوي على رقم المستلم ونص الرسالة.
POST /api?action=sendmsg HTTP/1.1 HTTP2-Settings: AAEAAEAAAAIAAAABAAMAAABkAAQBAAAAAAUAAEAA Connection: Upgrade, HTTP2-Settings Upgrade: h2c Content-Length: 319 Content-Type: application/json Accept: application/json Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw== Host: 127.0.0.1:9509 User-Agent: Java-http-client/16.0.1 { "messages": [ { "message_id":"f5035474-77d7-4be0-9ace-14bf3105940e", "submit_report_requested":true, "view_report_requested":true, "valid_until":"2021-06-18 13:37:47", "time_to_send":"2021-06-11 13:37:47", "to_address":"+36201111111", "text":"Hello world", "create_date":"2021-06-11 13:37:47", "delivery_report_requested":true } ] }
استجابة HTTP المستلمة من مثال جافا لإرسال الرسائل القصيرة
بمجرد أن يستقبل بوابة الرسائل القصيرة هذا الطلب، سيقوم بإنشاء استجابة HTTP. ستحتوي استجابة HTTP على رمز حالة، للإشارة إلى ما إذا كان طلب إرسال الرسالة ناجحًا أم لا. كما ستعود أيضًا بهيكل مشفر بتنسيق JSON لتزويدك بتفاصيل مفيدة حول إرسال الرسالة.
HTTP/1.1 200 OK User-Agent: OZEKI 10.3.120 (www.myozeki.com) Content-Type: application/json; charset=utf8 Last-Modified: Fri, 11 Jun 2021 13:37:11 GMT Server: 10/10.3.120 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": "f5035474-77d7-4be0-9ace-14bf3105940e", "from_station": "%", "to_address": "+36201111111", "to_station": "%", "text": "Hello world", "create_date": "2021-06-11 13:37:47", "valid_until": "2021-06-18 13:37:47", "time_to_send": "2021-06-11 13:37:47", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": false, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ], "status": "SUCCESS" } ] } }
كيفية إرسال رسالة SMS من جافا باستخدام واجهة برمجة تطبيقات الرسائل القصيرة لجافا (فيديو تعليمي)
يُظهر لك هذا الفيديو كيفية إنشاء مشروع جديد في Apache NetBeans، وكيفية تسميته إلى SendSms. بمجرد إنشاء الحل، قد تلاحظ وجود مجلد يسمى <default package> في مشروعك داخل مجلد Source Packages. هذا هو المكان الذي ستقوم فيه بإنشاء أو لصق ملف Main.java. ثم يتعين عليك لصق مجلد Ozeki في مجلد Source packages وهذه كل التحضيرات التي تحتاجها لإرسال رسالة SMS باستخدام جافا.
مثال جافا لإرسال الرسائل القصيرة: Main.java
كيفية التحقق من قبول HTTP user للرسالة القصيرة
بعد إرسال الرسالة القصيرة، من الجيد التحقق من بوابة الرسائل القصيرة الخاصة بك، لمعرفة ما تم استلامه. يمكنك التحقق من السجل عن طريق فتح تفاصيل مستخدم HTTP من وحدة تحكم إدارة بوابة Ozeki للرسائل القصيرة. يوضح لك الفيديو التالي ما الذي تبحث عنه.
كيفية التحقق من إرسال الرسالة القصيرة إلى شبكة الهاتف المحمول
الخطوة الأخيرة في التحقق من الإجراء هي إلقاء نظرة على سجلات اتصال شبكة الهاتف المحمول. قد تحتاج إلى تفعيل التسجيل في إعدادات الاتصال قبل إرسال الرسالة لرؤية السجلات. إذا تم تفعيل التسجيل، فسترى رقم الهاتف والنص الرسالة التي أرسلتها.
لتفعيل التسجيل في مستخدم HTTP، عليك اتباع نفس التعليمات.
الختام
شرح هذا المقال أساسيات إرسال الرسائل القصيرة في جافا بمساعدة بوابة Ozeki للرسائل القصيرة. إذا تم اتباع الخطوات أعلاه بعناية، فلا ينبغي أن يسبب نقل الرسائل في جافا أي قلق. تقدم بوابة Ozeki للرسائل القصيرة أداءً عاليًا، مما يعني أنها يمكنها إرسال ما يصل إلى 1000 رسالة قصيرة في الثانية، لذا فهي بالتأكيد تساعد شركتك في الحفاظ على معايير عالية.
تأكد من أنك لا تنتهي من القراءة هنا، قم بزيارة صفحة البرامج التعليمية لـ Ozeki وتعلم عن أشياء مثل إرسال رسائل متعددة و حذف الرسائل القصيرة في جافا.
الآن الشيء الوحيد المتبقي هو تحميل بوابة Ozeki للرسائل القصيرة والبدء في العمل!
More information
- جافا إرسال رسالة قصيرة باستخدام واجهة برمجة التطبيقات REST HTTP (عينة كود)
- جافا إرسال رسائل متعددة باستخدام واجهة برمجة التطبيقات REST HTTP (عينة كود)
- جافا جدولة رسالة قصيرة باستخدام واجهة برمجة التطبيقات REST HTTP (عينة كود)
- جافا حذف رسالة قصيرة باستخدام واجهة برمجة التطبيقات REST HTTP (عينة كود)
- جافا استقبال رسالة قصيرة باستخدام واجهة برمجة التطبيقات REST HTTP (عينة كود)
- جيت هاب: واجهة برمجة تطبيقات جافا للرسائل القصيرة