Push pranešimai yra gyvybiškai svarbus rinkodaros įrankis visiems, turintiems programą mobiliesiems.
Tai geriausias būdas bendrauti su vartotojais, siunčiant skubius pranešimus į jų mobiliuosius telefonus.
Programėlė mobiliesiems gali siųsti vartotojui tiesioginį pranešimą, kuris yra trumpas iššokantis pranešimas, rodomas išmaniajame telefone net tada, kai programa nėra atidaryta.
Šiuose įspėjimuose gali būti priminimų, atnaujinimų, nuolaidų ir kt.
Jie sukurti taip, kad patrauktų vartotojų akis. Pavadinimas, pranešimas, paveikslėlis ir URL yra visi galimi tiesioginio pranešimo komponentai. Jaustukai, logotipai ir kiti dalykai taip pat gali būti jų dalis.
Operacinės sistemos, tokios kaip „Apple OS“ ir „Google Android“, turi įvairias tiesioginių pranešimų sąsajas.
Push pranešimai gali būti naudojami siekiant skatinti įsitraukimą, padidinti programos naudojimą, paveikti konversijas ir dar daugiau.
Galimybės tikrai neribotos.
Push pranešimai mobiliesiems įrenginiams, taip pat žinomi kaip tiesioginiai pranešimai mobiliesiems įrenginiams, gali papildyti jūsų kanalų, pvz., el. pašto, SMS ir internetinių tiesioginių pranešimų, naudojimą su daugybe ypatingų pranašumų.
Šiame įraše gausite trumpą pranešimų paslaugos aprašymą ir informaciją apie jos tikslą, aukšto lygio dizainą, specialias funkcijas ir kt.
Tikslas
Sukurti pranešimų paslaugą, kuri galėtų efektyviai platinti pranešimus tarp produkto vartotojui įvairiais kanalais
reikalavimai:
- Siuntimo API: paskelbkite įgaliotą galinį tašką, kad bet kuri užpakalinė programa ir mikropaslauga galėtų pradėti teikti pranešimus.
- Suderinami kanalai: palaikykite įspėjimų pristatymą į bet kurį kanalą, kuris skelbia API, pvz., el. paštą, tekstinį pranešimą ir tiesioginį pranešimą.
- Naudotojo nuostatos: leiskite naudotojams pasirinkti kiekvieno kanalo ir pranešimo naudotojo nuostatas.
- Vėlesnių paslaugų atitikties ribos: venkite turėti savo email arba SMS paslauga sustabdyta arba sustabdyta.
- Keičiamas: leisti (teoriškai) begalinį horizontalų mastelį.
Aukšto lygio architektūra
Tarkime, kad jūsų kodas turėtų kam nors pranešti:
- POST / siuntimo galinį tašką iškviečia jūsų kodas. Kiekvieno pasiekiamo kanalo užklausoje yra gavėjo vartotojo ID, pranešimo tipas ir jo turinys.
- „OAuth2“ kliento kredencialų srautas naudojamas /send galutinio taško, kad patvirtintų užklausą.
- Tada duomenų bazėje prašoma pasirinkti vartotojo pranešimo pasirinkimą. Nuostatos rodo, ar vartotojas užsiprenumeravo tam tikrą kanalą ir pranešimą.
- Iš duomenų bazės jis nuskaitys vartotojo charakteristikas, pvz., el. pašto adresus ir telefonų numerius.
- Šis galutinis taškas sukurs pranešimo objektą, apimantį vartotojo charakteristikas, kanalus ir kanalui būdingą turinį. Tačiau į jį nebus įtraukti išjungti kanalai. Tada žinutė pristatoma „fanu out“ tarnybai.
- Gaunami pranešimai išplatinami į darbų eiles per fanout paslaugą. Tačiau taikomas filtravimas, kad būtų nepaisoma užduočių eilių kanaluose, kurie nenurodyti pranešime.
- Kiekviename kanale yra procesorius ir darbo eilė. Procesorius atlieka užduotį ir paprašo atitinkamos paslaugos, pvz., operacijos el. pašto arba SMS paslaugos.
Pagrindiniai architektūros elementai
POST / išsiųstas
Galbūt pastebėjote, kad į šio galutinio taško užklausą įtrauktas tik vartotojo ID ir nei el. pašto adresas, nei telefono numeris. Taip pranešimų paslaugos išliks anoniminės jūsų vartotojams.
Siekiant užtikrinti mastelio keitimą, galutinis taškas yra už a krūvio balansuotojas.
Įprastas vartotojo autentifikavimas nesuteikia galutinio taško apsaugos.
Turite naudoti atskirą autentifikavimo metodą, vadinamą OAuth2 kliento kredencialų srautu, naudojamu serverių tarpusavio ryšiui, nes užklausą teikianti paslauga yra pati programinė įranga.
Jūsų programa pateiks pranešimus daugelyje skirtingų vietų. Siuntimo funkciją galite naudoti beveik bet kur, pvz., iš naujos kodų bazės arba savo kūrimo darbo eigos, įdiegę ją kaip galutinį tašką už apkrovos balansavimo priemonės, kuri garantuoja, kad ją galima savarankiškai keisti.
PUT/vartotojo nuostatos
Naudokite rakto/reikšmių porą arba NoSQL duomenų bazę, kuri yra labai keičiamo dydžio. Formatuokite įrašus taip: RAKTAS: vartotojo ID pavyzdys: pranešimo ID pavyzdys, VALUE: ["el. paštas", "būsena: teisinga", "SMS", "būsena: klaidinga", kanalas: "el. paštas", "el. paštas", būsena : tiesa
Jei įrašuose yra „klaidingos“ reikšmės, perdavimo galutinis taškas pašalins atitinkamą kanalą iš pranešimo, pateikto fanout. Jei kanalo įrašo nėra, vartotojas aiškiai nenurodė savo pageidavimų. Pagal šį scenarijų turite sutikti su numatytuoju režimu.
Vartotojas gali keisti duomenis naudotojo nuostatų duomenų bazėje naudodamas jūsų vartotojo sąsają ir įprastą galutinį tašką, apsaugotą standartinėmis autentifikavimo procedūromis.
Naudotojai susierzins ir bus priversti priskirti jūsų įspėjimus kaip šlamštą arba juos nutildyti, jei nesuteiksite jiems parinkties keisti pranešimų nuostatų. Dėl to jūsų naudotojo patirtis bus dar labiau pakenkta, o el. pašto ar SMS siuntimo paslaugos gali sustabdyti jūsų paskyrą.
Fan Out
„Fanout“ nukopijuoja pranešimą ir platina jį skirtingose vietose. Jie yra prieinami ir labai keičiami. Naudokite SNS AWS. Naudokite Pub / Sub „Azure“, o temas ir prenumeratas „Google Cloud Platform“.
Kad išvengtumėte beprasmių pranešimų siuntimo į neįtrauktas kanalo užduočių eiles, galite sukonfigūruoti filtravimą tarp fanout ir darbo eilių. Pavyzdžiui, AWS SNS galite nurodyti, kad el. pašto užduočių eilė turėtų gauti fanout pranešimą tik tuo atveju, jei lauke "kanalai" yra "email" reikšmė.
Net jei galėtumėte sukurti kodą, kad išsiųstumėte identišką pranešimą į reikiamas užduočių eiles, fanout yra efektyvesnis ir reikalauja mažiau kodavimo. „Fanout“ taip pat siūlo patogumą pridėti ir pašalinti eiles, todėl galite išplėsti ir pertvarkyti kanalus.
Darbo apdorojimas
Pranešimai saugomi eilėse, kol juos apdoros jūsų užduočių tvarkytojai. Jie taip pat yra prieinami ir labai keičiami. Užduočių procesoriai yra kodo dalys, apdorojančios pranešimus iš užduočių eilių. Atsižvelgiant į eilėje esančių pranešimų kiekį, jie gali keistis.
Užduočių vykdytojas turėtų paskambinti tinkamam tiekėjui API, kad pateiktų pranešimą pagal mūsų scenarijų per operacijų el. pašto paslaugą.
Dauguma el. pašto, SMS ir panašių pranešimų pristatymo paslaugų teikėjų taiko griežtus siunčiamų pranešimų kiekio ir kalibro reikalavimus. Be to, jūs norite juos išnagrinėti ir nuodugniai nustatyti tinkamas procedūras. Štai mūsų patarimas, kaip išvengti AWS SES nutraukimo.
Galite nustatyti maksimalų užduočių procesorių skaičių, kad neviršytumėte pristatymo paslaugų tarifų ribų.
Tolesni patobulinimai
Galite pažvelgti į daugybę šių elementų.
- Jiems reikia savo API, lentelių ir t. t., kad galėtų turėti keičiamo dydžio pranešimų paslaugą programoje.
- Atidarymo/spustelėjimo ataskaitos rinkimas ir rodymas
- Pašalinkite pranešimų turinį iš kodo ir leiskite savo gaminio ir dizaino komandai vizualiai keisti įspėjimus nekeičiant kodo
- Nekeičiant jokio kodo, jūsų komanda gali naudoti prietaisų skydelį tam, kad suaktyvintų arba išjungtų pranešimus tam tikruose kanaluose.
Push pranešimų pranašumai
- Padidinkite naudotojų sąveiką: atnaujinimai ir nauja medžiaga sudomins jūsų vartotojus.
- Padidinkite komunikacijos matomumą: užtikrinkite, kad jūsų pranešimai būtų gauti nedelsiant, net kai žmonės nėra aktyvūs. Siųskite skubius pranešimus ir suteikite vartotojams sklandžią patirtį.
- Išlaikyti išsaugojimą: naudokite aiškiai matomus tiesioginius pranešimus, kad paskatintumėte naudotojus sugrįžti. Galite padidinti naudotojų išlaikymą ir sumažinti klientų susidomėjimą grąžindami klientus į savo svetainę ir programą.
- Padidinkite konversijas: kurdami „push“ kampanijas apie apdovanojimus programoje, reklamas, nuolaidas ar kitus pasiūlymus, galite padidinti pardavimą.
- Padidinkite savo įmonę: jūsų bendravimo metodas turi keistis plečiantis auditorijai. Plečiantis jūsų klientų bazei, tiesioginiai pranešimai yra veiksmingas būdas palaikyti ryšį su jais.
- Padarykite naudotojo patirtį susietą (UX): teikdami įspėjimus apie sandorius vartotojams, kad jie būtų informuoti ir sklandžiai veiktų keliuose kanaluose, galite sumažinti trintį per visą kliento kelionę.
Išvada
Apibendrinant, įgijome žinių apie keičiamo dydžio tiesioginių pranešimų tarnybos architektūrą. Taip pat peržiūrėjome visų pagrindinių debesijos paslaugų teikėjų teikiamus įrankius, kad galėtumėte jais pagrįsti savo pranešimus.
Nepaisant to, kad stengiausi pateikti jums tiesioginių pranešimų sistemos architektūros apžvalgą, užkulisiuose vyksta daug daugiau.
Nuoširdžiai tikiuosi, kad ši informacija jums bus naudinga ir ja pasinaudos.
Palikti atsakymą