一、安装飞信
wget http://ebook.elain.org/tools/fetion20101205.tar.gz
tar -zxvf fetion20101205.tar.gz -C /usr/local
解压 fetion目录到 /usr/local/下
执行
ln -s /usr/local/fetion/lib/lib* /usr/lib/
添加要接收报警短信的手机号为飞信好友
测试 :/usr/local/fetion/fetion --mobile=1383838438 --pwd=1383838438 --to=1383838438 --msg-type=1 --msg-utf8="test by hbchen"
第一次运行,会需要验证码,些验证码图片在 /usr/local/fetion/ 生成,输入即可,注意区分大小写!!!,会缓存。
4、创建fetion.sh短信发送脚本
#vim /usr/bin/fetion.sh
文件内容为如下:
#!/bin/sh
#send sms by fetion
#Write by herb
#$1, $2, $3 mean Recipient, Subject and Message
/usr/local/fetion/fetion --mobile=1383838438 --pwd=3838 --to=$1 --msg-utf8="$2, $3"
保存后测试脚本:
# chmod +x /usr/bin/fetion.sh
# /usr/bin/fetion.sh 1383838438 hello world
检查手机是否收到消息
5、新增zabbix的Media Type
登录到zabbix,进入“Administration" >> ”Media types",点击右上角“Create Media Type"。
Description填"Fetion"或其它名称,Type选择"Script",Script填”fetion.sh"。
点击"Save"保存配置。
# vim /etc/zabbix/zabbix_server.conf
找到AlertScriptsPath参数并修改成 AlertScriptsPath=/usr/bin/
重启zabbix-server服务
6、新增zabbix的Actions配置
登录到zabbix,进入"Configation" >> "Actions",点击右上角"Create Actions"。
输入”Name",其它都默认
点击右侧“Action Operations"下的"New"按钮,"Operation Type"选择"Send message","Send Message to"选择一个或多个要发送消息的用户组,”Send only to"选择我们之前新增的Fetion。
点击"Save"保存配置。
7、zabbix用户配置
登录到zabbix, 进入"Adimistration" >> "Users",在之前选定要发送消息的组里的Members栏位里选择一个用户,例如选择Admin用户。
在用户信息修改界面最下方的”Media"处点击"Add"按钮。
Type选择"Fetion",Send to填入收信手机号码,其它参数按需修改,点击Add添加。
点击"Save"保存配置。
至此配置完成,触发一个警报试下手机是否收到讯息。
1.机器人飞信报警部分
FetionRobot官网: http://www.it-adv.NET/
fetion 20101205002版 http://bbs.it-adv.net/viewthread.php?tid=1081&extra=&page=1
由于没有提供源码,我找半天也没找到完整的下载地址,好不容易找到个能用的:
fetion_20101205002-Linux.tar.gz 在CentOS 5.8 x64下可用,需要安装gcc
tar zxvf fetion_20101205002-linux.tar.gz
cd fetion
LD_LIBRARY_PATH=./lib ./fetion --mobile=125xxxxxxxx --pwd=xxxxxxx --to=135xxxxxxxx --msg-type=1 --msg-utf8=测试飞信
第一次运行的话,会需要输入图片验证码:默认会在当前目录下生成一个以手机号开头的.jpg图片。
人工误别后输入即可,注意区分大小写!!!,会缓存。
功能 | 命令格式(命令 对象 内容) | 说明 |
---|---|---|
短 信 | sms mobile[1]/sid[2]/uri[3] message[4] | 向用户发送短信[5] |
长 短 信 | longsms mobile/sid/uri message | 向用户发送长短信[6] |
智能消息 | smartmsg mobile/sid/uri message | 如果不在线,则发手机短信 |
在线消息 | chat mobile/sid/uri message | 只有当对方激活会话时有效 |
增加好友 | buddy-add mobile desc[7] localname | localname[8]仅为对方为手机用户时有效 |
删除好友 | buddy-delete userid | 删除机器人好友列表里的好友,购买授权后可用 。[9] |
邀请好友 | mobile-invite mobile desc[10] | 发出邀请使用飞信[11] |
屏蔽好友 | buddy-block mobile/uri/sid | |
解除屏蔽 | buddy-unblock mobile/uri/sid | |
接受邀请 | accept_contact_request userid | 只接受对方加机器人为好友。机器人不加对方 |
获取信息 | contact-info mobile/uri | 获取联系人信息,购买授权后可用 。 |
登录状态 | status code status-desc code[12] desc[13] | 修改登录状态 |
修改心情 | impresa | 显示一段话,可以是链接 |
修改呢称 | nickname | 显示在对方飞信上的名称 |
系统退出 | exit mobile |
注释说明
↑ 手机号
↑ 飞信号
↑ 统一定位符,有飞信好友格式和手机好友格式
↑ 短信内容,特殊字符要替换一下(空格= 换行=\n,>=>)
↑ 返回参数:Service Unreachable(对方拒收飞信短信),bad gateway(URI错)
↑ 一条短信只能容纳140字节,超长的短信就要分成多条来发送,如果按长短信来发送,某些手机可以把多条并成一条显示
↑ 加为好友的申请信息
↑ 在本地的显示名称,只有本地有效,
↑ 尽量使用URI来删除,否则可能失败
↑ 邀请短信时显示邀请人的姓名
↑ 尽量少用以免帐号被封
↑ online/busy/away/hidden
↑ 个性化信息,如外出就餐等
cat fetion.sh
#!/bin/bash
#$1, $2, $3 mean Recipient, Subject and Message
fetion_dir=/usr/local/fetion
LD_LIBRARY_PATH=${fetion_dir}/lib ${fetion_dir}/fetion --mobile=13534283278 --pwd=13800138000 --to=$1 --msg-type=1 --msg-utf8="$2 $3"
保存后测试脚本:
chmod a+x fetion.sh
./fetion.sh 135xxxxxxxx hello world
检查手机是否收到消息
登录到zabbix,进入“Administration" >> ”Media types",点击右上角“Create Media Type"。
Description填"Fetion"或其它名称,Type选择"Script",Script填”fetion.sh"。
点击"Save"保存配置。
vim zabbix_server.conf
AlertScriptsPath=/usr/local/zabbix/alertscripts
service zabbix_server restart
登录到zabbix,进入"Configation" >> "Actions",点击右上角"Create Actions"。
输入”Name",其它都默认
点击右侧“Action Operations"下的"New"按钮,"Operation Type"选择"Send message","Send Message to"选择一个或多个要发送消息的用户组,”Send only to"选择我们之前新增的Fetion。
点击"Save"保存配置
登录到zabbix, 进入"Adimistration" >> "Users",在之前选定要发送消息的组里的Members栏位里选择一个用户,例如选择Admin用户。
在用户信息修改界面最下方的”Media"处点击"Add"按钮。
Type选择"Fetion",Send to填入收信手机号码,其它参数按需修改,点击Add添加。
点击"Save"保存配置。
至此配置完成,触发一个警报试下手机是否收到讯息。
本文出自 “李世龙” 博客,谢绝转载!
原文地址:http://lwm666.blog.51cto.com/11811339/1916245