سلام دوستان.
برای اطلاع رسانی به کاربرای سایت که داخلش عضو اند مثلاً پست های آموزشی فلان به سایت اضافه شده است .
چطوری باید پیاده سازی کنم ؟
و کجای پنل مدیریت باید این قسمت اضافه بشه؟؟
با کدخام php.
پکیج هایی برای این کار هست.. میتونی توی packagist.org بگردی و استفاده کنی.
حتی میتونی از کامپوننت notifications خود لاراول استفاده کنی:
composer require illuminate/notifications
که وابستگی های زیادی هم داره:
"require": {
"php": "^7.3",
"illuminate/broadcasting": "^8.0",
"illuminate/bus": "^8.0",
"illuminate/collections": "^8.0",
"illuminate/container": "^8.0",
"illuminate/contracts": "^8.0",
"illuminate/filesystem": "^8.0",
"illuminate/mail": "^8.0",
"illuminate/queue": "^8.0",
"illuminate/support": "^8.0"
},
اما اگر بخواهی خودت بنویسی، به شکل ساده..
میتونی یه جدول notifications بسازی
در ساده ترین حالت با یه سری فیلد ها: مثلا user_id , data, timestamp, read_at
برای هر نوتیفیکیشن آیدی کاربر + پیام رو ذخیره میکنی (یه کوئری میزنی)
حالا یه جا تو پنل ادمین
اول لیست کاربرایی که میخواهی براشون نوتیفیکیشن بفرستی رو آماده میکنی (مثلا تو آرایه ای چیزی)
بعد آرایه رو پیمایش میکنی و به ازای هر کدوم یه از کاربرا قسمت Values کوئری رو داخل یه متغیر ذخیره میکنی
در نهایت کوئری رو اجرا میکنی و
برای هر کاربر نوتیفیکیشن ها رو ارسال میکنی..
با چه زبانی بکند رو پیاده سازی کردید؟ مثلا توی لاراول میتونید با استفاده از event و listener خیلی راحت این قضیه رو پیاده سازی کنید
@naser.mrt74
روش های زیادی هست ، دستتون بازه
میتونید از پکیج notification خود لاراول استفاده کنید ، استفادش خیلی راحته ، داکیومنت رو چک کنید.
نخواستید میتونید دستی پیاده سازیش کنید ، یه جدول جدید درست میکنید و نوتیف ها رو هر وقت خواستید اضافه میکنید که دو تا حالت دارن ، نوتیف هایی که برای همه مشترکن و نوتیف هایی که مختص کاربر خاص هستن ، هر وقت کار بر لاگین کرد جدولو چک میکنید و اگر نوتیفی داشت بهش نشون میدید ، و همونطور که گفتن برای منیج کردنش میتونید از event listener هم استفاده کنید
میتونید از فایربیس گوگل هم استفاده کنید . که در این صورت هم سرور خودتونو در گیر نمیکنید هم اینکه اگر کاربر آنلاین باشه و دسترسی نوتیف بروزر رو برای سایت شما فعال کرده باشه ریل تایم بلافاصله نوتیف رو دریافت میکنه.ولی اینم در نظر بگیرید که اگر اجازه دسترسی نوتیف نده کلا نوتیفی براش ارسال نمیشه.
پکیج هایی برای این کار هست.. میتونی توی packagist.org بگردی و استفاده کنی.
حتی میتونی از کامپوننت notifications خود لاراول استفاده کنی:
composer require illuminate/notifications
که وابستگی های زیادی هم داره:
"require": {
"php": "^7.3",
"illuminate/broadcasting": "^8.0",
"illuminate/bus": "^8.0",
"illuminate/collections": "^8.0",
"illuminate/container": "^8.0",
"illuminate/contracts": "^8.0",
"illuminate/filesystem": "^8.0",
"illuminate/mail": "^8.0",
"illuminate/queue": "^8.0",
"illuminate/support": "^8.0"
},
اما اگر بخواهی خودت بنویسی، به شکل ساده..
میتونی یه جدول notifications بسازی
در ساده ترین حالت با یه سری فیلد ها: مثلا user_id , data, timestamp, read_at
برای هر نوتیفیکیشن آیدی کاربر + پیام رو ذخیره میکنی (یه کوئری میزنی)
حالا یه جا تو پنل ادمین
اول لیست کاربرایی که میخواهی براشون نوتیفیکیشن بفرستی رو آماده میکنی (مثلا تو آرایه ای چیزی)
بعد آرایه رو پیمایش میکنی و به ازای هر کدوم یه از کاربرا قسمت Values کوئری رو داخل یه متغیر ذخیره میکنی
در نهایت کوئری رو اجرا میکنی و
برای هر کاربر نوتیفیکیشن ها رو ارسال میکنی..
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