
地理位置
短信数据库引擎“凌凯短信网关引擎”,只需要做简单的数据库配置就可以实现短信功能的集成。引擎是直接在你现有的数据库基础上分别增加一张固定格式的发送表和接收表,引擎程序一旦安装配置好以后会自动检索发送表的待发数据,自动发送到我们的短信网关,同时把手机用户回复的信息自动存储到接收表,这样你在开发集成短信功能的时候就不必调用开发接口协议,只需对两张数据表进行控制和操作。
凌凯短信网关引擎分为短信引擎服务版和标准版。功能都是一样的,只是运行方式不同。服务版在用户首次安装配置以后将在系统后台以“服务进程”的形式自动运行,没有运行监控界面;标准版提供一个配置和运行监控的界面,安装好之后以“应用程序”的方式在前台桌面运行。
支持数据库类型:Access 、SQL、Mysql
安装好引擎后,在数据库里面添加相应的数据库表:mobilesend 、MobileGet 。
用户集成短信功能时只需对这两张数据库表进行控制和操作。
| 字段中文名 | 字段名 | 类型 | 长度 | 允空 | 缺省 | 值说明 |
| 发送记录ID | ID | int | 4 | NOT | 自增 | |
| 发送手机号 | Mobile | varchar | 12 | NOT | ||
| 发送内容 | Content | varchar | 200 | NOT | ||
| 发送标志 | Flag | tinyint | 1 | NOT | 0 | 0:未提交 1:发送成功 2:发送失败 |
| 发送时间 | SendDate | datetime | 8 | 2000-01-01 | 未使用 | |
| 消息创建时间 | CreateDate | datetime | 8 | |||
| 定时发送时间 | DelaySendTime | varchar(14) | 14 | 固定14位长度字符串,比如: 20060912152435代表2006年 9月12日15时24分35秒, 为空表示立即发送 |
||
| 消息实际提交时间 | RealSendTime | datetime | 8 |
| 字段中文名 | 字段名 | 类型 | 长度 | 允空 | 键 | 缺省 | 值说明 |
| 接收记录ID | ID | int | 4 | NOT | P | 自增 | |
| 回复手机号 | Mobile | varchar | 30 | NOT | |||
| 回复内容 | Content | varchar | 200 | NOT | |||
| 回复时间 | SendDate | datetime | 8 | NOT | 客户回复的具体时间 | ||
| 获取时间 | GetDate | datetime | 8 | NOT | Getdate() | 引擎取得回复内容 生成记录的具体时间 |
用户发送时只需要把目标手机和发送信息内容添加到数据库指定的表Mobilesend中,引擎会定时扫描这个表,发现Flag =0的数据记录 和DelaySendTime <=当前时间,立即发送,发送成功后会把Flag 改为 1并把状态保存状态。对于发送短信记录进行获取返回,引擎会把它们自动保存到RealSendTime字段下。
使用SQL数据库,复制SQL脚本在SQL Server数据库服务器的查询分析器上执行就可以自动生成两张数据表(一张发送表mobileSend,一张接受表mobileGet)
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[MobileGet]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[MobileGet]
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[MobileSend]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[MobileSend]
GO
CREATE TABLE [dbo].[MobileGet] (
[ID] [int] IDENTITY (1, 1) NOT NULL ,
[Mobile] [varchar] (30) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Content] [varchar] (200) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[SendDate] [datetime] NOT NULL ,
[GetDate] [datetime] NOT NULL ,
[DoFlag] [tinyint] NOT NULL ,
[DoDecp] [varchar] (500) COLLATE Chinese_PRC_CI_AS NOT NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[MobileSend] (
[ID] [int] IDENTITY (1, 1) NOT NULL ,
[Mobile] [varchar] (12) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Content] [varchar] (200) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Flag] [tinyint] NOT NULL ,
[SendDate] [datetime] NOT NULL ,
[CreateDate] [datetime] NOT NULL ,
[DelaySendTime] [varchar] (14) COLLATE Chinese_PRC_CI_AS NULL ,
[RealSendTime] [datetime] NULL
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[MobileGet] ADD
CONSTRAINT [DF_MobileGet_SendDate] DEFAULT (getdate()) FOR [SendDate],
CONSTRAINT [DF_MobileGet_GetDate] DEFAULT (getdate()) FOR [GetDate],
CONSTRAINT [DF_MobileGet_DoFlag] DEFAULT (0) FOR [DoFlag],
CONSTRAINT [DF_MobileGet_DoDecp] DEFAULT ('') FOR [DoDecp],
CONSTRAINT [PK_MobileGet] PRIMARY KEY CLUSTERED
(
[ID]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[MobileSend] ADD
CONSTRAINT [DF_MobileSend_Flag] DEFAULT (0) FOR [Flag],
CONSTRAINT [DF_MobileSend_SendDate] DEFAULT ('2000-01-01') FOR [SendDate],
CONSTRAINT [DF_MobileSend_CreateDate] DEFAULT (getdate()) FOR [CreateDate],
CONSTRAINT [PK_MobileSend] PRIMARY KEY CLUSTERED
(
[ID]
) ON [PRIMARY]
GO