基于FETION飞信协议的短信机器人,非常适用于实时系统,自动化控制等领域。使用飞信机器人,服务器有任何状况都可以发送短信到手机上,这样对于系统管理者来说很是方便。
下面是飞信在centos 5系统的安装过程。
环境要求:
1.首先手机要开通中国移动的飞信业务。目前使用飞信发送短信是免费的。
2.下载飞信的linux客户端程序。
3.安装飞信所需要的环境。在centos 5下安装很容易,飞信需要Glibc2.4以上的版本。
1.下载最新飞信2009
# wget http://www.it-adv.net/fetion/downng/fetion20091117-linux.tar.gz
# tar -xzvf fetion20091117-linux.tar.gz
# mv fx /usr/local/fetion/
# cp /usr/local/fetion/*.so* /usr/lib/
2.安装飞信更新
2010年7月25日3.3不能登录,更新程序下载地址:
http://bbs.it-adv.net/viewthread.php?tid=1010&extra=page%3D1
3.测试一下发送短信
# LD_LIBRARY_PATH=/usr/local/fetion/ /usr/local/fetion/fetion --mobile=*** --pwd=*** --to=*** --msg-type=1
--msg-utf8="hello"
如果出现SIP-C/2.0 280 Send SMS OK就表示发送成功!
4.监控服务器脚本
#!/bin/sh
test -e "check.php" && rm -f check.php
test -e "wget-log" && rm -f wget-log
ip=`ifconfig eth0 |awk '/inet/ {print $2}'|awk -F ":" '{print $2}'`
wget -b "http://127.0.0.1/check.php" > /dev/null 2>&1
sleep 2
tom=`cat check.php`
if
[ "$tom" == "200" ] ;then
echo "`date +%d/%m/%Y:%H:%M:%S` --apache server is ok!"
echo " "
echo "-------------------------------------------------------------"
exit 0
elif
[ "$tom" != "200" ] ;then
/etc/init.d/httpd restart
/usr/local/fetion/fetion --mobile=**** --pwd=**** --to=**** --msg-type=1 --msg-
utf8="$ip apache server is down! restart is successful!"
echo " "
echo "-------------------------------------------------------------"
exit 0
fi
check.php代码
<?php
print "200";
?>
5.加入到任务计划,每两分钟检查一次
# crontab -e
*/2 * * * * /usr/local/check.sh
>> 命令行参数使用说明 <<
以下参数提供登录用的账号密码(三种方式,手机号-密码 飞信号-密码 文件--索引)
--mobile=[手机号] 登录手机号
--sid=[飞信号] 登录飞信号
--pwd=[密码] 登录密码
--config=[文件名] 存储手机号、密码的文件。
--index=[索引号] 索引
以下参数提供接收者
--to=[手机号/飞信号/URI] 接收消息的手机号/飞信号/URI.如果知道对方URI,则只需自己在对方好友列表,无需
对方在自己好友列表就能发送。20090203003版本后,支持多个号码,中间用,逗号分隔
--msg-utf8=[信息]
发送的消息,UTF8编码
--msg-gb=[信息]
发送的消息,GB编码
--file-utf8=[文件utf8格式]
发送文件内容
--file-gb=[文件gb格式]
发送文件内容
--msg-type=[0/1/2]
发送消息类型:普通消息 长消息 智能短信
小工具
--query-cmcc-no 查询移动公司手机段
以下为可选项
--debug
显示调试信息
--hide
隐身登录
--proxy-ip=http代理ip
--proxy-port=http代理端口