对接企业微信机器人报错:{\“errcode\“:60020,\“errmsg\“:\“not allow to access from your ip, hint: [169917845713115

这篇具有很好参考价值的文章主要介绍了对接企业微信机器人报错:{\“errcode\“:60020,\“errmsg\“:\“not allow to access from your ip, hint: [169917845713115。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Prometheus+altermanager对接企业微信机器人报错内容:

level=debug ts=2023-11-05T10:00:57.435Z caller=wechat.go:190 integration=wechat response="{\"errcode\":60020,\"errmsg\":\"not allow to access from your ip, hint: [1699178457562583222455115], from ip: 36.112.180.226, more info at https://open.work.weixin.qq.com/devtool/query?e=60020\"}" incident="{}:{alertname=\"kubernetes-etcd\"}"

解决方案:企业微信机器人添加企业可信IP 即可!
对接企业微信机器人报错:{\“errcode\“:60020,\“errmsg\“:\“not allow to access from your ip, hint: [169917845713115,# 1-Prometheus监控系统,# 3-AlterManager告警通知工具,Linux运维,企业微信,机器人,tcp/ip
对接企业微信机器人报错:{\“errcode\“:60020,\“errmsg\“:\“not allow to access from your ip, hint: [169917845713115,# 1-Prometheus监控系统,# 3-AlterManager告警通知工具,Linux运维,企业微信,机器人,tcp/ip
但是但是,第一次配置可信IP地址,需要先配置设置接收消息服务器URL,步骤如下:
对接企业微信机器人报错:{\“errcode\“:60020,\“errmsg\“:\“not allow to access from your ip, hint: [169917845713115,# 1-Prometheus监控系统,# 3-AlterManager告警通知工具,Linux运维,企业微信,机器人,tcp/ip
对接企业微信机器人报错:{\“errcode\“:60020,\“errmsg\“:\“not allow to access from your ip, hint: [169917845713115,# 1-Prometheus监控系统,# 3-AlterManager告警通知工具,Linux运维,企业微信,机器人,tcp/ip
打开一台有公网IP的服务器,进行下面操作:

wget https://github.com/sbzhu/weworkapi_python/archive/refs/heads/master.zip
unzip master.zip
mv weworkapi_python-master weworkapi_python
vim wechat.py 
#-*- encoding:utf-8 -*-
from flask import abort, request
from flask import Flask
from xml.dom.minidom import parseString
import _thread
import time
import os
import sys
sys.path.append("weworkapi_python/callback")  # 正确的模块导入路径
from WXBizMsgCrypt3 import WXBizMsgCrypt   # https://github.com/sbzhu/weworkapi_python 项目地址
app = Flask(__name__)
 
# 对应步骤4中接受消息回调模式中的URL,如域名是'www.example.com' 那么在步骤4中填入的url就为"http://www.example.com/hook_path"
@app.route('/hook_path', methods=['GET','POST']) 
def douban():
    if request.method == 'GET':
        echo_str = signature(request, 0)
        return(echo_str)
    elif request.method == 'POST':
        echo_str = signature2(request, 0)
        return(echo_str)
 
qy_api = [
    WXBizMsgCrypt("XXXXXXX", "XXXXXXX", "XXXXXXX"), 
] #对应接受消息回调模式中的token,EncodingAESKey 和 企业信息中的企业id
 
# 开启消息接受模式时验证接口连通性
def signature(request, i): 
    msg_signature = request.args.get('msg_signature', '')
    timestamp = request.args.get('timestamp', '')
    nonce = request.args.get('nonce', '')
    echo_str = request.args.get('echostr', '')
    ret,sEchoStr=qy_api[i].VerifyURL(msg_signature, timestamp,nonce,echo_str)
    if (ret != 0):
        print("ERR: VerifyURL ret: " + str(ret))
        return("failed")
    else:
        return(sEchoStr)
 
# 实际接受消息
def signature2(request, i):
    msg_signature = request.args.get('msg_signature', '')
    timestamp = request.args.get('timestamp', '')
    nonce = request.args.get('nonce', '')
    data = request.data.decode('utf-8')
    ret,sMsg=qy_api[i].DecryptMsg(data,msg_signature, timestamp,nonce)
    if (ret != 0):
        print("ERR: DecryptMsg ret: " + str(ret))
        return("failed")
    else:
        with open ("/var/log/qywx.log", 'a+') as f: # 消息接收日志
            doc = parseString(sMsg)
            collection = doc.documentElement
            name_xml = collection.getElementsByTagName("FromUserName")
            msg_xml = collection.getElementsByTagName("Content")
            type_xml = collection.getElementsByTagName("MsgType")
            pic_xml = collection.getElementsByTagName("PicUrl")
            msg = ""
            name = ""
            msg_type = type_xml[0].childNodes[0].data
            if msg_type == "text": #文本消息
                name = name_xml[0].childNodes[0].data        #发送者id
                msg = msg_xml[0].childNodes[0].data          #发送的消息内容
                f.write(time.strftime('[%Y-%m-%d %H:%M:%S]') + "[ch%d] %s:%s\n" % (i, name, msg))
                _thread.start_new_thread(os.system, ("python3 command.py '%s' '%s' '%d' '%d'" % (name, msg, i, 0), )) #此处将消息进行外部业务处理
                
            elif msg_type == "image": #图片消息
                name = name_xml[0].childNodes[0].data
                pic_url = pic_xml[0].childNodes[0].data
                f.write(time.strftime('[%Y-%m-%d %H:%M:%S]') + "[ch%d] %s:图片消息\n" % (i, name))
                _thread.start_new_thread(os.system, ("python3 command.py '%s' '%s' '%d' '%d'" % (name, pic_url, i, 1), ))  #此处将消息进行外部业务处理
 
            f.close()
 
        return("ok")
 
if __name__=='__main__':
    app.run("0.0.0.0", 888)  #本地监听端口,可自定义

共修改三处配置,如下

qy_api = [
    WXBizMsgCrypt("XXXXXXX", "XXXXXXX", "XXXXXXX"), 
] #对应接受消息回调模式中的token,EncodingAESKey 和 企业信息中的企业id

执行 wechat.py 脚本,如果缺py依赖就pip3 install 安装一下,此处不在赘述!!

python3 wechat.py

如下图表示启动成功:
对接企业微信机器人报错:{\“errcode\“:60020,\“errmsg\“:\“not allow to access from your ip, hint: [169917845713115,# 1-Prometheus监控系统,# 3-AlterManager告警通知工具,Linux运维,企业微信,机器人,tcp/ip

http://公网IP地址:888/hook_path

对接企业微信机器人报错:{\“errcode\“:60020,\“errmsg\“:\“not allow to access from your ip, hint: [169917845713115,# 1-Prometheus监控系统,# 3-AlterManager告警通知工具,Linux运维,企业微信,机器人,tcp/ip

对接企业微信机器人报错:{\“errcode\“:60020,\“errmsg\“:\“not allow to access from your ip, hint: [169917845713115,# 1-Prometheus监控系统,# 3-AlterManager告警通知工具,Linux运维,企业微信,机器人,tcp/ip
OK,设置完成!,接下来可以添加企业可信IP了。
对接企业微信机器人报错:{\“errcode\“:60020,\“errmsg\“:\“not allow to access from your ip, hint: [169917845713115,# 1-Prometheus监控系统,# 3-AlterManager告警通知工具,Linux运维,企业微信,机器人,tcp/ip
最后最后,告警也是成功发送到了企业微信,如下图:
对接企业微信机器人报错:{\“errcode\“:60020,\“errmsg\“:\“not allow to access from your ip, hint: [169917845713115,# 1-Prometheus监控系统,# 3-AlterManager告警通知工具,Linux运维,企业微信,机器人,tcp/ip
至此结束!!文章来源地址https://www.toymoban.com/news/detail-753161.html

到了这里,关于对接企业微信机器人报错:{\“errcode\“:60020,\“errmsg\“:\“not allow to access from your ip, hint: [169917845713115的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 17行代码用python对接openai的api实现chatgpt微信对话机器人

    itchat python依赖下载 这里推荐这个。链接:衡天云

    2024年02月01日
    浏览(59)
  • 封装Python脚本:使用企业微信机器人发送消息至企业微信

    官方文档地址:https://developer.work.weixin.qq.com/document/path/91770#%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E7%BE%A4%E6%9C%BA%E5%99%A8%E4%BA%BA 可以通过如下步骤设置企业微信机器人: 首先建立或者进入某个群聊 进入群聊设置页面, 点击“群机器人添加”可添加一个机器人成功 添加成功后,复制并保

    2024年02月09日
    浏览(38)
  • 企业微信群:机器人实现定时提醒功能

    如果每天都需要,或者经常需要提醒企业微信群里面的人做某一件事情的话,靠人力去实现比较费力,而且偶尔忘记。 正好,企业微信群有一个机器人,正可以实现这一功能。 1、首先,在企业微信群,添加一个机器人。 2、根据企业微信机器人的配置说明,编写程序。这里

    2024年02月16日
    浏览(159)
  • 企业微信机器人WorkTool使用文档

    先附一下官方介绍 源码友情链接 根据产品需求的 落地场景 我这里最看重的是他的自动创建外部群拉入客户和销售,并能用接口查询群聊记录,连企业微信会话存档的费用都省了,把机器人拉群里,@机器人问问题可以预先设置简单的问答库。另一个我看重的功能是自动通过

    2024年02月02日
    浏览(47)
  • Zabbix配置企业微信报警机器人

    微信告警机器人是一种可以将Zabbix告警通知发送到微信群或个人微信号的工具。 1、申请企业微信 自己到企业微信官网申请一个账号 2、配置微信企业号 1、创建机器人 在电脑企业微信群创建机器人 在企业微信上创建一个群聊,并添加需要接收告警通知的成员。 在群管理创建

    2024年02月06日
    浏览(42)
  • 基于ChatGPT的企业微信机器人

    登录OpenAI的账号后,再点击右上角的“Personal”图标,然后点击“view API keys”进入API页面。 点击“create new secret key”按钮。 生成秘钥之后,把秘钥复制下来。 根目录下的config-template.json文件是配置文件的模板,复制该模板,修改复制的文件名为:config.json 打开刚才复制的c

    2024年02月13日
    浏览(44)
  • 企业微信,阿里钉钉告警群机器人

    链接:如何通过企业微信群接收报警通知_云监控-阿里云帮助中心

    2024年02月15日
    浏览(36)
  • PowerShell 实现企业微信机器人推送消息

    在ARMS告警管理中创建企业微信机器人后,您可以在通知策略中指定对应的企业微信群用于接收告警。当通知策略的匹配规则被触发时,系统会自动向您指定的企业微信群发送告警通知。企业微信群收到通知后,您可以在企业微信群中对告警进行管理。 通过接口实现在群里发

    2024年02月06日
    浏览(102)
  • SQL企业微信群机器人消息推送

     --参考资料地址         --微软官方地址: https://learn.microsoft.com/zh-cn/sql/relational-databases/system-stored-procedures/ole-automation-stored-procedures-transact-sql?view=sql-server-ver16         --腾讯官方地址:https://developer.work.weixin.qq.com/         --使用教程:         --1.开启数据库的功能, \\\"只

    2024年02月08日
    浏览(39)
  • 企业微信、飞书、钉钉机器人消息发送工具类

    其实你也可以使用RestTemplate,我这里主要是用到了webflux框架,所以需要实例化客户端请求对象

    2024年02月10日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包