puš notifikaceTakéWeb Push, push zprávy, notifikace v prohlížečiPokročilý

Definice

Push notifikace je způsob doručení krátké zprávy z aplikace nebo webu uživateli bez nutnosti, aby měl danou službu právě otevřenou. Využívá oprávnění uživatele, registrační token nebo subscription a doručovací službu platformy; hodí se pro časově důležité události, ne pro běžnou reklamu.

Kategorie: Webové technologieAktualizováno

Proč push notifikace existují

Push notifikace řeší situace, kdy má aplikace uživateli něco sdělit mimo právě otevřenou obrazovku. Typicky jde o změnu stavu objednávky, novou zprávu, bezpečnostní upozornění nebo incident v provozu. Hodnota push notifikace stojí na načasování: stejná informace může být užitečná hned, ale za hodinu už ruší.

Push notifikace není jen grafická bublina na displeji. Celý mechanismus zahrnuje souhlas uživatele, identifikátor zařízení nebo prohlížečové subscription, serverovou část aplikace a doručovací službu platformy. Bez této infrastruktury by aplikace musela neustále kontrolovat server, což by zbytečně zatěžovalo síť, baterii i backend.

Cesta zprávy od backendu k zařízení

Webová push notifikace obvykle začíná registrací service workeru v prohlížeči. Prohlížeč po udělení oprávnění vytvoří subscription, která obsahuje endpoint a kryptografické údaje. Backend subscription uloží k uživateli nebo anonymnímu profilu a později na daný endpoint odešle zprávu přes push service provozovanou prohlížečem nebo platformou.

Service worker může být probuzen i tehdy, když stránka není otevřená. Kód service workeru zpracuje událost push a zobrazí oznámení přes Notifications API. U nativních mobilních aplikací je princip podobný, jen místo webového subscription bývá token od služby jako FCM na Androidu nebo APNs na zařízeních Apple.

Doručení push notifikace není pevný slib okamžitého zobrazení. Platforma může zprávu pozdržet kvůli úspoře energie, špatné konektivitě, limitům systému nebo nastavení uživatele. Zpráva může také vypršet, pokud má nastavenou krátkou životnost a zařízení je dlouho offline.

Souhlas, identita a právní rovina

Souhlas s push notifikacemi má být vyžádán až ve chvíli, kdy uživatel chápe přínos. Okamžité vyskakovací žádosti po načtení webu mají nízkou šanci na přijetí a často vedou k trvalému zablokování oprávnění. Užitečnější je vysvětlit konkrétní typ zpráv, například upozornění na dokončenou platbu nebo odpověď podpory.

Subscription nebo mobilní token je citlivý technický identifikátor. Aplikace by měla umožnit odhlášení, mazat neplatné tokeny a neposílat obsah, který by na zamčené obrazovce prozradil příliš mnoho. Marketingové push notifikace navíc často spadají do pravidel pro souhlas se zasíláním obchodních sdělení a do ochrany osobních údajů.

Kde push notifikace ztrácí hodnotu

Push notifikace škodí, když nahrazují běžnou komunikaci jen proto, že mají vyšší viditelnost. Časté slevové zprávy, opakované připomínky bez nové informace nebo agresivní reaktivace účtu vedou k vypnutí oprávnění, odinstalaci aplikace a zhoršení důvěry. Dobrá push notifikace je krátká, očekávaná a navazuje na jasnou akci uživatele.

Push notifikace se také špatně hodí pro dlouhé sdělení, právní dokumenty nebo informace, které uživatel potřebuje dohledat později. V takových případech bývá lepší e-mail, zpráva v aplikaci nebo kombinace kanálů. Push má upozornit, ne nést celý obsah procesu.

