افراد آنلاین
با عرض سلام و خسته نباشید
میخواستم بپرسم چطوری میشه با Signal R کاری کنم که چند کاربر آنلاین در سایت دارم و اون کاربر ها کیا هستند
ممنون میشم پاسخ بدید
4 پاسخ
- محمد اشرافی7 تير ۱۴۰۰
سلام
یه هاب میسازید هر شخصی که وارد سایت شد به این هاب متصل میشه و توی متد OnConnected اونو به دیتابیس ( می تونه هر چیزی باشه ) اضافه می کنید و توی متد OnDisconect اونو از دیتابیس حذف می کنید ( عملیات وصل شدن به هاب رو باید توی Layout انجام بدین )
توجه : برای اینکه سرعت این عملیات بالا باشه بهتره از Redis استفاده کنید ولی اگر که فقط یک اپلیکیشن دارید می تونید از InMemoryDataBase هم استفاده کنید و بهترین گزینه هم هست
- پوریا شمس10 تير ۱۴۰۰
استاد یک سوال در صورت بستن پنجره مرورگر یا قطع شدن اینترنت ، به متد OnDisconnect مراجعه میکنه ؟
- محمد اشرافی11 تير ۱۴۰۰
بله، به محض اینکه پنجره بسته شه یا اینترنت قطع بشه متد onDisconnect صدا زده میشه
این نمونه پروژه ایه که با دو روش این کار رو انجام داده می تونید ازش استفاده کنید
https://github.com/dotnetzoom/OnlineUsers-Counter-AspNetCore
- پوریا شمس12 تير ۱۴۰۰
ممنون استاد