钉钉集成流程
最后更新于:2022-04-02 07:22:08
# 钉钉集成流程
[TOC]
## 前提准备
### 注册钉钉账号
注册地址:
输入手机号,获取验证码即可。

第二步填写你的公司信息,邀请码没有不填就行。
### 创建钉钉应用(H5微应用)
1. 首先登录钉钉后台
2. 点击上方导航栏的`工作台`
3. 向下滑动找到`自建应用`,并点击加号创建

4. 鼠标移动到上方导航栏的`应用开发`上,选择`企业内部开发`

5. 点击右上角的`创建应用`按钮
6. 应用类型一定要选`H5微应用`,开发方式一定选`企业自助开发`

7. 根据实际情况填写名称和描述,之后点确定创建即可
### 开发者IP白名单配置
1. 在新创建的应用详情里,找到左侧导航栏的`开发管理`
2. 点击右上角的`修改`按钮
3. 填写服务器出口IP,如果是测试环境,可以去百度上搜索自己的外网IP(见下图),如果是线上环境,直接填写线上的公网IP即可。


### 接口权限的获取
1. 打开`权限管理`
2. 点击`通讯录管理`
3. 点击全选按钮
4. 点击`批量申请`按钮
5. 注意:如果有多页,只有当前页的权限会被申请到,下一页的权限需要手动切换到下一页再申请。

## 对接配置
1. `AgentId`对应配置里的`agent-id`
2. `AppKey`对应配置里的`client-id`
3. `AppSecret`对应配置里的`client-secret`
4. 配置完成之后需要重启后端项目,重启完需要刷新前端页面
5. 对应关系如下图所示


## 同步用户
### 用户同步到钉钉
1. 在用户管理页面,点击同步钉钉按钮即可


2. 规则:本地同步到钉钉,钉钉上有就更新,没有就创建。本地没有但是钉钉有的,不做任何操作。
### 从钉钉同步用户到本地
1. 需要在源码里添加如下选项
文件路径:src/views/system/UserList.vue


2. 再次回到页面,发现按钮变成了下拉形式,点击`同步到本地`即可

3. 规则:本地有的就更新,没有的就新增(默认密码123456)。本地有,钉钉没有的,不做任何操作。

## 部门同步
### 部门同步到钉钉
1. 在部门管理页面,点击同步钉钉按钮即可

2. 规则:本地同步到钉钉,钉钉上有就更新,没有就创建。本地没有但是钉钉有的,**删除**钉钉上的。
### 从钉钉同步部门到本地
1. 需要在源码里添加如下选项
文件路径:src/views/system/DepartListSync.vue


2. 再次回到页面,发现按钮变成了下拉形式,点击`同步到本地`即可

3. 规则:本地没有的就创建,有的就更新。本地有,钉钉没有的,不做任何操作。

## 发送消息
### 发送消息测试与撤回
1. 页面路径:常见案例-->第三方APP消息测试

2. 撤回

### 发送系统公告与撤回
1. 页面路径:系统管理-->系统通告
2. 直接发布消息即可


3. 效果预览:

4. 撤回

## 附录网址
钉钉开发者中心:https://open-dev.dingtalk.com
钉钉后台: https://oa.dingtalk.com
';