Messenger باستخدام جانب SignalR و Blazor Server
نستخدم SignalR في تطبيق Server Server الخاص بنا وتخزين جميع الرسائل في قاعدة البيانات.
لإرسال رسالة إلى مستخدم معين ، نستخدم ConnectionID بدلاً من خاصية المستخدم ثم قم بتخزين معرف الاتصال في قاعدة البيانات الخاصة بنا. هذه طريقة إنشاء رسول وحالة المستخدمين عبر الإنترنت. استنادًا إلى الرابط أدناه: https://docs.microsoft.com/en-us/aspnet/signalr/overview/guide-the-api/mapping-users-to-connections
يعتمد أفضل طريقة لتطبيقك على:
1- عدد خوادم الويب التي تستضيف تطبيقك.
2- ما إذا كنت بحاجة إلى الحصول على قائمة بالمستخدمين المتصلين حاليًا.
3- ما إذا كنت بحاجة إلى استمرار معلومات المجموعة والمستخدم عند إعادة تشغيل التطبيق أو الخادم.
4- ما إذا كان زمن استمرار استدعاء الخادم الخارجي مشكلة.
نستخدم الطريق الرابع ونستخدم SQL Server لتخزين جميع المعلومات التي نحتاجها لتطبيقنا ، على سبيل المثال ، يمكننا ذكر معرف الاتصال أو SenderUserId و RecieverUserId ومن ثم يمكننا إرسال معلومات الاتصال إلى معرف المستخدم المرسل والمسترد.