Home / 知识库WIKI / 博客 / 短信博客

短信博客

短信中间件核心在于中间层,把复杂的底层操作转换为简单、方便的数据库操作。软件设计为从客户的数据库自动定时提取数据发送。中间件需要和用户的应用程序共享使用数据库,这就要求中间件访问数据库既要快,又不能影响数据库的性能。数据库连接池是必不可少的。

数据库连接池就是一个池子,里面放着数据库连接,应用服务需要的时候就去池子里面拿,用完之后归还给池子。数据库连接池负责分配、管理、释放数据库连接,它允许应用服务重复使用数据库连接,而非重新建立。数据库的连接创建和关闭连接均由连接池来实现。应用访问时,首先查看连接池中是否有空闲连接,如果存在空闲连接,则将连接分配给客户使用;如果没有空闲连接,则查看当前所开的连接数是否已经达到最大连接数,如果没达到就重新创建一个连接给请求的客户;如果达到就按设定的最大等待时间进行等待,如果超出最大等待时间,则抛出异常给客户。 当客户释放数据库连接时,先判断该连接的引用次数是否超过了规定值,如果超过就从连接池中删除该连接,否则保留等待再次使用。

如果不使用数据库连接池,进行一次查询,要进行很多次网络交互,可以看到,这样的缺点是:

1. 网络IO多

2. 响应时间长,导致QPS降低

3. 频繁创建连接和关闭连接,浪费数据库资源,影响服务器性能

使用连接池的好处:

1. 减少网络开销

2. 提升数据库性能

金笛短信中间件对连接池有2个要求:一要快,二要稳。目前,流行的Java数据库连接池有dbcp,druid,HikariCP,tomcat-jdbc,c3p0。在对所有流行的连接池进行逐一比较之后,单从性能角度看,性能从高到低分别是:HikariCP,druid,tomcat-jdbc,dbcp,c3p0 。

关于HikariCP和druid的性能对比,在github/HikariCP上有过讨论,结果是HikariCP性能上优于druid,吃瓜地址:https://github.com/brettwooldridge/HikariCP/issues/232

HikariCP 脱颖而出,符合金笛短信中间件短信要求既要快,又要稳的要求。短信从提取到发送,在数据库这个环节,把时间压缩到毫秒内,只有短信发送的每个环节都榨干,才能保证最终短信发送秒到。

各种评测对比,也说明HikariCP是目前最快的Java数据库连接池,spring boot 2.x已经使用HikariCP作为默认的数据库连接池,足见其优秀。总代码量:代码体积更是少的可怜,130kb。代码量越少,一般意味着执行效率越高、发生bug的可能性越低。简单意味着可靠,好维护,兼容性好。

数据库连接池,在20年以前就有。经过20年的进化,已经非常犀利。日本人素来以工匠精神著称,一个人一辈子就做好一件事。HikariCP是日本人在boneCP基础上,把优化做到了极致:为什么这么说呢?

1. 优化并精简字节码,优化代码,直到编译后的字节码最少,这样,CPU缓存可以加载更多的程序代码。使用Java字节码修改类库Javassist来生成委托实现动态代理,JDK Proxy生成的字节码更少。例如HikariCP的Statement proxy只有100行代码,只有BoneCP的十分之一,对编译器不满意,就差重写java编译器了。

2. 定义集合类型(ConcurrentBag):提高并发读写的效率。

3. 自定义数组类型(FastStatementList)代替ArrayList:避免每次get()调用都要进行range check,避免调用remove()时的从头到尾的扫描。

4. 其他针对BoneCP缺陷的优化,比如对于耗时超过一个CPU时间片的优化。

光速,每秒30万公里。没有比光速更快的了。HikariCP ,就是光速。

本着geek精神,在可靠性方面,继续研究。对于数据库连接中断的情况,通过测试getConnection(),各种CP的不相同处理方法如下:

(所有CP都配置了跟connectionTimeout类似的参数为5秒钟)

HikariCP:等待5秒钟后,如果连接还是没有恢复,则抛出一个SQLExceptions 异常;后续的getConnection()也是一样处理;

