Notifikasyon pouse yo se yon zouti maketing enpòtan pou nenpòt moun ki gen yon aplikasyon mobil.
Li se pi bon fason pou kominike ak itilizatè ou yo, voye mesaj ijan nan telefòn mobil yo.
Yon aplikasyon mobil ka voye yon notifikasyon pou itilizatè a, ki se yon mesaj ki parèt sou smartphone yo menm lè aplikasyon an pa louvri.
Alèt sa yo ka gen ladan rapèl, mizajou, rabè, ak plis ankò.
Yo kreye pou kenbe je itilizatè yo. Tit, mesaj, foto, ak URL se tout eleman posib nan yon notifikasyon pouse. Emojis, logo, ak lòt bagay kapab tou fè pati yo.
Sistèm operasyon tankou Apple OS ak Google Android gen divès entèfas pou notifikasyon pouse.
Yo ka itilize notifikasyon pouse pou ankouraje angajman, ranfòse itilizasyon aplikasyon an, afekte konvèsyon, ak plis ankò.
Opsyon yo se vrèman illimité.
Pouse notifikasyon pou aparèy mobil, ke yo rele tou notifikasyon pouse pou aparèy mobil, ka konplete itilizasyon chanèl ou tankou imèl, SMS, ak notifikasyon pouse sou entènèt ak yon kantite avantaj espesyal.
Ou pral resevwa yon deskripsyon rapid nan sèvis notifikasyon nan pòs sa a ak enfòmasyon sou objektif li yo, konsepsyon wo nivo, karakteristik espesyal, ak plis ankò.
Objektif
Pou devlope yon sèvis notifikasyon ki kapab byen distribye mesaj pwodwi a itilizatè atravè yon varyete chanèl
Kondisyon pou:
- Voye API: Pibliye yon pwen final otorize pou nenpòt backend ak mikwosèvis ka kòmanse bay notifikasyon.
- Chanèl konpatib yo: Sipòte bay alèt nan nenpòt chanèl ki pibliye yon API, tankou imèl, mesaj tèks, ak pouse.
- Preferans itilizatè a: Pèmèt itilizatè yo chwazi preferans itilizatè yo pou chak chanèl ak notifikasyon.
- Limit pou konfòmite sèvis en: Evite gen ou imel oswa sèvis SMS ratrape oswa sispann.
- Évolutive: Pèmèt (teyorikman) enfini dekale orizontal.
Achitekti wo nivo
Ann di kòd ou a sipoze avèti yon moun:
- Kòd ou a envoke pwen final POST /send la. Pou chak chanèl ki disponib, demann lan gen ladan id itilizatè a nan moun k ap resevwa a, kalite notifikasyon an, ak sa li yo.
- Se /send pwen final la itilize OAuth2 Kliyan Credentials Flow pou otantifye demann lan.
- Lè sa a, yo mande chwa notifikasyon itilizatè a nan baz done a. Preferans yo montre si wi ou non itilizatè a abònman nan yon chanèl sèten ak notifikasyon.
- Soti nan baz done a, li pral li karakteristik itilizatè tankou adrès imel ak nimewo telefòn.
- Pwen final sa a pral kreye yon objè mesaj ki gen ladan karakteristik itilizatè, chanèl, ak kontni chanèl espesifik. Li pa pral gen ladan chanèl dezaktive, menm si. Lè sa a, mesaj la delivre nan yon sèvis fanatik soti.
- Mesaj k ap fèk ap rantre yo gaye nan moun kap kriye travay yo atravè sèvis fanout la. Filtrage an plas, sepandan, neglije ke moun kap kriye travay pou chanèl ki pa espesifye nan mesaj la.
- Chak chanèl gen yon processeur ak yon keu travay. Pwosesè a pran travay la ak Lè sa a, mande pou sèvis ki apwopriye a, tankou yon imèl tranzaksyon oswa sèvis SMS.
Gwo eleman Achitekti
POST/voye
Ou ka trè byen remake ke se sèlman userId la ak ni adrès imel la ni nimewo telefòn yo enkli nan demann lan nan pwen final sa a. Sa pèmèt sèvis notifikasyon yo rete anonim pou itilizatè ou yo.
Pou asire évolutivité, pwen final la mete dèyè yon balanse chaj.
Otantifikasyon tipik ou fè fas a itilizatè pa bay pwoteksyon pou pwen final la.
Ou dwe itilize yon metòd otantifikasyon diferan ke yo rekonèt kòm OAuth2 Client Credential Flow yo itilize pou kominikasyon sèvè a sèvè paske sèvis ki soumèt demann lan se lojisyèl li menm.
Aplikasyon ou a pral bay notifikasyon nan plizyè kote diferan. Ou ka itilize fonksyon an voye prèske nenpòt kote, tankou nan yon nouvo kodbaz oswa workflow bati ou a, lè w aplike li kòm yon pwen final dèyè yon balans chaj, ki garanti ke li se poukont li évolutive.
PUT / preferans itilizatè
Sèvi ak yon pè kle/valè oswa baz done NoSQL ki trè évolutive. Fòma dosye yo jan sa a: KLE: echantiyon id itilizatè: echantiyon id notifikasyon, VALÈ: ["imel", "eta: vre," "SMS", "eta: fo," kanal: "imel", "imel", eta : vre”]
Si valè "fo" yo prezan nan dosye yo, pwen final transmèt la pral eskli kanal korespondan an nan mesaj la delivre nan fanout la. Si pa gen yon dosye pou yon chanèl, itilizatè a pa ekspreseman endike preferans yo. Ou dwe dakò pou default nan senaryo sa a.
Itilizatè a ka modifye done yo nan baz done preferans itilizatè yo lè l sèvi avèk UI ou ak yon pwen final regilye ki sekirize pa pwosedi otantifikasyon estanda ou yo.
Itilizatè yo pral irite epi yo pral oblije deziyen alèt ou yo kòm Spam oswa silans yo si ou pa ba yo opsyon pou chanje preferans notifikasyon yo. Eksperyans itilizatè ou an ap vin pi mal kòm yon rezilta, ak imel oswa sèvis livrezon SMS ka sispann kont ou.
Fan Out
Fanout kopye yon mesaj epi distribye li nan diferan kote. Yo abòdab ak anpil évolutive. Sèvi ak SNS nan AWS. Sèvi ak Pub/Sub nan Azure ak sijè ak abònman nan Google Cloud Platform.
Pou anpeche voye mesaj initil nan ke moun kap kriye travay chanèl ki eskli, ou ka konfigure filtraj ant fanout la ak ke moun kap kriye travay yo. Pou egzanp, nan AWS SNS, ou ka presize ke keu travay imel la ta dwe resevwa mesaj fanout sèlman si li gen valè "imel" nan jaden "chanèl".
Menm si ou ta ka kreye kòd pou voye mesaj ki idantik nan ke moun kap kriye travay ki nesesè yo, fanout pi efikas epi li mande mwens kodaj. Fanout ofri tou konvenyans pou ajoute ak retire ke moun kap kriye, sa ki pèmèt ou pwolonje ak reòganize chanèl ou yo.
Pwosesis travay
Mesaj yo estoke nan ke moun kap kriye annatant pwosesis travay ou yo ap trete yo. Yo tou abòdab ak trè évolutive. Pwosesè travay yo se moso kòd ki trete mesaj ki soti nan ke moun kap kriye travay yo. Tou depan de volim mesaj yo nan keu a, yo ka echèl.
Pwosesè travay la ta dwe fè yon apèl API bay founisè apwopriye a pou l delivre avi a nan senaryo nou an atravè yon sèvis imel tranzaksyon.
Majorite imel, SMS, ak founisè menm jan an livrezon mesaj gen kondisyon sere pou kantite ak kalib mesaj ou voye. Anplis de sa, ou vle egzamine sa yo epi mete pwosedi apwopriye yo byen. Men konsèy nou yo sou fason pou evite ke yo sispann nan AWS SES.
Ou ka defini yon kantite maksimòm processeurs travay pou anpeche depase limit to sèvis livrezon yo.
Amelyorasyon Pli lwen
Ou ka gen yon ti koutje sou yon pakèt bagay sa yo.
- Yo bezwen pwòp API yo, tab, elatriye yo nan lòd yo gen yon sèvis notifikasyon évolutive nan-app.
- Rasanble epi montre rapò a louvri/klike
- Retire sa ki nan notifikasyon yo nan kòd la epi kite pwodwi ou ak ekip konsepsyon an modifye alèt yo vizyèlman san yo pa chanje kòd.
- San yo pa chanje okenn kòd, ekip ou a ka itilize tablodbò a pou aktive oswa enfim notifikasyon pou sèten chanèl.
Benefis notifikasyon pouse
- Ranfòse entèraksyon itilizatè: Mizajou ak nouvo materyèl ap kenbe itilizatè ou yo enterese.
- Ranfòse Vizibilite Kominikasyon: Asire ou resevwa mesaj ou yo imedyatman, menm lè moun yo pa aktif. Voye notifikasyon ijan epi bay itilizatè yo yon eksperyans lis.
- Kenbe Retansyon: Sèvi ak notifikasyon pouse ki vizib klèman pou ankouraje itilizatè ou yo retounen. Ou ka ogmante retansyon itilizatè yo epi redwi désabonnement lè w pouse kliyan yo tounen sou sit entènèt ou ak aplikasyon w lan.
- Amelyore Konvèsyon: Lè w kreye kanpay pouse alantou prim, pwomosyon, rabè, oswa lòt òf nan aplikasyon an, ou ka ogmante lavant yo.
- Echèl antrepriz ou a: Apwòch kominikasyon ou a dwe echèl pandan odyans ou a ap ogmante. Pandan baz kliyan ou a ap ogmante, notifikasyon pouse yo se yon metòd efikas pou rete an kontak ak yo.
- Fè eksperyans itilizatè a konekte (UX): Lè w bay konsomatè alèt tranzaksyon yo pou kenbe yo enfòme epi bay yon eksperyans lis trans-chanèl, ou ka diminye friksyon pandan tout vwayaj kliyan an.
konklizyon
An konklizyon, nou te pran konesans sou achitekti yon sèvis notifikasyon pouse évolutive. Nou te gade tou zouti yo bay tout founisè sèvis nwaj prensipal yo pou ou ka baze notifikasyon ou yo sou sa yo.
Malgre lefèt ke mwen te eseye pi byen mwen ba ou yon apèsi sou achitekti sistèm notifikasyon pouse a, gen anpil plis pase dèyè sèn nan.
Mwen sensèman espere w ap jwenn enfòmasyon sa yo itil epi w ap sèvi ak li byen.
Kite yon Reply