




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
短信业务流程分析
2022/12/10
短信业务流程分析
2022/12/8短信业务介绍SMS(ShortMessagingService,短消息服务)是一种使得移动设备可以发送和接收文本信息的技术SMS采用存储转发模式—短消息被发送出去之后,不是直接发送给接收方,而是先存储在SMSC(短消息中心),然后再由SMSC将短消息转发给接收方如果接收方当时关机或不在服务区内,SMSC就会自动保存该短消息,等到接收方在服务区出现的时候再发送给他2022/12/10短信业务介绍SMS(ShortMessagingServ短信的PDU格式(1/3)发送点对点(Point-to-Point)短信常用两种模式,PDU(ProtocolDataUnit,协议数据单元)模式和文本(Text)模式使用Text模式发送短信代码简单,实现容易,但是最大缺点是不能收发中文短信PDU模式不仅支持中文短信,也能发送英文短信PDU模式收发短信可以使用三种编码方式:7-bit、8-bit和UCS2编码2022/12/10短信的PDU格式(1/3)发送点对点(Point-to-Po短信的PDU格式(2/3)短信的PDU格式是基于AT指令实现的,与短信相关的AT指令如下表所示:AT指令
功能
AT+CMGCSendanSMScommand(发出一条短消息命令)AT+CMGDDeleteSMSmessage(删除SIM卡内存的短消息)AT+CMGFSelectSMSmessageformat(选择短消息信息格式:0-PDU;1-文本)AT+CMGLListSMSmessagefrompreferredstore(列出SIM卡中的短消息信息格式PDU/text:0/"RECUNREAD"为未读,1/“RECREAD”为已读,2/“STOUNSENT”为待发,3/“STOSENT”为已发,4/“ALL”为全部的)AT+CMGRReadSMSmessage(读短消息)AT+CMGSSendSMSmessage(发送短消息)AT+CMGWWriteSMSmessagetomemory(向SIM内存中写入待发的短消息)AT+CMGSSendSMSmessagefromstorage(从SIM内存中发送短消息)AT+CNMINewSMSmessageindication(显示新收到的短消息)AT+CPMSPreferredSMSmessagestorage(选择短消息内存)AT+CSCASMSservicecenteraddress(短消息中心地址)AT+CSCBSelectcellbroadcastmessagemessages(选择蜂窝广播消息)AT+CSMPSetSMStextmodeparameters(设置短消息文本模式参数)AT+CSMPSelectMessageService(选择短消息服务)2022/12/10短信的PDU格式(2/3)短信的PDU格式是基于AT指令实现短信的PDU格式(3/3)一般PDU的编码由A~M13项组成:A.短信中心地址长度,2位十六进制数(1字节)B.短信中心号码类型,2位十六进制数C.短信中心号码,B+C的长度由A决定D.文件头字节,2位十六进制数E.信息类型,2位十六进制数F.被叫号码长度,2位十六进制数G.被叫号码类型,2位十六进制数,取值同BH.被叫号码,长度由F决定I.协议标识,2位十六进制数J.数据编码方案,2位十六进制数K.短信息有效期,2位十六进制数L.用户数据长度,2位十六进制数M.用户数据,长度由L决定2022/12/10短信的PDU格式(3/3)一般PDU的编码由A~M13项组成短信的PDU编码举例(1/4)假如我要发送下面的短信:接收号码:+8613602433649短信内容:工作愉快!短信中心号码:+8613800200500短信中心号码处理:用字符串addr表示
1、将短信息中心号码去掉+号,看看长度是否为偶数,如果不是,最后添加F
即addr="+8613800200500"
=>addr="8613800200500F“2、将奇数位和偶数位交换。
=>addr=“683108200005F0”—经过移位处理的短信中心号码3、将短信息中心号码前面加上字符91,91是国际化的意思
=>addr=“91683108200005F0”—91为短信中心号码类型4、算出addr长度,结果除2,格式化成2位的16进制字符串,16/2=8=>"08"
=>addr="0891683108200005F0"—08为短信中心号码长度
2022/12/10短信的PDU编码举例(1/4)假如我要发送下面的短信:短信中短信的PDU编码举例(2/4)手机号码处理:用字符串phone
1、将手机号码去掉+号,看看长度是否为偶数,如果不是,最后添加F
即phone="+8613602433649"
=>phone="8613602433649F“2、将手机号码奇数位和偶数位交换。
=>phone="683106423346F9"—经过移位处理的接收方号码短信息部分处理:用字符串msg表示1、将字符串转换为Unicode代码,例如“工作愉快!”的unicode代码为5DE54F5C61095FEBFF01,
(转换函数见最后附录)2、将msg长度除2,保留两位16进制数,即5DE54F5C61095FEBFF01=20/2=>"0A",再加上msg
=>msg="0A5DE54F5C61095FEBFF01"2022/12/10短信的PDU编码举例(2/4)手机号码处理:用字符串pho短信的PDU编码举例(3/4)组合1、手机号码前加上字符串11000D91(1100:固定,0D:手机号码的长度,不算+号,十六进制表示,91:发送到手机为91,发送到小灵通为81),
即phone=“11000D91”+phone
=>11000D91683106423346F9—0D为接收方号码长度2、手机号码后加上000800和刚才的短信息内容
即phone=phone+"000800"+msg
即11000D91683106423346F9+000800+0A5DE54F5C61095FEBFF01
=>phone=11000D91683106423346F90008000A5DE54F5C61095FEBFF013、phone长度除以2,格式化成2位的十进制数
即11000D91683106423346F90008000A5DE54F5C61095FEBFF01=>50位/2=>250D—接收方号码长度91—接收方号码类型683106423346F9—经过移位处理的接收方号码000800—用户数据编码方案,08为16位编码,04为8位编码,00为7位编码0A—短消息长度5DE54F5C61095FEBFF01—短消息内容2022/12/10短信的PDU编码举例(3/4)组合2022/12/8短信的PDU编码举例(4/4)要发送的内容为AT+CMGF=0<回车>
OK
AT+CMGS=25<回车>
>addr+phone<Ctrl+Z发送>
Photosi-ModeWAPTonesTextVideoIVRGamesWi-FiPaymenteMailWebLocationVoice2022/12/10短信的PDU编码举例(4/4)要发送的内容为Photosi-短信的编码方式短信有三种编码方式:7-bit、8-bit、UCS27-bit编码用于发送普通的ASCII字符,它可以发送最多160个非中文字符8-bit编码通常用于发送数据消息,比如图片和铃声等,使用8-bit编码最多可以发送140个字符,通常无法直接通过手机显示UCS2编码用于发送Unicode字符(中文汉字),使用UCS2编码时,无论英文还是中文,最多发送70个字符,可以被大多数的手机所显示2022/12/10短信的编码方式短信有三种编码方式:7-bit、8-bit、U超长短信的处理超长短信就是将超过70字的短信分成几条进行发送,如:要发送200字的短信,在手机里会将其分成3条短信来发,支持超长短信的手机在接收该条短信时会将3条短信合成为一条,而不支持超长短信的手机则接收3条。手机最多可以合并多少条短信要根据手机短信支持的最大字节数。发送超长短信,需要做两件事情:设置TP_udhi的值设置为1,在消息正文中增加协议头。协议头可以两种格式,分别是长度为6和长度为7的协议头2022/12/10超长短信的处理超长短信就是将超过70字的短信分成几条进行发送超长短信的处理–6位协议头格式byte1:05,表示剩余协议头的长度byte2:00,这个值在GSM03.40规范4.1中规定,表示随后的这批超长短信的标识位长度为1(格式中的XX值)。byte3:03,这个值表示剩下短信标识的长度byte4:XX,这批短信的唯一标志,事实上,SME(手机或者SP)把消息合并完之后,就重新记录,所以这个标志是否唯一并不是很重要。byte5:MM,这批短信的数量。如果一个超长短信总共5条,这里的值就是5。byte6:NN,这批短信的数量。如果当前短信是这批短信中的第一条的值是1,第二条的值是2。例如:0500033902012022/12/10超长短信的处理–6位协议头格式byte1:05,超长短信的处理–7位协议头格式byte1:06,表示剩余协议头的长度byte2:08,这个值在GSM03.40规范4.1中规定,表示随后的这批超长短信的标识位长度为2(格式中的XX值)。byte3:04,这个值表示剩下短信标识的长度byte4-5:XXXX,这批短信的唯一标志,事实上,SME(手机或者SP)把消息合并完之后,就重新记录,所以这个标志是否唯一并不是很重要。byte6:MM,这批短信的数量。如果一个超长短信总共5条,这里的值就是5。byte7:NN,这批短信的数量。如果当前短信是这批短信中的第一条的值是1,第二条的值是2。例如:060804003902012022/12/10超长短信的处理–7位协议头格式byte1:06,短信业务流程2022/12/10短信业务流程2022/12/8短信业务流程
–手机终端发送短消息在无线信令链路上将SMSC的电话号码,被叫用户号码,短消息的内容等信息通过移动基站(BTS)发送到拜访的MSC/VLR内
MSC/VLR根据VLR内存储的用户数据检查用户是否具有短消息业务功能
再根据SMSC的电话号码,将短消息路由到SMS关口站(SMS-GMSC/SMS-IWMSC)由SMS关口站送到SMSC内,由SMSC暂时贮存起来SMSC收到短消息后会向MT回送短消息已发送成功的确认信息。
2022/12/10短信业务流程–手机终端发送短消息在无线信令链路上将SMS短信业务流程
–手机终端接收短消息SMSC把包含短消息内容、原发者的识别符号等信息的消息传给与中心相连的关口站,关口站根据被叫用户的MSISDN号向相关的HLR查询(HLR-ENQ)HLR将查询结果送给关口站,查询结果消息中包含了被叫用户正拜访的MSC/VLR的7号信令地址的MAP/CSENDROUTINGINFOFORSHORTMESSAGERESULT消息报文关口站用该地址消息向被叫用户拜访的MSC/VLR传递消息,再由MSC建立必要的信令连接后将短消息传递给MT
传送的消息如没有确认,SMSC在一段时间内可以将其保存,一旦用户恢复与网络的联系,短消息可由SMSC立即传送给用户。2022/12/10短信业务流程–手机终端接收短消息SMSC把包含短消息内容
问题总结用户手机设置错误导致发送SMS失败,例如:设置了错误的短信中心号码、SIM卡不具有短消息功能等无线传输问题导致的发送时延过大或发送失败,例如信道拥塞MSC/VLR到SMS-GMSC/SMS-IWMSC、SMS-GMSC/SMS-IWMSC到SMSC这两段时延,可能导致发送时延过大在HRL中查找不到接收方手机的信息,接收方出于不可及的状态,导致信息暂时无法被接收,暂时保存在SMSC中接收SMS过程中,SMS-GMSC/SMS-IWMSC到MSC/VLR、MSC/VLR到MT这两段时延,可能导致发送时延过大
2022/12/10问题总结用户手机设置错误导致发送SMS失败,例如:设置了错
TheArgogrouplogo,‘QualityofeXPerience’,“TestinAnger,DeployinPeace.”,QXP,DeviceMasterandMonitorMasteraretrademarksofArgoInteractiveLtd.UbiquinoX®andArgogroup®areregisteredtrademarksofArgoInteractiveLtd.Ifyoudon’ttestinanger,youruserswill!
TestinAnger.
DeployinPeace.™It’sauserthingTM2022/12/10
TheArgogrouplogo,‘Quality
短信业务流程分析
2022/12/10
短信业务流程分析
2022/12/8短信业务介绍SMS(ShortMessagingService,短消息服务)是一种使得移动设备可以发送和接收文本信息的技术SMS采用存储转发模式—短消息被发送出去之后,不是直接发送给接收方,而是先存储在SMSC(短消息中心),然后再由SMSC将短消息转发给接收方如果接收方当时关机或不在服务区内,SMSC就会自动保存该短消息,等到接收方在服务区出现的时候再发送给他2022/12/10短信业务介绍SMS(ShortMessagingServ短信的PDU格式(1/3)发送点对点(Point-to-Point)短信常用两种模式,PDU(ProtocolDataUnit,协议数据单元)模式和文本(Text)模式使用Text模式发送短信代码简单,实现容易,但是最大缺点是不能收发中文短信PDU模式不仅支持中文短信,也能发送英文短信PDU模式收发短信可以使用三种编码方式:7-bit、8-bit和UCS2编码2022/12/10短信的PDU格式(1/3)发送点对点(Point-to-Po短信的PDU格式(2/3)短信的PDU格式是基于AT指令实现的,与短信相关的AT指令如下表所示:AT指令
功能
AT+CMGCSendanSMScommand(发出一条短消息命令)AT+CMGDDeleteSMSmessage(删除SIM卡内存的短消息)AT+CMGFSelectSMSmessageformat(选择短消息信息格式:0-PDU;1-文本)AT+CMGLListSMSmessagefrompreferredstore(列出SIM卡中的短消息信息格式PDU/text:0/"RECUNREAD"为未读,1/“RECREAD”为已读,2/“STOUNSENT”为待发,3/“STOSENT”为已发,4/“ALL”为全部的)AT+CMGRReadSMSmessage(读短消息)AT+CMGSSendSMSmessage(发送短消息)AT+CMGWWriteSMSmessagetomemory(向SIM内存中写入待发的短消息)AT+CMGSSendSMSmessagefromstorage(从SIM内存中发送短消息)AT+CNMINewSMSmessageindication(显示新收到的短消息)AT+CPMSPreferredSMSmessagestorage(选择短消息内存)AT+CSCASMSservicecenteraddress(短消息中心地址)AT+CSCBSelectcellbroadcastmessagemessages(选择蜂窝广播消息)AT+CSMPSetSMStextmodeparameters(设置短消息文本模式参数)AT+CSMPSelectMessageService(选择短消息服务)2022/12/10短信的PDU格式(2/3)短信的PDU格式是基于AT指令实现短信的PDU格式(3/3)一般PDU的编码由A~M13项组成:A.短信中心地址长度,2位十六进制数(1字节)B.短信中心号码类型,2位十六进制数C.短信中心号码,B+C的长度由A决定D.文件头字节,2位十六进制数E.信息类型,2位十六进制数F.被叫号码长度,2位十六进制数G.被叫号码类型,2位十六进制数,取值同BH.被叫号码,长度由F决定I.协议标识,2位十六进制数J.数据编码方案,2位十六进制数K.短信息有效期,2位十六进制数L.用户数据长度,2位十六进制数M.用户数据,长度由L决定2022/12/10短信的PDU格式(3/3)一般PDU的编码由A~M13项组成短信的PDU编码举例(1/4)假如我要发送下面的短信:接收号码:+8613602433649短信内容:工作愉快!短信中心号码:+8613800200500短信中心号码处理:用字符串addr表示
1、将短信息中心号码去掉+号,看看长度是否为偶数,如果不是,最后添加F
即addr="+8613800200500"
=>addr="8613800200500F“2、将奇数位和偶数位交换。
=>addr=“683108200005F0”—经过移位处理的短信中心号码3、将短信息中心号码前面加上字符91,91是国际化的意思
=>addr=“91683108200005F0”—91为短信中心号码类型4、算出addr长度,结果除2,格式化成2位的16进制字符串,16/2=8=>"08"
=>addr="0891683108200005F0"—08为短信中心号码长度
2022/12/10短信的PDU编码举例(1/4)假如我要发送下面的短信:短信中短信的PDU编码举例(2/4)手机号码处理:用字符串phone
1、将手机号码去掉+号,看看长度是否为偶数,如果不是,最后添加F
即phone="+8613602433649"
=>phone="8613602433649F“2、将手机号码奇数位和偶数位交换。
=>phone="683106423346F9"—经过移位处理的接收方号码短信息部分处理:用字符串msg表示1、将字符串转换为Unicode代码,例如“工作愉快!”的unicode代码为5DE54F5C61095FEBFF01,
(转换函数见最后附录)2、将msg长度除2,保留两位16进制数,即5DE54F5C61095FEBFF01=20/2=>"0A",再加上msg
=>msg="0A5DE54F5C61095FEBFF01"2022/12/10短信的PDU编码举例(2/4)手机号码处理:用字符串pho短信的PDU编码举例(3/4)组合1、手机号码前加上字符串11000D91(1100:固定,0D:手机号码的长度,不算+号,十六进制表示,91:发送到手机为91,发送到小灵通为81),
即phone=“11000D91”+phone
=>11000D91683106423346F9—0D为接收方号码长度2、手机号码后加上000800和刚才的短信息内容
即phone=phone+"000800"+msg
即11000D91683106423346F9+000800+0A5DE54F5C61095FEBFF01
=>phone=11000D91683106423346F90008000A5DE54F5C61095FEBFF013、phone长度除以2,格式化成2位的十进制数
即11000D91683106423346F90008000A5DE54F5C61095FEBFF01=>50位/2=>250D—接收方号码长度91—接收方号码类型683106423346F9—经过移位处理的接收方号码000800—用户数据编码方案,08为16位编码,04为8位编码,00为7位编码0A—短消息长度5DE54F5C61095FEBFF01—短消息内容2022/12/10短信的PDU编码举例(3/4)组合2022/12/8短信的PDU编码举例(4/4)要发送的内容为AT+CMGF=0<回车>
OK
AT+CMGS=25<回车>
>addr+phone<Ctrl+Z发送>
Photosi-ModeWAPTonesTextVideoIVRGamesWi-FiPaymenteMailWebLocationVoice2022/12/10短信的PDU编码举例(4/4)要发送的内容为Photosi-短信的编码方式短信有三种编码方式:7-bit、8-bit、UCS27-bit编码用于发送普通的ASCII字符,它可以发送最多160个非中文字符8-bit编码通常用于发送数据消息,比如图片和铃声等,使用8-bit编码最多可以发送140个字符,通常无法直接通过手机显示UCS2编码用于发送Unicode字符(中文汉字),使用UCS2编码时,无论英文还是中文,最多发送70个字符,可以被大多数的手机所显示2022/12/10短信的编码方式短信有三种编码方式:7-bit、8-bit、U超长短信的处理超长短信就是将超过70字的短信分成几条进行发送,如:要发送200字的短信,在手机里会将其分成3条短信来发,支持超长短信的手机在接收该条短信时会将3条短信合成为一条,而不支持超长短信的手机则接收3条。手机最多可以合并多少条短信要根据手机短信支持的最大字节数。发送超长短信,需要做两件事情:设置TP_udhi的值设置为1,在消息正文中增加协议头。协议头可以两种格式,分别是长度为6和长度为7的协议头2022/12/10超长短信的处理超长短信就是将超过70字的短信分成几条进行发送超长短信的处理–6位协议头格式byte1:05,表示剩余协议头的长度byte2:00,这个值在GSM03.40规范4.1中规定,表示随后的这批超长短信的标识位长度为1(格式中的XX值)。byte3:03,这个值表示剩下短信标识的长度byte4:XX,这批短信的唯一标志,事实上,SME(手机或者SP)把消息合并完之后,就重新记录,所以这个标志是否唯一并不是很重要。byte5:MM,这批短信的数量。如果一个超长短信总共5条,这里的值就是5。byte6:NN,这批短信的数量。如果当前短信是这批短信中的第一条的值是1,第二条的值是2。例如:0500033902012022/12/10超长短信的处理–6位协议头格式byte1:05,超长短信的处理–7位协议头格式byte1:06,表示剩余协议头的长度byte2:08,这个值在GSM03.40规范4.1中规定,表示随后的这批超长短信的标识位长度为2(格式中的XX值)。byte3:04,这个值表示剩下短信标识的长度byte4-5:XXXX,这批短信的唯一标志,事实上,SME(手机或者SP)把消息合并完之后,就重新记录,所以这个标志是否唯一并不是很重要。byte6:MM,这批短信的数量。如果一个超长短信总共5条,这里的值就是5。byte7:NN,这批短信的数量。如果当前短信是这批短信中的第一条的值是1,第二条的值是2。例如:060804003902012022/12/10超长短信的处理–7位协议头格式byte1:06,短信业务流程2022/12/10短信业务流程2022/12/8短信业务流程
–手机终端发送短消息在无线信令链路上将SMSC的电话号码,被叫用户号码,短消息的内容等信息通过移动基站(BTS)发送到拜访的MSC/VLR内
MSC/VLR根据VLR内存储的用户数据检查用户是否具有短消息业务功能
再根据SMSC的电话号码,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农村土地简易承包3篇
- 孩子抚养协议书范文3篇
- 建筑劳务分包合同样本3篇
- 成功签订采购合同的技巧3篇
- 办理土地证委托书范本的意义3篇
- 企业劳务外包合同3篇
- 体检结果证明3篇
- 安全请假责任书3篇
- 商铺合同终止协议书版3篇
- 廉政协议招投标智慧3篇
- 理综答题“秘诀”课件
- 中学生的人际交往主题班会
- 高一下学期期中家长会课件(28张PPT)
- 【大学语文-精】管晏列传课件
- DB4413-T 19-2020《惠州市建筑二次供水工程设计、施工及验收规范》-(高清现行)
- 不间断电源装置(UPS)试验及运行质量检查表
- 医院第一季度全成本核算分析报告
- Rational-Rose-用例图、顺序图、活动图、类图、状态机图-实例
- 《马说》-教学设计【教学参考】
- 华为智慧园区解决方案
- 世界银行集团简介课件(PPT 48页)
评论
0/150
提交评论