C3P0:完全没有反应,没有提示,也不会在“CheckoutTimeout”配置的时长超时后有任何通知给调用者;然后等待2分钟后终于醒来了,返回一个error;

Tomcat:返回一个connection,然后……调用者如果利用这个无效的connection执行SQL语句……结果可想而知;大约55秒之后终于醒来了,这时候的getConnection()终于可以返回一个error,但没有等待参数配置的5秒钟,而是立即返回error;

BoneCP:跟Tomcat的处理方法一样;也是大约55秒之后才醒来,有了正常的反应,并且终于会等待5秒钟之后返回error了;

也就是在数据库连接中断的情况下,HikariCP在5秒内就可以感知,并在最短时间内通知上层应用。这个响应够快,够及时。实际测试中,就是拔网线,等半分钟再插上,看谁最先恢复数据库连接。HikariCP 又胜出。

金笛短信中间件WEB版集成光速数据库连接池,在各种数据库环境下表现异常稳定。有的客户在局域网连接阿里云主机数据库因为不明原因,间歇性断网的情况,也没有影响短信发送。实测支持SQLServer、Oracle、MySQL,支持win和linux各个版本。

 

夏日来临, 随着极端天气出现, 各地自然灾害频发。 保障人民生命财产安全,在险情出现端倪时,将预警信息第一时间发出,显得非常重要。

 

在山洪预警系统中,可靠性非常重要。没有了可靠性,一切功能都无从谈起。前端所有的设备都是在出现危险的时候,让告警信息能够及时发出。构建高可用的告警系统,可靠性是关键。

 

如何提高可靠性呢?可靠性都是相对的。比如短信的可靠性肯定高于邮件等其它方式。我们还可以通过高可用的方式,来提高系统的可靠性。具体说来,有如下几点可以注意:

 

第一,   尽量减少各系统之间的耦合关系,用更底层、更简单、更模块化的系统替代复杂的系统。山洪预警从前端传感器,到后端短信告警,任何一个环节出问题,告警信息都不能正常发出。降低各系统的耦合关系,可以将信息象流水线一样,从一个节点流向下一个节点。

第二,   尽量实现双备双活,平时2套系统都可以正常工作,不是一主一备的关系,2套系统都是主系统。当发送告警信息时,同时通过2套系统发出。任何一套系统出现故障,都不影响信息的发出。

第三,   尽量使用软硬一体化设备,减少对操作系统和网络的依赖。同时可以减少病毒感染造成操作系统的故障。

第四,   平常注意维护。每隔一段时间,需要测试一下预警系统是否能正常工作,以便于紧急时能发出预警信息。

 现如今,联网的设备越来越多,种类越来越丰富,功能多种多样,通信协议却差别很大。有实现传感器数据采集的,有实现告警通知提醒的,有下发指令到终端设备的。通讯方式有基于移动网的,有基于物联网的,有基于卫星报文或Lora的。对不同终端设备进行采集,统一管理是个比较头疼的问题。因为他们来自不同的厂商,采用不同的协议。

 

金笛物联网中间件是一个基于物联网的数据交换平台。可以采集不同厂家的终端的数据,在平台进行会聚,并在不同设备之间进行数据交换。中间件将各种硬件通讯终端底层进行封装, 对用户提供更友好、更简单的统一HTTP接口或数据库接口或邮件接口。

 

金笛物联网中间件示意图

Driver是金笛物联网中间件支持的多种硬件设备驱动。 Gateway是对应一种收发的数据通道。支持短信、mqtt、lora、北斗等协议。中间件可采集各种终端设备的数据,并将数据存储并转发到其它设备上,实现一点对一点或一点对多点的数据通信。存储转发机制保障数据的可靠性。 Driver插件的机制保证中间件架构的灵活性,可以随时根据客户的终端类型扩展。

 

使用金笛物联网中间件对不同种类的终端设备进行统一的数据采集,并将采集到的数据加工处理后,下发到指定终端或指定手机上,可实时进行告警提醒、指令下发等操作。金笛物联网中间件统一的数据平台降低了各种设备维护的复杂性。对各种数据进行统一管理,提高了可靠性。

 

