كيفية حذف رسالة SMS في Perl

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

كيفية حذف رسالة SMS في Perl
الشكل 1 - كيفية حذف رسالة SMS في Perl

كود Perl لاستقبال رسالة SMS من الهاتف المحمول

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

DeleteSms.pl

use Ozeki::Libs::Rest::Configuration;
use Ozeki::Libs::Rest::MessageApi;
use Ozeki::Libs::Rest::Message;
use Ozeki::Libs::Rest::Folder;

my $configuration = new Ozeki::Libs::Rest::Configuration();
$configuration->{ Username } = "http_user";
$configuration->{ Password } = "qwe123";
$configuration->{ ApiUrl } = "http://127.0.0.1:9509/api";

my $msg = new Ozeki::Libs::Rest::Message();
#يجب عليك تغيير سمة ID هذه لحذف رسالة معينة
$msg->{ ID } = "19fed2a2-da46-11eb-8339-ffacbeab4160";

my $api = new Ozeki::Libs::Rest::MessageApi($configuration);

my $result = $api->Delete(Ozeki::Libs::Rest::Folder->Inbox, $msg);

print($result);
    

كيفية استخدام مثال Perl للرسائل القصيرة:

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

تحميل DeleteSms.pl

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

ما الموجود في ملف DeleteSms.pl.zip؟

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

الشكل 2 - ما الموجود داخل DeleteSms.pl.zip

كيفية حذف رسائل SMS باستخدام Perl (خطوات سريعة)

لحذف رسائل SMS باستخدام Perl:

  1. قم بتنزيل ملف DeleteSms.pl.zip
  2. استخرج ملف .zip من مجلد التنزيلات
  3. افتح ملف DeleteSms.pl في أي محرر نصوص
  4. شغّل Ozeki SMS Gateway
  5. حدد http_user في علامة تبويب المستخدمين والتطبيقات
  6. تحقق من تفاصيل الرسالة في صندوق الوارد
  7. أدخل معرف رسالة SMS في كود DeleteSms.pl
  8. شغّل DeleteSms.pl لحذف رسائل SMS باستخدام Perl

تثبيت Ozeki SMS Gateway وإنشاء مستخدم HTTP API

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

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

رابط HTTP API لاستخدام إرسال رسائل SMS من Perl

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

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

مصادقة HTTP لاستخدام استقبال رسائل SMS من Perl

لمصادقة عميل Perl للرسائل القصيرة، تحتاج إلى إرسال اسم المستخدم وكلمة المرور في سلسلة مشفرة base64 إلى الخادم في طلب HTTP. التنسيق المستخدم هو: base64(username+":"+password). في Perl، يمكنك استخدام الكود التالي لإجراء هذا التشفير:

my ($self, $Username, $Password) = @_;
my $Username_Password = "${Username}:${Password}";
my $Username_Password_encoded = encode_base64($Username_Password);
return "Basic ${Username_Password_encoded}";
    

على سبيل المثال، إذا قمت بتشفير اسم المستخدم 'http_user' وكلمة المرور 'qwe123'، ستحصل على السلسلة المشفرة base64 التالية: aHR0cF91c2VyOnF3ZTEyMw==. للإرسال

طلب HTTP لحذف الرسائل النصية باستخدام Perl

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

POST /api?action=deletemsg HTTP/1.1
Connection: TE, close
Content-Length: 153
Content-Type: application/json; charset=utf8
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 192.168.0.14:9509
Te: deflate,gzip;q=0.3
User-Agent: libwww-perl/6.43

{
	"folder":"inbox",
	"message_ids":	[
		"da837770-e3bd-4970-a824-579423d9b242"
	]
}
	

رأس طلب HTTP لحذف الرسائل النصية من Perl

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

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

استجابة HTTP المستلمة من مثال Perl للرسائل النصية

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

HTTP/1.1 200 OK
User-Agent: OZEKI 10.3.123 (www.myozeki.com)
Content-Type: application/json; charset=utf8
Last-Modified: Fri, 02 Jul 2021 16:00:35 GMT
Server: 10/10.3.123
Transfer-Encoding: chunked

{
	"http_code": 200,
	"response_code": "SUCCESS",
	"response_msg": "",
	"data": {
	  "folder": "inbox",
	  "message_ids": [
	    "da837770-e3bd-4970-a824-579423d9b242"
	  ]
	}
}
	

كيفية تنزيل الكود (فيديو تعليمي)

في هذا الفيديو، سنوضح لك كيفية تنزيل ملفات المشروع من صفحة هذا البرنامج التعليمي. سيبدأ الفيديو بالعثور على رابط التنزيل وينتهي بالكود جاهزًا للاستخدام. ستتعلم الأوامر التي يجب كتابتها في الطرفية لإعدادها لتشغيل الكود. يبلغ طول الفيديو 1:34 دقيقة فقط وهو مفصل للغاية. لن تواجه أي مشكلة في متابعة الخطوات.

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

مثال Perl للرسائل النصية: DeleteSms.pl

الكود المثال أدناه هو جزء من DeleleSms.pl (الشكل 3). عند تشغيل هذا الكود، سيحذف رسالة بالمعرف المقدم في الكود. يمكنك العثور على المعرف المقدم في المتغير 'ID'. قم بتشغيل الكود وسيبحث عن الرسالة ويحذفها. إذا كنت معتادًا على لغة البرمجة Perl، فلا تتردد في تعديل الكود.

الشكل 3 - DeleteSms.pl

استخدام الكود (فيديو تعليمي)

في هذا الفيديو، سترى الكود في العمل. سنعرض لك كيفية تشغيل الكود وفحص نتائجه. سيبدأ بفتح طرفية وفتح الكود وسيظهر لك مجلد الوارد الفارغ في النهاية. يبلغ طول الفيديو 1:14 دقيقة فقط وهو سهل المتابعة. لن تواجه أي مشكلة في متابعة الخطوات.

الفيديو 2 - كيفية حذف الرسائل النصية باستخدام كود Perl أعلاه (فيديو تعليمي)

ملخص

في هذه الصفحة، قرأت عن كيفية حذف الرسائل النصية من Perl باستخدام واجهة برمجة تطبيقات REST للرسائل النصية الخاصة ببوابة Ozeki للرسائل النصية. الآن، يمكنك إنشاء الشروط لاستخدام مستودع Perl القابل للتنزيل لحذف الرسائل النصية. يمكن أن يكون هذا الحل نقطة تحول في نظام المراسلة الخاص بك بسبب استدعاءات الطرق المكتوبة جيدًا وفئة الرسائل النصية المصممة بشكل جيد والتي تتيح لك تكوين معلمات الرسائل النصية.

بوابة Ozeki للرسائل النصية لديها المزيد لتقدمه لك، لذا انتقل إلى مقال آخر مثير للاهتمام. أوصي بقراءة دليل كيفية تنزيل أحدث مكتبة Perl للرسائل النصية من Github للمزيد.

قم بتنزيل بوابة Ozeki للرسائل النصية وإعداد نظامك الآن!

More information