一个简单好用的zabbix告警信息发送工具
之前使用邮件和短信发送zabbix告警信息,但告警信息无法实时查看或者无法发送,故障无法及时通知运维人员。
后来使用第三方微信接口发送信息,愉快地用了一年多,突然收费了。
zabbix告警一直是我的痛点,近期发现一个基于个人微信号的信息发送工具-lykchat。
引用:http://blog.csdn.net/liyingke112/article/details/68955298
lykchat信息发送系统是Python3开发的,通过模拟微信网页端,基于个人微信号,为系统管理人员提供信息发送工具。
实现的功能有用户登录管理、微信登陆管理和微信信息发送功能。
代码地址:https://github.com/lykops/lykchat/
特点
1、简单高效
基于个人微信号,模拟微信web端,部署和维护简单
web管理页面实现可视化管理微信登陆
接口采用URL,简化调用复杂度,返回结果均为json格式
2、信息共享
通过共享用户session和微信登陆信息,保证系统长期稳定运行
3、7*24不间断服务
计划任务定时检查微信登陆状态,微信保持登陆超过20天
4、用户管理
通过用户隔离微信个人号,不同用户管理不同微信号
用户密码分为管理密码和接口密码,保证用户信息安全性
5、微信信息安全
不会监控和存储微信聊天信息
不会增加和删除好友
截图
管理页面–功能展示

管理页面–微信登陆时长

接口-发送信息成功

