钉钉机器人

准备

参考官方文档

  • 已经完成成为钉钉开发者流程。
  • 已经完成创建应用流程。
  • 已经完成添加应用能力流程

企业内部需要企业管理员开通权限,我自己创建了一个组织,用自己的组织创建机器人就方便很多,很多权限无需单独去申请了。

创建机器人

进入钉钉开放平台,页面创建机器人,发布即可:
请添加图片描述

获取appKey, appSecret

在这里插入图片描述

获取access_token

官方文档:获取企业内部应用的accessToken
python代码:

# -*- coding: utf-8 -*-
# This file is auto-generated, don't edit it. Thanks.
import sysfrom typing import Listfrom alibabacloud_dingtalk.oauth2_1_0.client import Client as dingtalkoauth2_1_0Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_dingtalk.oauth2_1_0 import models as dingtalkoauth_2__1__0_models
from alibabacloud_tea_util.client import Client as UtilClientclass Sample:def __init__(self):pass@staticmethoddef create_client() -> dingtalkoauth2_1_0Client:"""使用 Token 初始化账号Client@return: Client@throws Exception"""config = open_api_models.Config()config.protocol = 'https'config.region_id = 'central'return dingtalkoauth2_1_0Client(config)@staticmethoddef main(args: List[str],) -> None:client = Sample.create_client()get_access_token_request = dingtalkoauth_2__1__0_models.GetAccessTokenRequest(app_key='<your appKey>',app_secret='<your appSecret>')try:client.get_access_token(get_access_token_request)return res.body.access_tokenexcept Exception as err:if not UtilClient.empty(err.code) and not UtilClient.empty(err.message):# err 中含有 code 和 message 属性,可帮助开发定位问题passreturn ''if __name__ == '__main__':Sample.main(sys.argv[1:])

注意:access token每次获取后2h内有效,不能频繁请求,需要做缓存

获取userId

除了上面鉴权的token,还需要userId信息,给具体的人员发机器人消息。我是管理员,给自己发消息,直接在中查看:
请添加图片描述

发送机器人消息

官方文档:批量发送人与机器人会话中机器人消息
python代码

# -*- coding: utf-8 -*-
# This file is auto-generated, don't edit it. Thanks.
import sysfrom typing import Listfrom alibabacloud_dingtalk.robot_1_0.client import Client as dingtalkrobot_1_0Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_dingtalk.robot_1_0 import models as dingtalkrobot__1__0_models
from alibabacloud_tea_util import models as util_models
from alibabacloud_tea_util.client import Client as UtilClientclass Sample:def __init__(self):pass@staticmethoddef create_client() -> dingtalkrobot_1_0Client:"""使用 Token 初始化账号Client@return: Client@throws Exception"""config = open_api_models.Config()config.protocol = 'https'config.region_id = 'central'return dingtalkrobot_1_0Client(config)@staticmethoddef main(args: List[str],) -> None:client = Sample.create_client()batch_send_otoheaders = dingtalkrobot__1__0_models.BatchSendOTOHeaders()batch_send_otoheaders.x_acs_dingtalk_access_token = '<your access token>'batch_send_otorequest = dingtalkrobot__1__0_models.BatchSendOTORequest(robot_code='<your appKey>',user_ids=['<your user id>'],msg_key='sampleMarkdown',msg_param='{"text": "hello text","title": "hello title"}')try:client.batch_send_otowith_options(batch_send_otorequest, batch_send_otoheaders, util_models.RuntimeOptions())except Exception as err:if not UtilClient.empty(err.code) and not UtilClient.empty(err.message):# err 中含有 code 和 message 属性,可帮助开发定位问题passif __name__ == '__main__':Sample.main(sys.argv[1:])

效果

请添加图片描述

消息格式

官方文档:企业机器人发送消息的消息类型

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/73104.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Androidstudio实现引导页文字动画

文章目录 1. 功能需求2. 代码实现过程1. 编写布局文件2. 实现引导页GuideActivity 3. 总结4. 效果演示5. 关于作者其它项目视频教程介绍 1. 功能需求 1、引导页具有两行文字&#xff08;“疫情在前”和“共克时艰”&#xff09;&#xff0c;和向上的 图标。 2、进入【引导页】…

在线生成自定义二维码

在线生成自定义二维码 1. 引言 二维码已成为现代互联网的重要工具&#xff0c;广泛应用于链接分享、支付、身份认证等场景。然而&#xff0c;很多在线二维码生成工具功能有限&#xff0c;难以满足个性化需求。如果你需要 自定义颜色、Logo、不同形状的二维码&#xff0c;那么…

蓝桥杯 之 第27场月赛总结

文章目录 习题1.抓猪拿国一2.蓝桥字符3.蓝桥大使4.拳头对决 习题 比赛地址 1.抓猪拿国一 十分简单的签到题 print(sum(list(range(17))))2.蓝桥字符 常见的字符匹配的问题&#xff0c;是一个二维dp的问题&#xff0c;转化为对应的动态规划求解 力扣的相似题目 可以关注灵神…

计算机的基本组合和工作原理

计算机的基本组成和工作原理可以概括为以下几个核心部分&#xff1a; 一、计算机的基本组成&#xff08;冯诺依曼体系结构&#xff09; 现代计算机基于冯诺依曼体系结构&#xff0c;主要由以下五大部件组成&#xff1a; 控制器&#xff08;Control Unit, CU&#xff09; 功能&…

[思考记录]两则:宏观视角、理想化

#宏观视角# 昨天听金老师讲解了他初步整理的大模型宏观概念关系图&#xff0c;受益不少。图上不仅是涵盖了诸多概念&#xff0c;更厉害的应该在于把概念之间的关系进行了描述&#xff0c;更直观展现了概念是如何与其他概念相互作用的。帮助从整体的角度去理解&#xff0c;以及透…

正则表达式:文本处理的瑞士军刀

正则表达式&#xff1a;文本处理的瑞士军刀 正则表达式&#xff08;Regular Expression&#xff0c;简称 Regex&#xff09;是一种用于匹配、查找和操作文本的强大工具。它通过定义一种特殊的字符串模式&#xff0c;可以快速地在文本中搜索、替换或提取符合特定规则的内容。正…

SQL 中UPDATE 和 DELETE 语句的深入理解与应用

在 SQL 中&#xff0c;UPDATE和DELETE语句是用于操作表数据的重要工具&#xff0c;它们允许我们对已存在的数据进行修改和删除。 一、UPDATE 语句 &#xff08;一&#xff09;基本语法 UPDATE语句的基本语法如下&#xff1a; UPDATE table_name SET column1 value1, colum…

C 语 言 --- 扫 雷 游 戏(初 阶 版)

C 语 言 --- 扫 雷 游 戏 初 阶 版 代 码 全 貌 与 功 能 介 绍扫雷游戏的功能说明游 戏 效 果 展 示游 戏 代 码 详 解game.htest.cgame.c 总结 &#x1f4bb;作 者 简 介&#xff1a;曾 与 你 一 样 迷 茫&#xff0c;现 以 经 验 助 你 入 门 C 语 言 &#x1f4a1;个 人 主…

车载以太网网络测试-21【传输层-DOIP协议-4】

目录 1 摘要2 DoIP entity status request/response&#xff08;0x4001、0x4002&#xff09;2.1 使用场景2.2 报文结构2.2.1 0x4001&#xff1a;DoIP entity status request2.2.2 0x4002&#xff1a;DoIP entity status response 3 Diagnostic power mode information request/…

CH347使用笔记:CH347结合STM32CubeIDE实现单片机下载与调试

目录 基于 STM32CubeIDE的 CH347 JTAG/SWD调试器使用说明1. CH347驱动安装与配置2. STM32CubeIDE调试器配置2.1 打开相关工程后&#xff0c;进行以下操作2.2 openocd.exe替换2.3 脚本添加2.4 更改调试器选择 3. 下载程序4. 使用过程中可能遇到的问题4.1 CH347未插入4.2 Openocd…

LVGL常用功能备忘

概述 本文选用LVGL 8.3版本 8.3版本实测帧率比起9版本高,多个GUI工具支持 相关链接 LVGL官网 https://lvgl.io/ LVGL 文档 https://docs.lvgl.io/8.3/ LVGL仓库 https://github.com/lvgl LVGL移植 获取源码 https://github.com/lvgl/lvgl/tree/release/v8.3 下载文件即可 文件…

k8s搭建kube-prometheus

后续再补一个k8s集群搭建的博客&#xff0c;从0开始搭建k8s集群。使用kube-prometheus非常方便&#xff0c;主要问题只在于拉取镜像。除了拉取镜像外其他时间5分钟即可。耐心等待拉取镜像。 一.kube-prometheus简介 kube-prometheus 是一个专为 Kubernetes 设计的开源监控解决…

uni-app——数据缓存API

数据缓存API 在 uni-app 开发中&#xff0c;数据缓存 API 起着重要作用&#xff0c;它能够将需要的数据保存到本地&#xff0c;同时也提供了获取本地缓存数据、移除缓存数据以及清理缓存数据的功能。在实际项目里&#xff0c;数据缓存 API 常被用于存储会员登录状态信息、购物…

突破时空边界:Java实时流处理中窗口操作与时间语义的深度重构

一、流处理范式的革命性演进 在数字化浪潮的推动下&#xff0c;数据处理范式正经历着从批量到实时的根本性转变。这种转变不仅改变了数据处理的时效性特征&#xff0c;更重新定义了时间维度在计算模型中的战略地位。Apache Flink的统计数据显示&#xff0c;现代流处理系统每秒…

【2025 深圳大学-腾讯云程序设计竞赛(热身赛)】题解

比赛链接 A. Cloud Studio的共享连接 题目大意 && Solution 给定 T T T 组长度均为 12 12 12 的字符串 s s s。 对每个 s s s&#xff0c;将其按从左到右的顺序两两分组形成 6 6 6 个 A S C I I \rm{ASCII} ASCII 码&#xff0c;对这 6 6 6 个 A S C I I \…

APScheduler - 用户指南

本文翻译整理自&#xff1a;https://apscheduler.readthedocs.io/en/3.x/userguide.html 文章目录 一、安装 APScheduler二、代码示例三、基本概念四、选择合适的 scheduler, job store(s), executor(s) and trigger(s)五、配置调度器方法 1:方法 2:方法 3: 六、启动调度器七、…

vue3:十一、主页面布局(优化页面跳转方式)

:router"true" 一、参考文章 vue3:十一、主页面布局(实现基本左侧菜单右侧内容效果)-CSDN博客 参考上述文章可知&#xff0c;页面跳转是通过在js中定义的菜单中携带的path&#xff0c;然后通过菜单的点击事件完成的跳转&#xff0c;现在可以进行优化&#xff0c;直…

每日一题--C与C++的差别

C与C的差别 1. 编程范式 C 纯 过程式编程语言&#xff0c;强调函数和结构化编程。 代码通过函数和顺序步骤组织&#xff0c;适合底层系统开发。 C 支持 多范式编程&#xff1a; 过程式编程 面向对象编程&#xff08;OOP&#xff09;&#xff08;类、继承、多态&#xff09; …

Etcd 服务搭建

&#x1f4a2;欢迎来到张胤尘的开源技术站 &#x1f4a5;开源如江河&#xff0c;汇聚众志成。代码似星辰&#xff0c;照亮行征程。开源精神长&#xff0c;传承永不忘。携手共前行&#xff0c;未来更辉煌&#x1f4a5; 文章目录 Etcd 服务搭建预编译的二进制文件安装下载 etcd 的…

玩转C#函数:参数、返回值与游戏中的攻击逻辑封装

Langchain系列文章目录 01-玩转LangChain&#xff1a;从模型调用到Prompt模板与输出解析的完整指南 02-玩转 LangChain Memory 模块&#xff1a;四种记忆类型详解及应用场景全覆盖 03-全面掌握 LangChain&#xff1a;从核心链条构建到动态任务分配的实战指南 04-玩转 LangChai…