📄 cmpp.cs
字号:
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;
using System.Security.Cryptography;
using System.Collections;
using GateWayFroCMPP3;
namespace CMPP3.Client
{
#region <事件代理与事件数据定义>
/// <summary>
/// 由于内部异常,与网关的数据传输已经中断,此事件请求重新建立连接
/// </summary>
public delegate void RequestRestartEventHandler(object sender,System.EventArgs e);
/// <summary>
/// 接收到状态报告事件代理
/// </summary>
public delegate void RecvReportEventHandler(object sender, ReportEventArgs e);
/// <summary>
/// 接收到新短消息事件代理
/// </summary>
public delegate void RecvSMSEnventHandler(object sender, SMSEventArgs e);
/// <summary>
/// 接收到网关终止信号事件代理
/// </summary>
public delegate void RecvTerminateEventHandler(object sender,TerminateEventArgs e);
/// <summary>
/// 接收到对网关请求终止信号回应的事件代理
/// </summary>
public delegate void RecvTerminateRespEventHandler(object sender,TerminateRespEventArgs e);
/// <summary>
/// 向网关发送终止信号事件代理
/// </summary>
public delegate void SentTerminateEventHandler(object sender,TerminateEventArgs e);
/// <summary>
/// 向网关发送请求终止信号回应的事件代理
/// </summary>
public delegate void SentTerminateRespEventHandler(object sender,TerminateRespEventArgs e);
/// <summary>
/// 向网关发送握手消息时的事件代理
/// </summary>
public delegate void SentTestEventHandler(object sender,TestEventArgs e);
/// <summary>
/// 接收到网关发送握手消息回复时的事件代理
/// </summary>
public delegate void RecvTestRespEventHandler(object sender,TestRespEventArgs e);
/// <summary>
/// 接收到网关发送握手消息时的事件代理
/// </summary>
public delegate void RecvTestEventHandler(object sender,TestEventArgs e);
/// <summary>
/// 向网关发送握手消息回复时的事件代理
/// </summary>
public delegate void SentTestRespEventHandler(object sender,TestRespEventArgs e);
/// <summary>
/// 接收到网关对登陆信息回复时的事件代理
/// </summary>
public delegate void RecvConnectRespEventHandler(object sender,ConnectRespEventArgs e);
/// <summary>
/// 向网关发送了登陆信息时的事件代理
/// </summary>
public delegate void SentConnectEventHandler(object sender,SentConnectEventArgs e);
/// <summary>
/// 向网关发送了取消发送信息时的事件代理
/// </summary>
public delegate void SentCancelEventHandler(object sender,SentCancelEventArgs e);
/// <summary>
/// 从网关接收到取消发送信息的回复时的事件代理
/// </summary>
public delegate void RecvCancelRespEventHandler(object sender,CancelRespEventArgs e);
/// <summary>
/// 接收到网关的发送信息回复时的事件代理
/// </summary>
public delegate void RecvSubmitRespEventHandler(object sender,SubmitRespEventArgs e);
/// <summary>
/// 向网关发送短信时的事件代理
/// </summary>
public delegate void SentSubmitEventHandler(object sender,SubmitEventArgs e);
/// <summary>
/// 接收到网关的查询信息回复时的事件代理
/// </summary>
public delegate void RecvQueryRespEventHandler(object sender,QueryRespEventArgs e);
/// <summary>
/// 向网关发送查询信息时的事件代理
/// </summary>
public delegate void SentQueryEventHandler(object sender,SentQueryEventArgs e);
/// <summary>
/// 登陆成功时的事件代理
/// </summary>
public delegate void LoginSuccEventHandler(object sender,EventArgs e); //当成功登录系统
/// <summary>
/// 当套接字关闭时的事件代理
/// </summary>
public delegate void SocketClosedEventHandler(object sender,SocketClosedEventArgs e); //当套接字被检测到关闭
/// <summary>
/// 当消息发送多次仍未收到回应时的事件代理
/// </summary>
public delegate void FailedItemDeletedEventHandler(object sender,FailedItemDeleteEventArgs e); //当一条等待队列的消息超过60秒没有回应
/// <summary>
/// 当出现错误时的事件代理
/// </summary>
public delegate void ErrorEventHandler(object sender,ErrorEventArgs e);
/// <summary>
/// 状态报告事件数据
/// </summary>
public class ReportEventArgs:System.EventArgs
{
MSG.CMPP_Deliver deliver;
public ReportEventArgs(MSG.CMPP_Deliver Deliver)
{
deliver=Deliver;
}
public MSG.CMPP_Deliver Deliver
{
get
{
return this.deliver;
}
}
}
/// <summary>
/// 新短信事件数据
/// </summary>
public class SMSEventArgs:System.EventArgs
{
MSG.CMPP_Deliver deliver;
public SMSEventArgs(MSG.CMPP_Deliver Deliver)
{
deliver=Deliver;
}
public MSG.CMPP_Deliver Deliver
{
get
{
return this.deliver;
}
}
}
/// <summary>
/// 拆除连接事件数据
/// </summary>
public class TerminateEventArgs:System.EventArgs
{
public TerminateEventArgs()
{}
}
/// <summary>
/// 拆除连接回复事件数据
/// </summary>
public class TerminateRespEventArgs:System.EventArgs
{
uint seq;
public TerminateRespEventArgs(uint Sequence)
{
seq=Sequence;
}
public uint Sequence
{
get
{
return this.seq;
}
}
}
/// <summary>
/// 握手消息事件数据
/// </summary>
public class TestEventArgs:System.EventArgs
{
uint seq;
public TestEventArgs(uint Sequence)
{
seq=Sequence;
}
public uint Sequence
{
get
{
return this.seq;
}
}
}
/// <summary>
/// 握手消息回复事件数据
/// </summary>
public class TestRespEventArgs:System.EventArgs
{
MSG.CMPP_ActiveTest_Resp test_resp;
public TestRespEventArgs(MSG.CMPP_ActiveTest_Resp Test_resp)
{
test_resp=Test_resp;
}
public MSG.CMPP_ActiveTest_Resp Test_Resp
{
get
{
return this.test_resp;
}
}
}
/// <summary>
/// 登陆回复事件数据
/// </summary>
public class ConnectRespEventArgs:System.EventArgs
{
MSG.CMPP_Connect_Resp conn_resp;
public ConnectRespEventArgs(MSG.CMPP_Connect_Resp Connect_Resp)
{
conn_resp=Connect_Resp;
}
public MSG.CMPP_Connect_Resp Connect_resp
{
get
{
return this.conn_resp;
}
}
}
/// <summary>
/// 登陆事件数据
/// </summary>
public class SentConnectEventArgs:System.EventArgs
{
CMPP3.Client.MSG.CMPP_Connect _ConnectMsg;
public SentConnectEventArgs(CMPP3.Client.MSG.CMPP_Connect ConnectMsg)
{
_ConnectMsg=ConnectMsg;
}
public CMPP3.Client.MSG.CMPP_Connect Connect_Msg
{
get
{
return this._ConnectMsg;
}
}
}
/// <summary>
/// 取消发送事件数据
/// </summary>
public class SentCancelEventArgs:System.EventArgs
{
public SentCancelEventArgs()
{}
}
/// <summary>
/// 取消发送回复事件数据
/// </summary>
public class CancelRespEventArgs:System.EventArgs
{
uint seq;
MSG.CMPP_Cancel cancel;
MSG.CMPP_Cancel_Resp cancel_resp;
public CancelRespEventArgs(uint Sequence,MSG.CMPP_Cancel Cancel,MSG.CMPP_Cancel_Resp Cancel_Resp)
{
seq=Sequence;
cancel=Cancel;
cancel_resp=Cancel_Resp;
}
public MSG.CMPP_Cancel_Resp Cancel_Resp
{
get
{
return this.cancel_resp;
}
}
public MSG.CMPP_Cancel Cancel
{
get
{
return this.cancel;
}
}
public uint Sequence
{
get
{
return this.seq;
}
}
}
/// <summary>
/// 发送短信回复事件数据
/// </summary>
public class SubmitRespEventArgs:System.EventArgs
{
uint _seq;
MSG.CMPP_Submit _Submit;
MSG.CMPP_Submit_Resp _Submit_Resp;
public SubmitRespEventArgs(uint Sequence,MSG.CMPP_Submit Submit,MSG.CMPP_Submit_Resp Submit_Resp)
{
_seq=Sequence;
_Submit=Submit;
_Submit_Resp=Submit_Resp;
}
public MSG.CMPP_Submit Submit
{
get
{
return this._Submit;
}
}
public MSG.CMPP_Submit_Resp Submit_Resp
{
get
{
return this._Submit_Resp;
}
}
public uint Sequence
{
get
{
return this._seq;
}
}
}
/// <summary>
/// 发送短信事件数据
/// </summary>
public class SubmitEventArgs:System.EventArgs
{
public SubmitEventArgs()
{}
}
/// <summary>
/// 发送查询信息事件数据
/// </summary>
public class SentQueryEventArgs:System.EventArgs
{
public SentQueryEventArgs()
{}
}
/// <summary>
/// 查询回复事件数据
/// </summary>
public class QueryRespEventArgs:System.EventArgs
{
uint seq;
MSG.CMPP_Query query;
MSG.CMPP_Query_Resp query_resp;
public QueryRespEventArgs(uint Sequence,MSG.CMPP_Query Query,MSG.CMPP_Query_Resp Query_resp)
{
seq=Sequence;
query=Query;
query_resp=Query_resp;
}
public uint Sequence
{
get
{
return this.seq;
}
}
public MSG.CMPP_Query Query
{
get
{
return this.query;
}
}
public MSG.CMPP_Query_Resp Query_Resp
{
get
{
return this.query_resp;
}
}
}
/// <summary>
/// 套接字中断事件数据
/// </summary>
public class SocketClosedEventArgs:System.EventArgs
{
SortedList _OutQueue;
SortedList _WaitQueue;
public SocketClosedEventArgs(SortedList TheOutQueue,SortedList TheWaitQueue)
{
this._OutQueue=TheOutQueue;
this._WaitQueue=TheWaitQueue;
}
public SortedList TheOutQueue
{
get
{
return this._OutQueue;
}
}
public SortedList TheWaitQueue
{
get
{
return this._WaitQueue;
}
}
}
/// <summary>
/// 消息重发超过次数事件数据
/// </summary>
public class FailedItemDeleteEventArgs:System.EventArgs
{
QueueItem q;
public FailedItemDeleteEventArgs(QueueItem item)
{
q=item;
}
public QueueItem Item
{
get
{
return this.q;
}
}
}
/// <summary>
/// 系统出现错误时的事件数据
/// </summary>
public class ErrorEventArgs:System.EventArgs
{
string errormsg="";
string mymsg="";
bool hasmymsg=false;
Exception ex;
public ErrorEventArgs()
{}
public Exception ExceptionObject
{
get
{
return this.ex;
}
set
{
this.ex=value;
}
}
public string MyMessage
{
get
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -