2011-04-02 | #1 (permalink) |
论坛管理员
注册日期: 2009-06-30
帖子: 861
|
金笛短信JAVA中间件Linux多口连发版v3.4 (2011.04.02)
linux以稳定著称,USB短信猫(猫池)方便连接,JAVA方便开发。我公司为方便用户,提供在Linux下使用USB短信猫(猫池)的JAVA中间件,无疑是JAVA开发用户的一大福音。欢迎下载使用,并多提宝贵意见。
金笛短信中间件Linux多口连发版v3.4 (2011.04.02) ============================================== 一、主要功能: 在Linux系统下用JAVA通过短信猫(猫池)实现短信批量发送和接收。提供3种短信发送和接收方式: 1、MySQL数据库:向数据库插入一条待发送记录,中间件服务进程会自动定时扫描数据库,如果有未发送记录会自动发送出去。发送完毕会记录发送成功和失败的状态。 2、HTTP请求:中间件内嵌web服务,在任何一台PC上打开浏览器输入网址即可实现短信发送和阅读。也可以通过这种方式,在其它软件里调用HTTP GET请求,通过URL参数传递方式嵌入短信收发功能。 3、JAVA编程:直接调用JAVA类实现短信收发。具体可参考examples目录下ReadMessages.java和SendMessage.java例子。 二、安装及使用步骤 1、安装前的准备工作: a)安装前请先查看Linux的内核版本: #uname -a Linux localhost.localdomain 2.6.18-53.el5 #1 SMP Wed Oct 10 16:34:02 EDT 2007 i686 i686 i386 GNU/Linux 如果是2.4以下(含2.4)版本的linux内核,支持串口和网口猫和猫池,不支持USB猫和USB猫池,如果是2.6以上(含2.6)版本的linux内核,连接好USB猫或者猫池电源和数据线,系统会自动发现并生成设备名: #ls -l /dev/ttyUSB* crw-rw---- 1 root uucp 188, 0 04-02 07:45 /dev/ttyUSB0 crw-rw---- 1 root uucp 188, 1 04-02 07:45 /dev/ttyUSB1 crw-rw---- 1 root uucp 188, 2 04-02 07:45 /dev/ttyUSB2 crw-rw---- 1 root uucp 188, 3 04-02 08:16 /dev/ttyUSB3 crw-rw---- 1 root uucp 188, 4 04-02 07:45 /dev/ttyUSB4 crw-rw---- 1 root uucp 188, 5 04-02 07:45 /dev/ttyUSB5 crw-rw---- 1 root uucp 188, 6 04-02 07:45 /dev/ttyUSB6 crw-rw---- 1 root uucp 188, 7 04-02 07:45 /dev/ttyUSB7 b)请确认系统是否安装并启动MySQL数据库。 #ps -ef |grep mysqld root 13362 1 0 08:19 pts/1 00:00:00 /bin/sh /usr/bin/mysqld_safe --defaults-file=/etc/my.cnf --pid-file=/var/run/mysqld/mysqld.pid --log-error=/var/log/mysqld.log mysql 13398 13362 0 08:19 pts/1 00:00:00 /usr/libexec/mysqld --defaults-file=/etc/my.cnf --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-locking --socket=/var/lib/mysql/mysql.sock root 13457 13440 0 08:22 pts/1 00:00:00 grep mysqld 如果没有安装MySQL,请先安装MySQL并确认服务能正常启动。 2、安装 a)安装目录没有限制,在你喜欢的目录展开tar包即可。 # tar xvzf jdsmsserver-v3.4-xxxxxxxx.tar.gz (xxxxxxxx为发布的日期) b)初始化数据库和表结构 # ./init_db.sh Enter password: (此处输入MySQL root管理员密码) c)修改配置文件,设置端口号和波特率,MySQL数据库访问密码。 在 conf/SMSServer.conf配置文件里,找到这几行: myModem0.port=/dev/ttyUSB3 myModem0.baudrate=115200 myModem0.manufacturer=Wavecom myModem0.model=M1306B 把ttyUSB3 替换为你系统实际使用的设备名。 把波特率替换为你的短信猫(猫池)实际的波特率。 另外两项,如果您用的不是Wavecom的模块,可以设置为空,系统可以自动识别你实际安装的设备出来。 如果有多个口,可以以此类推,依次设置好。 db1.username=root db1.password= 这是访问MySQL数据库时用到的用户名和密码,请修改为实际的密码。如果没有密码,请留空。 c)启动服务 # ./start_jdsms.sh 启动成功后,会出现如下信息: JDSMSServer是通过短信猫发送和接收短信的JAVA开发包。 此开发包支持多个端口。 网址: http://www.sendsms.cn SendSMS API version: 3.4.6 JDSMSServer version: 3.4.6 log4j:WARN No appenders could be found for logger (sendsms). log4j:WARN Please initialize the log4j system properly. 2011-4-2 9:07:30 org.eclipse.jetty.util.log.Slf4jLog info 信息: jetty-7.1.4.v20100610 2011-4-2 9:07:30 org.eclipse.jetty.util.log.Slf4jLog info 信息: Started SelectChannelConnector@0.0.0.0:8090 3、发送测试 a) 用例程进行收发测试。进入examples目录,有2个java源程序,SendMessage.java 和 ReadMessages.java 。SendMessage.java 实现通过指定端口、指定波特率、指定手机发送指定内容。ReadMessages.java 指定短信猫SIM上收到的短信内容。修改如下地方: SerialModemGateway gateway = new SerialModemGateway("jindi", "/dev/ttyUSB3",115200, "", ""); jindi是自定义的端口标识,主要用于区分不同的端口。/dev/ttyUSB3 是端口设备名,需要修改。115200是短信猫波特率。金笛短信猫默认设置都是115200,如果您的设备不是这个波特率,请修改。 msg = new OutboundMessage("13601019694", "您好!欢迎使用金笛JAVA短信开发包V3.4。"); 请修改为您的手机号码和要发送的短信内容。 # export LANG=zh_CN.GB2312 # ../jdk1.6/bin/javac SendMessage.java # ../jkd1.6/bin/javac ReadMessages.java # ../jdk1.6/bin/java SendMessage # ../jdk1.6/bin/java ReadMessages b) 用数据库进行发送测试。 向数据库插入一条记录 #./insert_db.sh 等大约10秒,看看手机是否收到了短信? 没有? 晕死~ 哦哦,忘了告诉你了,看看 sql/insert_db.sql 里有这样一行: insert into smsserver_out (type,recipient,text,encoding,create_date) values ('O','13601019694','欢迎使用金笛短信中间件Linux+Java版<www.sendsms.cn>','U', now()); 把手机号码改为您的,再试一次,呵呵。 c) 用浏览器进行HTTP发送测试 http://localhost:8090/send?password=1111&recipient=13601019694&text=HTTP%E7%9F%AD%E4%BF%A1%E5%8F%91%E9%80%81&encoding=U 返回xml格式发送结果。 <send> <error>0</error> <message_status>SENT</message_status> <ref_no>27</ref_no> <gateway>myModem0</gateway> </send> 三、常见故障及诊断 1、端口找不到 请用minicom -s来设置端口和波特率,设置好后在minicom通过at指令测试设备是否能正常工作? ATI3 (看设备固件版本) AT+CCID(看是否可以读到SIM) AT+CSQ (看是否有网络信号) 2、端口被占用 如果已经启动了短信服务,再执行SendMessage不成功。反之,如SendMessage正在运行,再启动短信服务也不成功。 在运行短信程序之前,确保短信端口没有被占用。 3、收到短信乱码 在连接数据库时,请加上 --default-character-set=gb2312 参数。 mysql -u root --default-character-set=gb2312 四、购买 试用版发送短信内容含有广告。请联系购买正式版。 金笛短信网 www.sendsms.cn 关于数据库表结构的详细说明请参考《金笛短信服务器用户手册》。 http://www.sendsms.cn/download/linux-java-gsmmodem-jdsmsserver-v3.4/jdsmsserver-v3.4-linux-x86-trial-20110402.tar.gz
__________________
让世界倾听我们的笛声 |
2012-04-04 | #2 (permalink) |
初级会员
注册日期: 2010-12-01
帖子: 1
|
请问,这个只是针对 usb 猫池的吗? 我们购买的是 RJ 45 (地址:http://www.sendsms.cn/hard40.htm ),请问可以用这个吗?
我们购买了 win 的中间件,但是我们现在想换到linux下用。 我们按照你们这个 http://www.sendsms.cn/zjj/linux.html 这个去做测试,在执行到命令 # jdsmsd 时,得到的信息是: Segmentation fault (core dumped) ,所以请问还有没有其他的测试版供我们先测试下看看效果,测试成功我们才能让领导批准购买,所以希望得到你们的前期帮助。谢谢。 此帖于 2012-04-04 09:34 被 lingfeng 编辑。 |
2012-04-05 | #3 (permalink) |
论坛管理员
注册日期: 2009-06-30
帖子: 861
|
请试用这个版本,
试用版下载地址:http://www.sendsms.com.cn/soft25.htm [QUOTE=lingfeng;4401]请问,这个只是针对 usb 猫池的吗? 我们购买的是 RJ 45 (地址:[url=http://www.sendsms.cn/hard40.htm]
__________________
让世界倾听我们的笛声 |