管理员可登录后台可对各种终端状态进行远程监控。并可对发送的数据队列进行监控。对已发送的数据记录进行查询、检索。

 

采用金笛物联网中间件,比DTU-网站上报方式更可靠、灵活,多了数据交换和数据透视能力。

目前该系统在多个大型水电站多点监测项目中运转良好。

企业管理者想要公司发展的越来越好,除了管理制度需要更加的完善,员工的工作效率也是非常重要的部分,而想要提高办公效率,协同办公,就得注重企业即时通讯软件工具的利用,因为它能让内部的沟通变的无障碍,工作任务的落实完成更有效率。现在越来越多的企业会引进企业即时通讯软件进行标准化的管理,那么它的出现能够给企业带来哪些变化呢?

企业即时通讯软件能够给企业带来哪些改变

企业即时通讯软件可以作为统一的工作门户,像龙笛即时通,它拥有丰富的集成开发接口,支持和业务系统自由对接。可以集成内部已有的业务系统,如OA办公系统,财务系统等,也可以为已有的业务系统增加应用入口,通过消息推送和单点登录的接口快速集成 OA、财务、人事、ERP 等系统,将业务系统中的消息以直观的卡片形式通知到关键人。办公人员可以根据需要点击进行处理,随时随地都可以点击处理,进而提高办事效率。 同时它还提供了一些办公场景下的常见应用,比如:文件传输助手、工作汇报、群空间、网盘、企业邮箱集成等应用。企业可以自行创建一些新的服务号应用如文化建设、办公小助手等,结合这些应用为不同部门岗位快速搭建个性化的工作门户,从而让办公的效率翻倍。

龙笛企业实时通讯软件的目的就是为企业搭建高效沟通交流的平台,让协同办公更加高效,加强各个部门人员的联系共同促进企业的发展。在使用有它的时候就能够发现软件的优势很大,它即时一个在线的通讯录软件,也是一个办公的得力助手,可以让员工知道每日工作任务,对于上级下发的任务能够及时回复与处理,做好无缝连接,避免出现忘记的现象。

企业即时通讯软件带来这些改变都是益处吗

对于企业即时通讯软件做出的改变对于员工来说是一种挑战,刚接触肯定对软件的使用以及办公处理方式肯定会不适应,就会产生抵触心理,这个时候就会给员工带来不利影响。因此企业应该要做好各种准备工作,加强软件的学习,改变员工的办公思想观念。对于较为年轻或者乐于接受新事物的员工就会激发工作的激情,善于应用软件的优势处理工作事物,以前协调处理难得工作通过软件的沟通协助就能够快速响应解决,节省时间,尤其对于部门相互配合的工作。由此可见,企业即时通讯软件的使用肯定是具有挑战性,但是通过过渡期就会发现企业员工发生的变化以及工作模式也就发生的质的改变,肯定是所有的改变都是有利于企业发展。

以上就是企业即时通讯软件给企业带来改变的相关内容,即时通讯软件是一种高效的企业沟通协助管理软件,还能保障企业文件数据安全。它的出现肯定会给企业带来影响,总体来说肯定是积极作用要大于消极影响,想要发挥出这样的作用关键在于企业的应运方法。

智能化的核心,是感知和动作,如同大脑与手脚。各种感知设备触发短信报警,在出现问题时第一时间通知相关负责人,做出响应和处置。短信以及时、可靠的特点,成为信息告警的首选,广泛应用于网管监控、山洪预警等项目中。

以山体滑坡自然灾害为例。在滑坡发生前,肯定有蛛丝马迹。比如,山体出现比较大的裂缝,发生位移、沉降等。当侦测到有比较大的缝隙时,第一时间短信告知相关负责人,通知相关村镇百姓及时疏散,就不至于发生大的伤亡事故。

再比如山洪预警。我国山地多,山洪多发。如何在山洪来临之前,第一时间告警非常关键。在监测到雨量达到警告值时,通知市县区防汛相关负责人,就会极大的减少损失。

