كيفية استقبال رسالة SMS في جافا
أبسط طريقة لإرسال رسائل SMS من جافا هي استخدام واجهة برمجة تطبيقات HTTP/Rest المدمجة في بوابة Ozeki SMS. عند استخدام هذه الواجهة، ستقوم بإرسال رسائل SMS عن طريق إرسال طلب HTTP Post إلى بوابة الرسائل القصيرة. سيحتوي طلب HTTP Post على رسالة مُنسقة بتنسيق json. ستقوم بوابة الرسائل القصيرة بإرسال هذه الرسالة إلى هاتف المستلم، وسيتم إرجاع استجابة HTTP 200 OK لطلبك.
كود جافا لإرسال رسالة SMS إلى الهاتف المحمول
يوضح مثال كود جافا للرسائل القصيرة أدناه كيف يمكنك استقبال رسائل SMS باستخدام واجهة برمجة تطبيقات HTTP Rest الخاصة ببوابة Ozeki SMS باستخدام مكتبة 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 api = new MessageApi(configuration); var result = api.DownloadIncoming(); System.out.println(result); } }
كيفية استخدام مثال جافا للرسائل القصيرة:
يمكنك استخدام فئة MessageApi لـ استقبال الرسائل القصيرة من بوابة الرسائل القصيرة. ستقوم بوابة الرسائل القصيرة بإعادة توجيه الرسائل إليك من مجلد الوارد.
تنزيل ReceiveSms.java
يمكن تنزيل كود المصدر الموضح في هذه المقالة واستخدامه وتعديله مجانًا.
تنزيل: ReceiveSms.java.zip (89.6 كيلوبايت)
ما الموجود في ملف ReceiveSms.java.zip؟
يحتوي ملف ReceiveSms.java.zip على مكتبة Ozeki، التي توفر لك جميع الأدوات اللازمة لإرسال وتحديد واستقبال وحذف رسائل SMS. ستجد أيضًا ملف Main.java في المشروع، الذي يحتوي على كود المثال ليوضح لك كيفية استقبال رسائل SMS. تم سرد كود المثال هذا أدناه.
كيفية استقبال رسائل SMS من جافا (خطوات سريعة)
لاستقبال رسائل SMS من جافا:
- قم بتثبيت بوابة Ozeki SMS
- قم بتوصيل بوابة Ozeki SMS بشبكة الهاتف المحمول
- أرسل رسالة SMS تجريبية من واجهة Ozeki
- قم بإنشاء مستخدم لواجهة برمجة تطبيقات HTTP للرسائل القصيرة
- Apache NetBeans
- قم بإنشاء مشروع باسم ReceiveSms
- ضع الكود في ملف Main.java الذي تم إنشاؤه حديثًا أو استخدم ملف Main.java الموجود في ملف .zip
- قم بإنشاء واجهة برمجة تطبيقات لاستقبال رسائلك
- استخدم طريقة DownloadIncoming لاستقبال رسالتك
- اقرأ رسالة الاستجابة على وحدة التحكم
- تحقق من السجلات في بوابة الرسائل القصيرة
قم بتثبيت بوابة Ozeki SMS وأنشئ مستخدمًا لواجهة برمجة تطبيقات HTTP
لتتمكن من إرسال واستقبال وحذف رسائل SMS من جافا، تحتاج أولاً إلى إنشاء مستخدم لواجهة برمجة تطبيقات HTTP للرسائل القصيرة. قم بإنشاء مستخدم باسم مستخدم "http_user"، وكلمة مرور "qwe123" لجعل المثال يعمل دون تعديل.
بعد إعداد البيئة، يمكنك تشغيل كود جافا الخاص بك.
رابط واجهة برمجة تطبيقات HTTP لاستقبال رسائل SMS من جافا
لاستقبال رسائل SMS من جافا، سيتعين على جافا إصدار طلب HTTP إلى بوابة الرسائل القصيرة. يظهر رابط واجهة برمجة التطبيقات أدناه. لاحظ أنه يجب استبدال عنوان IP (127.0.0.1) بعنوان IP الخاص ببوابة الرسائل القصيرة. إذا تم تثبيت بوابة Ozeki SMS على نفس الكمبيوتر الذي يعمل عليه تطبيق جافا للرسائل القصيرة، فيمكن أن يكون هذا 127.0.0.1. إذا تم تثبيته على كمبيوتر مختلف، فيجب أن يكون عنوان IP الخاص بهذا الكمبيوتر.
http://127.0.0.1:9509/api?action=rest
مصادقة HTTP لاستقبال رسائل SMS من جافا
لمصادقة عميل جافا للرسائل القصيرة، تحتاج إلى إرسال اسم المستخدم وكلمة المرور في سلسلة مشفرة بـ base64 إلى الخادم في طلب HTTP. التنسيق المستخدم هو: base64(اسم المستخدم+":"+كلمة المرور). في جافا، يمكنك استخدام الكود التالي لإجراء هذا التشفير:
var usernamePassword = username + ":" + password; var encodedUsernamePassword = usernamePassword.getBytes(); return "Basic " + Base64.getEncoder().encodeToString(encodedUsernamePassword);
على سبيل المثال، إذا قمت بتشفير اسم المستخدم 'http_user' وكلمة المرور 'qwe123'، فستحصل على السلسلة المشفرة بـ base64 التالية: aHR0cF91c2VyOnF3ZTEyMw==. للإرسال
رأس طلب HTTP لاستقبال رسائل SMS من جافا
لحذف رسالة SMS، تحتاج إلى تضمين الأسطر التالية كرؤوس في طلب HTTP. لاحظ أننا ندرج نوع المحتوى ورأس المصادقة.
Content-Type: application/json Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
استقبال رسالة SMS عبر طلب HTTP من جافا
لحذف الرسالة القصيرة، سيرسل تطبيق الجافا الخاص بك طلب HTTP مشابه للطلب أدناه. لاحظ أن هذا الطلب يتكون من جزء رأس HTTP وجزء جسم HTTP. جسم HTTP هو سلسلة بيانات مشفرة بتنسيق JSON. يحتوي على رقم المستلم ونص الرسالة.
GET /api?action=receivemsg&folder=inbox HTTP/1.1 HTTP2-Settings: AAEAAEAAAAIAAAABAAMAAABkAAQBAAAAAAUAAEAA Connection: Upgrade, HTTP2-Settings Upgrade: h2c Content-Length: 0 Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw== Host: 127.0.0.1:9509 User-Agent: Java-http-client/16.0.1
استجابة HTTP المستلمة بواسطة مثال SMS في جافا
بمجرد استلام بوابة الرسائل القصيرة لهذا الطلب، ستقوم بإنشاء استجابة 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": "", "data": { "folder": "inbox", "limit": "1000", "data": [ { "message_id": "0401f09a-5edb-4728-9bbc-0426fd9bea09", "from_connection": "http_user@localhost", "from_address": "+36201111111", "from_station": "%", "to_connection": "http_user@localhost", "to_address": "http_user", "to_station": "%", "text": "Hello world 1", "create_date": "2021-06-11 14:01:15", "valid_until": "2021-06-18 14:01:15", "time_to_send": "2021-06-11 14:01:15", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": true, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ] }, { "message_id": "5302e7df-18c4-4e01-82e7-181967bc8516", "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-11 14:01:15", "valid_until": "2021-06-18 14:01:15", "time_to_send": "2021-06-11 14:01:15", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": true, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ] }, { "message_id": "95c60379-e541-4be1-b698-adfde4e425c8", "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-11 14:01:15", "valid_until": "2021-06-18 14:01:15", "time_to_send": "2021-06-11 14:01:15", "submit_report_requested": true, "delivery_report_requested": true, "view_report_requested": true, "tags": [ { "name": "Type", "value": "SMS:TEXT" } ] } ] } }
كيفية إرسال رسالة SMS من جافا باستخدام واجهة برمجة تطبيقات SMS في جافا (فيديو تعليمي)
يُظهر لك هذا الفيديو كيفية إنشاء مشروع جديد في Apache NetBeans، وكيفية تسميته بـ ReceiveSMS. بمجرد إنشاء الحل، قد تلاحظ وجود مجلد يسمى <default package> في مشروعك داخل مجلد Source Packages. هذا هو المكان الذي ستقوم فيه بإنشاء أو لصق ملف Main.java. ثم يتعين عليك لصق مجلد Ozeki في مجلد Source packages وهذه كل التحضيرات التي تحتاجها لاستقبال رسالة SMS باستخدام جافا.
مثال استقبال SMS في جافا: Main.java
كيفية التحقق من قبول HTTP user لرسالة SMS
بعد تقديم الطلب، من الجيد التحقق من بوابة الرسائل القصيرة الخاصة بك، لمعرفة ما تم استلامه. يمكنك التحقق من السجل عن طريق فتح تفاصيل مستخدم HTTP من وحدة تحكم إدارة بوابة Ozeki SMS. يُظهر لك الفيديو التالي ما يجب البحث عنه.
ملخص
الهدف الرئيسي من هذه المقالة هو توضيح استقبال الرسائل القصيرة في جافا بمساعدة بوابة Ozeki SMS. إذا تم اتباع الخطوات بعناية، لن يكون نقل الرسائل من صندوق الوارد إلى برنامج جافا الخاص بالمستخدم مشكلة بعد الآن. إذا كنت ترغب في جمع الرسائل الواردة في برنامج جافا، فإن هذا الحل هو طريقة مثالية للقيام بذلك. يمكن تنزيل بوابة Ozeki SMS من موقع Ozekي واستخدامها في فترة تجريبية مجانًا، حتى تتمكن من التأكد من أن هذا التطبيق مناسب لك.
استمر في القراءة على صفحة البرامج التعليمية لـ Ozekي، حيث يمكن العثور على أدلة مماثلة حول مواضيع مثل حذفها في جافا.
الشيء الوحيد المتبقي الآن هو تنزيل بوابة Ozekي SMS والبدء في العمل!
More information
- جافا إرسال رسالة قصيرة باستخدام واجهة برمجة التطبيقات REST HTTP (عينة كود)
- جافا إرسال رسائل متعددة باستخدام واجهة برمجة التطبيقات REST HTTP (عينة كود)
- جافا جدولة رسالة قصيرة باستخدام واجهة برمجة التطبيقات REST HTTP (عينة كود)
- جافا حذف رسالة قصيرة باستخدام واجهة برمجة التطبيقات REST HTTP (عينة كود)
- جافا استقبال رسالة قصيرة باستخدام واجهة برمجة التطبيقات REST HTTP (عينة كود)
- جيت هاب: واجهة برمجة تطبيقات جافا للرسائل القصيرة