Ուղեցույցներ

Ինչպես ավելացնել ծանուցումներ ձեր հավելվածին. հավելվածի ներսում, էլ. փոստով և push

Վեբ հավելվածին ծանուցումներ ավելացնելու համար սկսեք հավելվածի ներսի ծանուցումներից․ տվյալների բազայում ծանուցումների աղյուսակ և զանգի պատկերակ, որ ցույց է տալիս չկարդացված տարրերը։ Ավելացրեք էլ. փոստ այն բաների համար, որոնք մարդկանց պետք է իմանան, երբ նրանք հեռու են, էլ. փոստի մատակարարի միջոցով, և ավելացրեք web push՝ միայն երբ ժամանակին ուղարկված ահազանգերը կարևոր են, քանի որ այն պահանջում է service worker, օգտատիրոջ թույլտվություն և iPhone-ի դեպքում՝ հավելվածը պահված հիմնական էկրանին։ Ինչ ալիքներ էլ օգտագործեք, ծանուցումը ստեղծեք մեկ տեղում՝ սերվերի վրա, և թույլ տվեք օգտատերերին ընտրել, թե ինչ ստանան։

Այս ուղեցույցը համեմատում է ալիքները, ցույց է տալիս պարզ ճարտարապետություն և տալիս է հրամաններ, որոնք կարող եք օգտագործել AI հավելվածի կառուցողի հետ։

Հիմնական ալիքները համեմատած

ԱլիքԵրբ է հասնում օգտատերերինԿարգավորման ջանքԳործարկման արժեքԱմենալավը՝
Հավելվածի ներսում (զանգ, toast)Երբ օգտագործում են ձեր հավելվածըՑածրՈչինչ, բացի տվյալների բազայիցԱկտիվություն, նշումներ, կարգավիճակի փոփոխություններ
Էլ. փոստԵրբ որ ժամանակ էլ. փոստը ստուգում ենՄիջին․ մատակարար, դոմեյնի կարգավորումԸստ նամակի վճար մատակարարիցԱնդորրագրեր, ամփոփումներ, կարևոր ամեն ինչ
Web pushԴիտարկիչում կամ տեղադրված վեբ հավելվածում, նույնիսկ երբ փակ էՄիջին մինչև բարձրՍովորաբար անվճար ուղարկելըԺամանակի հետ կապված ահազանգեր
SMSԳրեթե միշտՄիջին․ կիրառվում են համաձայնության կանոններԸստ հաղորդագրության վճարՀանդիպումների հիշեցումներ, շտապ ահազանգեր
Չաթի գործիքներ (Slack, Teams)Երբ աշխատում ենՑածր մինչև միջինՍովորաբար անվճարՆերքին գործիքներ և թիմի ահազանգեր

Ավելի շատ հավելվածներին պետք է հավելվածի ներսի և էլ. փոստի համադրություն։ Push-ը և SMS-ը արժեն, երբ ժամանակն իրապես կարևոր է, օրինակ՝ ամրագրման հիշեցում կամ պատրաստ պատվեր։

Ինչպես է ծանուցումների համակարգը միանում

Պահեք այն պարզ և կենտրոնացված․

  1. Ինչ-որ բան է տեղի ունենում։ Մեկնաբանություն է գրվում, վճարումը ձախողվում է, ամրագրումը վաղը է։
  2. Ձեր սերվերը կանչում է մեկ ֆունկցիա, օրինակ՝ notify(user, type, data)։
  3. Այդ ֆունկցիան ստուգում է օգտատիրոջ նախապատվությունները և գրում է տող notifications աղյուսակում (զանգի համար)։
  4. Այնուհետև ուղարկում է այլ ալիքներով, որոնք օգտատերը միացրել է այդ տեսակի համար․ էլ. փոստ՝ ձեր մատակարարի միջոցով, push՝ Push API-ի միջոցով։
  5. Ֆրոնտենդը ցույց է տալիս չկարդացված ծանուցումները և նշում դրանք կարդացված, երբ բացվում են։

Մեկ մուտքի կետը նշանակում է, որ կարող եք ավելացնել ալիք, փոխել տեքստը կամ հարգել նախապատվությունները՝ առանց կոդի բոլոր մասերով որոնելու։

Ինչ պահել

Ծանուցումների աղյուսակին սովորաբար պետք են՝ օգտատիրոջ ID, տեսակ (օրինակ՝ comment_reply), կարճ վերնագիր և տեքստ, հղում համապատասխան էջին, ստեղծման ժամանակը և կարդալու ժամանակը։ Առանձին նախապատվությունների աղյուսակը պահում է, թե յուրաքանչյուր օգտատեր ինչ ալիքներ է ուզում յուրաքանչյուր տեսակի համար։

Նոր ծանուցումների ցուցադրում

  • Բեռնել էջի դիտման ժամանակ և հարցում անել յուրաքանչյուր 30–60 վայրկյանը մեկ։ Պարզ և հուսալի է։
  • Իրական ժամանակի թարմացումներ WebSockets-ով կամ server-sent events-ով զգացվում են ակնթարթային, բայց ավելացնում են շարժական մասեր։ Սկսեք հարցումից, եթե ակնթարթային թարմացումները իրապես կարևոր չեն։

Էլ. փոստի ծանուցումներ

Էլ. նամակին պետք է ուղարկող մատակարար և հաստատված դոմեյն․ մանրամասները կան ինչպես ուղարկել էլ. նամակներ ձեր հավելվածից ուղեցույցում։ Մասնավորապես ծանուցումների համար․

  • Ուղարկեք սերվերից, երբեք մատակարարի բանալիով դիտարկիչից։
  • Խմբավորեք հաճախ կրկնվող իրադարձությունները։ «3 նոր մեկնաբանություն» մեկ նամակով ավելի լավ է, քան երեք նամակ։
  • Առաջարկեք օրական կամ շաբաթական ամփոփում ցածր առաջնահերթության ակտիվության համար։
  • Ներառեք չբաժանորդագրվելու կամ նախապատվությունների հղում ոչ էական էլ. նամակում։ Շուկայավարման նամակների կանոնները տարբերվում են երկրից երկիր. ստուգեք, թե ինչն է կիրառվում ձեզ համար։

Web push ծանուցումներ

Web push-ը թույլ է տալիս ձեր կայքին ուղարկել ահազանգեր, որոնք երևում են հավելվածի ծանուցումների նման։ Ըստ MDN-ի Push API փաստաթղթի, այն աշխատում է հետևյալ կերպ․

  1. Ձեր կայքը գրանցում է service worker, սկրիպտ, որը դիտարկիչը կարող է գործարկել ֆոնում։
  2. Օգտատիրոջ համաձայնությունից հետո service worker-ը բաժանորդագրվում է PushManager.subscribe()-ով։ Դիտարկիչը վերադարձնում է subscription՝ endpoint-ով և գաղտնագրման բանալիներով։
  3. Ձեր սերվերը պահում է այդ subscription-ը և, երբ ինչ-որ բան է տեղի ունենում, ուղարկում է հաղորդագրություն endpoint-ին՝ սովորաբար ստորագրված VAPID բանալիներով (բանալիների զույգ, որ նույնացնում է ձեր սերվերը)։
  4. Դիտարկիչը գործարկում է ձեր service worker-ը, որը ցույց է տալիս ծանուցումը, նույնիսկ եթե ձեր էջը բաց չէ։

MDN-ը նաև նշում է, որ endpoint-ը պետք է գաղտնի պահել, քանի որ դրա իմացությունը բավական է այդ օգտատիրոջը հաղորդագրություններ ուղարկելու համար։

iPhone և iPad

WebKit-ը ավելացրել է Web Push վեբ հավելվածների համար iOS-ում և iPadOS-ում 16.4 տարբերակից՝ երկու պայմանով իր հայտարարությունից․ կայքը պետք է ավելացված լինի հիմնական էկրանին, իսկ թույլտվությունը պետք է խնդրվի օգտատիրոջ գործողության պատասխանով, օրինակ՝ Subscribe կոճակը հպելիս։ Այսպիսով, iPhone-ում push-ը հասնում է միայն նրանց, ովքեր տեղադրել են ձեր վեբ հավելվածը։ Տես բնիկ և առաջադիմական վեբ հավելվածների տարբերությունը, թե ինչ է նշանակում վեբ հավելված տեղադրելը։

Թույլտվություն խնդրել ճիշտ

Մի խնդրեք առաջին այցին։ Նախ բացատրեք օգուտը («Ստացեք հիշեցում դասից մեկ ժամ առաջ»), ապա ցույց տվեք դիտարկիչի հարցումը, երբ օգտատերը հպում է կոճակին։ Եթե մեկը մերժում է, դիտարկիչը կարող է թույլ չտալ նորից հարցնել, ուստի վաղաժամ հարցումը կարող է ձեզ մշտապես կորցնել նրան։

Պլանավորված ծանուցումները պահանջում են գործարկիչ

«Հիշեցում 24 ժամ առաջ» կամ «շաբաթական ամփոփում՝ յուրաքանչյուր երկուշաբթի» պահանջում են ինչ-որ բան, որ աշխատի ժամանակացույցով։ Դա ֆոնային աշխատանքի խնդիր է, որը նկարագրված է ինչպես գործարկել ֆոնային աշխատանքներ ուղեցույցում։ Սովորական մոտեցում է․ արտաքին պլանավորիչը յուրաքանչյուր մի քանի րոպեն մեկ կանչում է պաշտպանված endpoint, և այդ endpoint-ն ուղարկում է այն, ինչ պետք է ուղարկվի։

Հրամաններ՝ AI կառուցողին

Սկսեք հավելվածի ներսից․

Ավելացրու հավելվածի ներսի ծանուցումներ։ Ստեղծիր notifications աղյուսակ (user, type, title, body, link, created_at, read_at)։ Ավելացրու սերվերային ֆունկցիա notify(userId, type, data), որ յուրաքանչյուր գործառույթ կանչում է։ Վերնագրում ցույց տուր զանգի պատկերակ չկարդացված քանակով, վերջին 20-ի ցուցակ բացվող ընտրացանկում և «նշել բոլորը որպես կարդացված» կոճակ։ Ստուգիր նորերը յուրաքանչյուր 60 վայրկյանը մեկ։

Այնուհետև նախապատվությունները և էլ. փոստը․

Ավելացրու ծանուցումների կարգավորումներ․ յուրաքանչյուր տեսակի համար (մեկնաբանությունների պատասխաններ, նշումներ, վճարումներ) օգտատերը ընտրում է հավելվածի ներսում, էլ. փոստ, երկուսը կամ ոչ մեկը։ notify()-ը պետք է հարգի սրանք։ Էլ. նամակ ուղարկիր [PROVIDER]-ի միջոցով՝ [ENV_NAME] գաղտնիքով, միայն սերվերի վրա։ Խմբավորիր մեկնաբանությունների նամակները, որ մեկ օգտատեր ստանա առավելագույնը մեկ նամակ 15 րոպեում։

Հետո push, եթե այն պետք է․

Ավելացրու կամընտիր web push։ Գրանցիր service worker, ստեղծիր VAPID բանալիներ և պահիր մասնավոր բանալին որպես գաղտնիք։ Ավելացրու «Միացնել ծանուցումները» կոճակ կարգավորումներում, որ թույլտվություն խնդրի միայն սեղմելիս։ Պահիր յուրաքանչյուր subscription յուրաքանչյուր օգտատիրոջ և սարքի համար, ուղարկիր push-ներ notify()-ից, երբ օգտատերը միացրել է, և ջնջիր այն subscription-ները, որոնք push ծառայությունը հաղորդում է որպես ժամկետանց։

Հաճախակի սխալներ

  • Ծանուցումները ցրված են կոդում։ Յուրաքանչյուր գործառույթ իր էլ. նամակն է ուղարկում տարբեր ձևերով, և նախապատվությունները անտեսվում են։ Օգտագործեք մեկ notify() ֆունկցիա։
  • Push թույլտվություն խնդրել էջը բեռնելիս։ Շատ մարդիկ մերժում են, և կարող է այլ հնարավորություն չունենաք։
  • Նախապատվությունների բացակայություն։ Օգտատերերը, որ չեն կարող անջատել աղմկոտ ահազանգերը, անջատում են բոլորը կամ հեռանում են։
  • Ուղարկում բրաուզերից։ Էլ. փոստի և push-ի բանալիները պետք է լինեն սերվերի վրա։
  • Մեռած push subscription-ների չմաքրում։ Ժամկետանց subscription-ները կուտակվում են և վատնում ուղարկումները։
  • Գաղտնի տվյալներ ծանուցման տեքստում։ Կողպված էկրանները ցույց են տալիս այն։ «Ունեք նոր հաղորդագրություն» ավելի անվտանգ է, քան հենց հաղորդագրությունը։
  • Ոչ մի գրանցում այն մասին, թե ինչ է ուղարկվել։ Երբ օգտատերը ասում է «ես էլ. նամակ չստացա», մատակարարի հաղորդագրության ID-ներով մատյանները օգնում են պարզել պատճառը։

Ստուգացանկ

  • Մեկ սերվերային notify() ֆունկցիա, որ օգտագործվում է ամենուր
  • Ծանուցումների աղյուսակ կարդացված վիճակով և զանգ չկարդացված քանակով
  • Յուրաքանչյուր տեսակի ալիքների նախապատվություններ, որոնք հարգում է notify()-ը
  • Էլ. նամակ սերվերից՝ հաստատված դոմեյնով․ ամփոփում կամ խմբավորում աղմկոտ իրադարձությունների համար
  • Push թույլտվությունը խնդրվում է միայն օգտատիրոջ գործողությունից հետո, բացատրությամբ
  • Push-ը փորձված է desktop-ում և iPhone-ում՝ հիմնական էկրանին ավելացված հավելվածով
  • Ժամկետանց push subscription-ները հեռացված են
  • Push-ի կամ էլ. նամակի նախադիտման մեջ գաղտնի բովանդակություն չկա
  • Պլանավորված հիշեցումները ունեն հուսալի գործարկիչ

Ծանուցումներ Mythex-ում

Mythex-ը չի ներառում ներկառուցված էլ. փոստի կամ push ծառայություն ձեր կառուցած հավելվածների համար, ուստի բերում եք ձեր սեփական էլ. փոստի մատակարարը և ստեղծում եք ձեր push բանալիները, որոնք պահվում են որպես նախագծի գաղտնիքներ։ Հավելվածի ներսի մասը պահանջում է միայն նախագծի տվյալների բազան, որը Mythex-ը ավելացնում է, երբ խնդրում եք։ Կառուցեք վերևի նման հրամաններով, փորձեք զանգը և նամակները Preview-ում, իսկ push-ը փորձեք հրապարակված URL-ում, քանի որ service worker-ներին և push-ին անհրաժեշտ է իսկական HTTPS հասցե։ Փաստաթղթերի Էլ. նամակ ուղարկել ձեր հավելվածից բաղադրատոմսում կա մեկնարկային հրաման։ Mythex-ը չի փաստաթղթավորում պլանավորված աշխատանքները, ուստի ժամանակացույցով հիշեցումները պլանավորեք արտաքին գործարկիչով, ինչպես նկարագրված է ինչպես գործարկել ֆոնային աշխատանքներ ուղեցույցում։

Հարցեր

Ո՞րն է ամենահեշտ ծանուցումը, որ կարելի է ավելացնել վեբ հավելվածին։

Հավելվածի ներսի ծանուցումները․ տվյալների բազայում ծանուցումների աղյուսակ և զանգի պատկերակ, որ ցույց է տալիս չկարդացվածները։ Դրանց համար երրորդ կողմի ծառայություն պետք չէ։ Էլ. փոստը հաջորդ քայլն է և պահանջում է էլ. նամակի մատակարար։

Կարո՞ղ է վեբ հավելվածը push ծանուցումներ ուղարկել iPhone-ներին։

Այո, սահմանափակումներով։ WebKit-ը ավելացրել է Web Push հիմնական էկրանին տեղադրված վեբ հավելվածների համար iOS-ում և iPadOS-ում 16.4 տարբերակից, ուստի օգտատիրոջը նախ պետք է տեղադրել ձեր վեբ հավելվածը հիմնական էկրանին, իսկ թույլտվությունը պետք է խնդրել հպումից հետո, օրինակ՝ Subscribe կոճակի վրա։

Աշխատո՞ւմ են push ծանուցումները, երբ կայքը փակ է։

Այո։ Push API-ն հաղորդագրությունները հասցնում է կայքի service worker-ին, որը դիտարկիչը գործարկում է հաղորդագրություն ստանալիս, այնպես որ էջը պետք չէ բաց լինի։ Օգտատերը նախապես պետք է տված լինի թույլտվությունը։

Ինչպե՞ս դադարեցնել ծանուցումները օգտատերերին նեղացնելուց։

Ծանուցեք միայն այն բաների մասին, որոնք օգտատիրոջը հետաքրքրում են, խմբավորեք հոսքերը մեկ հաղորդագրության մեջ, թույլ տվեք մարդկանց ընտրել ալիքները յուրաքանչյուր տեսակի համար կարգավորումներում, և push թույլտվություն խնդրեք միայն այն բանից հետո, երբ նրանք տեսել են, թե ինչու է այն օգտակար։

Mythex · Pricing · Կառուցեք ամեն ինչ AI-ով · Կաղապարներ կայքերի և հավելվածների համար · Mythex-ի համեմատությունները · AI-ով հավելվածների ստեղծման բառարան · Անվճար գործիքներ 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 Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)