پوش بی صدا یا Silent Push چیست؟
احتمالاً وقتی نام وب پوش (Web Push) را میشنوید، اولین چیزی که به ذهنتان میرسد، همان اعلانهای (Notification) آشناست. درست هم هست، چون وب پوش بیشتر برای نمایش نوتیفیکیشن به کار میرود. اما در واقعیت، این فناوری میتواند کاربردهای بیشتری هم داشته باشد.
ایده پوش بیصدا (Silent Push)
فرض کنید شما مدیر یک وبسایت خبری هستید. هر بار که یک خبر جدید منتشر میکنید، دوست دارید اپلیکیشن وب شما در همان لحظه فعال شود و خبر تازه را دانلود کند. در این صورت، وقتی کاربر اپلیکیشن را باز کند، خبر جدید از قبل آماده است و فوراً نمایش داده میشود؛ بدون اینکه نیاز به منتظر ماندن باشد.
این دقیقاً همان چیزی است که به آن پوش بیصدا (Silent Push) میگویند؛ یعنی دریافت پیام در پسزمینه بدون نمایش اعلان به کاربر.
چرا پوش بیصدا یا Silent Push در وب ممنوع است؟
اگرچه ایده جالبی است، اما در حال حاضر مرورگرها اجازه آن را نمیدهند. دلیلش هم حفظ حریم خصوصی کاربر است. مرورگرها میخواهند مطمئن شوند که کاربر متوجه شود وبسایت در حال فعالیت است.
به همین خاطر، هر بار که پیام پوشی به اپلیکیشن شما میرسد، مرورگر انتظار دارد یک اعلان هم نمایش داده شود. اگر این کار را نکنید، مرورگر خودش یک پیام پیشفرض به کاربر نشان میدهد:
«این وبسایت در پسزمینه بهروزرسانی شده است.»
حتی اگر چند بار پوش بیصدا ارسال کنید، شاید مرورگر در ابتدا چشمپوشی کند. اما در نهایت اعلان پیشفرض را نمایش خواهد داد و حتی ممکن است وبسایت شما را جریمه کند.
هدف مرورگرها از این کار چیست؟
مرورگرها نمیخواهند وبسایتها بدون اطلاع کاربر در پسزمینه فعال باشند. چون یک سایت مخرب میتواند:
پهنای باند کاربر را مصرف کند،
اطلاعات او را ردیابی کند (مثلاً موقعیت مکانی)،
یا بدون اجازه فعالیتهای مشکوک انجام دهد.
بنابراین، نمایش اعلان برای هر پیام پوش، یک نوع شفافیت و آگاهیرسانی به کاربر است.
تنها استثنا: وقتی کاربر در سایت حضور دارد
یک استثنا وجود دارد. اگر کاربر همین حالا در وبسایت شما حضور دارد و صفحه باز است، میتوانید اعلان را نمایش ندهید. مثلاً در یک وبسایت چت، وقتی کاربر در حال گفتوگوست، نیازی نیست برای هر پیام جدید یک اعلان هم ببیند.
در چنین شرایطی حتی میتوانید کاری کنید که اصلاً نوتیفیکیشن ارسال نشود. کافی است بررسی کنید که کاربر آنلاین است (مثلاً با کمک وبسوکت یا heartbeat) و اگر بله، پیام را مستقیماً در صفحه نمایش دهید.
جمعبندی
وب پوش یکی از ابزارهای مهم دنیای وب است که به کمک آن میتوان ارتباطی سریع و مستقیم با کاربر برقرار کرد. اما استفاده از آن قوانین و محدودیتهایی دارد که بیشتر به دلیل حفظ امنیت و حریم خصوصی کاربر وضع شدهاند.
بنابراین، اگر به دنبال «پوش بیصدا» هستید، باید بدانید که مرورگرها فعلاً آن را پشتیبانی نمیکنند و تنها زمانی مجازید اعلان را حذف کنید که کاربر همان لحظه در سایت شما حضور دارد.