Skip to main content

مقدمة

لا يستقبل الخادم الإشعارات بل يرسلها. يغلّف SDK الخاص بـ .NET واجهة REST للإشعارات في عميل مُهيكل حتى تتمكن خدماتك من إشعار مستخدمي تطبيقات الهاتف والويب دون كتابة طلبات HTTP يدوياً.

1. أنشئ مفتاحاً خاصاً

تُرسَل الإشعارات إلى أجهزة المشروع الذي يستخدمه تطبيقك، وهو عادةً مشروع مختلف عن الذي يبلّغ خادمك عن أخطائه. من إعدادات المشروع في ذلك المشروع، أنشئ مفتاحاً خاصاً بصلاحية إرسال الإشعارات.
يستطيع المفتاح الخاص إرسال إشعارات إلى كل مستخدمي المشروع. احفظه في user secrets أو متغير بيئة على الخادم ولا تضعه أبداً في تطبيق عميل.

2. سجّل العميل

Program.cs
appsettings.json
تعمل الدالة أيضاً، ويعود ProjectId / ApiKey إلى LERIX_NOTIFICATIONS_PROJECT_ID / LERIX_NOTIFICATIONS_API_KEY. يُسجَّل العميل كـ singleton من نوع LerixNotifications وهو مستقل عن AddLerix، فيمكن لخدمة أن ترسل الإشعارات دون الإبلاغ عن الأخطاء.

3. أرسل إشعاراً

OrdersService.cs
DeviceTokens هي معرّفات أجهزة Lerix التي تحصل عليها تطبيقاتك من getDeviceId() وترسلها إلى خادمك عند تسجيل الدخول. احفظ NotificationId المُعاد، فكل الدوال الأخرى تحتاجه.

البث إلى موضوع

الجدولة لوقت لاحق

المعاملات

ملاحظات المنصات حول Sound وImageUrl موجودة في مرجع REST API.

4. إدارة إشعار مُرسَل

تُعيد UpdateAsync وUnsendAsync وCancelAsync استجابة JSON الخام كـ JsonElement?؛ وتُعيد DeliveriesAsync عنصر JsonElement واحداً لكل مستلم.

الأخطاء

تُلقي كل دالة LerixApiException عندما ترفض الواجهة الطلب. يحمل Code رمز الخطأ من الخادم وStatus رمز حالة HTTP:
يُرفض المدخل غير الصالح، مثل غياب Topic مع SendByTopic، محلياً برمز INVALID_INPUT قبل إرسال أي طلب. القائمة الكاملة للرموز في رموز الأخطاء والنجاح.

عدة مشاريع مستهدفة

أنشئ LerixNotifications مباشرة عندما يخدم خادم واحد أكثر من تطبيق: