ãã«ããã£ãã«éç¥ã·ã¹ãã ïŒãã³ãã¬ãŒããå詊è¡ããŠãŒã¶ãŒèšå®
ã¡ãŒã«ãSMSãTelegram åãã«ããã³ãã¬ãŒããé ä¿¡ã¹ããŒã¿ã¹ãå詊è¡ããŠãŒã¶ãŒèšå®ãäžè²«ããŠæ±ãããã«ããã£ãã«éç¥ã·ã¹ãã ãèšèšããã

åäžã®éç¥ã·ã¹ãã ã§è§£æ±ºã§ããããš
ã¡ãŒã«ãSMSãTelegram ãå¥ã ã®æ©èœãšããŠäœããšãããã«åé¡ãåºãŸããåãã¢ã©ãŒãã§ãæèšãã¿ã€ãã³ã°ã誰ã«å±ããã®ã«ãŒã«ããã©ãã©ã«ãªããã¡ã§ãããµããŒãããŒã ã¯ã¡ãŒã«ãããã€ããSMS ã²ãŒããŠã§ã€ããããã®ãã°ãšãäžã€ã® "çå®" ã远ããããããšã«ãªããŸãã
ãã«ããã£ãã«éç¥ã·ã¹ãã ã¯ãéç¥ãäžã€ã®çµ±åã§ã¯ãªãäžã€ã®ãããã¯ããšããŠæ±ãããšã§ããã解決ããŸãã1ã€ã®ã€ãã³ããçºçïŒãã¹ã¯ãŒããªã»ãããè«æ±æžã®æ¯æãããµãŒããŒããŠã³ãªã©ïŒããã·ã¹ãã ããã³ãã¬ãŒãããŠãŒã¶ãŒèšå®ãé ä¿¡ã«ãŒã«ã«åºã¥ããŠãã£ãã«æšªæã§ã©ãå±ããããæ±ºå®ããŸãããã£ãã«ããšã«ãã©ãŒãããã¯å€ããããŸãããæå³ãããŒã¿ã远跡ã¯äžè²«ããŸãã
ã»ãšãã©ã®ããŒã ãå¿ èŠãšããåºç€ã¯åãã§ãïŒå€æ°ãæã€ããŒãžã§ã³ç®¡çããããã³ãã¬ãŒããé ä¿¡ã¹ããŒã¿ã¹è¿œè·¡ïŒ"éä¿¡æžã¿ãé éæžã¿ã倱æãçç±"ïŒã劥åœãªå詊è¡ãšãã©ãŒã«ããã¯ãåæãšã¯ã¯ã€ãšããã¢ã¯ãŒãå«ããŠãŒã¶ãŒèšå®ããããŠãµããŒããæšæž¬ããããšãªã確èªã§ããç£æ»èšŒè·¡ã
æåã¯è¯ãæå³ã§å°å³ã§ããã¡ãã»ãŒãžã¯äºæž¬å¯èœã«ãªããæ£ããäººã«æ£ããå 容ãé©åãªã¿ã€ãã³ã°ã§ãèš±å¯ããããã£ãã«ãéããŠå±ããŸããåé¡ãèµ·ããŠãããã¹ãŠã®è©Šè¡ãæç¢ºãªã¹ããŒã¿ã¹ãšçç±ã³ãŒããšå ±ã«èšé²ãããŠããã®ã§ãã©ãã«ã·ã¥ãŒãã¯ç°¡åã§ãã
ãæ°ãããã°ã€ã³ãã¢ã©ãŒãã¯è¯ãäŸã§ãã1åäœæããŠåããŠãŒã¶ãŒã»ããã€ã¹ã»å ŽæããŒã¿ã䜿ãã詳现ã¯ã¡ãŒã«ãç·æ¥æ§ã¯SMSãçŽ æ©ã確èªã¯Telegramã§å±ããŸããSMS ãããã€ããã¿ã€ã ã¢ãŠãããããã·ã¹ãã ã¯äºå®ã©ããå詊è¡ããã¿ã€ã ã¢ãŠãããã°ã«æ®ããã¢ã©ãŒããç Žæ£ãã代ããã«å¥ãã£ãã«ã«ãã©ãŒã«ããã¯ã§ããŸãã
ã³ã¢æŠå¿µãšã·ã³ãã«ãªããŒã¿ã¢ãã«
éç¥ã®ããªããããã©ãå±ããããããåé¢ãããšç®¡çãããããªããŸããã€ãŸããå ±æãªããžã§ã¯ããå°æ°ã«ãããã£ãã«åºæã®è©³çŽ°ã¯æ¬åœã«éããšãã ãæã€ãšããããšã§ãã
ãŸã ã€ãã³ã ããå§ããŸããã€ãã³ã㯠order_shipped ã password_reset ã®ãããªååä»ãããªã¬ãŒã§ããååã¯äžè²«ããŠãããŸãããïŒå°æåãã¢ã³ããŒã¹ã³ã¢ãå Žåã«ãã£ãŠéå»åœ¢ã䜿ããã€ãã³ãããã³ãã¬ãŒããèšå®ã«ãŒã«ãäŸåããå®å®ããå¥çŽãšããŠæ±ããŸãã
1ã€ã®ã€ãã³ããã éç¥ïŒnotificationïŒ ã¬ã³ãŒããäœæããŸããããã¯ãŠãŒã¶ãŒåãã®æå³ïŒèª°ã«ãäœãèµ·ããããã³ã³ãã³ããã¬ã³ããªã³ã°ããããã«å¿ èŠãªããŒã¿ïŒæ³šæçªå·ãé 鿥ããªã»ããã³ãŒãïŒã衚ããŸããããã« user_idãevent_nameãlocaleãpriorityãscheduled_at ã®ãããªå ±éãã£ãŒã«ããä¿åããŸãã
次ã«ãã£ãã«ããšã« ã¡ãã»ãŒãž ã«åå²ããŸããéç¥ã¯ 0 ïœ 3 ä»¶ã®ã¡ãã»ãŒãžïŒã¡ãŒã«ãSMSãTelegramïŒãäœããããããŸãããã¡ãã»ãŒãžã«ã¯å®å ïŒã¡ãŒã«ã¢ãã¬ã¹ãé»è©±çªå·ãTelegram chat_idïŒãtemplate_idãã¬ã³ããªã³ã°æžã¿ã®ã³ã³ãã³ãïŒã¡ãŒã«ã®ä»¶å/æ¬æãSMS ã®çæïŒãªã©ãã£ãã«åºæã®ãã£ãŒã«ããæãããŸãã
æåŸã«åéä¿¡ã é 信詊è¡ïŒdelivery attemptïŒ ãšããŠè¿œè·¡ããŸãã詊è¡ã«ã¯ãããã€ãã® request_idãã¿ã€ã ã¹ã¿ã³ããã¬ã¹ãã³ã¹ã³ãŒããæ£èŠåãããã¹ããŒã¿ã¹ãå«ããŸãããŠãŒã¶ãŒããå±ããŠããªãããšèšã£ããšãã«ç¢ºèªããã®ã¯ããã§ãã
ã·ã³ãã«ãªã¢ãã«ã¯éåžž4ã€ã®ããŒãã«ãŸãã¯ã³ã¬ã¯ã·ã§ã³ã«åãŸããŸãïŒ
- EventïŒèš±å¯ãããã€ãã³ãåãšããã©ã«ãã®ã«ã¿ãã°ïŒ
- NotificationïŒãŠãŒã¶ãŒã®æå³ããšã«1ã€ïŒ
- MessageïŒãã£ãã«ããšã«1ã€ïŒ
- DeliveryAttemptïŒå詊è¡ããšã«1ã€ïŒ
åªçæ§ïŒidempotencyïŒãæ©ãã«èšç»ããŠãã ãããåéç¥ã« (event_name, user_id, external_ref) ã®ãããªæ±ºå®è«çããŒãä»ããäžæµã·ã¹ãã ããã®åå®è¡ã§éè€ãçºçããªãããã«ããŸããã¯ãŒã¯ãããŒã®ã¹ããããåå®è¡ããããšããåªçããŒããªããã°ãŠãŒã¶ãŒã«2éã®SMSãéã£ãŠããŸããŸãã
ç£æ»ã«å¿ èŠãªãã®ã ããé·æä¿åããçæã®é ä¿¡ãã¥ãŒãçã®ãããã€ããã€ããŒãã¯éçšãšãã©ãã«ã·ã¥ãŒãã«å¿ èŠãªæéã ãä¿æããŸãããã
å®çšçãªãšã³ãããŒãšã³ããããŒïŒã¹ããããã€ã¹ãããïŒ
ãäœãéãããæ±ºãããåŠçãšãéããåŠçãåãããšãã¢ããªã¯é«éã«ãªãéå®³ã®æ±ããç°¡åã«ãªããŸãã
å®çšçãªãããŒã¯æ¬¡ã®ãšããã§ãïŒ
-
ã€ãã³ããããã¥ãŒãµãŒãéç¥ãªã¯ãšã¹ããäœãã äŸïŒ
password resetãinvoice paidãticket updatedããªã¯ãšã¹ãã«ã¯ user IDãã¡ãã»ãŒãžçš®å¥ãã³ã³ããã¹ãããŒã¿ïŒæ³šæçªå·ãéé¡ãæ åœè åïŒãå«ããŸããç£æ»ã®ããã«ãªã¯ãšã¹ãã¯ããä¿åããŸãã -
ã«ãŒã¿ãŒããŠãŒã¶ãŒãšã¡ãã»ãŒãžã«ãŒã«ãèªã¿èŸŒãã ãŠãŒã¶ãŒã®èš±å¯ãã£ãã«ããªããã€ã³ãã¯ã¯ã€ãšããã¢ã¯ãŒããããšãã°ã»ãã¥ãªãã£ã¢ã©ãŒãã¯ã¡ãŒã«ãåªå ãããã®ãããªã¡ãã»ãŒãžã«ãŒã«ãèŠãŸããã«ãŒã¿ãŒã¯ãã£ãã«èšç»ã決å®ããŸãïŒäŸïŒTelegram â SMS â ã¡ãŒã«ïŒã
-
ã·ã¹ãã ã¯ãã£ãã«ããšã®éä¿¡ãžã§ãããšã³ãã¥ãŒããã åãžã§ãã¯ãã³ãã¬ãŒãããŒããã£ãã«ã倿°ãå«ã¿ãŸãããžã§ãã¯ãã¥ãŒãžå ¥ãããŠãŒã¶ãŒæäœãéä¿¡ã§ãããã¯ããªãããã«ããŸãã
-
ãã£ãã«ã¯ãŒã«ãŒããããã€ãçµç±ã§é ä¿¡ããã ã¡ãŒã«ã¯ SMTP ãã¡ãŒã« APIãSMS 㯠SMS ã²ãŒããŠã§ã€ãTelegram ã¯ãããçµç±ãã¯ãŒã«ãŒã¯åªçã«äœããåããžã§ããå詊è¡ããŠãéè€éä¿¡ãçºçããªãããã«ããŸãã
-
ã¹ããŒã¿ã¹æŽæ°ã¯äžç®æã«æ»ãã ã¯ãŒã«ãŒã¯ queuedãsentãfailedãå¯èœãªã delivered ãèšé²ããŸãããããã€ãã "accepted" ã®ã¿ãè¿ãå Žåã¯ãããèšé²ããdelivered ãšåºå¥ããŠæ±ããŸãã
-
ãã©ãŒã«ããã¯ãšå詊è¡ã¯åãç¶æ ããåãã Telegram ã倱æããããã«ãŒã¿ãŒïŒãŸãã¯å詊è¡ã¯ãŒã«ãŒïŒã SMS ãæ¬¡ã«ã¹ã±ãžã¥ãŒã«ããŠæèã倱ããªãããã«ããŸãã
äŸïŒãŠãŒã¶ãŒããã¹ã¯ãŒãã倿Žããå Žåãããã¯ãšã³ãã¯ãŠãŒã¶ãŒãš IP ã¢ãã¬ã¹ãå«ãåäžã®ãªã¯ãšã¹ããåºããŸããã«ãŒã¿ãŒã¯ãŠãŒã¶ãŒã Telegram ãåªå ããŠãããã¯ã¯ã€ãšããã¢ã¯ãŒã§å€éã¯ãããã¯ãããã®ãèŠãŠãã¡ãŒã«ã¯ä»ãTelegram ã¯æã«ã¹ã±ãžã¥ãŒã«ããäž¡æ¹ãåãéç¥ã¬ã³ãŒãã§è¿œè·¡ããŸãã
AppMaster ã䜿ã£ãŠå®è£ ããå Žåã¯ããªã¯ãšã¹ãããžã§ããã¹ããŒã¿ã¹ããŒãã«ã Data Designer ã«ä¿æããã«ãŒãã£ã³ã°ãå詊è¡ããžãã¯ã Business Process Editor ã§è¡šçŸããéä¿¡ã¯éåæã§è¡ã£ãŠ UI ã®å¿çæ§ãä¿ã€ãšããã§ãããã
ãã£ãã«æšªæã§æ©èœãããã³ãã¬ãŒãæ§é
è¯ããã³ãã¬ãŒãã·ã¹ãã ã¯äžã€ã®èãããå§ãŸããŸãïŒããªãã¯ã€ãã³ãã«ã€ããŠéç¥ããŠããã®ã§ãã£ãŠãã¡ãŒã«ãéã£ãŠãããã®ã§ã¯ãªãããšããããšãã€ãã³ãããšã«1ã€ã®ãã³ãã¬ãŒããäœãïŒPassword resetãOrder shippedãPayment failed ãªã©ïŒããã®äžã«ãã£ãã«å¥ã®ããªã¢ã³ããä¿åããŸãã
å
šãã£ãã«ã§åã倿°åã䜿ãç¶ããŠãã ãããã¡ãŒã«ã first_name ãš order_id ã䜿ããªããSMS ã Telegram ãåãååã䜿ãã¹ãã§ããããããããšã§ããããã£ãã«ã§ã¬ã³ããªã³ã°ã空æ¬ã«ãªããããªåŸ®åŠãªãã°ãé²ããŸãã
ç¹°ãè¿ã䜿ããã·ã³ãã«ãªãã³ãã¬ãŒã圢
åã€ãã³ãããšã«ããã£ãã«ããšã«å°ããªãã£ãŒã«ãã»ãããå®çŸ©ããŸãïŒ
- Email: subjectãpreheaderïŒãªãã·ã§ã³ïŒãHTML æ¬æãããã¹ããã©ãŒã«ããã¯
- SMS: ãã¬ãŒã³ããã¹ãæ¬æ
- Telegram: ãã¬ãŒã³ããã¹ãæ¬æããªãã·ã§ã³ã®ãã¿ã³ãçãã¡ã¿ããŒã¿
ãã£ãã«ããšã«å€ããã®ã¯ãã©ãŒãããã ãã§ãæå³ã¯å€ããªãã§ãã ããã
SMS ã¯çãã®ããç¹å¥ã«ãŒã«ãèŠããŸããæåæ°å¶éãæ±ºããé·ãããå Žåã®åŠçïŒåã£ãŠ ... ãã€ããããªãã·ã§ã³è¡ãå ã«åããªã©ïŒãäžè²«ããŠæ±ºããŸããããé·ãURLãäœèšãªå¥èªç¹ãé¿ããéèŠãªã¢ã¯ã·ã§ã³ïŒã³ãŒããæéãæ¬¡ã®ã¹ãããïŒãå ã«çœ®ããŸãã
ããžãã¹ããžãã¯ãã³ããŒããã«ãã±ãŒã«å¯Ÿå¿ãã
èšèªã¯ãã©ã¡ãŒã¿ãšããŠæ±ããå¥ã¯ãŒã¯ãããŒã«ããªãã§ãã ãããã€ãã³ããšãã£ãã«ããšã«ç¿»èš³ãä¿åããåã倿°ã§ã¬ã³ããªã³ã°ããŸããOrder shipped ã®ããžãã¯ã¯åãã§ãä»¶åãæ¬æã ããã±ãŒã«ããšã«å€ãããŸãã
ãã¬ãã¥ãŒæ©èœã¯è²»çšå¯Ÿå¹æãé«ãã§ãããµã³ãã«ããŒã¿ïŒé·ãååã®ãšããžã±ãŒã¹ãå«ãïŒã§ãã³ãã¬ãŒããã¬ã³ããªã³ã°ãããµããŒããã¡ãŒã«ãSMSãTelegram ã®ããªã¢ã³ããå ¬éåã«ç¢ºèªã§ããããã«ããŸãããã
ä¿¡é Œã§ããŠãããã°ããããé ä¿¡ã¹ããŒã¿ã¹
åŸãããããã«äœãèµ·ãããããçããããããšãéç¥ã®äŸ¡å€ã§ããéç¥å 容ãšåé 信詊è¡ãåé¢ããŠæ±ããŸãããã
ãŸãã¯ã¡ãŒã«ãSMSãTelegram å šãŠã§åãæå³ãæã€å°ããªå ±éã¹ããŒã¿ã¹ãçšæããŸãïŒ
- queued: ã·ã¹ãã ã«åãå ¥ããããã¯ãŒã«ãŒåŸ ã¡
- sending: é 信詊è¡äž
- sent: ãããã€ãAPIãžæ£åžžã«æž¡ãã
- failed: ã¢ã¯ã·ã§ã³ãåãããšã©ãŒã§çµäº
- delivered: ãŠãŒã¶ãŒã«å°éãã蚌æ ãããïŒå¯èœãªå ŽåïŒ
ããããã¡ã€ã³ã®ã¡ãã»ãŒãžã¬ã³ãŒãã«æããããã¹ãŠã®è©Šè¡ãå±¥æŽããŒãã«ã§è¿œè·¡ããŸããå±¥æŽãããããšã§ãããã°ãç°¡åã«ãªããŸãïŒè©Šè¡1ã¯ã¿ã€ã ã¢ãŠãã§å€±æã詊è¡2ã¯æåãããã㯠SMS ã¯æåãããã¡ãŒã«ã¯ããŠã³ã¹ãç¶ããããªã©ã
詊è¡ããšã«ä¿åãããã®
ãããã€ãã®è¡šçŸãæ£èŠåããŠä¿åããéããããã€ããå¥ã®èšèã䜿ã£ãŠãæ€çŽ¢ãåé¡ãã§ããããã«ããŸãã
- provider_name ãš provider_message_id
- response_codeïŒTIMEOUTãINVALID_NUMBERãBOUNCED çã®æ£èŠåã³ãŒãïŒ
- raw_provider_code ãš raw_error_textïŒãµããŒãçšïŒ
- started_atãfinished_atãduration_ms
- channelïŒemailãsmsãtelegramïŒãš destinationïŒãã¹ã¯æžã¿ïŒ
éšåçæåãæ³å®ããŠãã ããã1ã€ã®éç¥ã芪IDãšããžãã¹æèïŒorder_idãticket_idãalert_typeïŒãå ±æãã3ã€ã®ã¡ãã»ãŒãžãäœãå ŽåãSMS ã¯éä¿¡æžã¿ã§ã¡ãŒã«ã倱æããããšããå šäœã®è©±ã1ç®æã§èŠããã¯ãã§ãã
ãé éæžã¿ïŒdeliveredïŒãã®å®æ
ãéä¿¡æžã¿ïŒsentïŒãã¯ãé éæžã¿ïŒdeliveredïŒãã§ã¯ãããŸãããTelegram ã§ã¯ API ãåãå ¥ããæ å ±ããåŸãããªãããšããããSMS ãã¡ãŒã«ã®é é㯠webhook ããããã€ãã®ã³ãŒã«ããã¯ã«äŸåããŸãããã¹ãŠã®ãããã€ããåãä¿¡é Œæ§ã§ã¯ãããŸããã
ãã£ãã«ããšã® delivered ã®å®çŸ©ãåãã£ãŠæ±ºããŠãããŸããããWebhook 確èªãããå Žåã¯ããã䜿ãããªãå Žå㯠delivered ãäžæãšã㊠sent ãå ±åããæ¹ãæ£çŽã§ãµããŒãã®åçãäžè²«ããŸãã
å詊è¡ããã©ãŒã«ããã¯ãåæ¢ã®æ¡ä»¶
å詊è¡ã¯éç¥ã·ã¹ãã ã§ãã倱æããéšåã§ããéãããå詊è¡ã¯åµãäœããæ°žé ã«å詊è¡ãããšéè€ããµããŒãã®æéãå¢ããŸããç®çã¯åçŽïŒæåããèŠèŸŒã¿ããããªãå詊è¡ããèŠèŸŒã¿ããªããªã忢ããã
ãŸã倱æãåé¡ããŸããã¡ãŒã«ãããã€ãã®ã¿ã€ã ã¢ãŠããSMS ã²ãŒããŠã§ã€ã® 502ãTelegram API ã®äžæãšã©ãŒã¯éåžžå詊è¡å¯èœã§ããäžæ¹ã malformed ãªã¡ãŒã«ã¢ãã¬ã¹ãæ€èšŒã«å€±æããé»è©±çªå·ããããã«ãããã¯ããã Telegram ãã£ããã¯å詊è¡ããŠãç¡é§ã§ããããããåºå¥ããªããšã³ã¹ããæµªè²»ããã°ãåããŸãã
å®çšçãªå詊è¡ãã©ã³ã¯äžéãããããã¯ãªãã䜿ããŸãïŒ
- 詊è¡1ïŒä»ããéä¿¡
- 詊è¡2ïŒ30ç§åŸ
- 詊è¡3ïŒ2ååŸ
- 詊è¡4ïŒ10ååŸ
- ã¢ã©ãŒããªãæå€§çµéæéïŒäŸïŒ30ã60åïŒã§åæ¢
忢ã¯ããŒã¿ã¢ãã«ã«æç¢ºã«äœçœ®ã¥ããŸããããå詊è¡äžéãè¶ ãããã¡ãã»ãŒãžããããã¬ã¿ãŒïŒfailed-permanentlyïŒãšããŠããŒã¯ããŸããæåŸã®ãšã©ãŒã³ãŒããšçããšã©ãŒã¡ãã»ãŒãžãä¿æãããµããŒããæšæž¬ããã«å¯Ÿå¿ã§ããããã«ããŸãã
æååŸã®éè€éä¿¡ãé²ãã«ã¯åªçæ§ã䜿ããŸããè«çã¡ãã»ãŒãžããšã«åªçããŒãäœæïŒå€ã㯠notification_id + user_id + channelïŒããããã€ããé ããŠå¿çãå詊è¡ããå Žåã2åç®ãéè€ãšèªèããŠã¹ãããã§ããããã«ããŸãã
ãã©ãŒã«ããã¯ã¯ããããã¯ã§èªåçã«è¡ãããã®ã§ã¯ãªãæå³çã«èšèšããã¹ãã§ããéèŠåºŠãšæéã«åºã¥ããšã¹ã«ã¬ãŒã·ã§ã³ã«ãŒã«ãå®çŸ©ããŠãã ãããäŸïŒãã¹ã¯ãŒããªã»ããã¯ãã©ã€ãã·ãŒäžã®çç±ã§å¥ãã£ãã«ãžã®ãã©ãŒã«ããã¯ãè¡ãã¹ãã§ã¯ãªãããéçšã€ã³ã·ãã³ãã¢ã©ãŒã㯠Telegram ã2å倱æããã SMS ã詊ãã10ååŸã«ã¡ãŒã«ã詊ãããªã©ã
ãŠãŒã¶ãŒèšå®ãåæãã¯ã¯ã€ãšããã¢ã¯ãŒ
ã·ã¹ãã ããè³¢ãããšæããããã®ã¯ãŠãŒã¶ãŒãå°éããæã§ããæãç°¡åãªæ¹æ³ã¯ãéç¥ã¿ã€ãããšã«ãã£ãã«ããŠãŒã¶ãŒãéžã¹ãããã«ããããšã§ããå€ãã®ããŒã ã¯éç¥ã¿ã€ãã securityãaccountãproductãmarketing ã®ããã«åé¡ããŸããæ³åŸãã«ãŒã«ãã¿ã€ãããšã«ç°ãªãããã§ãã
ãã£ãã«ã䜿ããªãå Žåã§ãåãç°¡æœãªèšå®ã¢ãã«ããå§ããŠãã ããããŠãŒã¶ãŒã«ã¡ãŒã«ã¯ãããé»è©±çªå·ããªããããã㯠Telegram ããŸã æ¥ç¶ããŠããªãããšããããšã¯æ®éã«èµ·ããŸãããã«ããã£ãã«éç¥ã·ã¹ãã ã¯ããããšã©ãŒãšæ±ãã¹ãã§ã¯ãããŸããã
ã»ãšãã©ã®ã·ã¹ãã ã¯æ¬¡ã®ãããªã³ã³ãã¯ããªãã£ãŒã«ãã»ãããå¿ èŠãšããŸãïŒéç¥ã¿ã€ãïŒsecurityãmarketingãbillingïŒãã¿ã€ãããšã®èš±å¯ãã£ãã«ïŒemailãSMSãTelegramïŒããã£ãã«ããšã®åæïŒæ¥æããœãŒã¹ãå¿ èŠãªã蚌æïŒããã£ãã«ããšã®ãªããã¢ãŠãçç±ïŒãŠãŒã¶ãŒã®éžæãããŠã³ã¹ã"STOP" è¿ä¿¡ ãªã©ïŒãããã³ã¯ã¯ã€ãšããã¢ã¯ãŒã«ãŒã«ïŒéå§/çµäºãšãŠãŒã¶ãŒã®ã¿ã€ã ãŸãŒã³ïŒã
ã¯ã¯ã€ãšããã¢ã¯ãŒã§ããå£ãããã€ã³ãã¯ã¿ã€ã ãŸãŒã³ã§ãããªãã»ããã ãã§ãªããŠãŒã¶ãŒã®ã¿ã€ã ãŸãŒã³ãä¿åãããµããŒã¿ã€ã ã®å€åã§é©ããªãããã«ããŸããããã¯ã¯ã€ãšããã¢ã¯ãŒäžã«ã¡ãã»ãŒãžãã¹ã±ãžã¥ãŒã«ãããã倱æãããã« deferred ãšããŒã¯ããæ¬¡ã«èš±å¯ãããéä¿¡æå»ãéžãã§ãã ããã
ããã©ã«ãã¯éèŠã§ããããããæ¹éã¯ïŒã»ãã¥ãªãã£éç¥ã¯ã¯ã¯ã€ãšããã¢ã¯ãŒãç¡èŠïŒãã ãæ³çã«å¿ èŠãªããŒããªããã¢ãŠãã¯å°éïŒããééèŠãªæŽæ°ã¯ã¯ã¯ã€ãšããã¢ã¯ãŒãšãã£ãã«éžæã«åŸãããšãããã®ã§ãã
äŸïŒãã¹ã¯ãŒããªã»ããã¯æéã®èš±å¯ããããã£ãã«ãžå³æã«éä¿¡ããã鱿¬¡ãã€ãžã§ã¹ãã¯æãŸã§åŸ ã¡ããŠãŒã¶ãŒãæç€ºçã«æå¹åããŠããªãéã SMS ãã¹ãããããã
éçšïŒã¢ãã¿ãªã³ã°ããã°ããµããŒãã¯ãŒã¯ãããŒ
éç¥ãã¡ãŒã«ãSMSãTelegram ããŸããæããµããŒãã¯çŽ æ©ãçããåºãå¿ èŠããããŸãïŒéã£ãããå±ããããäœã倱æãããããã«ããã£ãã«éç¥ã·ã¹ãã ã¯ãè£ã§è€æ°ã®ãããã€ãã䜿ã£ãŠããŠãã調æ»ãäžç®æã§å®çµããããã«æããããã¹ãã§ãã
ãŸãã¯èª°ã§ã䜿ããã·ã³ãã«ãªç®¡çãã¥ãŒãäœããŸãããããŠãŒã¶ãŒãã€ãã³ãçš®å¥ãã¹ããŒã¿ã¹ãæéçªã§æ€çŽ¢ã§ããææ°ã®è©Šè¡ãäžã«æ¥ãããã«ããŸããåè¡ã¯ãã£ãã«ããããã€ãå¿çãæ¬¡ã®äºå®ã¢ã¯ã·ã§ã³ïŒå詊è¡ããã©ãŒã«ããã¯ã忢ïŒã衚瀺ããŸãã
åé¡ãæ©ãæãŸããããã®ææš
é害ã¯äžã€ã®æç¢ºãªãšã©ãŒãšããŠçŸããããšã¯çšã§ããå°æ°ã®ææšã远ãã宿çã«ã¬ãã¥ãŒããŠãã ããïŒ
- ãã£ãã«ããšã®éä¿¡çïŒæ¯åã¡ãã»ãŒãžæ°ïŒ
- ãããã€ãå¥ã»ãšã©ãŒã³ãŒãå¥ã®å€±æç
- å詊è¡çïŒäœä»¶ãå詊è¡ãå¿ èŠãšãããïŒ
- é éæéïŒqueued ãã deliveredãp50 ãš p95ïŒ
- ããããçïŒãŠãŒã¶ãŒèšå®ãåæäžè¶³ãæå€§å詊è¡è¶ éã§åæ¢ããå²åïŒ
ãã¹ãŠãçžé¢ãããŸããããã€ãã³ãçºçæã«çžé¢IDãçæãïŒäŸïŒ"invoice overdue"ïŒããã³ãã¬ãŒãããã¥ãŒããããã€ãåŒã³åºããã¹ããŒã¿ã¹æŽæ°ãžæž¡ããŸãããã°ã§ã¯ãã®IDã1ã€ã®ã¹ã¬ããã«ãªããè€æ°ãã£ãã«ãžãã¡ã³ã¢ãŠãããã€ãã³ãã远ãéã«åœ¹ç«ã¡ãŸãã
ãµããŒãåãã®å®å šãªãªãã¬ã€
ãªãã¬ã€ã¯å¿ èŠã§ãããã¬ãŒãã¬ãŒã«ãç¡ããšã¹ãã ãäºé課éãæããŸããå®å šãªãªãã¬ã€ã®æµãã¯éåžžïŒç¹å®ã®ã¡ãã»ãŒãžIDã®ã¿ãåéãéãåã«ãã³ãã¬ãŒãããŒãžã§ã³ãšã¬ã³ããªã³ã°æžã¿ã®å 容ã衚瀺ãçç±ãšå®è¡è ãå¿ é å ¥åã§ä¿åãæ¢ã«é éæžã¿ãªãæç€ºçã«åŒ·å¶ããªãéããããã¯ããŠãŒã¶ãŒãšãã£ãã«ããšã®ã¬ãŒãå¶éã課ãããªã©ã§ãã
éç¥ã®ã»ãã¥ãªãã£ãšãã©ã€ãã·ãŒã®åºæ¬
ãã«ããã£ãã«éç¥ã·ã¹ãã ã¯å人ããŒã¿ïŒã¡ãŒã«ãé»è©±çªå·ããã£ããIDïŒã«è§Šãããã°ã€ã³ãæ¯æããªã©ã»ã³ã·ãã£ããªå Žé¢ãæ±ããŸãããã¹ãŠã®ã¡ãã»ãŒãžæ¬æãšãã°è¡ã¯åŸã§èŠãããå¯èœæ§ããããšæ³å®ããä¿åãšé²èЧãå¶éããèšèšãããŠãã ããã
ãã³ãã¬ãŒãã«ã»ã³ã·ãã£ããªããŒã¿ãå ¥ããªãããã«ããŸãããããã³ãã¬ãŒãã¯åå©çšã§ããŠå¹³å¡ãªãã®ã«ïŒ"Your code is {{code}}" ã®ãããªãã³ãã¬ãŒãã¯åé¡ãããŸããããã¢ã«ãŠã³ãã®è©³çްãé·ãããŒã¯ã³ãªã©ä¹ã£åãã«äœ¿ããæ å ±ã¯é¿ããŸããã¯ã³ã¿ã€ã ã³ãŒãããªã»ããããŒã¯ã³ãå¿ èŠãªããçã®å€ã§ã¯ãªãæ€èšŒã«å¿ èŠãªããã·ã¥ãšæå¹æéã ããä¿åããŸãã
éç¥ã€ãã³ããä¿åã»ãã°ã«æ®ãéã¯ç©æ¥µçã«ãã¹ã¯ããŠãã ããããµããŒãæ åœã¯ã³ãŒããéä»ãããããšãç¥ãå¿ èŠã¯ãã£ãŠããã³ãŒãèªäœãç¥ãå¿ èŠã¯éåžžãããŸãããé»è©±çªå·ãã¡ãŒã«ãé éã«å¿ èŠãªãã«å€ã¯ä¿æããŠããã€ã€ãã»ãšãã©ã®ç»é¢ã§ã¯ãã¹ã¯ãã衚瀺ã«ããŸãã
ã»ãšãã©ã®äºæ ãé²ãæäœéã®ã³ã³ãããŒã«
- ããŒã«ããŒã¹ã®ã¢ã¯ã»ã¹ïŒã¡ãã»ãŒãžæ¬æãåä¿¡è ã®å®å šæ å ±ãèŠãããã®ã¯éãããããŒã«ã ãã«ããã
- ãããã°ã¢ã¯ã»ã¹ãšãµããŒãã¢ã¯ã»ã¹ãåé¢ãããã©ãã«ã·ã¥ãŒãããã©ã€ãã·ãŒæŒæŽ©ã«ãªããªãããã«ããã
- Webhook ãšã³ããã€ã³ããä¿è·ïŒçœ²åæžã¿ã³ãŒã«ããã¯ãå ±æã·ãŒã¯ã¬ããã䜿ããã¿ã€ã ã¹ã¿ã³ããæ€èšŒãäžæãªéä¿¡å ã¯æåŠããã
- æ©å¯ãã£ãŒã«ãã¯éæ¢æã«æå·åã転éæã¯ TLS ã䜿çšããã
- ä¿æã«ãŒã«ãå®çŸ©ïŒè©³çްãã°ã¯çæéã ãä¿æãããã®åŸã¯éèšãããã·ã¥åããèå¥åã ããæ®ãã
å®çšäŸïŒãã¹ã¯ãŒããªã»ããã® SMS ã倱æã㊠Telegram ã«ãã©ãŒã«ããã¯ããå Žåã詊è¡ããããã€ãã¹ããŒã¿ã¹ããã¹ã¯æžã¿åä¿¡è ã¯èšé²ããŸããããªã»ãããªã³ã¯èªäœã DB ããã°ã«ä¿åããªãããã«ããŸãã
äŸã·ããªãªïŒ1ã€ã®ã¢ã©ãŒãã3ãã£ãã«ãå®éã®çµæ
顧客㮠Maya 㯠Password reset ãš New login ã®2ã€ã®éç¥ã¿ã€ããæå¹ã«ããŠãããTelegram ã第äžã次ã«ã¡ãŒã«ãåªå ããŸããPassword reset ã§ã¯ SMS ããã©ãŒã«ããã¯ãšããŠã®ã¿èš±å¯ããŠããŸãã
ããå€ãMaya ããã¹ã¯ãŒããªã»ãããèŠæ±ããŸããã·ã¹ãã ã¯å®å®ãã ID ãæã€åäžã®éç¥ã¬ã³ãŒããäœãã圌女ã®çŸåšã®èšå®ã«åºã¥ããŠãã£ãã«è©Šè¡ã«å±éããŸãã
Maya ãèŠããã®ã¯ã·ã³ãã«ã§ãïŒæ°ç§ã§ Telegram ã¡ãã»ãŒãžãå±ããçããªã»ããã³ãŒããšæå¹æéã衚瀺ãããŸããä»ã¯å±ããŸãããTelegram ãæåããã©ãŒã«ããã¯ã¯äžèŠã ã£ãããã§ãã
ã·ã¹ãã ãèšé²ãããã®ã¯è©³çްã§ãïŒ
- Notification: type=PASSWORD_RESET, user_id=Maya, template_version=v4
- Attempt #1: channel=TELEGRAM, status=SENT then DELIVERED
- ã¡ãŒã«ãSMSã®è©Šè¡ã¯äœãããªãïŒããªã·ãŒïŒæåã®æåã§åæ¢ïŒ
é±ã®åŸåãå¥ã®ããã€ã¹ãã New login ã¢ã©ãŒããåºãŸããMaya ã®ãã°ã€ã³ã¢ã©ãŒãèšå®ã¯ Telegram ã®ã¿ã§ããTelegram ãžéä¿¡ãããšããäžæçãªãšã©ãŒãè¿ããã·ã¹ãã ã¯ããã¯ãªãã§2åå詊è¡ããåŸã« FAILED ãšã忢ããŸãïŒãã®ã¢ã©ãŒãã¿ã€ãã¯ãã©ãŒã«ããã¯äžå¯ïŒã
ããæãMaya ãæ è¡äžã«å¥ã®ãã¹ã¯ãŒããªã»ãããèŠæ±ããŸããTelegram ãéã£ããã60 ç§ä»¥å ã«é éãããªããã° SMS ãã©ãŒã«ããã¯ããèšå®ã§ããSMS ãããã€ããã¿ã€ã ã¢ãŠãããã·ã¹ãã ã¯ã¿ã€ã ã¢ãŠããèšé²ããŠäžåºŠå詊è¡ãã2åç®ã¯æåããŸãããMaya ã¯1ååŸã« SMS ã®ã³ãŒããåãåããŸãã
Maya ããµããŒãã«é£çµ¡ãããšãæ åœã¯ãŠãŒã¶ãŒãšæéçªã§æ€çŽ¢ãã詊è¡å±¥æŽïŒã¿ã€ã ã¹ã¿ã³ãããããã€ãå¿çã³ãŒããå詊è¡åæ°ãæçµçµæãå³åº§ã«ç¢ºèªã§ããŸãã
ã¯ã€ãã¯ãã§ãã¯ãªã¹ãããããã倱æã次ã®ã¹ããã
ãã«ããã£ãã«éç¥ã·ã¹ãã ã¯æ¬¡ã®2ã€ã®è³ªåã«çŽ æ©ãçãããããšéçšã楜ã«ãªããŸãïŒ"ç§ãã¡ã¯æ£ç¢ºã«äœã詊è¡ãããïŒ" ãš "ãã®åŸäœãèµ·ãããïŒ"ããã£ãã«ãã€ãã³ããå¢ããåã«ãã®ãã§ãã¯ãªã¹ãã䜿ã£ãŠãã ããã
ã¯ã€ãã¯ãã§ãã¯ãªã¹ã
- æç¢ºãªã€ãã³ãåãšãªãŒããŒïŒäŸïŒ
invoice.overdue㯠billing ã®ææïŒ - ãã³ãã¬ãŒã倿°ã¯äžåºŠã ãå®çŸ©ïŒå¿ é /ä»»æãããã©ã«ãããã©ãŒãããã«ãŒã«ïŒ
- äºååæããã¹ããŒã¿ã¹ïŒcreatedãqueuedãsentãdeliveredãfailedãsuppressedïŒãšåã¹ããŒã¿ã¹ã®æå³
- å詊è¡äžéãšããã¯ãªãïŒæå€§è©Šè¡åæ°ãééã忢ã«ãŒã«ïŒ
- ä¿æã«ãŒã«ïŒã¡ãã»ãŒãžæ¬æããããã€ãå¿çãã¹ããŒã¿ã¹å±¥æŽãã©ãã ãä¿æãããïŒ
ãã1ã€ã ããããªããsent ãš delivered ã®éããããããããæžãçããŠãã ãããSent ã¯ã·ã¹ãã ãè¡ã£ãããšãDelivered ã¯ãããã€ããå ±åããããšã§ãïŒé å»¶ãæ¬ èœãããåŸãŸãïŒããã®2ã€ãæ··åãããšãµããŒããé¢ä¿è ãæ··ä¹±ãããŸãã
é¿ããã¹ãäžè¬çãªãã¹
- sent ãæåãšèŠãªããŠé ä¿¡çãéå€§å ±åããããš
- ãã£ãã«å¥ãã³ãã¬ãŒããä¹é¢ããŠã¡ãŒã«ãSMSãTelegram ã®å 容ãççŸããããã«æŸçœ®ããããš
- åªçæ§ãªãã«å詊è¡ãããããã€ããã¿ã€ã ã¢ãŠãããåŸã«åçããå Žåã«éè€ãçºçãããããš
- æ°žä¹ ã«å詊è¡ããäžæçãªé害ãéšãããã€ã³ã·ãã³ãã«å€ããããš
- ã念ã®ãããã§å人ããŒã¿ããã°ãã¹ããŒã¿ã¹ã«éå°ã«ä¿åããããš
ãŸãã¯1ã€ã®ã€ãã³ããš1ã€ã®äž»èŠãã£ãã«ã§å§ããäºã€ç®ã®ãã£ãã«ã¯ãã©ãŒã«ããã¯ãšããŠè¿œå ããŠãã ããïŒäžŠåäžæéä¿¡ã§ã¯ãªãïŒããããŒãå®å®ãããã€ãã³ãåäœã§æ¡åŒµãããã³ãã¬ãŒããšå€æ°ãå ±æããŠã¡ãã»ãŒãžã®äžè²«æ§ãä¿ã¡ãŸãããã
ãã³ãã³ãŒãã£ã³ã°ãå šãŠè¡ããã«æ§ç¯ãããå ŽåãAppMaster (appmaster.io) ã¯ã³ã¢éšåã«å®çšçãªé©åã瀺ããŸãïŒData Designer ã§ã€ãã³ãããã³ãã¬ãŒããé 信詊è¡ãã¢ãã«åããBusiness Process Editor ã§ã«ãŒãã£ã³ã°ãšå詊è¡ãå®è£ ããã¡ãŒã«ã»SMSã»Telegram ãçµ±åãã€ã€ã¹ããŒã¿ã¹ãã©ããã³ã°ãäžå åã§ããŸãã