长江大堤在出现管涌的时候,只需要一袋砂石就可能解决问题,成本不高于10元。当管涌没有及时处理,孔道扩大,基础被掏空引起塌陷,只要及时填补,只要10万元就能解决问题。如果此时还没有及时处理,造成决堤,决堤口在10米内,要1000万才能解决问题。当决堤口继续扩大,变成10公里,可能需要10个亿才能解决问题。因此造成的村庄城镇淹没,百姓流离,生命财产损失更不可计量,损失可能达数千亿之上。

森林防火、地震预警的意义都在于此。短信告警的作用在于,当问题还处于细微萌芽状态的时候,及时感知,及时告警并处置,就可以避免事态扩大。早期处理,可以极大的减少损失,并给处置留足充裕的时间。

金笛短信专注于短信技术20年,经历了2G/3G/4G/5G的各个阶段。2G/3G基本依赖于国外,4G我们积极追赶,5G我们超越并领先。

金笛MU5000基于5G工业模组,支持5G移动、电信、联通各个频段,并向下兼容4G/3G/2G各个频段,可靠性及发送速度无与伦比,每小时收发可达2000条,是传统2G短信设备的4~5倍。金笛MU5000核心算力达14,400DMIPS。80386CPU的算力是3~5DMIPS,是386CPU的2880~4800倍。1个DMIPS是每秒执行100万条指令,14400DMIPS相当于每秒运行144亿条指令。对于发送短信来说,这拥有了一颗强大的CPU心脏。

短信的发送一般要经过上行和下行两个阶段,上行是信息到基站,下行是基站到手机和终端。在上行阶段,又经历了PC服务器到USB口或串口再到短信设备再到基站这几个环节。其中影响发送速度的主要是短信设备这个环节。在2G时代,一条短信经过设备发射到基站并返回应答,要等五、六秒,这主要是由于设备的处理器的速度慢导致的。在5G时代,5G短信设备的CPU处理速度有了巨大提升,发送速度在1~2秒内。

倚天剑

金笛MU5000短信终端,赢在了速度,赢在了稳定性,是全球第一款5G全球通工业短信终端,当之无愧的成为短信告警应用的倚天之剑。

在上行阶段,PC端程序负责和设备通信。PC端程序一般通过中断和轮巡两种方式来进行端口数据收发。对USB口的短信设备来说,轮巡具有更好的速度和可靠性。金笛短信中间件web版,采用轮巡的方式和计算机串口打交道,同时又向上提供了各种数据库接口,供应用层程序调用,在计算机网络、移动网络和用户应用系统三者间架起可靠通信的桥梁。

金笛短信中间件web版,动态实时监控短信设备的工作状态,监控线程每隔固定频率呼唤一次短信设备,发送“AT”,短信设备返回I’m “OK”,说明短信设备是活着的。如果短信设备没有响应,就会由看门狗程序重新启动设备。中间件的keepalive与watchdog机制,保证所连接的各种短信设备时刻处于可用状态。

金笛短信中间件web版,支持多路自动负载均衡,支持同步、异步发送,支持发送优先、接收优先,支持手机APP,支持短信网关,支持NBIoT、Lora、北斗通信。最重要的是,支持跨平台,可无缝在windows与Linux系统间切换,日后升级与迁移,应用程序无需做任何改动。

金笛短信中间件web版,支持国产化数据库,通过JDBC与数据库建立连接,无需额外安装任何其它软件,连接池保证了连接可复用,并保持持续可用,在网络出现异常,连接中断后自动重试。当数据库关闭或重启后能自动恢复,无需干预,这点在虚拟化云平台下尤为重要。

金笛短信中间件web版,还支持IP MODEM。通过IP加port的方式使用网口短信猫,可实现短信设备、数据库、短信中间件分别部署到不同网络的不同服务器上,实现多平台共享使用短信系统,一机多用,降低了用户的购买成本。短信设备放在本地,换卡方便,也便于维护。

金笛短信中间件web版,经过10多年的打磨,是短信告警应用的屠龙之刀。

屠龙刀

短信告警,要的是可靠性与时效性。需要任何情况下,把信息可靠地及时地发送出去。金笛MU5000+金笛短信中间件,刀剑合璧。这倚天剑与屠龙刀,带着匠人二十年的磨砺,带着感恩的心,带着温度交给您。刀剑在手,世界我有。

