基于JCFXBL与GSM短信猫的短信中心建设方案
本系列文章由ex_net(张建波)编写,转载请注明出处。
/ex_net/article/details/8786150
作者:张建波 邮箱: 281451020@ 电话:13577062679 欢迎来电交流!
目前国内采用互联网网关作为短信群发的服务平台很多,但是都有一个问题就是如果每月的短信发送量达不到最低限额的时候是无法分配一个专有通道进行“短信接收(上行)”的。
在实际项目中,很多中小企业更多需要的可能是上行。就拿笔者最近接手的一个客户来说,他需要定期通过短信方式收集旗下供销商、经销商的销售或库存数据。那么如果采用网关性的短信服务平台的话,每个月最少需要6500元左右的费用,才能获取一个1065000xxxxxxx的固定号码提供给下属。
针对这个问题,我为他提供了一个相对廉价的“短信方案”。上行采用GSM短信猫接收短信,下行采用网关回复短信。这样一来费用是最低的。1张可以接收短信的手机卡,每月月租最低就是15元钱,部分地区的特别卡,可能就是5元(不打电话、不接电话、不上网)。下行采用网关去发,每条短信最低也就5~6分钱。
系统架构如下
为了方便大家测试,请准备以下东西:
(1)JCFXBL 服务平台
/detail/ex_net/5244844
(2).NET 2.0
.NET 4.0
(3)MS SQL
采用 SQL Express即可,/zh-cn/express/aa718378.aspx
(4)短信猫
这个东西到淘宝上转转吧, 串口的、USB接口的都可以。如果你是笔记本电脑,建议买个USB接口的。大概也就150元~200元左右
(5)GSM短信猫控制程序
目前该程序还不算完善,Bug难免。
完整的源代码可以从这里下载:
/detail/ex_net/5244886
特别鸣谢“吴俊海(along1976)”的PDU解码类库,该类库确实方便。
(6)SQL数据库相关表及存储过程
短信收件箱表
CREATE TABLE [dbo].[T_GSM_SMS_Inbox]([sj] [datetime] NULL,[phone] [nvarchar](50) NULL,[contentX] [nvarchar](500) NULL,[xRead] [nvarchar](10) NULL) ON [PRIMARY]
短信写入存储过程
create PROCEDURE [dbo].[ACT_GSM_WRITE_Inbox](@sj NVARCHAR(50),@phone NVARCHAR(50),@contentX NVARCHAR(500),@return_value int output,@return_msg NVARCHAR(100) output,@result NVARCHAR(100) output)ASINSERT INTO [HJDB].[dbo].[T_GSM_SMS_Inbox]([sj],[phone],[contentX])VALUES(@sj,@phone,@contentX)set @return_value=1set @return_msg =''OK''set @result=''''RETURN
如果还有不明白的地方,请在评论里回帖,笔者会尽快答复。问题多多,欢迎大家多多提点。