كيفية جدولة رسالة SMS في PHP

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

كيفية جدولة رسالة sms في php
الشكل 1 - كيفية جدولة رسالة SMS في PHP

كود PHP لإرسال رسالة SMS إلى الهاتف المحمول

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

SendSMS.cs
namespace Ozeki_PHP_Rest
{
require 'MessageApi/MessageApi.php';

		$configuration = new Configuration();
		
		$configuration -> Username = "http_user";
		$configuration -> Password = "qwe123";
		$configuration -> ApiUrl = "http://127.0.0.1:9509/api";
		
		$msg = new Message();
		
		$msg -> ToAddress = "+36201111111";
		$msg -> Text = "Hello, World!";
		$msg -> TimeToSend = "2021-06-23 16:18:00";
			
		$api = new MessageApi($configuration);
		
		$result = $api -> SendSingle($msg);	
		
		echo strval($result);
}		

كيفية استخدام مثال PHP لإرسال SMS:

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

تحميل Send-schedule-SMS.php

يمكن تنزيل كود المصدر الموضح في هذه المقالة واستخدامه وتعديله مجانًا.
تحميل: Send-schedule-SMS.zip (5.9 كيلوبايت)

ما الموجود في ملف Send-schedule-SMS.zip؟

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

الشكل 2 - ما الموجود داخل Send-schedule-SMS.zip

كيفية إرسال رسالة SMS من PHP (خطوات سريعة)

لإرسال رسالة SMS من PHP:

  1. قم بتثبيت بوابة Ozeki SMS
  2. قم بتوصيل بوابة Ozeki SMS بشبكة الهاتف المحمول
  3. أرسل رسالة SMS تجريبية من واجهة Ozeki
  4. قم بإنشاء مستخدم لواجهة برمجة تطبيقات HTTP SMS
  5. ابدأ تشغيل خادم Wamp
  6. قم بتنزيل المثال أعلاه
  7. قم بإنشاء الرسالة عن طريق إنشاء كائن Message جديد
  8. استخدم طريقة SendSingle لإرسال رسالتك
  9. اقرأ رد HTTP
  10. تحقق من السجلات في بوابة الرسائل

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

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

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

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

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

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

رأس طلب HTTP لإرسال رسائل SMS من PHP

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

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

طلب HTTP لإرسال رسالة SMS من PHP

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

طلب HTTP تم استلامه من 192.168.0.113:57045
POST /api?action=sendmsg HTTP/1.1
Content-Length: 433
Content-Type: application/json
Accept: */*
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 192.168.0.113:9509

{
  "messages": [
    {
      "message_id": "75ce6646-0a84-48d6-996a-02b632eef83a",
      "from_connection": null,
      "from_address": null,
      "from_station": null,
      "to_connection": null,
      "to_address": "+36201111111",
      "to_station": null,
      "text": "مرحبًا بالعالم!",
      "create_date": "2021-06-16 15:48:03",
      "valid_until": "2021-06-23 15:48:03",
      "time_to_send": "2021-06-23 16:18:00",
      "submit_report_requested": true,
      "delivery_report_requested": true,
      "view_report_requested": true,
      "tags": []
    }
  ]
}

استجابة HTTP التي تم استلامها بواسطة مثال PHP لإرسال الرسائل القصيرة

بمجرد أن يستلم بوابة الرسائل القصيرة هذا الطلب، سيقوم بإنشاء استجابة 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: Mon, 14 Jun 2021 07:43:45 GMT
Server: 10/10.3.118
Transfer-Encoding: chunked

{
  "http_code": 200,
  "response_code": "SUCCESS",
  "response_msg": "تمت إضافة الرسائل إلى قائمة الانتظار للإرسال.",
  "data": {
    "total_count": 1,
    "success_count": 1,
    "failed_count": 0,
    "messages": [
      {
        "message_id": "38585421-3260-4bf9-9daa-2b39ec16961a",
        "from_station": "%",
        "to_address": "+36201111111",
        "to_station": "%",
        "text": "مرحبًا بالعالم!",
        "create_date": "2021-06-16 15:48:03",
        "valid_until": "2021-06-16 15:48:03",
        "time_to_send": "2021-06-23 16:18:00",
        "submit_report_requested": true,
        "delivery_report_requested": true,
        "view_report_requested": false,
        "tags": [
          {
            "name": "Type",
            "value": "SMS:TEXT"
          }
        ],
        "status": "SUCCESS"
      }
    ]
  }
}

كيفية إرسال رسالة SMS من PHP باستخدام واجهة برمجة تطبيقات الرسائل القصيرة في PHP (فيديو تعليمي)

يُظهر لك هذا الفيديو كيفية تنزيل واستخدام مشروع SendSMS في PHP. بمجرد إضافة الملفات المطلوبة إلى مشروعك، قد تلاحظ وجود ملف يسمى MessageApi.php. هذا هو الملف الذي يحتوي على MessageApi وكل الأشياء التي تحتاجها لإرسال رسالة SMS باستخدام PHP.

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

مثال PHP لإرسال الرسائل القصيرة: Send_Message.php

الشكل 3 - Send_Message.php

كيفية التحقق من قبول بوابة الرسائل القصيرة للرسالة

بعد إرسال الرسالة القصيرة، من الجيد التحقق من بوابة الرسائل القصيرة الخاصة بك، لمعرفة ما تم استلامه. يمكنك التحقق من السجل عن طريق فتح تفاصيل مستخدم HTTP من وحدة تحكم إدارة بوابة Ozeki للرسائل القصيرة. يُظهر لك الفيديو التالي ما يجب البحث عنه.

الفيديو 2 - إرسال رسائل SMS باستخدام كود PHP أعلاه (فيديو تعليمي)

كيفية التحقق من إرسال الرسالة إلى شبكة الهاتف المحمول

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

باختصار

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

المعلومات التي حصلت عليها قيمة، فلنجمع المزيد! يحتوي Ozeki على العديد من المقالات الأخرى لمساعدتك، تابع مع برنامج تعليمي لواجهة برمجة تطبيقات الرسائل القصيرة في PHP على GitHub.

الآن، الشيء التالي الذي يجب عليك فعله هو تنزيل بوابة Ozeki للرسائل القصيرة وتكوين هذا الحل على الفور!

More information