本方案采用成熟稳定的金笛短信web中间件,为应用系统提供统一的短信接入服务,实现应用系统的短信发送功能。

具体实现功能如下:

事件提醒:当有事件需要通知时,登陆短信平台发送相关事件信息到相关负责人(或文书)的手机上,以提醒其及时处理。

日程提醒:根据日程安排的内容(包括活动名称、时间、地点、人员等),设定一个时刻发送短信,及时提醒活动参加者。

会议通知:及时通知相关部门或人员参加会议。无论参加人员在何处,无论有多少人员,通过短信一次性快速地将会议通知传达到部门办公室负责人或参会人员的手机上,大大提高会议组织效率。

业务系统接入:区各部门涉及到短信功能的业务系统能快速方便的接入并使用短信网关接口实现短信发送相关功能。

(1)短信平台应具有以下功能:

短信推送接口:提供多种调用的形式(数据库方式、HTTP通信API)。

短信平台的性能:每秒至少推送100条短信息。当通信运营商平台出现问题时,短信平台可以进行短信息存储,等待通信运营商平台恢复正常后将没有发送成功的短信重试发送。

群发功能:对在短信平台内注册的用户或群用户发送短信通知,实现一对多的发送方式。

定时群发:用户成功登录系统后,可以在可以自定义电话,并设置不小于当前时间的某一个固定日期发送短信,发送后会存入数据库。

短信状态报告:当短信被发送后,系统会自动监测接收手机是否收到,以确保重要通知能够被收取人读取。若未收到就会及时重发,以免网络故障造成短信的发送接收失败。系统对每条发送过的短信均会生成“短信状态报告”,供应用程序使用。

短信管理功能:系统自动记录每条短信收发的详细数据并可进行日志化管理和实时监控。

(2)管理系统功能:

支持主流数据库的存储,支持主流操作系统,基于J2EE架构,具备跨平台可移植性,功能扩展性。

业务处理模块

智能化处理发起的短信发送请求,形成短信发送队列,并支持手动设置发送优先级功能。并做到对发送消息的内容审查,屏蔽非规定内容,核对收信人手机号码的正确性。

平台监控模块

提供有详尽的日志记录,便于管理员对系统状态进行监控和评估。

高级统计功能:对已发短信,支持按业务(事件)、组织(群组)和时间等要素来进行分类,管理员和业务操作员都能够按其需要进行统计。

短信回执功能:当接收用户收到短信后,短信平台可显示信息是否已经成功发送到接收用户手机。

数据管理模块

人性化的WEB管理平台,管理员可配置和查询平台的各种信息。

自定义群组划分:除按照部门组织结构对人群进行基本分类外,支持按照业务需要自由定义群组,自定义群组与部门定义不冲突。

短信群发:对人员进行分组,不用重复输入内容,实现向指定群体发送短信业务。

定时短信提醒:预先设定好发送的时间、发送间隔、次数、输入的短信内容和目的手机号,短信平台按时自动发送信息,用于到期通知、日程提醒等日常管理。

姓名保护:对特殊人群的姓名采用符号和字母组合方式进行保护,确保其姓名不被泄露。

系统维护管理模块

进行短信平台的日常管理与维护,并保障系统的安全性。短信平台管理权限控制:提供一个可视化管理界面,用来管理短信平台中各用户的具体权限。可通过建立角色,并与权限进行邦定,实现具体的权限控制。(如管理员、短息发送员等等)。

 深信服提供的金笛短信猫,可看作由五部分组成:短信猫主体、天线、电源适配器、SIM卡、串口线。图1所示为短信猫和天线两部分,图2所示为电源接口和串口线接口;图3所示为天线和SIM卡插槽,其中天线是可以拧下来的。

图片1

图1

 

图片2

 

图2

图片3

图3

 

 

SSL VPN设备上有COM1、COM2两个串口,我选择将短信猫接在COM1口上(当然接COM2口也可以)。

在简单了解了金笛短信猫之后,我们再去看看SSL VPN设备的配置。

