用C#做短信CMPP2.0/3.0协议 支持扩展号支持物理网卡
此程序為中國移動CMPP協議程序接口,適合在中國移動申請了短信發送端口的公司使用。
短信群發已經成為現在軟件系統、網絡營銷等必不可少的應用工具。可應用在短信驗證、信息群發、游戲虛擬商品購買、事件提醒、送祝福等方面。
本程序功能包括:
|
1、支持Cmpp2.0、3.0協議;(只能選其中一種) 2、支持一般的短信發送、上行短信接收、狀態報告; 3、支持長短信,包括下發長短信、上行接收長短信; 4、支持Ms Sql數據庫、MySql數據庫; 5、支持普通手機號和物聯網卡; 6、全套源碼Win服務、全套數據庫源碼; |
開發CMPP協議需要注意的地方或一些經驗:
程序適用于Cmpp3.0、Cmpp2.0協議,可用.Net任何版本編譯。
1.長短信實現方法:
短消息長度超過協議規定的最大長度的時候,可以進行拆分發送。
CMPP協議規定短消息最大長度為140,(DCS非0時)
拆分的消息UDHI字段要置為1表示該消息的內容有頭結構。
針對長消息拆分的頭結構表示如下
050003000401。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
123456
1,表示后面的頭的長度,不包括自身
3,表示頭結構為拆分的連續短消息。
5,表示拆分的總條數
6,表示該條為第幾條。
具體的參見規范。
后面是編碼后的短消息內容。
短消息長度為包括頭結構的長度。
例如一條短消息編碼后如下要拆分成3條
AAAAAABBBBBBCCCCCC
DCS為8
三條分別為:
050003000301004100410041004100410041
050003000302004200420042004200420042
050003000303004300430043004300430043
三條消息的UDHI都為1
2.協議間的差異:
CMPP2.0寫的程序,在CMPP2.1協議下也是可以用的,而且推薦企業向移動申請CMPP2.1協議的短信端口。
因為CMPP2.1比CMPP2.0有一項重大的改進:取消了CMPP_submit消息中群發短信必須設置為不接收狀態報告的限制。
|
1、取消源ISMG”和“目的ISMG”的說法,把用戶歸屬的ISMG簡稱為“歸屬ISMG”,把SP接入的ISMG簡稱為“接入ISMG”,如果“歸屬ISMG”和“接入ISMG”為同一個ISMG,則用“歸屬/接入ISMG”或者“接入/歸屬ISMG”來代稱;但在泛稱時仍可能使用“源ISMG”和“目的ISMG”; 2、明確SP與ISMG之間、ISMG與ISMG之間的連接建議為采用長連接方式; 3、明確SP與ISMG之間的連接方式:SP為客戶端、ISMG為服務器端; 4、取消CMPP_SUBMIT中對短信群發必須在SP不要求狀態報告時的限制; 5、狀態報告中增加了MA:xxxx、MB:xxxx、CA:xxxx、CB:xxxx的狀態值; 6、明確CMPP_FWD消息中的Src_Id和Dest_Id字段的填寫情況,原則上不再允許狀態報告中填寫空值; 7、更新了GNS協議的所有消息,增加了GNS協議相關的系統定義(CommandId、錯誤碼、Route_Id的編號規則); 8、添加了對錯誤碼使用范圍的說明; 9、刪除了原“附錄1 MO狀態報告的產生”,因為MO狀態報告在《移動夢網短信業務信令流程規范》中已經進行詳細的說明; 10、因為要求ISMG對CMPP_SUBMIT中的各字段進行更詳細的判斷,添加了CMPP_SUBMIT_RESP中的返回碼的取值范圍; 11、刪除了原CMPP_FWD中對狀態報告的產生流程的描述,因為這些流程在《移動夢網短信業務信令流程規范》中已經進行了詳細的說明; |
3.CMPP3.0支持物聯網卡通訊
CMPP3.0協議對接收號碼長度擴展至32位,并增加了號碼類型字段。可以支持物聯網卡。
用CMPP3.0協議做物聯網卡通訊時需要注意的問題:請參考我的另一篇博文
物聯網通訊與普通短信通訊的區別和要注意的地方
測試小程序界面:
界面2:
Win服務版:短信Win服務程序+MsSql/MySql數據庫源碼,直接配置好win服務并啟動,自己只需往數據庫里面寫入數據就可以發送短信,接收的短信保存在另一張表中,讀取即可收到上行短信。
模擬網關界面:
CMPP2.0協議文檔 CMPP3.0協議文檔 下載CMPP2.0客戶端 下載CMPP3.0客戶端
同時有提供網關模擬器,抓包工具,長短信實現方法,以及參數如何填寫的實例文檔,使用該代碼的測試小程序源碼。
目前程序已經升級到V5.0版本,性能更加強大穩定。V5.0版演示如下:
下載 : CMPP3.0客戶端V5.0版 CMPP3.0服務端V5.0版 也有2.0的,需要的請聯系。
有償提供與移動聯調服務,承諾幫忙調試通過,并免費贈送源碼。如有需要請聯系 小y QQ(見下方) 請注明來意。
-----------------------------------------------------------------
我做的小程序們
【推薦】Web版短信管理平臺源碼
WinForm版短信管理平臺源碼
移動短信程序源碼Win服務版(CMPP3.0/CMPP2.0協議)
移動物聯網卡短信源碼(CMPP3.0協議,支持MsSql/MySql數據庫)
C#實現聯通短信Sgip協議程序源碼
C#實現電信短信SMGP協議程序源碼
C#實現移動短信CMPP服務端程序源碼
小y的QQ:28657321 (歡迎交流)
總結
以上是生活随笔為你收集整理的用C#做短信CMPP2.0/3.0协议 支持扩展号支持物理网卡的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: tomcat启动分析(2)
- 下一篇: 怎么创建具有真实纹理的CG场景岩石?