C# 短信猫(SMS cat) 操作源码开发经验
我曾经开发的某项目需要使用短信猫模块,要求使用C#编程操作。能独立使用的动态链接库之一就是网上流传的sms.dll,但它的功能较少,不能满足需求,鉴于一时找不到合适的完整代码,我深入研究了短信协议,借鉴了很多代码,开发了“C#短信猫操作类”,使用AT指令操作短信猫,达到完全自主可控、灵活使用的目的。代码已在多个生产环境使用,工作稳定高效。现将短信猫开发使用经验略作总结,供大家交流借鉴。
一、硬件选择
1、市场上的短信猫有GSM短信猫、CDMA短信猫等。用户可根据当地运营商情况选择信号较好,通信较稳定的一种。我研究的是GSM短信猫,没有研究过CDMA短信猫(我的一位朋友使用VB开发了CDMA短信猫程序,也用在了生产环境,工作稳定)。
2、GSM短信猫的生产厂家众多,产品质量参差不齐,产品价格从一百多到好几百都有。
3、GSM短信猫核心模块一般采用德国西门子和法国WAVECOM芯片居多,也有黑模块(可能导致通信不稳定)。在短信猫读取出来的机器码有:Cinterion, SIEMENS, WAVECOM等。
注:本人购买的某款短信猫,机器码为“wavec0m”,注意其中是数字“0”,而不是字母“o”,不知是不是黑模块哈。其中机器码为“Cinterion”的是西门子GSM/GPRS双模模块(MC35i),本人最后使用的就是这个,工作稳定。
4、短信猫工作稳定与否,收发短信成功率高不高,不仅取决于使用的是否是正品模块,还取决于短信猫外围电路的设计是否精良,如采用单片机控制,有看门狗电 路,外壳设计防电磁干扰等。一般来说100多元的产品质量较差,质量好的至少要在300元以上,当然也有更贵的,取决于用户需求。
5、短信猫有串口和USB口之分,其中USB口也是虚拟成串口使用。理论上串口短信猫工作更稳定,但需外接电源,而USB口可直接供电。
6、短信猫池。每个短信猫模块对应一个虚拟串口,与单口短信猫操作完全一样。
二、软件开发
我在网上搜索了很多关于C#操作短信猫的文章、代码,都不能较完整地解决我的需求。于是我购买了3种短信猫进行测试,潜心学习短信协议,花费不少短信费进 行调试,最终确定了一款工作稳定的短信猫,并开发出了稳定版本的C#短信猫软件,已在某项目中稳定运行了一年多,并已在几位网友的不同项目中正常使用。
三、参考资料
1、由王新全整理翻译的 《 SMS with the SMS PDU-mode》
2、豆丁网上的《PDU格式短信》,链接地址:http://www.docin.com/p-101990311.html
3、《WAVECOM 产品常用操作和AT 指令》
4、《PDU编码协议简单说明》
5、博客园“给我一杯酒”的博客《短信猫软件的实现(C#)》
PS:
要做好一个稳定的软件模块很不容易,尤其是操作硬件的软件,需要了解很多串口通信方面的知识。
当图便宜买到不稳定的短信猫或短信猫软件时,就明白了:一分钱一分货,也要防价格虚高。
C# 短信猫(SMS cat) 操作源码开发经验的更多相关文章
- wavecom短信猫常用AT命令
wavecom短信猫常用AT命令 一.一般命令 1. AT+CGMI 给出模块厂商的标识. 2. AT+CGMM 获得模块标识.这个命令用来得到支持的频带 (GSM 900,DCS 1800 或PCS ...
- zabbix使用短信猫实现报警
因为公司运维的对象是政府单位,所以在实际的监控过程中无法连接到外网,所以最后报警选择的媒介是短信猫,下边就是具体的实施过程. 一.面临的问题 因为手头上的设备是串口的短信猫,但是zabbix serv ...
- 在网页程序或Java程序中调用接口实现短信猫收发短信的解决方案
方案特点: 在网页程序或Java程序中调用接口实现短信猫收发短信的解决方案,简化软件开发流程,减少各应用系统相同模块的重复开发工作,提高系统稳定性和可靠性. 基于HTTP协议的开发接口 使用特点在网页 ...
- 基于Socket客户端局域网或广域网内共享同一短信猫收发短信的开发解决方案
可使同一网络(局域网或广域网)内众多客户端,共享一个短信猫设备短信服务器进行短信收发,短信服务器具备对客户端的管理功能. 下面是某市建设银行采用本短信二次开发平台时实施的系统方案图: 在该方案中,考虑 ...
- 短信猫 TIdTCPServer TIdTCPClient
短信猫 服务端: IdTCPServer1: TIdTCPServer; IdAntiFreeze1: TIdAntiFreeze; unit UnitSever; interface uses Wi ...
- Java应用短信猫
首先确定短信猫正常连接到主机,并安装SIM卡.先用超级终端测试短息猫能不能用.安装minicom:#sudo apt-get install minicom安装完成后,执行#sudo minicom ...
- centos6.5 短信猫部署发短信
本文为在centos下部署短信猫发短信使用,以下为具体环境和步骤说明,欢迎留言! 一.环境说明 服务器:centos6.5 x64 依赖包:lockdev-1.0.1-18.el6.x86_64.rp ...
- CDMA电信短信猫支持189等电信号码可二次开发
CDMA电信短信猫支持189等电信号码可二次开发 这款短信猫采用法国wavecom Q2358C模块,支持短信猫二次开发,可提供短信猫二次开发包下载测试.提供相关资料文档. 此款CDMA电信短信猫有串 ...
- VB短信猫开发包,支持超长短信
一.短信猫开发包(长短信/异步调用)说明: 短信猫开发包以OCX控件的形式提供,支持Windows平台下常用的开发工具:如VB.VB.net.VC++.Power Builder.C#.DELPH ...
随机推荐
- cocos2d-x 判断两条直线是否相交
bool GraphicsUtil::linesCross(b2Vec2 v0, b2Vec2 v1, b2Vec2 t0, b2Vec2 t1, b2Vec2 &intersectionPo ...
- 操作无法完成,因为文件夹已在另一个程序中打开(the action can't be completed because the folder or a file in it is open in another program)
解决方法: 启动任务管理器——性能——资源监视器——CPU选项卡——关联的句柄——搜索句柄 ——(输入)要删除的文件夹名——搜索到与文件夹名句柄相关联的进程 (由于此程序进程正在调用文件夹,才造成了对 ...
- apache2 添加perl支持
官方文档,很详细了. https://httpd.apache.org/docs/2.0/howto/cgi.html#configuring 我修改了/etc/apache2/sites-ava ...
- Introduction into ISO 27145 WWH-OBD
全球统一的重型发动机的车载诊断系统(WWH-OBD) ISO/PAS 27145 is intended to become the single communication standard for ...
- IOS 手机助手及越狱助手推荐
快装系列 1 快装助手(PC版) http://pc.kuaiapp.cn/ 2 快装越狱助手(PC版)http://www.kuaiapp.cn 3 快装商店(手机版)http://yueyu.ku ...
- influxdb ERR: error parsing query: found -, expected
ERR: error parsing query: found -, expected 使用时遇到这个问题,执行语句: select * FROM test10-cc-core01 本来以为和sql语 ...
- dom4j生成、解析xml
/** * 创建xml * @param obj 泛型对象 * @param entityPropertys 泛型对象的List集合 * @param Encode XML自定义编码类型 * @par ...
- java追加文件的几种方式
import java.io.BufferedWriter; import java.io.FileOutputStream; import java.io.FileWriter; import ja ...
- Center OS jdk tomcat安装
一.jdk安装 1.下载jdk jdk-6u26-linux-i586-rpm.bin 2 安装jdk #sh jdk-6u26-linux-i586-rpm.bin 3.#set ...
- LOCK TABLES
http://blog.csdn.net/zyz511919766/article/details/16342003 http://blog.csdn.net/zyz511919766/article ...