在【SSL VPN设置】-【基础配置】-【短信认证配置】下启用短信认证,如图4所示。其他都可如图4所示进行设置,“SCSM号码”是你使用的SIM卡那家运营商提供的短信服务接入号,请联系您所使用SIM卡的当地运营商;“短信使用的串口”提供的选择项有“串口0”和“串口1”,而我们接的是COM1口,所以选择“串口0”;如果接的是COM2口,那就要选择“串口1”了。

 

图片4

 

图4

 

 

 

 

  要对用户启用短信认证,还要在用户信息栏输入其手机号,选择“私有用户”(短信只能发给一个人,公有用户那谁收),选一种主要认证方式,辅助认证选“短信”,如图5所示。

 

图片5

图5

 

接下来,我们再来看看短信认证如何使用。前提:如图5所示,主要认证我们已经选择为“用户名/密码”认证。

 

图片6

 

图6

 

如图6所示,输入用户名、密码进行完主要认证之后,就弹出图7所示的界面,几秒钟之后,你号码为“18612345678”的手机就会收到短信,短信中包含一个6位数字密码。输入此密码,点击“提交”,认证通过,即可进入资源界面。

短信的内容大致为你设置的“自定义短息内容”+“6位数字密码”,此处大概为“SSL VPN短信验证密码为:863721”这样一条内容,信息来自短信猫内插的那张SIM卡。

多说一点,如果短信密码的时效尚未过期,你下次登录还可以使用,如图8所示。那时效是多久呢?和图4中的设置有关,我设置的是10分钟,可调节的时间范围为1分钟到1天。

如果没有收到短信,可点击“重新获取”。

 

 

图片7

图7

 

图片8

 

图8

下载地址:

一、功能概述
常规需求:很多工业现场要求报警发生后能够通过手机短信通知相关值班人员。
组态王中的实现方法:利用金笛的MG35短信模块,当报警发生后通过此模块发送报警信息。
二、工程实例
以某工业现场应用为例,需要对采集的温度的高限报警、低限报警进行报警提示。
三、操作步骤:
报警后发送手机短信必须借助于金笛的MG35模块,并且在MG35模块中放一张可以正常发送短信的手机卡。组态王提供MG35的驱动程序,通过驱动程序控制手机短信的发送。
1、驱动程序介绍:
本驱动支持组态王和金笛MG35 Terminal设备之间进行通讯,发送、接收短信息。
组态王定义设备时请选择:智能模块->SIEMENS->MG35 Terminal
地址设定:任意
定义串口参数:
波特率:9600 (19200、38500、可选)
数据位:8
停止位:1
校验方式:无校验(奇校验、偶校验可选)

详细步骤请下载:

 (一)问题现象:

1、在OA中发送短信息,但是收不到短信。

 

(二)排查思路:

通常情况下金笛短信猫出现的问题主要是不能发送短信息,当出现这种情况的时候,首先确认用户是否可以通过金笛的系统直接发送短信,然后请按照以下的步凑进行排查:

 

  1. 插件是否正常启用?

 

  1. 人员是否有权限?

 

  1. 直接使用首页右上角短信图标发送短信是否能收到?

 

  1. 询问用户金笛短信猫是否是从283升级的?

 

(三)排查方法:

 

  1. 插件是否正常启用:

检查日志文件中是否含有“金笛短信发送系统 插件装载成功!”标识

如有请继续看下一步

如果没有,请检查用户的加密狗中时候含有“短信集成接口“和”金笛短信猫”

如果没有请联系商务

如果有,请检查用户yyoa/ext/jdsm/文件夹是否存在或者文件夹中plugin.xml是否存在

  1. 人员是否有权限:

