حذف الرسائل القصيرة من بوابة الرسائل باستخدام C#

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

كيفية حذف الرسائل القصيرة من بوابة الرسائل باستخدام C#
الشكل 1 - كيفية حذف الرسائل القصيرة من بوابة الرسائل باستخدام C#

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

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

Program.cs

using System;
using Ozeki.Libs.Rest;

namespace DeleteSms.cs
{
    class Program
    {
        static void Main(string[] args)
        {
            var configuration = new Configuration()
            {
                Username = "http_user",
                Password = "qwe123",
                ApiUrl = "http://127.0.0.1:9509/api"
            };

            var msg = new Message()
            {
                ID = "a85d6e16-f888-4306-bd2a-8f8a119d8abf"
            };

            var api = new MessageApi(configuration);

            var result = api.Delete(Folder.Inbox, msg);

            Console.WriteLine(result);
            Console.ReadKey();
        }
    }
}

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

يمكن استخدام مثال C# للرسائل القصيرة هذا في أي تطبيق .NET أو .NET core. لاستخدامه، يجب عليك إضافة ملف Ozeki.Libs.Rest.dll كمرجع إلى مشروعك. بعد إضافة المرجع، يجب وضع التوجيه using Ozeki.Libs.Rest; في قسم الرأس من كود المصدر C# الخاص بك. سيسمح لك ذلك باستخدام الفئات المقدمة من مكتبة Ozeki.Libs.Rest. يمكنك استخدام فئة MessageApi لـ استقبال الرسائل القصيرة من بوابة الرسائل. ستقوم بوابة الرسائل بإعادة توجيه الرسالة إليك إما عبر اتصال لاسلكي أو عبر الإنترنت.

تنزيل Delete-SMS.cs

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

ما الموجود في ملف Delete-SMS.cs.zip؟

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

دليل حذف الرسائل القصيرة باستخدام C#
الشكل 2 - ما الموجود داخل Recive-SMS.cs.zip

كيفية حذف الرسائل القصيرة باستخدام C# (خطوات سريعة)

لحذف الرسائل القصيرة باستخدام C#:

  1. قم بإعداد Visual Studio Community
  2. قم بتنزيل ملف DeleteSms.cs.zip
  3. استخرج الملف المضغوط من مجلد التنزيلات
  4. افتح ملف DeleteSms.cs.sln في Visual Studio
  5. قم بتشغيل Ozeki SMS Gateway
  6. حدد http_user في علامة تبويب المستخدمين والتطبيقات
  7. تحقق من تفاصيل الرسالة في صندوق الوارد
  8. أدخل معرف رسالة SMS في كود Program.cs
  9. قم بتشغيل Program.cs لحذف الرسائل القصيرة باستخدام C#

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

لتتمكن من إرسال الرسائل القصيرة من C#، تحتاج أولاً إلى إنشاء مستخدم HTTP SMS API. قم بإنشاء مستخدم باسم مستخدم "http_user"، وكلمة مرور "qwe123" لجعل المثال يعمل دون تعديل.

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

رابط HTTP API لاستخدام إرسال الرسائل القصيرة من C#

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

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

مصادقة HTTP لاستخدام استقبال الرسائل القصيرة من C#

لمصادقة عميل C# للرسائل القصيرة، تحتاج إلى إرسال اسم المستخدم وكلمة المرور في سلسلة مشفرة بـ 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 لحذف الرسائل القصيرة باستخدام C#

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

POST /api?action=deletemsg HTTP/1.1
Connection: Keep-Alive
Content-Length: 73
Content-Type: application/json
Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw==
Host: 127.0.0.1:9509
 
{
	"folder":  "inbox",
	"message_ids":
	[
		"3a922414-458f-4866-a8ee-f053d1132a6b"
	]
}
	

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

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

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

استجابة HTTP المستلمة من مثال الرسائل القصيرة في C#

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