模块说明
管理web页面
可视化管理微信个人号
包括:
用户登录和认证
微信号登陆管理:负责微信登陆、登陆信息展示等功能
发送信息给好友:用于测试发送功能是否可用
发送信息接口
通过接口方式为其他业务系统发送信息给指定好友
URL地址:http://IP(或者域名)/sendmsg
支持post和get方法
请求参数说明:
'username' : 管理用户,通过用户确认微信发送者
'pwd' : 接口密码,注意不等于登陆密码
'friendfield':接受信息的好友字段代号,0昵称,1微信号,2备注名,可以为空,默认为0
'friend': 接受信息的好友的昵称、微信号、备注名的其中之一,不能为空
'content': 发送内容,不能为空
返回信息:
json格式,{'Msg': 执行结果, 'Code':返回代码, 'ErrMsg':如果-1005返回参数列表,其他发送微信返回信息}
例子:http://192.168.100.104/sendmsg?username=zabbix&pwd=123456&friendfield=1&friend=lyk-ops&content=test
计划任务
检测微信登陆状态:获取所有登录微信成功的用户,通过调用检测微信登陆接口
会话保持模块
存储微信登陆信息和会话信息,同用户在任何地方登陆,保证微信登陆状态一致
访问管理页面和微信登陆检测接口,根据session或者参数获取用户名,然后读取会话文件,页面操作后,再一次更新数据库和会话文件
这些信息分别保持在数据库和文件中。
数据库:保存用户会话信息,只记录用户名,每次访问更新会话有效期
会话文件:保存用户所有的信息(包括微信登陆信息),json格式,每次访问更新
模拟微信web端模块
它是该系统的核心和底层模块。通过微信登陆信息,访问微信web端接口,实现管理登陆、发送信息等功能。
一个简单好用的zabbix告警信息发送工具的更多相关文章
- [置顶]
一个简单好用的zabbix告警信息发送工具
之前使用邮件和短信发送zabbix告警信息,但告警信息无法实时查看或者无法发送,故障无法及时通知运维人员. 后来使用第三方微信接口发送信息,愉快地用了一年多,突然收费了. zabbix告警一直是我的痛 ...
- [置顶]
个人微信号发送zabbix告警信息
之前使用邮件和短信发送zabbix告警信息,但告警信息无法实时查看或者无法发送,故障无法及时通知运维人员. 后来使用第三方微信接口发送信息,愉快地用了一年多,突然收费了. zabbix告警一直是我的痛 ...
- [置顶]
zabbix告警信息-lykchat信息发送系统
lykchat信息发送系统 lykchat信息发送系统是Python3开发的,通过模拟微信网页端,基于个人微信号,为系统管理人员提供信息发送工具. 实现的功能有用户登录管理.微信登陆管理和微信信息发送 ...
- Lucene3.6.2包介绍,第一个Lucene案例介绍,查看索引信息的工具lukeall介绍,Luke查看的索引库内容,索引查找过程
2.Lucene3.6.2包介绍,第一个Lucene案例介绍,查看索引信息的工具lukeall介绍,Luke查看的索引库内容,索引查找过程 2014-12-07 23:39 2623人阅读 评论(0) ...
- C# 编写一个简单易用的 Windows 截屏增强工具
半年前我开源了 DreamScene2 一个小而快并且功能强大的 Windows 动态桌面软件.有很多的人喜欢,这使我有了继续做开源的信心.这是我的第二个开源作品 ScreenshotEx 一个简单易 ...
- zabbix 告警信息与恢复信息
名称: Action-Email 默认接收人: 故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障! 默认信息: 告警主机:{HOSTNAME ...
- 2.Lucene3.6.2包介绍,第一个Lucene案例介绍,查看索引信息的工具lukeall介绍,Luke查看的索引库内容,索引查找过程
1 Lucen目录介绍 2 lucene-core-3.6.2.jar是lucene开发核心jar包 contrib 目录存放,包含一些扩展jar包 3 案例 建立第一个Lucene项目 ...
- 用JavaScript写一个简单的倒计时,可以应用在发送短信验证码的“59秒后重新发送验证短信”
倒计时——从10倒数到0,点击按钮会还原倒计时 <body> <!-- 将textvalue值设为10,从10倒数 --> <input type="text& ...
- Zabbix使用微信发送告警(附Python代码)
介绍 本文将介绍如何把zabbix告警接入到微信,通过微信企业号将告警信息发送到运维人员的微信上.本文适合于已经实现了邮件告警的小伙伴,因为需要在已经能实现告警的基础上进行,如果还不知道如何配置zab ...
随机推荐
- linux命令(37):locate命令
1.命令格式: Locate [选择参数] [样式] 2.命令功能: locate命令可以在搜寻数据库时快速找到档案,数据库由updatedb程序来更新,updatedb是由cron daemon周期 ...
- python读写hdf5及cdf格式文件
Python write and read hdf5 file http://stackoverflow.com/questions/20928136/input-and-output-numpy-a ...
- .net core 2.0学习记录(三):内置IOC与DI的使用
本篇的话介绍下IOC和ID的含义以及如何使用.Net Core中的DI. 一.我是这么理解IOC和DI的: IOC:没有用IOC之前是直接new实例来赋值,使用IOC之后是通过在运行的时候根据配置来实 ...
- es6数组必看太实用了
随着前后分离,前端人员也要写大量的逻辑代码,es5很多地方尤其是数据工具大拿数组,很多时候都是捉襟见肘. 继而,es6为我们扩展了很多good的工具和方法,让我们一起学习es6吧. 1原型方法from ...
- 多线程下,Python Sqlite3报[SQLite objects created in a thread can only be used...]问题
明明加了锁保护,还是出了下面的问题 ProgrammingError: SQLite objects created in a thread can only be used in that same ...
- 异步加载 Echarts图的数据
<script src="~/Scripts/NewEcharts/echarts.js"></script> <script type=" ...
- CodeForces 733C Epidemic in Monstropolis
模拟. 连续的一段$a$合成一个$b$.每段中如果数字只有$1$个,那么可以合成.如果数字个数大于等于$2$个,如果都是一样的,那么无法合成,否则要找到一个可以移动的最大值位置开始移动.一开始写了一个 ...
- Shiro的认证原理(Subject#login的背后故事)
登录操作一般都是我们触发的: Subject subject = SecurityUtils.getSubject(); AuthenticationToken authenticationToken ...
- 五种常用的C/C++编译器对64位整型的支持
变量定义 输出方式 gcc(mingw32) g++(mingw32) gcc(linux i386) g++(linux i386) MicrosoftVisual C++ 6.0 long lon ...
- poj 2287(贪心)
Tian Ji -- The Horse Racing Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 12490 Acc ...