Příklady z praxe

  1. Sledování doručení balíku v e-shopu

    E-shop nabídne zákazníkovi po odeslání objednávky upozornění na změny doručení. Když dopravce převezme balík, backend pošle webovou push notifikaci do prohlížeče a service worker zobrazí krátkou zprávu. Zákazník se kliknutím dostane rovnou na detail zásilky místo toho, aby opakovaně kontroloval e-mail.

    self.addEventListener('push', event => {
      const data = event.data?.json() ?? {};
    
      event.waitUntil(
        self.registration.showNotification(data.title ?? 'Změna zásilky', {
          body: data.body ?? 'Stav objednávky byl aktualizován.',
          data: { url: data.url ?? '/objednavky' }
        })
      );
    });
  2. Upozornění na produkční incident

    Monitoring zjistí pád produkční API služby ve dvě ráno a incidentní systém odešle push notifikaci člověku ve službě. Mobilní aplikace zobrazí stručný popis problému, prioritu a odkaz na runbook. Tým získá rychlejší reakci než u běžného e-mailu, ale pro audit incidentu se detailní záznam stejně ukládá do ticketovacího systému.

Časté omyly

MýtusPush notifikace dorazí vždycky a hned.
Ve skutečnostiPush notifikace závisí na síti, nastavení zařízení, limitech platformy a platnosti tokenu nebo subscription. Kritické procesy mají počítat se zpožděním nebo náhradním kanálem.
MýtusKdyž uživatel povolil push, můžeme mu posílat cokoliv.
Ve skutečnostiSouhlas s technickým zobrazením notifikací neznamená neomezené svolení k marketingu. Obsah, četnost a účel zpráv musí odpovídat očekávání uživatele a právním pravidlům.

Časté dotazy

Proč se push notifikace někdy zobrazí pozdě?
Push notifikace se někdy nedoručí hned kvůli omezením operačního systému, úspoře baterie, špatnému připojení nebo pravidlům konkrétní doručovací služby. Platforma může méně důležité zprávy dávkovat, zdržet nebo zahodit po vypršení platnosti. Aplikace proto nemá stavět kritický proces jen na předpokladu, že každá push notifikace dorazí okamžitě a uživatel ji uvidí.
Co musí web získat, aby mohl posílat push notifikace?
Push notifikace potřebuje na webu oprávnění prohlížeče a technickou registraci, obvykle přes service worker a Push API. Prohlížeč uloží subscription, které backend použije pro odesílání zpráv. Bez uživatelského souhlasu nelze webovou push notifikaci korektně zobrazovat, i když stránka může stále používat vlastní oznámení uvnitř otevřeného rozhraní aplikace.
Kdy je lepší neposílat push notifikaci a použít e-mail?
Push notifikace se nehodí jako náhrada e-mailu pro dlouhá sdělení, faktury, obchodní podmínky nebo obsah, který má být snadno dohledatelný po měsících. Push notifikace je lepší pro krátké a časově citlivé upozornění. E-mail nebo zpráva v aplikaci má obvykle lepší kontext, archivaci a prostor pro detailní vysvětlení.
Jsou push notifikace osobní údaj?
Push notifikace může obsahovat osobní údaje, pokud text zprávy, cílení nebo uložený token umožňuje přiřazení ke konkrétnímu člověku. Aplikace by měla omezit citlivý obsah na zamčené obrazovce, chránit tokeny proti úniku a nabídnout odhlášení. Marketingové použití navíc vyžaduje opatrné posouzení souhlasu a účelu zpracování.

Zdroje

  1. Push API(otevře se v novém okně)MDN Web Docs
  2. Notifications API(otevře se v novém okně)MDN Web Docs
  3. Generic Event Delivery Using HTTP Push(otevře se v novém okně)RFC Editor, 2016
  4. Voluntary Application Server Identification (VAPID) for Web Push(otevře se v novém okně)RFC Editor, 2017

Související pojmy

Potřebujete to vyřešit v praxi?

Poradíme, jak na to ve vašem projektu

Vysvětlit pojem je jedna věc, navrhnout kolem něj funkční řešení druhá. Ozvěte se a probereme, co dává smysl u vás.