串口GSM短信设备Linux系统下开发调试
分享1. 串口短信设备测试
1) 安装组件lockdev minicom gnokii
Yum install lockdev minicom
Rpm –ivh gnokii-0.6.17-1.el5.rf.i386.rpm
2) Minicom设置
minicoms -s
设置短信猫com口和频率
我的是ttyS0
频率是 115200
选择第三个“Serial port setup”
修改成以上显示
选择Save setup as dfl,保存后,自动进入minicom超级终端
短信猫发送测试
at
at+Csq
at+cmgf=1
at+cmgs=手机号 回车
>敲test
按ctrl+z发送
1) 利用gnokii发送短信
先安装依赖软件包:
#yum install intltool glib2-devel glib2-static mysql-devel
下载软件包
#wget http://gnokii.org/download/gnokii/gnokii-0.6.31.tar.gz #自己到这个地址找个最新的来下载吧。
解压,编译并安装
#tar zxvf gnokii-0.6.31.tar.gz
#cd gnokii-0.6.31
#./configure
#gmake && gmake install
#cp Docs/sample/gnokiirc /etc/gnokiirc
配置文件
vi /etc/gnokiirc
[global]
port = /dev/ttyS0
model = AT
##同时需要注释掉mode = 6510
serial_baudrate = 115200
use_locking = no
#### use_locking 此项如果是yes,只能给一个人发短信
测试:
运行gnokii --identify
Received message type 06
IMEI : 352129000923087
Manufacturer : WAVECOM MODEM
Model : MULTIBAND 900E 1800
Product name : MULTIBAND 900E 1800
Revision : 651b09gg.Q2406A 428
Serial device: closing device
发短信:
echo -n "test by gnokii" |/usr/bin/gnokii --sendsms xxxxxxx(号码)
手机将会收到短信“test by gnokii ”
2. nagios与短信猫协作1) 修改command.cfg配置文件
commands.cfg行尾加入
# send sms define command{ command_name host-by-sms command_line /bin/echo -n "$NOTIFICATIONTYPE$ $HOSTNAME$/$HOSTADDRESS$ : host is $HOSTSTATE$ $SHORTDATETIME[ DISCUZ_CODE_1 ]quot; | /usr/bin/gnokii --sendsms $CONTACTPAGER$ 2>&1 > /dev/null } define command{ command_name service-by-sms command_line /bin/echo -n "$NOTIFICATIONTYPE$ $HOSTNAME$/$HOSTADDRESS$ : Service is $SERVICEDESC$ $SERVICESTATE$ $SHORTDATETIME[ DISCUZ_CODE_1 ]quot; | /usr/bin/gnokii --sendsms $CONTACTPAGER$ 2>&1 > /dev/null }
2) 将命令定义到模板中(templates.cfg )
在相应的contact模板,默认generic-contact
也可直接放到contacts.cfg中,优先级大于templates.cfg
service_notification_commands service-by-sms
host_notification_commands host-by-sms
3) 修改Nagios 联系人的配置文件 contacts.cfg
mail行下面加入
pager xxxxxxxxxxx
4) 相关注意事项
用nagios 报警需对tty和gnokii设置权限,ttyS0 每次重启都会恢复root权限,命令最好加入开机启动
chown -R nagios.nagios /usr/bin/gnokii
chown -R nagios.nagios /dev/ttyS0
回帖 ( 0 )