使用数据库:mysql
表生成语句:
待发送表:
CREATE TABLE `dfsdl` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`content` varchar(255) NOT NULL,
`deadtime` datetime DEFAULT NULL,
`eid` varchar(50) NOT NULL,
`mobile` varchar(15) NOT NULL,
`msgid` int(11) DEFAULT NULL,
`password` varchar(50) NOT NULL,
`status` int(11) NOT NULL,
`userid` varchar(50) NOT NULL,
`userport` varchar(4) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8
已发送表:
CREATE TABLE `yfsdl` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`content` varchar(255) NOT NULL,
`deadtime` datetime DEFAULT NULL,
`eid` varchar(50) NOT NULL,
`mobile` varchar(15) NOT NULL,
`msgid` int(11) DEFAULT NULL,
`password` varchar(50) NOT NULL,
`status` int(11) NOT NULL,
`userid` varchar(50) NOT NULL,
`userport` varchar(4) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=328 DEFAULT CHARSET=utf8
数据插入语句:
INSERT INTO `eus_shuidw`.`dfsdl` (`id`, `content`, `deadtime`, `eid`, `mobile`, `msgid`, `password`, `status`, `userid`, `userport`) VALUES ('1', '当前有1个工作预警,请登录督查系统办理。', '2018-09-05 09:44:07', '3333', '18665676414', NULL, '44', '0', '555', NULL);
INSERT INTO `eus_shuidw`.`dfsdl` (`id`, `content`, `deadtime`, `eid`, `mobile`, `msgid`, `password`, `status`, `userid`, `userport`) VALUES ('2', '当前有1个工作预警,请登录督查系统办理。', '2018-09-05 09:44:07', '3333', '18665676414', NULL, '44', '0', '555', NULL);
客户端:
官网下载最新的就可以了,但是这里有个巨他妈大的坑,截止到2018-10-10为止的最新版本(Meip2_Client_4.2.1),在连接mysql数据库的时候,缺少连接mysql数据库的jar包(需补全mysql-connector-java-5.0.8-bin.jar),我从老版本(水东湾项目)里拷贝了过来才完事,mmp的。
补全这些东西,其他的跟着官方文档怼就行了。
原理和步骤:
1.获取到企业id,用户id,密码。
2.配置系统环境,安装企信通客户端。安装步骤官方文档有。
3.安装完成,配置<MEIP2>/conf/service.conf(修改配置后需重启二次接口),如何配置,看官方文档。
4.利用上面的建表语句,创建待发送表和已发送表,利用数据插入语句,插入短信,表字段status(0待发,1已发,其他异常)。
5.启动客户端,成功发送则完事了。启动样子如下:
若有什么问题,直接去看日志文件。
有遇到某些电话号码不能发送信息的问题。首先排除黑白名单的问题,待发送表的状态码是2,修改下面的正则表达式即可。
客户端安装完成后,有发现里面有个doc文件夹下有表生成的sql,记录一下mysql的:
create table dfsdl (
id int ,
mobile varchar(15) ,
content varchar(250) ,
deadtime datetime ,
status smallint ,
eid varchar(20) ,
userid varchar(20) ,
password varchar(20),
userport varchar(20),
msgid int
)
;
create table yfsdl (
id int ,
mobile varchar(15) ,
content varchar(250) ,
sendtime datetime ,
status smallint ,
eid varchar(20) ,
userid varchar(20) ,
password varchar(20),
userport varchar(20),
msgid int
)
;
create table jsdl (
id int ,
mobile varchar(15) ,
content varchar(250) ,
recetime datetime ,
status smallint ,
eid varchar(20) ,
userid varchar(20) ,
password varchar(20),
userport varchar(20)
)
;
create table jsdl2 (
id int ,
mobile varchar(15) ,
content varchar(250) ,
recetime datetime ,
status smallint ,
eid varchar(20) ,
userid varchar(20) ,
password varchar(20),
userport varchar(20)
)
;
create table receivefailed (
fmobile varchar(15) ,
fcontent varchar(250) ,
fsendtime datetime ,
fstate smallint ,
remark varchar(50)
)
;
create table statureport(
id int,
content varchar(250),
eid varchar(20),
userid varchar(20),
mobile varchar(15),
smsstatu smallint,
updateTime datetime,
client_id varchar(15),
receiver varchar(15)
)
;