Udhëzues

Si të shtosh njoftime në aplikacionin tënd: brenda aplikacionit, email dhe push

Për të shtuar njoftime në një aplikacion web, fillo me njoftimet brenda aplikacionit: një tabelë njoftimesh në bazën e të dhënave dhe një ikonë kambane që shfaq elementët e palexuar. Shto email për gjërat që njerëzit duhet t'i dinë kur janë larg, duke përdorur një ofrues emaili, dhe shto push në web vetëm kur alarmet në kohë kanë rëndësi, sepse kërkon një service worker, lejen e përdoruesit dhe, në iPhone, aplikacionin të ruajtur në Home Screen. Çfarëdo kanalesh që përdor, krijo çdo njoftim në një vend të vetëm në server dhe lëri përdoruesit të zgjedhin çfarë marrin.

Ky udhëzues krahason kanalet, tregon një arkitekturë të thjeshtë dhe jep prompte që mund t'i përdorësh me një ndërtues aplikacionesh me AI.

Kanalet kryesore të krahasuara

KanaliArrin te përdoruesit kurPërpjekja e konfigurimitKosto e vazhdueshmeMë e mira për
Brenda aplikacionit (kambanë, toast)Janë duke përdorur aplikacionin tëndE ulëtAsgjë përveç bazës së të dhënaveAktivitet, përmendje, ndryshime statusi
EmailÇdo kohë që kontrollojnë email-inMesatare: ofrues, konfigurim domeniÇmim për email nga ofruesi ytFaturat, përmbledhjet, çdo gjë e rëndësishme
Push në webShfletuesi ose aplikacioni web i instaluar, edhe kur është i mbyllurMesatare deri e lartëZakonisht falas për dërgimAlarme me kohë të ndjeshme
SMSPothuajse gjithmonëMesatare; zbatohen rregulla pëlqimiTarifa për mesazhKujtesa takimesh, alarme urgjente
Mjete chat (Slack, Teams)Janë në punëE ulët deri mesatareZakonisht falasMjete të brendshme dhe alarme ekipi

Shumica e aplikacioneve kanë nevojë për brenda aplikacionit plus email. Push dhe SMS vlen kur koha ka vërtet rëndësi, si një kujtesë rezervimi ose një porosi gati.

Si përshtatet një sistem njoftimesh

Mbaje të thjeshtë dhe qendror:

  1. Diçka ndodh. Shkruhet një koment, dështon një pagesë, një rezervim është nesër.
  2. Serveri yt thërret një funksion, si notify(user, type, data).
  3. Ai funksion kontrollon preferencat e përdoruesit dhe shkruan një rresht në tabelën notifications (për kambanën).
  4. Pastaj dërgon te kanalet e tjera që përdoruesi i ka ndezur për atë lloj: email përmes ofruesit tënd, push përmes Push API.
  5. Ballina shfaq njoftimet e palexuara dhe i shënon si të lexuara kur hapen.

Një pikë e vetme hyrjeje do të thotë që mund të shtosh një kanal, të ndryshosh tekstin ose të respektosh preferencat pa kërkuar nëpër gjithë kodin.

Çfarë të ruash

Një tabelë njoftimesh zakonisht ka nevojë për: ID e përdoruesit, llojin (për shembull comment_reply), një titull dhe tekst të shkurtër, një lidhje për faqen përkatëse, kohën e krijimit dhe kohën e leximit. Një tabelë e veçantë preferencash ruan cilat kanale do të dojë secili përdorues për çdo lloj.

Shfaqja e njoftimeve të reja

  • Ngarko kur hapet faqja dhe bëj sondazh çdo 30–60 sekonda. E thjeshtë dhe e besueshme.
  • Përditësime në kohë reale me WebSockets ose server-sent events duken të menjëhershme, por shtojnë pjesë lëvizëse. Fillo me sondazh, përveç nëse përditësimet e menjëhershme kanë rëndësi.

Njoftimet me email

Email kërkon një ofrues dërgimi dhe një domen të verifikuar; detajet janë te si të dërgosh email nga aplikacioni yt. Për njoftimet në veçanti:

  • Dërgo nga serveri, kurrë me një çelës të ofruesit në shfletues.
  • Grupo ngjarjet e shumta. "3 komente të reja" në një email është më mirë se tre email.
  • Ofro një përmbledhje ditore ose javore për aktivitetin me prioritet të ulët.
  • Përfshi një lidhje për t'u çregjistruar ose për preferencat në email jo thelbësor. Rregullat për email marketingu ndryshojnë sipas vendit; kontrollo çfarë zbatohet për ty.

Njoftimet push në web

Push në web lejon faqen tënde të dërgojë alarme që duken si njoftime aplikacioni. Sipas dokumentacionit të MDN për Push API, funksionon kështu:

  1. Faqja jote regjistron një service worker, një skript që shfletuesi mund ta ekzekutojë në sfond.
  2. Pasi përdoruesi pranon, service worker-i abonohet përmes PushManager.subscribe(). Shfletuesi kthen një abonim me një endpoint dhe çelësa enkriptimi.
  3. Serveri yt e ruan atë abonim dhe, kur ndodh diçka, dërgon një mesazh te endpoint-i, zakonisht i nënshkruar me çelësa VAPID (një çift çelësash që identifikon serverin tënd).
  4. Shfletuesi e nis service worker-in tënd, që shfaq njoftimin, edhe nëse faqja jote nuk është e hapur.

MDN thekson gjithashtu se endpoint-i duhet mbajtur sekret, sepse të dish atë mjafton për të dërguar mesazhe te ai përdorues.

iPhone dhe iPad

WebKit shtoi Web Push për aplikacionet web në iOS dhe iPadOS 16.4, me dy kushte nga njoftimi i tyre: faqja duhet shtuar në Home Screen, dhe leja duhet kërkuar si përgjigje e një veprimi të përdoruesit, si prekja e një butoni Subscribe. Pra, në iPhone, push arrin vetëm te përdoruesit që kanë instaluar aplikacionin tënd web. Shiko aplikacionet native kundrejt aplikacioneve progresive web për atë që do të thotë instalimi i një aplikacioni web.

Si të kërkosh lejen mirë

Mos pyet në vizitën e parë. Shpjego fillimisht përfitimin ("Merr një kujtesë një orë para orës së mësimit"), pastaj shfaq kërkesën e shfletuesit kur përdoruesi prek një buton. Nëse dikush refuzon, shfletuesi mund të mos të lejojë të pyesësh përsëri, kështu që një kërkesë e parakohshme mund ta humbasësh përgjithmonë.

Njoftimet e planifikuara kanë nevojë për një nxitës

"Kujtesë 24 orë më parë" ose "përmbledhje javore çdo të hënë" kanë nevojë për diçka që të ekzekutohet sipas orarit. Ky është një problem punësh në sfond, i mbuluar në si të ekzekutosh punë në sfond. Një model i zakonshëm: një planifikues i jashtëm thërret një endpoint të mbrojtur çdo disa minuta, dhe ai endpoint dërgon çfarëdo që ka ardhur radha.

Prompte për ndërtuesin tënd me AI

Fillo me brenda aplikacionit:

Shto njoftime brenda aplikacionit. Krijo një tabelë njoftimesh (user, type, title, body, link, created_at, read_at). Shto një funksion në server notify(userId, type, data) që e thërrasin të gjitha veçoritë. Shfaq një ikonë kambane në krye me numrin e të palexuarve, një menu rënëse me 20 të fundit, dhe një buton "shëno të gjitha si të lexuara". Bëj sondazh për të rejat çdo 60 sekonda.

Pastaj preferencat dhe email-i:

Shto cilësimet e njoftimeve: për çdo lloj (përgjigje komenti, përmendje, faturim), lëre përdoruesin të zgjedhë në aplikacion, email, të dyja ose asnjë. notify() duhet t'i respektojë këto. Dërgo email përmes [PROVIDER] duke përdorur sekretin [ENV_NAME] vetëm në server. Grupo emailet e komenteve që një përdorues të marrë më së shumti një email çdo 15 minuta.

Pastaj push, nëse e kërkon:

Shto push opsional në web. Regjistro një service worker, gjenero çelësat VAPID dhe ruaj çelësin privat si sekret. Shto një buton "Aktivizo njoftimet" në cilësime që kërkon lejen vetëm kur klikohet. Ruaj çdo abonim për përdorues dhe pajisje, dërgo push nga notify() kur përdoruesi ka zgjedhur ta marrë, dhe fshi abonimet që shërbimi push i raporton si të skaduara.

