中国移动短信网关CMPP3.0 C#源代码:使用示例

转载 2006年06月07日 09:10:00
Using Tiray.SMS
...

Tiray.SMS.CMPP30 m_CMPP=new Tiray.SMS.CMPP30();
...

//启动CMPP
m_CMPP=new CMPP30(txt_CMUserName.Text.Trim(),txt_CMPassword.Text.Trim(),txt_CMServerAddress.Text.Trim(),Convert.ToInt32(txt_CMServerPort.Text.Trim()));
m_CMPP.SMSStateChanged+=new SMSEventHandler(OnCMPP);//定义事件处理函数
m_CMPP.StartThread();
...

//终止CMPP
m_CMPP.EndThread();
...

//移动短信网关事件(异步处理)
protected void OnCMPP(Object sender,SMSEventArgs e)  
{
 SMSAsyncEvent ae = new SMSAsyncEvent(ProcessCMPPEvent);
 IAsyncResult ar=null;
 ar = ae.BeginInvoke(e,new AsyncCallback(CMPPAsyncEventCallBack),ae);
}

//异步事件处理函数
protected void ProcessCMPPEvent(SMSEventArgs e)
{
 string strState=string.Empty;
 if(e.State==SMS_STATE.DELIVER)
 {
  CMPP_DELIVER deliver=(CMPP_DELIVER)e.Data;
  ...
 }
   
 else if(e.State==SMS_STATE.DELIVER_RESPONSE)
 {
  CMPP_DELIVER_RESP resp=(CMPP_DELIVER_RESP)e.Data;
  ...  
 }
 else if(e.State==SMS_STATE.REPORT)
 {
  CMPP_DELIVER deliver=(CMPP_DELIVER)e.Data;
  CMPP_REPORT report=deliver.GetReport();
  ...
 }
 else if(e.State==SMS_STATE.SUBMIT)
 {
  CMPP_SUBMIT submit=(CMPP_SUBMIT)e.Data;
  ... 
 }
 else if(e.State==SMS_STATE.SUBMIT_RESPONSE)
 {
  CMPP_SUBMIT_RESP resp=(CMPP_SUBMIT_RESP)e.Data;
  ...
 }
 else if(e.State==SMS_STATE.ACTIVE_TEST)
 {
  ...   
 }
 else if(e.State==SMS_STATE.ACTIVE_TEST_RESPONSE)
 {
  CMPP_ACTIVE_TEST_RESP resp=(CMPP_ACTIVE_TEST_RESP)e.Data;
  ...   
 }
 else if(e.State==SMS_STATE.SP_CONNECT)
 {
  CMPP_CONNECT_RESP resp=(CMPP_CONNECT_RESP)e.Data;
  ...
 }
 else if(e.State==SMS_STATE.SP_DISCONNECT)
 {
  ...   
 }
 else if(e.State==SMS_STATE.DELIVER_ERROR)
 {
  ...  
 }
 else if(e.State==SMS_STATE.DELIVER_RESPONSE_ERROR)
 {
  ...   
 }
 else if(e.State==SMS_STATE.SUBMIT_ERROR)
 {
  ...   
 }
 else if(e.State==SMS_STATE.SUBMIT_RESPONSE_ERROR)
 {
  ...   
 }
 else if(e.State==SMS_STATE.ACTIVE_TEST_ERROR)
 {
  ...   
 }
 else if(e.State==SMS_STATE.ACTIVE_TEST_RESPONSE_ERROR)
 {
  ...   
 }
 else if(e.State==SMS_STATE.SP_CONNECT_ERROR)
 {
  ...   
 }
 else if(e.State==SMS_STATE.SP_DISCONNECT_ERROR)
 {
  ...   
 }
  
}

//异步事件回调函数
private void CMPPAsyncEventCallBack(IAsyncResult ar)
{
 SMSAsyncEvent ae = (SMSAsyncEvent)ar.AsyncState;
 ae.EndInvoke(ar);
}

//异步短消息发送
CMPPAsyncSubmit s = new CMPPAsyncSubmit(m_CMPP.Submit);
IAsyncResult ar=null;
string[] Destinations=new string[DestinationCount];
for(int i=0;i<DestinationCount;i++)
strDest[i]=Destination[i].ToString();
ar = s.BeginInvoke(Message,Destinations,Source,ServiceID,CODING.GBK,true,(byte)Tiray.SMS.FEE_USER_TYPE.DESTINATION,(byte)Tiray.SMS.FEE_TYPE.ONE,Fee,Source,LinkID,new AsyncCallback(CMPPAsyncSubmitCallBack),s);
...

//异步发送回调函数
private void CMPPAsyncSubmitCallBack(IAsyncResult ar)
{
 CMPPAsyncSubmit s = (CMPPAsyncSubmit) ar.AsyncState;
 s.EndInvoke(ar);
}

【完】

调用华为短信开发包发长短信(C#版 CMPP3.0)

描述:应特殊需要,必须在很短时间内开发稳定的短信处理程序,采用了移动给的短信开发包,长短信发送一直没有找到相关文档解决,作为一个码农只能找些非主流的方法解决问题了 api声明 [DllI...
  • shierhao
  • shierhao
  • 2013年06月14日 01:17
  • 3159

.Net/C# 实现 中国移动 CMPP v3.0 ISMG <-> SP 收发短信的 SP 客户端 (CMPP SP Client)

/*  .Net/C# 实现 中国移动 CMPP v3.0 ISMG SP 收发短信的 SP 客户端 (CMPP SP Client)  本程序严格按  《中国移动通信企业标准》之《中国移动通...
  • my98800
  • my98800
  • 2016年04月05日 08:34
  • 1326

C# CMPP3.0开发接口

  • 2010年01月21日 22:32
  • 218KB
  • 下载

中国移动短信网关CMPP3.0 C#源代码:CMPP30类(2)

protected CMPP_HEAD ReadHead()  {   CMPP_HEAD head=new CMPP_HEAD();   head.CommandID=0;   Byte[] buf...
  • bulbul2006
  • bulbul2006
  • 2006年06月07日 09:07
  • 3898

cmpp2.0开发接口c#

  • 2008年05月07日 18:55
  • 223KB
  • 下载

CMPP SP端 C# 实例

//附CMPPClient.cs:/*作者:TNT 时间:2003年12月文件说明:本文件实现SP端的协议开发。*/using System;using System.Security.Cryptog...
  • shanhe
  • shanhe
  • 2004年07月19日 23:03
  • 16809

Kubernetes Net Device

Linux 上的基础网络设备详解 Linux虚拟网络设备之veth Linux-虚拟网络设备-veth pair KVM的虚拟机与宿主机通过veth pair直连...
  • chen517611641
  • chen517611641
  • 2018年01月22日 20:43
  • 38

cmpp2.0服务端demo

  • 2010年09月25日 16:04
  • 188KB
  • 下载

基于C#的短信接口调用示例代码模板

using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;  us...
  • yuexin111
  • yuexin111
  • 2016年10月27日 11:07
  • 229

基于 CMPP3.0 协议 SP 端的实现(C#)

      最近一段是时间项目可能需要提供短信功能,客户作为一个 SP 端提供短信业务;网上搜索了一番,找到了比较不错的 CMPP30 类的代码,该代码基本实现了 CMPP3.0 协议中的短信收发、网...
  • shamozhu
  • shamozhu
  • 2009年11月09日 15:28
  • 897
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:中国移动短信网关CMPP3.0 C#源代码:使用示例
举报原因:
原因补充:

(最多只允许输入30个字)