重启服务,在系统管理员-插件管理-短信插件中设置允许发送和允许转移的人员,保证该人员个人资料中填写了手机号码。

  1. 直接使用首页右上角短信图标发送短信无法收到,请按照以下步凑进行检测:
    1. 确认sqlserver2000打上了SP4补丁,且sqlserver版本号为8.00.2039或以上
    2. 开始-运行-输入CMD打开命令行 输入“telnet数据库IP端口号”  看是否可以连接上,如果连接不上,检查IP地址是否正确,如正确,请先打开“开始-> 程序-> Microsoft   SQL   Server-> 服务器网络实用工具-常规页,启用的协议里有个'TCP/IP ',点击它的属性,查看端口是否和你之前telnet的端口一致 “,到这里,应该可以telnet通ip地址和端口了,如果通了请参考下一步。
    3. Sqlserver服务器,进入查询分析器,使用配置文件中的用户名密码登录服务器,看是否可以登陆成功,如果不成功,请确认用户名密码是否正确,如果成功,请进行下一步
    4. 打开sqlserver企业管理器,找到短信发送表T_SendTask所在数据库,检查数据库名和DATEBASENAME参数是否一致
  2. 如果使用首页右上角短信图标发送短信可以收到,消息转移无法收到,请看系统开关设置中“离线时才接收短信”这个开关的状态。
  3. 用户如果是从283以前就是用金笛短信猫的,在用户升级283以后,如果没有更换加密狗,或者加密狗中只有“短信集成接口”没有“金笛短信插件”,哪么以前开发的金笛短信插件可以直接使用。如果用户加密狗中包含了“短信集成接口”和“金笛短信插件”,且升级之前通过2次开发使用过金笛短信插件的话,只需要把原系统中的“usercfg/ext/jdSM/conf.xml”拷贝至升级后的283的“yyoa/ext/jdsm”中替换同名文件即可。如果没有找到usercfg/ext/jdSM,请参考项目安装包中的”yyoa/ext/”下面文件夹名称,摘到在“usercfg/ext”下同名的文件夹,将其中的conf.xml拷贝至升级后的283的“yyoa/ext/jdsm”中替换同名文件即可

一. 短信猫概述

所谓短信猫,其实是一种用来收发短信的设备,他和我们用的手机一样,需要手机SIM卡的支持,在需要收发短信的时候,在短信猫里面插入一张我们平时用的手机卡,插上电源,通过(USB或者串口、网口)数据线和电脑相连,在电脑的应用管理软件中就可以实现短信收发的功能。

短信猫俗称“短信群发设备”或者“短信群发器”,接口分为:USB接口,RS232串口,和网口。规格有:单口,四口,八口,十六口,三十二口。所谓的单口就是插一张卡,多口就是插多张卡。设备的最高速度可以达到700条/小时,比如单口的一小时发700条,那八口的就是8*700=5600条。近几年移动,联通为杜绝垃圾短信,采取了网关限速的方式限制了短信的发送量。现在全国基本速度都保持在200条/小时。

二. 业务概述

     在我们平常的项目实施中,客户的oa系统经常需要整合短信,在节约硬件成本的基础上,选择使用短信猫是一个比较容易让客户接受的方案。在以往的整合案例中,大家都知道我们公司提供了一个叫ezSMS的接口程序,但是短信猫很多种,型号也不一样,所以每一个项目我们用固定的ezSMS进行配置总是会出现很多各种各样的问题,在ezSMS不稳定的情况下,我们就需要找到一种好的方式解决这个问题。在公司研发和金笛短信猫厂商的沟通下,我们得知,金笛的短信猫提供了他们的中间件,此中间件在配置好以后能在我们oa的数据库中建立四张表,用于记录我们oa系统收发短信的信息,同时我们系统数据库也提供了相应的表进行数据记录,所以只要我们能建立一个触发器,那么就完全可以不再使用ezSMS,从而完成短信收发功能。

此文档仅限于金笛短信猫,其他品牌短信猫情况不详。下面就让我来仔细介绍一下配置过程。

新增触发器

在我们系统中,记录短信收发的表叫ezoffice.MS_INFOFLOW,打开此表新建一个触发器,代码如下:

USE [oa]

GO

/****** 对象:  Trigger [ezoffice].[trg_ms_infoflow]     ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

create Trigger [ezoffice].[trg_ms_infoflow] on [ezoffice].[MS_INFOFLOW]for insert as begin   insert into t_sendtask (destnumber, content) select receivecode,mscontent from Insertedend

输入相应数据测试成功,代表金笛短信设备发送短信成功,然后再进入oa系统测试短信发送情况,如果成功,整个过程就完成。