短信网关协议长短信开发要点
本文本简单介绍cmpp(移动)、sgip(联通)、smgp(电信行业网关)、smpp等种短信协议如何发送长短信。
长短信是指短信内容超过70个字(汉字)的短信,拆分成67个字(汉字)然后提交到短信网关。
cmpp,sgip,smgp如何发送长短信
1,三种协议都需要在短信的内容头部增加6个字节的内容,格式如下:
msgHeader[0]=5;
msgHeader[1]=0;
msgHeader[2]=3;
msgHeader[3]=tp_udhiHead;//从0开始,依次增加,最大256,同一条长短信该值相同
msgHeader[4]=Pk_total;//按67字拆分后总条数
msgHeader[5]=j;//第几条,从1开始
2,针对cmpp和sgip,把TP_pid设置为0,TP_udhi设置为1即可。
3,针对smgp,TP_udhi设置为1,TP_pid设置为0,但需要把这两个值以TLV的格式增加到短信内容后面。
TLV格式:T表示类型,长度2字节;L表示内容的长度,长度2字节;V表示内容,长度由L决定。
设置TP_pid时,T值为1,L值为1,V值为0
设置TP_udhi时,T值为2,L值为1,V值为1
//示例代码,其中ptr