HTTP/1.1 200 OK
User-Agent: OZEKI 10.3.116 (www.myozeki.com)
Content-Type: application/json; charset=utf8
Last-Modified: Mon, 07 Jun 2021 14:10:25 GMT
Server: 10/10.3.116
Transfer-Encoding: chunked
{
	"http_code": 200,
	"response_code": "SUCCESS",
	"response_msg": "",
	"data": {
		"folder": "inbox",
		"message_ids": [
			"3a922414-458f-4866-a8ee-f053d1132a6b"
		]
	}
}
	

كيفية حذف الرسائل القصيرة باستخدام C# باستخدام واجهة برمجة تطبيقات الرسائل القصيرة في C# (فيديو تعليمي)

يظهر لك هذا الفيديو كيفية إنشاء مشروع وحدة تحكم جديد في .Net core في Visual Studio، وكيفية تسميته إلى DeleteSms.sln. بمجرد إنشاء الحل، قد تلاحظ أنه تمت إضافة DeleteSms.csproj إلى الحل، وبشكل افتراضي يتم فتح ملف Program.cs. يمكنك إعادة تسمية Program.cs إلى Program.cs إذا رغبت. سترى أيضًا في الفيديو، كيف يمكن نسخ مثال الكود أدناه إلى ملف Program.cs، وكيفية تجميعه وتنفيذه.

مثال الرسائل القصيرة في C#: DeleteSms.sln


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

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

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

كود المثال أدناه هو جزء من حل Visual Studio DeleteSms.sln. يمكن أن يحتوي حل Visual Studio على مشاريع وملفات متعددة. في هذا الحل هناك مشروعان فقط: DeleteSms.csproj، Ozeki.Libs.Rest.csproj وملف واحد: Program.cs.

الشكل 3 - DeleteSms.sln

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

في الفيديو التالي، ستتعلم كيفية تشغيل كود المثال وكيفية التحقق من سجل العملية. سيبدأ بتشغيل Ozeki SMS Gateway وسيأخذك حتى صندوق الوارد الفارغ بعد حذف الرسالة القصيرة. ستتعلم كيفية الحصول على معرف الرسالة وكيفية استخدام الكود لحذف الرسالة. يبلغ طول الفيديو 1:38 دقيقة فقط ويحتوي على جميع المعلومات التي تحتاجها لحذف رسالة باستخدام هذا المشروع.

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

تشغيل مثال الرسائل القصيرة في C# على Windows

عند استخدام Windows لتشغيل مثال الرسائل القصيرة هذا المكتوب بلغة C#، ستلاحظ أنك تحصل على أداء أفضل قليلاً، مقارنة بتشغيله على Linux. لفهم سبب حدوث ذلك، يجب أن تضع في اعتبارك أن C# تستخدم إطار عمل .NET لتنفيذ الأكواد. هذا لأن تنفيذ .NET على Windows مُحسّن للأداء، بينما mono، وهو تنفيذ .NET على Linux، لا يزال بحاجة إلى اللحاق بهذا المجال.

ملخص

شرح الدليل خطوات حذف الرسائل القصيرة من Ozeki SMS Gateway باستخدام C#. إذا تمت قراءة المقالة بعناية، فإن حذف الرسائل من Ozeki SMS Gateway يبدو سهلًا جدًا باستخدام كود C#. يوضح هذا الحل تمامًا مدى سهولة التحكم في Ozeki SMS Gateway وتكوينها باستخدام أوامر C#. تسمح لك Ozeki SMS Gateway بإدارة تكاليف الرسائل القصيرة وتتبع حركة المرور. باستخدام وظيفة الحذف هذه، يمكنك إزالة الرسائل غير المرغوب فيها بسرعة.

لمتابعة القراءة، قم بزيارة صفحات البرامج التعليمية لـ Ozeki، حيث يمكنك العثور على معلومات حول مواضيع مشابهة، مثل جدولة الرسائل في C#.

الشيء الوحيد الذي عليك فعله الآن هو تنزيل Ozeki SMS Gateway وابدأ العمل!

More information