异行星低代码平台--第三方插件对接:钉钉平台对接(一)
异行星低代码平台可以集成钉钉,实现单点登录、消息推送和组织机构同步。
提示
此功能需要企业版授权才能使用。
钉钉集成
单点登录
异行星低代码平台集成到钉钉后,只要使用钉钉账户登录钉钉客户端,即可在钉钉中直接使用管理后台,而不需要再次使用管理后台账户来登录使用。
消息推送
异行星低代码平台集成到钉钉后,当其绑定的管理后台账户有通知消息时,钉钉会弹出消息提醒,可点击该消息直接进入管理后台查看或处理相关消息。
同步通讯录
异行星低代码平台集成到钉钉后,可以将钉钉的通讯录同步到管理后台系统中。
如何集成钉钉
在集成钉钉前,请确保您的管理后台项目已经绑定到某个可通过互联网访问进入的域名地址,只能通过局域网IP或外网IP地址访问的管理后台项目是不可以集成到钉钉的,以下说明均假定您的项目已经绑定到域名地址https://www.test-dingtalk.com。
创建钉钉应用
请注册钉钉,并在钉钉后台(工作台->自建应用)创建“H5微应用”,以下说明都假设这里创建了一个名为“管理后台合同”的H5微应用。
设置钉钉开发管理
请在钉钉后台,进入刚刚创建的“管理后台合同”应用,点击“开发管理”进行相关配置。
服务器出口IP:请配置服务器的公网ip,类似于白名单的功能。
应用首页地址:请配置管理后台服务的域名地址加上sso/dingtalk?corpid=$CORPID$后缀,比如https://www.test-dingtalk.com/sso/dingtalk?corpid=$CORPID$。
PC端首页地址:建议配置和应用首页地址一样。
异行星低代码平台地址:不需要配置。
后缀中添加`$CORPID$`占位符,系统在跳转时会自动将url中的占位符替换成当前企业的corpid。
设置钉钉事件订阅
请在钉钉后台,进入刚刚创建的“管理后台合同”应用,点击“事件订阅”进行相关配置。
加密 aes_key: 随机生成,可随时刷新修改,生成后需要配置到管理后台系统-设置-公司设置-钉钉-AesKey
签名 token: 随机生成,可随时刷新修改,生成后需要配置到管理后台系统-设置-公司设置-钉钉-Token
请求网址: 请先确保已经将aes_key和token配置到管理后台系统中,然后再配置管理后台服务的域名地址加上api/dingtalk/listen后缀,比如https://www.test-dingtalk.com/api/dingtalk/listen,一定要配置公网域名访问地址。
设置钉钉权限管理
请在钉钉后台,进入刚刚创建的“管理后台合同”应用,点击“权限管理”进行相关配置。
开通通讯录管理相关的权限:企业员工手机号信息、邮箱等个人信息、个人手机号信息、钉钉通讯录关联组织读权限、通讯录部门信息读权限、维护通讯录的接口访问权限、成员信息读权限、根据手机号姓名获取成员信息的接口访问权限和通讯录部门成员读权限。
设置钉钉版本管理与发布
请在钉钉后台,进入刚刚创建的“管理后台合同”应用,并在“版本管理与发布”中选择可使用范围,在可使用范围内的员工可以在工作台中看到“管理后台合同”应用和收到推送消息。
确定使用范围后,点击“发布”使配置生效。
添加钉钉插件
异行星低代码平台企业版本服务默认集成了钉钉插件。
绑定钉钉应用
在启用钉钉插件之后,异行星低代码平台管理员可以在管理后台的“设置->公司设置->公司”界面看到新加了一栏“钉钉”,完善这些信息即可把钉钉应用绑定到管理后台中。
- 企业ID(CorpId):在钉钉后台,“首页”界面可以查看和复制该ID值。
- AgentID:在钉钉后台,“应用开发->管理后台合同”的“凭证与基础信息”界面可以查看和复制该ID值。
- AppKey:在钉钉后台,“应用开发->管理后台合同”的“凭证与基础信息”界面可以查看和复制该Key值。
- AppSecret:在钉钉后台,“应用开发->管理后台合同”的“凭证与基础信息”界面可以查看和复制该Secret值。
- AesKey:在钉钉后台,“应用开发->管理后台合同”的“事件订阅”界面可以查看和复制该aes_key值。
- Token:在钉钉后台,“应用开发->管理后台合同”的“事件订阅”界面可以查看和复制该token值。
在钉钉中使用管理后台
把钉钉集成到管理后台之后,还需要在管理后台中配置每个用户的“钉钉userid”才能正常在钉钉中使用管理后台。
系统管理员可以通知需要在钉钉中使用管理后台的用户前往钉钉的通讯录中查找自己的“钉钉userid”,并把它复制下来,然后在管理后台的“设置->个人账户设置->我的资料”界面上编辑保存其“钉钉userid”信息;也可以统一由系统管理员在管理后台“设置->公司设置->用户”界面上维护每个用户在钉钉通讯录上的“钉钉userid”信息。
修改本地adminos-config.yml文件,添加tenant._id、api_key和log_path,可以在设置-个人账户设置-API Key菜单下,获取用户的API Key。
tenant:_id: ${adminos_TENANT_ID}dingtalk:api_Key: ${APIKEY} # API Key, 接口验证需要log_path: ${DING_LOGPATH} # 日志文件路径,默认是./ding_server.log
如果是用docker部署的用户,请修改docker-compose.yml文件,添加APIKEY和DING_LOGPATH环境变量:
adminos:image: adminos/adminos-project-template:2.0.40restart: alwaysports:- "3000:3000"volumes:- "./docker-volumes/adminos/storage:/app/storage"environment:- PORT=3000- ROOT_URL=http://localhost:3000- MONGO_URL=mongodb://mongo:27017/adminos- MONGO_OPLOG_URL=mongodb://mongo:27017/local- adminos_CFS_STORE=local- adminos_STORAGE_DIR=/app/storage- TRANSPORTER=redis://redis:6379- CACHER=redis://redis/1- APIKEY=n32D3LeG8aIq5_jiiss23ssesf023sPGe # 配置系统中的API Key- DING_LOGPATH="./ding_server.log" # 日志默认路径- adminos_TENANT_ID=7asfxossf8sfssss # 管理后台id
以上所有就绪后,管理后台用户只要登录钉钉账户就可以在钉钉客户端上无缝使用管理后台服务了。
工作台
如果钉钉上集成了上述创建的“管理后台合同”项目,那么只要在手机或PC客户端登录了钉钉,就可以在其“工作台”栏上看到“管理后台合同”这个应用,直接点击即可进入应用主页。
消息
如果钉钉上集成了上述创建的“管理后台合同”项目,那么只要在手机或PC客户端登录了钉钉,当其绑定的管理后台账户上有推送通知消息时,钉钉客户端会主动通知用户收到推送通知,也可以在其“消息”栏上直接看到来自管理后台的消息列表。
用户同步
如果钉钉上集成了上述创建的“管理后台合同”项目,可以通过前台调用数据同步接口将钉钉通讯录同步到管理后台系统中,例如调用https://www.test-dingtalk.com/api/dingtalk/stockData,同步前如果管理后台系统中已经存在用户,需要将用户与钉钉中对应的用户进行绑定,这样在同步时就会更新已存在用户信息。
同步钉钉账户id
如果钉钉上集成了上述创建的“管理后台合同”项目,对于只需要同步钉钉账户id到管理后台系统的用户,在配置完权限管理后,可以调用https://www.test-dingtalk.com/api/sync/dingtalkId进行同步。
相关文章:
异行星低代码平台--第三方插件对接:钉钉平台对接(一)
异行星低代码平台可以集成钉钉,实现单点登录、消息推送和组织机构同步。 提示 此功能需要企业版授权才能使用。 钉钉集成 单点登录 异行星低代码平台集成到钉钉后,只要使用钉钉账户登录钉钉客户端,即可在钉钉中直接使用管理后台&#…...
MyBatis使用教程详解<下>
回顾上一篇博文,我们讲了如何使用注解/XML的方式来操作数据库,实际上,一个Mapper接口的实现,这两种方式是可以并存的. 上一篇博文中,我们演示的都是比较简单的SQL语句,没有设计到复杂的逻辑,本篇博文会讲解复杂SQL的实现及一些细节处理.话不多说,让我们开始吧. 一. #{}和${} …...
C++基础 -17-继承中 基类与派生构造和析构调用顺序
首先声明 定义了派生类会同时调用基类和派生的构造函数 定义了派生类会同时调用基类和派生的析构函数 那么顺序如何如下图 构造由上往下顺序执行 析构则完全相反 #include "iostream"using namespace std;class base {public:base(){cout << "base-bui…...
uniapp实现表单弹窗
uni.showModal({title: 删除账户,confirmColor:#3A3A3A,cancelColor:#999999,confirmText:确定,editable:true,//显示content:请输入“delete”删除账户,success: function (res) {console.log(res)if(res.confirm){if(res.contentdelete){console.log(123123123213)uni.setSto…...
Ajax 是什么? 如何创建一个 Ajax?
Ajax(Asynchronous JavaScript and XML)是一种使用客户端JavaScript发送异步HTTP请求到服务器的技术,以便在不重新加载整个页面的情况下更新部分网页内容。 使用Ajax的原因有很多,以下是其中一些: 改善用户体验&…...
【LeetCode】101. 对称二叉树
101. 对称二叉树 难度:简单 题目 给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: 输入:root [1,2,2,3,4,4,3] 输出:true示例 2: 输入:root [1,2,2,null,3,null,3] 输出&#…...
O-Star|再相识
暑去秋来,岁月如梭,几名"O-Star"们已经入职一段时间,在这期间他们褪去青涩,逐渐适应了公司的工作环境和文化,迈向沉稳~ 为了进一步加深校招生之间的交流与了解,提高校招生的凝聚力和…...
最新PHP熊猫头图片表情斗图生成源码
这是一款能生成熊猫头表情斗图的自适应系统源码,无论是在电脑还是手机上都可以正常使用!这个源码集成了搜狗搜索图片接口,可以轻松地一键搜索数百万张图片,并且还包含了表情制作等功能模块。对于一些新站来说,这是一个…...
子虔科技出席2023WAIC“智能制造融合创新论坛”
7月7日,2023世界人工智能大会(WAIC)闵行会场在大零号湾举办。子虔科技联合创始人周洋作为专家嘉宾受邀参与智能制造融合创新论坛大会。会上探讨了工业和制造业数字化转型的机遇、挑战和对策。其中,周洋提到,工业制造业…...
递归算法学习——二叉树的伪回文路径
1,题目 给你一棵二叉树,每个节点的值为 1 到 9 。我们称二叉树中的一条路径是 「伪回文」的,当它满足:路径经过的所有节点值的排列中,存在一个回文序列。 请你返回从根到叶子节点的所有路径中 伪回文 路径的数目。 示例…...
Android端极致画质体验之HDR播放
高动态范围HDR视频通过扩大亮度分量的动态范围(从100cd/m2到1000cd/m2),以及采用更宽的色彩空间BT2020,提供极致画质体验。从Android10开始,支持HDR视频播放。 一、HDR技术 HDR技术标准包括:Dolby-Vision、HDR10、HLG、PQ。支持…...
【Java SE】带你在String类世界中遨游!!!
🌹🌹🌹我的主页🌹🌹🌹 🌹🌹🌹【Java SE 专栏】🌹🌹🌹 🌹🌹🌹上一篇文章:带你走近Java的…...
Android: ListView + ArrayAdapter 简单应用
容器与适配器: http://t.csdnimg.cn/ZfAJ7 activity_main.xml <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"h…...
前端:实现二级菜单(点击实现二级菜单展开)
效果 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-width, i…...
Spark-java版
SparkContext初始化 相关知识 SparkConf 是SparkContext的构造参数,储存着Spark相关的配置信息,且必须指定Master(比如Local)和AppName(应用名称),否则会抛出异常;SparkContext 是程序执行的入口…...
RabbitMQ消息模型之Work Queues
Work Queues Work Queues,也被称为(Task Queues),任务模型,也是官网给出的第二个模型,使用的交换机类型是直连direct,也是默认的交换机类型。当消息处理比较耗时的时候,可能生产消息…...
vue3+ts 实现时间间隔选择器
需求背景解决效果视频效果balancedTimeElement.vue 需求背景 实现一个分片的时间间隔选择器,需要把显示时间段显示成图表,涉及一下集中数据转换 [“02:30-05:30”,“07:30-10:30”,“14:30-17:30”]‘[(2,5),(7,10),(14,17)]’[4, 5, 6, 7, 8, 9, 10, …...
PTA 魔法优惠券
7-83 魔法优惠券 分数 25 全屏浏览题目 作者 陈越 单位 浙江大学 在火星上有个魔法商店,提供魔法优惠券。每个优惠劵上印有一个整数面值K,表示若你在购买某商品时使用这张优惠劵,可以得到K倍该商品价值的回报!该商店还免费赠送…...
P8A110-A120经典赛题
Web应用程序SQL Inject安全攻防 任务环境说明: 服务器场景:WebServ2003(用户名:administrator;密码:空)服务器场景操作系统:Microsoft Windows2003 Server 服务器场景安装服务/工…...
文件基础知识
计算机中的流:在C语言中将通过输入/输出设备(键盘、内存、显示器、网络等)之间的数据传输抽象表述为“流”。 1、文本流和二进制流 在文本流中输入输出的数据是一系列的字符,可以被修改在二进制流中输入输出数据是一系列字节&am…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...
IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)
文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...
智能仓储的未来:自动化、AI与数据分析如何重塑物流中心
当仓库学会“思考”,物流的终极形态正在诞生 想象这样的场景: 凌晨3点,某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径;AI视觉系统在0.1秒内扫描包裹信息;数字孪生平台正模拟次日峰值流量压力…...
使用 SymPy 进行向量和矩阵的高级操作
在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...
Go 并发编程基础:通道(Channel)的使用
在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...
如何在Windows本机安装Python并确保与Python.NET兼容
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...
6.9-QT模拟计算器
源码: 头文件: widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QMouseEvent>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widget(QWidget *parent nullptr);…...
【java】【服务器】线程上下文丢失 是指什么
目录 ■前言 ■正文开始 线程上下文的核心组成部分 为什么会出现上下文丢失? 直观示例说明 为什么上下文如此重要? 解决上下文丢失的关键 总结 ■如果我想在servlet中使用线程,代码应该如何实现 推荐方案:使用 ManagedE…...
Git 命令全流程总结
以下是从初始化到版本控制、查看记录、撤回操作的 Git 命令全流程总结,按操作场景分类整理: 一、初始化与基础操作 操作命令初始化仓库git init添加所有文件到暂存区git add .提交到本地仓库git commit -m "提交描述"首次提交需配置身份git c…...
Linux入门(十五)安装java安装tomcat安装dotnet安装mysql
安装java yum install java-17-openjdk-devel查找安装地址 update-alternatives --config java设置环境变量 vi /etc/profile #在文档后面追加 JAVA_HOME"通过查找安装地址命令显示的路径" #注意一定要加$PATH不然路径就只剩下新加的路径了,系统很多命…...
