افراد آنلاین

سوال شده توسط: پوریا شمس

تاریخ ثبت: ۱۴۰۰/۰۴/۰۶

بازدید: 1,493

پاسخ: 4

تگ: SignalR


با عرض سلام و خسته نباشید

میخواستم بپرسم چطوری میشه با Signal R کاری کنم که چند کاربر آنلاین در سایت دارم و اون کاربر ها کیا هستند

ممنون میشم پاسخ بدید

پاسخ ها
user

محمد اشرافی

سلام

یه هاب میسازید هر شخصی که وارد سایت شد به این هاب متصل میشه و توی متد OnConnected اونو به دیتابیس ( می تونه هر چیزی باشه ) اضافه می کنید و توی متد OnDisconect اونو از دیتابیس حذف می کنید ( عملیات وصل شدن به هاب رو باید توی Layout انجام بدین  )

توجه : برای اینکه سرعت این عملیات  بالا باشه بهتره از  Redis استفاده کنید ولی اگر که فقط یک اپلیکیشن دارید می تونید از InMemoryDataBase هم استفاده کنید و بهترین گزینه هم هست

user

پوریا شمس

استاد یک سوال در صورت بستن پنجره مرورگر یا قطع شدن اینترنت ، به متد OnDisconnect مراجعه میکنه ؟

 

user

محمد اشرافی

بله،  به محض اینکه پنجره بسته شه یا اینترنت قطع بشه متد onDisconnect صدا زده میشه

این نمونه پروژه ایه که با دو روش  این کار رو انجام داده می تونید ازش استفاده کنید 

https://github.com/dotnetzoom/OnlineUsers-Counter-AspNetCore

user

پوریا شمس

ممنون استاد

برای ثبت پاسخ باید خود شوید

محبوب ترین مقالات