Gabime të zakonshme

  • Njoftime të shpërndara nëpër kod. Çdo veçori dërgon emailin e vet në mënyrë të ndryshme, dhe preferencat injorohen. Përdor një funksion të vetëm notify().
  • Kërkimi i lejes push kur ngarkohet faqja. Shumica refuzojnë, dhe mund të mos ketë një shans tjetër.
  • Pa preferenca. Përdoruesit që nuk mund të fikin alarmet e zhurmshme i fikin të gjitha, ose largohen.
  • Dërgimi nga shfletuesi. Çelësat e email-it dhe push i përkasin serverit.
  • Pa pastruar abonimet push të vdekura. Abonimet e skaduara grumbullohen dhe humbasin dërgime.
  • Detaje të ndjeshme në tekstin e njoftimit. Ekranet e kyçjes e shfaqin. "Ke një mesazh të ri" është më e sigurt se vetë mesazhi.
  • Pa regjistrim të asaj që u dërgua. Kur një përdorues thotë "Nuk e mora kurrë emailin", regjistrimet me ID-të e mesazheve të ofruesit të ndihmojnë të gjesh arsyen.

Lista e kontrollit

  • Një funksion notify() i vetëm në server, i përdorur kudo
  • Tabelë njoftimesh me gjendjen e leximit, dhe kambanë me numrin e të palexuarve
  • Preferenca kanali për çdo lloj, të respektuara nga notify()
  • Email i dërguar nga serveri me domen të verifikuar; përmbledhje ose grupim për ngjarjet e shumta
  • Leja push kërkohet vetëm pas një veprimi të përdoruesit, me shpjegim
  • Push i testuar në desktop dhe në iPhone me aplikacionin të shtuar në Home Screen
  • Abonimet push të skaduara të hequra
  • Pa përmbajtje të ndjeshme në pamjen paraprake të push ose email-it
  • Kujtesat e planifikuara kanë një nxitës të besueshëm

Njoftimet në Mythex

Mythex nuk përfshin një shërbim email ose push të integruar për aplikacionet që ndërton, kështu që sjell ofruesin tënd të email-it dhe gjeneron vetë çelësat push, të ruajtur si sekrete të projektit. Pjesa brenda aplikacionit kërkon vetëm bazën e të dhënave të projektit, të cilën Mythex e shton kur e kërkon. Ndërto me prompte si ato më sipër, testo kambanën dhe email-et në Preview, dhe testo push-in në URL-në tënde të publikuar, sepse service worker-at dhe push kërkojnë një adresë reale HTTPS. Recepti i dokumentacionit Dërgo email nga aplikacioni yt ka një prompt fillestar. Mythex nuk dokumenton punë të planifikuara, kështu që planifiko kujtesat me kohë me një nxitës të jashtëm, siç përshkruhet te si të ekzekutosh punë në sfond.

Pyetje

Cili është lloji më i lehtë i njoftimit për t'u shtuar në një aplikacion web?

Njoftimet brenda aplikacionit: një tabelë njoftimesh në bazën e të dhënave dhe një ikonë kambane që shfaq ato të palexuara. Nuk kanë nevojë për shërbim të palës së tretë. Email është hapi tjetër dhe kërkon një ofrues emaili.

A mund të dërgojë një aplikacion web njoftime push te iPhone?

Po, me kufizime. WebKit shtoi Web Push për aplikacionet web në Home Screen në iOS dhe iPadOS 16.4, kështu që përdoruesi duhet fillimisht ta shtojë aplikacionin tënd web në Home Screen, dhe leja duhet kërkuar pas një prekjeje, si te një buton Subscribe.

A funksionojnë njoftimet push kur faqja është e mbyllur?

Po. Push API i dorëzon mesazhet te service worker-i i faqes, të cilin shfletuesi e nis kur arrin një mesazh, kështu që faqja nuk duhet të jetë e hapur. Përdoruesi duhet të ketë dhënë fillimisht lejen.

Si ta ndaloj që njoftimet të acarojnë përdoruesit?

Njofto vetëm për gjëra që përdoruesit i interesojnë, grupo shpërthimet në një mesazh, lër njerëzit të zgjedhin kanalet për çdo lloj në cilësime, dhe kërko lejen push vetëm pasi kanë parë pse është e dobishme.

Mythex · Pricing · Ndërtoni çdo gjë me AI · Shablone faqesh dhe aplikacionesh · Mythex në krahasim · Fjalori i ndërtimit të aplikacioneve me AI · Mjete falas për ndërtimin e aplikacioneve me AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)