jenkins通过微信发送状态

注册企业微信

可以参考https://wbg.do1.com.cn/xueyuan/2655.html,注册一个企业微信。

WeChat Screenshot_20190520175112.png

获取企业ID和Secret

创建自定义应用,需要记住AgentID和Secret。

WeChat Screenshot_20190520175300.png

简单测试

写一个python文件,将自己想发送的消息通过api发给微信server,然后发送给指定用户(可在自定义app里配置)

    #!/bin/env python
    # -*- coding: utf-8 -*-
    import urllib2
    import json
    
    def get_token(url, corpid, corpsecret):
        token_url ='%s/cgi-bin/gettoken?corpid=%s&corpsecret=%s' % (url, corpid, corpsecret)
        return json.loads(urllib2.urlopen(token_url).read().decode())['access_token']
    
    def messages(msg):
        values = {
        "touser":'@all',
        "msgtype":'text',
        "agentid":1000011,//appID
        "text": {'content': msg},
        "safe":0
    }
        msg=(bytes(json.dumps(values)))
        return msg
    
    def send_message(url,token, data):
        send_url ='%s/cgi-bin/message/send?access_token=%s' % (url,token)
        respone=urllib2.urlopen(send_url,data).read()
        x = json.loads(respone.decode())['errcode']
        print(x)
    
    
    def main():
        url ='https://qyapi.weixin.qq.com'
        msg='zzm ccccha  hello world'
        corpid='XXXX'//企业ID
        corpsecret='XXXXXXXX'//企业秘钥
        test_token=get_token(url, corpid, corpsecret)
        msg_data= messages(msg)
        send_message(url,test_token, msg_data)
    
    if __name__=="__main__":
        main()

pipeline 代码:

        node("agent"){
            sh "python text.py"
        }
图片发自App

后记

这只是个demo,未来可以把相关jenkins job的执行情况嵌入在其中,或者机器的健康情况,通知到相关人。

你可能感兴趣的:(jenkins通过微信发送状态)