ããã«ã¡ã¯ïŒ ã¡ãã»ã³ãžã£ãŒããœãŒã·ã£ã« ãããã¯ãŒã¯ãæ¥ã
åŸæ¥ã®éä¿¡æ¹æ³ã«åã£ãŠä»£ããã€ã€ãããŸãããããã§ã SMS ã®äººæ°ãæãªãããããã§ã¯ãããŸããã 人æ°ã®ãããµã€ãã§ã®èªèšŒããã©ã³ã¶ã¯ã·ã§ã³ã®éç¥ãç¹°ãè¿ããããããã¯çãç¶ããŸãã ãã¹ãŠãã©ã®ããã«æ©èœããã®ãçåã«æã£ãããšã¯ãããŸãã? éåžžã«å€ãã®å ŽåãSMPP ãããã³ã«ã¯å€§éã®ã¡ãã»ãŒãžãéä¿¡ããããã«äœ¿çšãããŸãããããã«ã€ããŠã¯åŸã§èª¬æããŸãã
smpp ã«é¢ããããã¬ã®èšäºã¯ãã§ã«ãããŸãããã
SMPP ãããã³ã«ã¯ããã¢ããŒãã¢ã®ã¡ãã»ãŒãžã³ã° ãããã³ã«ã§ãã ããã¯ãåãã¢/ãã ãµãŒããŒãåçã®æš©éãæã£ãŠããããšãæå³ããŸãã æãåçŽãªã±ãŒã¹ã§ã¯ãSMS ã¡ãã»ãŒãžã³ã° ã¹ããŒã ã¯æ¬¡ã®ããã«ãªããŸãã
ãã ããåœå
éä¿¡äºæ¥è
ãé éå°ãžã®ã«ãŒããæã£ãŠããªãå Žåã¯ã仲ä»æ¥è
ã§ãã SMS ããã«åãåãããŸãã å Žåã«ãã£ãŠã¯ãXNUMX ã€ã® SMS ãéä¿¡ããããã«ãè€æ°ã®åœãããã«ã¯å€§éžéã§ãã§ãŒã³ãæ§ç¯ããå¿
èŠããããŸãã
ãããã³ã«ã«ã€ããŠ
SMPP ã¯ãPDU 亀æã«åºã¥ãã¢ããªã±ãŒã·ã§ã³å±€ãããã³ã«ã§ãããTCP/IPããŸã㯠SMS ããã³ ussd ã¡ãã»ãŒãžãéä¿¡ããããã® X25 ã»ãã·ã§ã³ãä»ããŠéä¿¡ãããŸãã éåžžãSMPP ã¯æ°žç¶ã¢ãŒãã§äœ¿çšããããããæéãç¯çŽã§ããŸãã SMPP ã¯ã¯ã©ã€ã¢ã³ã/ãµãŒããŒéä¿¡ã¢ãã«ã䜿çšããŸãã
РежОЌÑвÑзО
SMPP ãä»ããéä¿¡è
ãš SMS ã»ã³ã¿ãŒéã®ã¡ãã»ãŒãžã®äº€æã¯ã次ã®ã¢ãŒãã§å®è¡ã§ããŸãã
éä¿¡æ© (éä¿¡æ©) - ã¡ãã»ãŒãžãäžåºŠã« XNUMX ã€ãã€äžæ¹åã«éä¿¡ããŸãã
åä¿¡è
- SMS ã»ã³ã¿ãŒããã®ã¡ãã»ãŒãžã®ã¿ãåä¿¡ããŸãã
ãã©ã³ã·ãŒã㌠(ãã©ã³ã·ãŒããŒ) - SMS ã»ã³ã¿ãŒãšãŠãŒã¶ãŒéã®ã¡ãã»ãŒãžã®äº€æ
æ§é
ã¡ãã»ãŒãžã®é·ã
70 ã€ã® SMS ã¡ãã»ãŒãžã«ã¯ãããªã«æåã§å ¥åããå Žå㯠157 æåãã©ãã³æå 3 æå + 153 UDH 以å ãå«ããããšãã§ããŸããæåæ°ãå€ã SMS ãéä¿¡ããå Žåãã¡ãã»ãŒãžã¯ããã€ãã®ã»ã°ã¡ã³ãã«åå²ãããåä¿¡ããã€ã¹ã§çµåãããŸãã ã»ã°ã¡ã³ããŒã·ã§ã³ã®å Žåãã¡ãã»ãŒãžã®äžéšã瀺ãã¡ãã»ãŒãž ããããŒã«ãã£ãŠæåæ°ãåæžãããŸãã ãããã£ãŠã倧ã㪠SMS ã¡ãã»ãŒãžãéä¿¡ããå Žåãã¡ãã»ãŒãžã«ã¯æ倧 67 åã®ã©ãã³æåãŸã㯠XNUMX åã®éå®åæåãå«ãŸããŸãã
ããŒã¿ã³ãŒãã£ã³ã°ã¹ããŒã
ãã ããã·ã³ãã«ã¯ã¡ãã»ãŒãžãäŒããããã«ãšã³ã³ãŒããå¿ èŠã§ãã SMPP ãããã³ã«ã§ã¯ãç¹å¥ãªãã£ãŒã«ãããšã³ã³ãŒããæ åœããŸã (ããŒã¿ ã³ãŒãã£ã³ã° ã¹ããŒã (DCS))ã ããã¯ãã¡ãã»ãŒãžãã©ã®ããã«èªèããããæå®ãããã£ãŒã«ãã§ãã ããã«ãDCS ãã£ãŒã«ãã«ã¯æ¬¡ã®ãã®ãå«ãŸããŸãã
- ãšã³ã³ãŒãã£ã³ã°ãå®çŸ©ããæåã»ããã
- ã¡ãã»ãŒãžã¯ã©ã¹ã
- é²èŠ§åŸã®èªååé€ãªã¯ãšã¹ãã
- ã¡ãã»ãŒãžå§çž®ã®ææšã
- ãããŒããã£ã¹ãã¡ãã»ãŒãžèšèªã
æšæºã® 7 ããã ã¢ã«ãã¡ããã (GSM 03.38)ã GSM ã¡ãã»ãŒãžã³ã° ã·ã¹ãã çšã«éçºãããŸããã ãã®ãšã³ã³ãŒãã£ã³ã°ã¯ãè±èªããã³å€ãã®ã©ãã³èªã«é©ããŠããŸãã åæå㯠7 ãããã§æ§æããããªã¯ãããã«ãšã³ã³ãŒããããŸãã
UTF-16 (GSM UCS2) 7 ããã ã¢ã«ãã¡ãããã§æ¬ èœããŠããæåãå«ããããã«ãã¡ãã»ãŒãž ãµã€ãºã 16 ãã 160 ã«æžããããšã§æå (ããªã«æåãå«ã) ãè¿œå ãã UTF-70 ãšã³ã³ãŒãã£ã³ã°ãéçºãããŸããããã®ã¿ã€ãã®ãšã³ã³ãŒãã£ã³ã°ã¯ãã»ãšãã©ã®å Žåã Unicode ãå®å šã«è€è£œããŸãã
8 ãããã®ãŠãŒã¶ãŒå®çŸ©ããŒã¿ã ãããã«ã¯ãKOI8-R ã Windows-1251 ãå«ãŸããŸãã ãã ãããã®ãœãªã¥ãŒã·ã§ã³ã¯åã UTF-16 ãšæ¯èŒãããšçµæžçã§ããããã«èŠããŸãã ããŸããŸãªããã€ã¹ã§ã®äºææ§ã«ã€ããŠåœç¶ã®çåãçããŸãã ãã®å Žåãäž¡æ¹ã®ããã€ã¹ãäºåã«æ§æããå¿ èŠãããããã§ãã
ã¡ãã»ãŒãžã¯ã©ã¹
- Class0 (ãã©ãã·ã¥) ã¡ãã»ãŒãžã¯ããŠãŒã¶ãŒã®èŠæ±ã«å¿ããŠé»è©±æ©ã®ã¡ã¢ãªã«ä¿åãããŸãã
- Class1ããŸãã¯é»è©±æ©ã®ã¡ã¢ãªã«ä¿åãããŠããã¯ã©ã¹ã
- Class1ããŸãã¯é»è©±æ©ã®ã¡ã¢ãªã«ä¿åãããŠããã¯ã©ã¹ã
- Class2 ã¯ãã¡ãã»ãŒãžãã¢ãã€ã«ç«¯æ«ã®ã¡ã¢ãªã«ä¿åãããŠããããšã確èªããå¿ èŠããããŸããããã§ãªãå Žåã¯ãä¿åã§ããªãããšã SMS ã»ã³ã¿ãŒã«èŠåããå¿ èŠããããŸãã
- Class3 - ãã®å Žåãé»è©±æ©ã¯ãããã€ã¹ã®ã¡ã¢ãªéã«é¢ä¿ãªããã¡ãã»ãŒãžãä¿åã§ãããšããéç¥ãéä¿¡ããå¿ èŠããããŸãã ãã®ã¿ã€ãã®ã¡ãã»ãŒãžã¯ãã¡ãã»ãŒãžãåä¿¡è ã«å±ããããšãæå³ããŸãã
ã¡ãã»ãŒãžã®çš®é¡
ãµã€ã¬ã³ã ã¡ãã»ãŒãž (SMS0) å 容ã®ãªã SMS ã¡ãã»ãŒãžã®ã¿ã€ãã ãã® SMS ã¯éç¥ãªãã§åä¿¡ãããããã€ã¹ã®ç»é¢ã«ã¯è¡šç€ºãããŸããã
PDU
å pdu æäœã¯ãã¢ã«ãªã£ãŠãããèŠæ±ãšå¿çã§æ§æãããŸãã äŸ: æ¥ç¶ã確ç«ãããããšã瀺ãã³ãã³ã (bind_transmitter / binding_transmitter_resp)ããŸãã¯ã¡ãã»ãŒãžãéä¿¡ãããããšã瀺ãã³ãã³ã (deliver_sm /Deliver_sm_resp)
å pdu ãã±ããã¯ãããããŒãšããã£ã® XNUMX ã€ã®éšåã§æ§æãããŸãã ããããŒæ§é ã¯ã©ã® pdu ãã±ããã§ãåãã§ããã³ãã³ãé·ã¯ãã±ããã®é·ããid ã¯ãã±ããã®ååãã¹ããŒã¿ã¹ ã³ãã³ãã¯ã¡ãã»ãŒãžãæ£åžžã«éä¿¡ãããããšã©ãŒãçºçãããã瀺ããŸãã
è¿œå ã® TLV ãã©ã¡ãŒã¿
TLV (ã¿ã°é·å€)ããŸãã¯è¿œå ã®ãã£ãŒã«ãã ãã®ãããªãã©ã¡ãŒã¿ã¯ãããã³ã«ã®æ©èœãæ¡åŒµããããã«äœ¿çšãããå¿ é ã§ã¯ãããŸããã ãã®ãã£ãŒã«ãã¯ãpdu ãã£ãŒã«ãã®æåŸã«è¡šç€ºãããŸãã ããšãã°ãTLV dest_addr_np_information ã䜿çšãããšãçªå·ã®ç§»æ€æ§ã«é¢ããæ å ±ã®éä¿¡ãæŽçã§ããŸãã
ãã³ãšã³ã
TON (Type of Number) ãã©ã¡ãŒã¿ã¯ãSMSC ã«ã¢ãã¬ã¹æå®åœ¢åŒãšãããã¯ãŒã¯ ã¿ã€ããéç¥ããŸãã
çªå·èšç»ã瀺ã NPI (Numbering Plan Identification) ãã©ã¡ãŒã¿ã
ã¡ãã»ãŒãžéä¿¡å ã¢ãã¬ã¹ãŸãã¯ã¢ã«ãã¡å
æºåž¯é»è©±ã«éä¿¡ãããã¡ãã»ãŒãžã«ã¯ãããžã¿ã«ãšã¢ã«ãã¡ãããã® XNUMX çš®é¡ããããŸãã ããžã¿ã«çªå·ã¯ïŒé»è©±çªå·ãšåæ§ã«ïŒé·ãå Žåãããã°ãçãå ŽåããããŸãã å Žåã«ãã£ãŠã¯ããªãã¬ãŒã¿ãŒããInfosmsãAlert ãªã©ã®äžç«çãªååããã®éä¿¡ã«å¶éãèšããŠããå ŽåããããŸãã ååããããã¯ãŒã¯ã«ç»é²ãããŠããªãå Žåãéä¿¡äºæ¥è ããã©ãã£ãã¯ãèš±å¯ããªãå ŽåããããŸãã ãã ãããããã¯ããããªãã¬ãŒã¿ã®ç¹æ§ã§ãã
æåºæ®µé
SMSéä¿¡ - ãã㯠MO FSM ã¡ãã»ãŒãž (ã¢ãã€ã«ç«¯æ«ããã®ã·ã§ãŒã ã¡ãã»ãŒãž) ãéä¿¡ããŠããŸãã
SMSéä¿¡ã¬ããŒã â ã¡ãã»ãŒãžã SMSC ã«ãã£ãŠéä¿¡ãããããšã®ç¢ºèª
SRISM (SendRoutingInfo) - SMSC ã¯ãå å
¥è
ã® MSC / VLR ã®äœçœ®ã«é¢ããæ
å ±ã HLR ããåä¿¡ããŸãã
SRI SM ã¬ã¹ã㌠â å å
¥è
ããžã·ã§ã³ã«é¢ããHLRããã®è¿ç
MT-FSM â äœçœ®æ
å ±ãåä¿¡ããåŸããã·ã§ãŒãã¡ãã»ãŒãžã®è»¢éãæäœã䜿çšããŠã¡ãã»ãŒãžãéä¿¡ãããŸãã
MT-FSM ACK â ã¡ãã»ãŒãžãéä¿¡ãããããšã瀺ã SMSC ããã®å¿ç
SMSã¹ããŒã¿ã¹ã¬ããŒã â SMSC ã¯ã¡ãã»ãŒãžé
ä¿¡ã¹ããŒã¿ã¹ãéä¿¡ããŸãã
ã¡ãã»ãŒãžé ä¿¡ã¹ããŒã¿ã¹
SMSã¹ããŒã¿ã¹ã¬ããŒã ããã€ãã®å€ãåãããšãã§ããŸãã
é
é ã¡ãã»ãŒãžã¯æ£åžžã«é
ä¿¡ãããŸãã
æåŠããã â SMS ã»ã³ã¿ãŒã«ãã£ãŠã¡ãã»ãŒãžãæåŠãããŸãã
æéåã â ã¡ãã»ãŒãžã¯ãTTL (ã¡ãã»ãŒãžã®æå¹æé) ã®çµäºåŸã«éä¿¡ãã¥ãŒããåé€ãããŸãã
æªé
é - ãã®ä»ã®äžçã®å Žå
UNKNOWNã»çºéã«é¢ããŠã¯è¿çããããŸããã
転éãšã©ãŒ
å Žåã«ãã£ãŠã¯ãSMS ã¡ãã»ãŒãžãå å ¥è ã«é ä¿¡ãããªãçç±ããããŸãã ãããã®çç±ã«ããããšã©ãŒãçºçããŸãã ãšã©ãŒã¯ PDUs_sms_resp ã«è¿ãããŸãã ãã¹ãŠã®ãšã©ãŒã¯ãäžæç (Temporary) ãšæ°žç¶ç (Permanent) ã«åé¡ã§ããŸãã
ããšãã°ãabsent_subscriber ã¯ãäžæç (ãµãã¹ã¯ã©ã€ããå©çšã§ããªãããªã³ã©ã€ã³ã§ã¯ãªã) ãšæ°žç¶ç (ãµãã¹ã¯ã©ã€ããååšããªã) ã«åé¡ã§ããŸãã çºçãããšã©ãŒã«å¿ããŠããããã®ã¡ãã»ãŒãžãåéä¿¡ããããã®ããªã·ãŒã圢æãããŸãã
ããšãã°ãå å
¥è
ãé話äžã§ããããMT ãã³ãã»ããã話äžã§ãããšãããšã©ãŒãåä¿¡ããå Žåãã¡ãã»ãŒãžã¯æ°ååŸã«åéä¿¡ã§ããŸãããå å
¥è
ã®ã¡ãã»ãŒãžåä¿¡ãµãŒãã¹ããããã¯ãããŠããå Žåã¯ãåéä¿¡ããŠãæå³ããããŸããã ããšãã°ãSMSC ããŒãžã§ãšã©ãŒã®ãªã¹ããèŠã€ããããšãã§ããŸãã
åºæïŒ habr.com