📄 initialize.cs
字号:
using System;
using System.Collections.Generic;
using System.Text;
using SMPP.Variable;
namespace SMGP3_0
{
/// <summary>
/// 执行系统初始化操作
/// </summary>
internal class Initialize
{
private static bool Initialized = false;
public Initialize()
{
if (!Initialized)
{
Initialized = true;
SMGPPack.AddDeclare(0x00000001, typeof(SMGPBody_Login));
SMGPPack.AddDeclare(0x00000002, typeof(SMGPBody_Submit));
SMGPPack.AddDeclare(0x00000003, typeof(SMGPBody_Deliver));
SMGPPack.AddDeclare(0x00000004, typeof(SMGPBody_Active));
SMGPPack.AddDeclare(0x00000006, typeof(SMGPBody_Exit));
SMGPPack.AddDeclare(0x80000001, typeof(SMGPBody_Login_Resp));
SMGPPack.AddDeclare(0x80000002, typeof(SMGPBody_Submit_Resp));
SMGPPack.AddDeclare(0x80000003, typeof(SMGPBody_Deliver_Resp));
SMGPPack.AddDeclare(0x80000004, typeof(SMGPBody_Active_Resp));
SMGPPack.AddDeclare(0x80000006, typeof(SMGPBody_Exit_Resp));
/// <summary>
/// GSM协议类型,详情请参考 GSM03.40 中的9.2.3.9
/// TP_Pid
/// </summary>
SMPP.TLVPack.AddDeclare(0x0001, typeof(TLVInt8));
/// <summary>
/// GSM协议类型,详情请参考 GSM03.40 中的9.2.3.23,仅使用1位,右对齐
/// TP_Udhi
/// </summary>
SMPP.TLVPack.AddDeclare(0x0002, typeof(TLVInt8));
/// <summary>
/// 交易标识,用于唯一标识一次交易
/// LinkID
/// </summary>
SMPP.TLVPack.AddDeclare(0x0003, typeof(TLVString));
/// <summary>
/// 计费用户类型
/// ChargeUserType
///
/// 0 = 对短消息接收方计费
/// 1 = 对短消息发送方计费
/// 2 = 对SP计费
/// 3 = 本字段无效,对ChargeTermID或ChargeTermPseudo字段的号码计费
/// </summary>
SMPP.TLVPack.AddDeclare(0x0004, typeof(TLVInt8));
/// <summary>
/// 计费用户号码类型
/// ChargeTermType
///
/// 0 = 真实号码
/// 1 = 伪码
/// </summary>
SMPP.TLVPack.AddDeclare(0x0005, typeof(TLVInt8));
/// <summary>
/// 计费用户的伪码
/// ChargeTermPseudo
/// </summary>
SMPP.TLVPack.AddDeclare(0x0006, typeof(TLVVARString));
/// <summary>
/// 短消息接收方的号码类型
/// DestTermType
///
/// 0 = 真实号码
/// 1 = 伪码
/// </summary>
SMPP.TLVPack.AddDeclare(0x0007, typeof(TLVInt8));
/// <summary>
/// 短消息接收方的伪码,当有多个接收方伪码时,要求每个接收方伪码的长度一致
/// DestTermPseudo
/// </summary>
SMPP.TLVPack.AddDeclare(0x0008, typeof(TLVVARString));
/// <summary>
/// 相同Msg_Id的消息总条数
/// PkTotal
/// </summary>
SMPP.TLVPack.AddDeclare(0x0009, typeof(TLVInt8));
/// <summary>
/// 相同Msg_Id的消息序号,从1开始
/// PkNumber
/// </summary>
SMPP.TLVPack.AddDeclare(0x000A, typeof(TLVInt8));
/// <summary>
/// SP发送的消息类型
/// SubmitMsgType
///
/// 0 = 普通短消息
/// 1 = WEB方式定制结果消息
/// 2 = WEB方式取消结果消息
/// 3 = 终端方式定制结果消息
/// 4 = 终端方式取消定制结果消息
/// 5 = 包月扣费通知消息
/// 6 = WEB方式定制二次确认消息
/// 7 = WEB方式取消定制二次确认消息
/// 8 = 终端方式定制二次确认消息
/// 9 = 终端方式取消定制二次确认消息
/// 10 = WEB方式点播二次确认消息
/// 11 = 终端方式点播二次确认消息
/// 12 = 群发请求
/// 13 = 订购(包括点播和定制)关系同步
/// 14 = 群发结果通知消息
/// </summary>
SMPP.TLVPack.AddDeclare(0x000B, typeof(TLVInt8));
/// <summary>
/// SP对消息的处理结果
/// SPDealReslt
///
/// 0 = 成功
/// 1 = 失败
/// 该字段在 SubmitmsgType 为0、5、6、7、8、9、10、11、14时无效
/// </summary>
SMPP.TLVPack.AddDeclare(0x000C, typeof(TLVInt8));
/// <summary>
/// 短消息发送方的号码类型
/// SrcTermType
///
/// 0 = 真实号码
/// 1 = 伪码
/// </summary>
SMPP.TLVPack.AddDeclare(0x000D, typeof(TLVInt8));
/// <summary>
/// 短消息发送方的伪码
/// SrcTermPseudo
/// </summary>
SMPP.TLVPack.AddDeclare(0x000E, typeof(TLVVARString));
/// <summary>
/// 经过网关的数量,该字段初始值为1
/// NodesCount
/// </summary>
SMPP.TLVPack.AddDeclare(0x000F, typeof(TLVInt8));
/// <summary>
/// 信息内容的来源
/// 在固定网短消息业务中,填写SP的服务代码,在移动网短消息业务中,填写SP的企业代码
/// MsgSrc
/// </summary>
SMPP.TLVPack.AddDeclare(0x0010, typeof(TLVString));
/// <summary>
/// 传递给SP的源号码类型
/// SrcType
///
/// 0 = 真实号码
/// 1 = 伪码
/// </summary>
SMPP.TLVPack.AddDeclare(0x0011, typeof(TLVInt8));
/// <summary>
/// 业务代码,用于移动网业务
/// MServiceID
/// </summary>
SMPP.TLVPack.AddDeclare(0x0012, typeof(TLVString));
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -