📄 gateway.sql
字号:
--接收到原始Deliver包的时间(SrcRecvTime)超过24小时,则不再重发
drop table MO_Queue;
CREATE TABLE MO_Queue (
Id int(10) NOT NULL auto_increment,
SrcNode int(11) NOT NULL, --源网关代码
SrcRecvTime varchar(14) NOT NULL, --从网关接收到原始Deliver的时间,与日志同
SrcMsgId bigint(20) NOT NULL, --收到的CMPP_Deliver包的MsgId
--SrcMsgId2 varchar(20) NOT NULL, --收到的SMGP_Deliver包的MsgId
DestNode int(11) NOT NULL, --转发的目的下节点或本地业务编号
ScheduleTime datetime default NULL, --下一次的转发时间(延时3分钟),为0表示不再重发
Result int(2) default '', --错误响应码,若为-1则表示超时无应答,或(因网络连接异常)暂时无法发送的数据包
--Relaying int(1) NOT NULL default '0', --正在转发标识,为1表示正在转发,为0表示等待转发
RelayTimes int(2) NOT NULL default '1', --已经尝试转发的次数(一定次数后不再重新转发)
-----------以下为转发包内容--------------
--Protocol int(1) NOT NULL default '0', --请求包协议类型,0-CMPP;1-SMGP;
Total_Length int(10) NOT NULL,
Sequence_Id int(10) NOT NULL, --转发包流水号
Msg_Id bigint(20) NOT NULL, --CMPP_Deliver的MsgID
--Msg_Id_char varchar(21) NOT NULL, --SMGP_Deliver的MsgID(16进制字符串)
Dest_Id varchar(21) NOT NULL,
Service_Id varchar(10) NOT NULL,
TP_pid int(3) default '0',
TP_udhi int(3) default '0',
Msg_Fmt int(1) NOT NULL default '15',
Src_terminal_Id varchar(21) NOT NULL,
Registered_Delivery int(1) NOT NULL,
Msg_Length int(3) NOT NULL,
Msg_Content tinyblob NOT NULL default '',
Reserved tinyblob default '',
--------------------------------
--RecvTime varchar(14) default '', --SMGP_Deliver中的
---------------------------------------
PRIMARY KEY (Id)
KEY SrcRecvTime (SrcRecvTime),
KEY DestNode (DestNode),
KEY Result (Result),
KEY RelayTimes (RelayTimes),
KEY Src_terminal_Id (Src_terminal_Id),
KEY Dest_Id (Dest_Id)
) TYPE=MyISAM;
--所有路由信息都导入内存,在管理模块中进行路由动态刷新
--=================================================================
--===========================MT路由表==============================
--=================================================================
--导入内存的MT路由号段表
CREATE TABLE MT_RouteTable (
Id int(11) NOT NULL auto_increment, --记录编号
Segment int(11) NOT NULL default '', --号段
District varchar(20) NOT NULL default '', --省份
City varchar(30) default NULL, --城市
Type int(11) NOT NULL default '0', --类型,0是全球通,1是神州行,2是动感,3是终端公司,4是未知
GWID int(11) NOT NULL default '0', --网关编号,必须与上节点的配置文件相符合。移动的网关编号100~199,联通的网关编号200~299,电信的网关编号300~399
GWType varchar(30) NOT NULL default '', --网关说明
---------------------------------------
PRIMARY KEY (Id),
KEY Segment (Segment),
KEY District (District),
KEY City (City),
KEY GWID (GWID)
) TYPE=MyISAM;
--如1350000,广东,广州,0,1,广东华为
--网关信息表
CREATE TABLE GatewayTable (
GWID int(11) NOT NULL default '0', --网关代码
GatewayName varchar(30) NOT NULL default '',
IP varchar(15) NOT NULL default '',
Port int(5) NOT NULL default '7890',
SPID varchar(6) NOT NULL default '', --代理网关系统的登录ID
SharedSecret varchar(16) NOT NULL default '', --共享密码
Type tinyint(4) NOT NULL default '0',
AsyncWindowSize int(11) NOT NULL default '16',
Version tinyint(4) unsigned NOT NULL default '32',
UseMD5 tinyint(4) NOT NULL default '1',
CheckISMGAuth tinyint(4) NOT NULL default '0',
SendActiveTest tinyint(4) NOT NULL default '1',
SendTerminateResp tinyint(4) NOT NULL default '1',
TON tinyint(4) NOT NULL default '2',
NPI tinyint(4) NOT NULL default '1',
KeepAlivePeriod int(11) NOT NULL default '30000',
RetryDelay int(11) NOT NULL default '2000',
CommandTimeout int(11) NOT NULL default '120000',
DebugLevel tinyint(4) NOT NULL default '15',
District varchar(20) default NULL,
ContactName varchar(20) default NULL,
ContactPhone varchar(30) default NULL,
Description text,
---------------------------------------
PRIMARY KEY (GWID,GatewayName)
) TYPE=MyISAM;
--=================================================================
--===========================CP信息表==============================
--=================================================================
CREATE TABLE CP_Info (
CPID int(10) NOT NULL auto_increment, --CP编号
CPName varchar(20) NOT NULL default '', --CP名称
Address varchar(200) default '', --CP通信地址
ContactName varchar(20) default '', --CP的联系人
Phone varchar(20) default '', --CP的联系电话
Mobile varchar(12) default '', --CP的联系手机
Email varchar(40) default '', --CP的联系email
Description varchar(255) default '', --CP说明
---------------------------------------
PRIMARY KEY (CPID),
KEY Status (CPCode)
);
--=================================================================
--===========================业务信息表============================
--=================================================================
--导入内存,以便路由、鉴权和MT包的修正
CREATE TABLE Services (
RouteID int(10) NOT NULL default '0', --路由编号(以10为)
ServiceCode varchar(11) NOT NULL default '', --CP服务代码(接入号:638805)
ServiceID varchar(11) NOT NULL default '', --业务代码,如"MFXX"
ServiceName varchar(16) NOT NULL default '', --业务名,如"对对配"
CPID int(11) NOT NULL default '', --业务所属的CP编号
InterfaceType tinyint(1) NOT NULL default '0', --CP的接入方式,0-CMPP,1-HTTP,2-数据表(本地业务接入时)
MOTable varchar(16) NOT NULL default '', --本地业务的MO接口表名
NodeIp varchar(16) NOT NULL default '', --CP的接入服务器IP
Username varchar(16) default '', --Http连接时的用户名
Secret varchar(20) NOT NULL default '', --CP的登陆密码
WantReport tinyint(1) NOT NULL default '0', --是否需要状态报告,1表示需要
TestTime tinyint(4) NOT NULL default '60', --发送ActiveTest请求的周期(秒)
RecvQ_Size int(10) NOT NULL default '100000', --CP收、发队列大小(缓存数据包的最大数目)
SendQ_Size int(10) NOT NULL default '100000',
SentW_Size int(10) NOT NULL default '331', --CP(已发送)滑动窗口大小
FeeType char(2) NOT NULL default '', --收费类别
FeeCode varchar(6) NOT NULL default '', --资费代码
Encoding tinyint(4) NOT NULL default '15', --MO的消息编码
ShowLog tinyint(1) NOT NULL default '3', --CP的日志显示标识
Seperator varchar(5) default '', --MO信息内容的分隔符
URL varchar(200) default '', --Http方式的Post路径
Description varchar(100) default '', --业务描述
---------------------------------------
PRIMARY KEY (RouteID),
KEY ServiceCode (ServiceCode)
) TYPE=MyISAM;
--=================================================================
--===========================包月计费表============================
--=================================================================
--记录包月代码的用户
--如果发给用户的是包月代码,就会插SMC_Log的,SMC_Log是月月清的
CREATE TABLE SMC_Log (
TerminalID varchar(21) NOT NULL default '',
ServiceID varchar(10) NOT NULL default '',
---------------------------------------
PRIMARY KEY (TerminalID)
) TYPE=MyISAM;
--=================================================================
--===========================话单统计表============================
--=================================================================
--=================================================================
--=================================================================
--NOT NULL没有default,insert就一定要插这个字段,而且不能插入NULL
--对于NOT NULL字段,可以UPDATE xx SET xxx='';但不能UPDATE xx SET xxx=NULL;
--''是空字符串,NULL是空值
--=================================================================
--=========================本地业务MO接口表========================
--=================================================================
--兼容各网关协议
--业务处理程序将记录提取并处理后便将其删除(或增加一个处理标识字段)
drop table MO_638805;
CREATE TABLE MO_638805 (
Id int(10) NOT NULL auto_increment,
SrcProtocol int(1) NOT NULL default '0', --原始请求包协议类型,0-CMPP;1-SMGP;2-SGIP;
Msg_Id bigint(20) NOT NULL default '0', --网关下发的消息编号
Dest_Id varchar(21) NOT NULL default '', --目的号码(本地业务长代码)
Service_Id varchar(10) NOT NULL default '', --业务类型
Msg_Fmt int(1) NOT NULL default '0',
Src_terminal_Id varchar(21) NOT NULL default '',--用户手机号码
Registered_Delivery int(1) NOT NULL default '0',--状态报告标识
Msg_Length int(3) NOT NULL default '0',
Msg_Content varchar(255) NOT NULL default '',
Reserved varchar(8) default '',
Recv_Time timestamp(14) NOT NULL, --插入此表的时间戳,数据库自动赋值
Handling tinyint(2) NOT NULL default '0', --处理标识
PRIMARY KEY (Id)
) TYPE=MyISAM;
--=================================================================
--===============下行(发往手机)的短信缓冲队列表==================
--=================================================================
--兼容各网关协议
--同时充当Submit_Fail和本地业务的MT表,曾经发送失败或者本次业务需要发送的短信都在此表
--按下一次转发时间排序,定时(每秒)检查此表,每次提取若干记录并删除,发送失败则回写此表
--方法2:(发送成功(收到正确的Submit_Rsp)便将记录删除,否则修改ScheduleTime和Result)
--接收到原始Submit包的时间(SrcRecvTime)超过24小时,则不再重发
drop table MT_Queue;
CREATE TABLE MT_Queue (
Id int(10) NOT NULL auto_increment,
SrcNode varchar(15) NOT NULL, --发送此消息的源CP代码(或本地业务代码)
SrcRecvTime varchar(14) NOT NULL, --本地业务程序或本地CP提交短信的时间,或为收到原始请求包Submit的时间,与日志同
MsgID_Relate varchar(21) default '', --相关联的MO短消息的MsgID
Protocol int(1) NOT NULL default '0', --请求包协议类型,0-CMPP;1-SMGP;
------------------------------
ServiceId varchar(10) NOT NULL default '', --业务代码
FeeType varchar(2) default '', --收费类型/资费类别,各协议定义不同
FeeCode varchar(6) default '', --资费代码(以分为单位)
MsgFormat int(3) default '15', --消息内容格式
Src_Id varchar(21) NOT NULL, --发送方号码(本地业务代码或CP代码)
ChargeTermId varchar(21) NOT NULL, --收费用户手机号码
DestTermId varchar(21) NOT NULL, --目的手机号码
MsgLength int(1) NOT NULL, --消息长度
MsgContent varchar(252) default '', --消息内容
----------------------------------------
NeedReport int(1) default '1',
Priority int(1) default '0',
ValidTime varchar(17) default '',
AtTime varchar(17) default '',
FixedFee varchar(6) default '', --SMGP_Submit的包月费
MsgType int(1) default '', --SMGP_Submit的消息子类型
--------------------
Fee_UserType int(1) default '3', --CMPP_Submit的计费用户类型
TP_Pid int(1) default '0', --CMPP_Submit的
TP_Udhi int(1) default '1', --CMPP_Submit的
-----------本地业务或本地CP不用关心以下各项--------------
DestNode int(11) NOT NULL default '', --转发的目的上节点编号
ScheduleTime datetime default NULL, --下一次的转发时间(延时3分钟),为0表示不再重发
SrcSequence int(10) default '', --原始请求包Submit的流水号
Sequence_Id int(10) default '', --上次的转发包流水号(下次转发将用新流水号)
MsgID varchar(21) default '', --Submit_Rsp中的MsgID
Result int(2) default '', --错误响应码,若为0则表示(因网络连接异常)暂时无法发送的数据包
PRIMARY KEY (Id)
) TYPE=MyISAM;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -