美文网首页
钉钉群自定义机器人for Python

钉钉群自定义机器人for Python

作者: 沈宥 | 来源:发表于2022-01-28 16:30 被阅读0次

    一、机器人接入

    1、钉钉自定义机器人接入官方文档

    2、由于官方文档没有提供Python版本,补充一下
    安装:
    pip install DingtalkChatbot

    3、支持的功能

    支持Text消息;
    支持Link消息;
    支持image表情消息;
    支持Markdown消息;
    支持ActionCard消息;
    支持消息发送失败时自动通知(默认fail_notice=False不通知,开发者可根据返回的消息发送结果自行判断处理)
    支持设置消息链接打开方式(默认pc_slide=False,跳转至浏览器打开,pc_slide=True,则在PC端侧边栏打开)
    支持钉钉官方消息发送频率限制限制:每个机器人每分钟最多发送20条;
    支持Python2、Python3;
    

    二、获取自定义机器人Webhook

    添加群机器人,保存Webhook


    D43F9A2D-9697-496C-9705-5F0DAD09AEAE.png

    三、举个例子

    发送链接类的机器人消息(无图片,若想带图,可在send_link方法中添加参数pic_url=''xxx"

    # 钉钉
    from dingtalkchatbot.chatbot import *
    
    #Webhook地址
    url = "https://oapi.dingtalk.com/robot/send?access_token=xxxx"
    
    #要跳转的网页地址
    message_url =  'http://xxx/index'
    
    #跳转消息显示的文案
    message = '详情请点击查看"
    
    DingtalkChatbot(url).send_link(title="自动化告警", text=message, message_url=message_url)
    
    

    发送后的效果图


    3DDC8405-58B8-4A19-972B-3C23F5E189F3.png

    四、其他类型的消息

    1、发送文本

        url = 'https://oapi.dingtalk.com/robot/send?access_token=xxxxx'
        text = '告警!这是一条仅有文字的消息'
        at_mobiles = ['135xxxxx']
        is_auto_at = True
    
        DingtalkChatbot(url).send_text(msg=text, at_mobiles=at_mobiles, is_auto_at=True)
            """
            text类型
            msg: 消息内容
            is_at_all: @所有人时:true,否则为false(可选)
            at_mobiles: 被@人的手机号(注意:可以在msg内容里自定义@手机号的位置,也支持同时@多个手机号,可选)
            at_dingtalk_ids: 被@人的dingtalkId(可选)
            is_auto_at: 是否自动在msg内容末尾添加@手机号,默认自动添加,可设置为False取消(可选)
            """
    

    发送后效果


    EEE0BF0B-93AE-46C2-94A4-34BFBC93869B.png

    2、发送markdown

        url = 'https://oapi.dingtalk.com/robot/send?access_token=xxxx'
        title = '告警!markdown样式'
        text = '## 标题\n### 副标题\n>引用文字\n![图片链接](https://alifei05.cfp.cn/creative/vcg/800/new/VCG211363439424.jpg)'
    
        DingtalkChatbot(url).send_markdown(title=title,text=text)
            """
            markdown类型
            title: 首屏会话透出的展示内容
            text: markdown格式的消息内容 
            """
    

    发送后效果


    1C31EDC6-E55C-4B1A-B624-2CF61A1ECA26.png

    3、发送ActionCard

        url = 'https://oapi.dingtalk.com/robot/send?access_token=xxxx'
        title = '告警!markdown样式'
        text = '![图片链接](https://alifei05.cfp.cn/creative/vcg/800/new/VCG211363439424.jpg) \n\n ### 标题 \n\n ### 副标题 \n\n'
    
        btns = [{"title": "内容不错", "actionURL": "https://www.baidu.com/"},
                {"title": "不感兴趣", "actionURL": "https://www.baidu.com/"}]
        action_card = ActionCard(title, text, btns)
        DingtalkChatbot(url).send_action_card(action_card=action_card)
                """
               ActionCard初始化
               title: 首屏会话透出的展示内容
               text: markdown格式的消息
               btns: 按钮列表:(1)按钮数量为1时,整体跳转ActionCard类型;(2)按钮数量大于1时,独立跳转ActionCard类型;
               """
    
    

    发送后效果


    86FFF13E-E1AA-4566-94E4-96B1FFE37DFE.png

    相关文章

      网友评论

          本文标题:钉钉群自定义机器人for Python

          本文链接:https://www.haomeiwen.com/subject/iectkrtx.html