企业版手机端钉钉对接:
作为后台我把钉钉理解成了一个特殊的浏览器。
dingding文档https://open-doc.dingtalk.com/?spm=a219a.7629140.0.0.o6fMoq 这个文档的开发者接入里有对应的接口,也就是你访问对应url,dingding会回复对应的信息,操作dingding控件的接口。
第一次dingding对接一头雾水,总结了几个问题:
怎么能够操作手机上的dingding软件呢?
dingding提供了一个JSAPI来操作dingding软件,而这个JSAPI我把它理解成自己封装的js代码,他需要对应的框架提供支持,这个框架就是dingtalk.js(文档里都有)。也就是说dingding如果先发起一个请求到后台,如果后台回复对应的JSAPI就可以操作dingding了。


JSAPI:
操作dingding分成dd.config dd.ready dd.error三个部分,而jsapi是放到dd.ready里并且使用jsapi需要先用dd.config来进行签名校验。

dingding提供了很多个接口在API列表总览里


免密登陆公司的后台服务器的过程:

1.在dingding后台创建应用,配置跳转地址/dlogin/
2.自己的服务器后台接收到请求,先利用自己封装的sdk获取前端校验需要使用的签名信息假设叫他config,将config添加到H5页面dlogin.html上,返回dlogin.html。在返回的dlogin.html中 ,页面上要加载dingtalk,目的是使用JSAPI:先利用dd.config完成签名校验,这样才能使用dd.ready里面的jsapi,然后用dd.runtime.permission.requestAuthCode获取code的值。
3.如果通过dlogin.html里嵌入的dd.runtime.permission.requestAuthCode获取到code值后,那么后台就可以拿着code发送get请求 https://oapi.dingtalk.com/user/getuserinfo?access_token=ACCESS_TOKEN&code=CODE
来获取用户在dingding服务器里存储的信息了,可是我们自己的服务器后台怎么拿到这个url的code呢,可以让成功获得code的信息的dd.runtime.permission.requestAuthCode在成功的情况下向后台发送 /user/getuserinfoaccess_token=ACCESS_TOKEN&code=CODE 请求,后台就可以拿到这个url的后半部分了。在重新组装就可以了。
4.后台拿到url之后就可发送请求,获得用户的信息了,在自己的服务器上首先要添加ding_id和is_exist 两个字段,在请求的返回值当中就有ding_id和is_exist的信息,来判断哪个用户登录了。之后就是正常的登陆和返回和跳转到首页了。


python的dingding的sdk 主要目的是组织参数,生成签名信息:
1,在init中应该有需要的参数,在创建应用的时候就获取的agentId,cropId,cropSecret
2,获取access_token: 通过get请求 https://oapi.dingtalk.com/gettoken?corpid=id&corpsecret=secrect
得到access_token
3,获取ticket: 通过get请求 https://oapi.dingtalk.com/get_jsapi_ticket?access_token=ACCESS_TOKE
得到ticket
4,根据参数ticket,nonceStr(随机数),timeStamp(时间戳),url应用设置访问的url,生成signature:jsapi_ticket=%s&noncestr=%s&timestamp=%s&url=%s根据顺序组成字符串,sha1加密,转换16进制。
实际在dd.config校验是需要的参数有nonceStr, corpId,timestamp,signature,agentId


发送dingding消息:当有请假信息或者有审批信息的状态时,需要给相关的人员发送dingding消息。
可以用发送企业消息接口 https://oapi.dingtalk.com/message/send?access_token=ACCESS_TOKEN
这个接口支持多种数据类型text、image、voice、file、link、OA、markdown消息类型 文档都有说明。
1,组织参数,2,组织url,3,发送请求。

企业版移动端钉钉对接相关推荐

  1. 钉钉api接口 Java_服务端对接钉钉三步走

    服务端对接钉钉三步走 第一步:获取业务对接的appkey和appsecret 登录开发者后台,点击"应用开发"-"企业内部应用"-找到应用并点击应用图标-点击& ...

  2. JAVA 对接钉钉API(人员、部门、官方智能工作流)20210527

    前言 应公司要求,公司人事HR系统需要对接钉钉考勤数据,所以需要获取钉钉的打卡记录.出差.外出.请假.调岗的数据,然后转换成HR系统数据. 对接前准备 创建应用 1.首先需要管理员登录钉钉开放平台,创 ...

  3. 企业对接钉钉流程(企业内部应用-H5)

    企业对接钉钉流程(企业内部应用-H5微应用) 开发前准备: 企业自主研发H5微应用 官方文档写的很全了,非常值得细读. 本片,我们企业要接入钉钉(企业内部应用-H5微应用),取钉钉后台数据用. 开发前 ...

  4. python项目对接钉钉SDK

    钉钉SDK 对接sdk还是遇到不少问题的 文章目录 钉钉SDK 一. 第三方web网站扫码登录 1. 流程 二. 加解密 1.注册事件 三. 调试 钉钉python版SDK文档地址: https:// ...

  5. 专有钉钉 浙政钉 前端 对接流程(小程序)

    主要开发流程 本公司专有钉钉开发平台账号(公司钉钉超管注册 给开发人员权限) 超管按照文档给予开发人员权限 创建项目 下载开发工具 配置专有钉钉开发环境 免登录(用户不用输入账号密码直接登录) 根据业 ...

  6. 对接钉钉审批_钉钉审批对接是什么-和钉钉审批对接相关的问题-阿里云开发者社区...

    关于 钉钉审批对接的搜索结果 问题 企业系统对接钉钉生成审批单,企业系统处理审批后,如何撤销钉钉审批单 公司erp系统与钉钉对接,erp发起审批后同步到钉钉生成审批实例,在erp中用户处理了审批,如何 ...

  7. 钉钉开放平台API对接第一讲

    DING日程-API对接: 官方API:https://ding-doc.dingtalk.com/doc#/serverapi2/iqel76 对接评语: 优点:钉钉API对接相对于微信API对接比 ...

  8. 钉钉与钉钉对接集成查询表单列表详情(宜搭)连通发起审批实例(官方)(钉钉【项目事项】未审核完成=>钉钉【工作延误记录表】)

    钉钉与钉钉对接集成查询表单列表详情(宜搭)连通发起审批实例(官方)(钉钉[项目事项]未审核完成=>钉钉[工作延误记录表]) 数据源平台:钉钉 钉钉(DingTalk)是阿里巴巴集团打造的企业级智 ...

  9. 开发日志:准备开发ERP对接钉钉,对使用钉钉API简单可行性概述。

    钉钉是一款现在非常流行的业务办公类软件,具有企业内部沟通.考勤审批.外部CRM等功能.除此之外,钉钉还开放了API接口.让我们程序员可以非常方便借助钉钉已有的功能,补充企业管理的短板.刚好最近准备开发 ...

最新文章

  1. 从前端框架到前端架构参考资料
  2. 中介者模式 调停者 Mediator 行为型 设计模式(二十一)
  3. mybatis-plus入坑指南
  4. Android Handler主线程和一般线程通信的应用分析
  5. PHP内核探索:新垃圾回收机制说明
  6. Facebook轮播连结广告可展示5个图像与连结
  7. Python数据挖掘笔记 七 .PCA降维操作及subplot子图绘制
  8. linux用户类型分类,信息安全技术题库:SELinux安全上下文主要包括用户、角色、类型、层次和分类字段。( )...
  9. 数据结构与算法之单链表
  10. 【图像去雾】基于matlab直方图+retinex+暗通道图像去雾【含Matlab源码 074期】
  11. 熔断机制什么意思_什么是“熔断机制”,为什么交易所需要它?看完你就明白了!...
  12. linux 踢出其他用户,linux系统强制踢掉登录用户
  13. Vue-Node安装教程
  14. 《上海市居住证》积分申请的个人书面材料
  15. 人间炼狱,人性在哪儿---------------- 二十年穿铁衣取胆,母熊含泪杀子并自杀
  16. 老板喜欢的高绩效哪里来?
  17. 打印机连接不上打印设备提示0x0000011b 正式解决方案无需卸载补丁
  18. IOS唤起键盘后--导致页面底部空白问题
  19. c语言指针结构体心得,C语言结构体指针陷阱
  20. S5PV210的中断处理机制详解

热门文章

  1. 3GPP TR 38.885 Study on NR Vehicle-to-Everything (V2X) (Release 16)
  2. 机器学习(西瓜书)注解:第12章 计算学习理论
  3. steam如何搜索免费游戏
  4. Andrew Ng宣布离职百度:将开启在人工智能领域的新篇章
  5. 关于股市的各种小段子
  6. HTTP返回内容前面出现一个多出来的数字 Transfer-Encoding: chunked
  7. [案例6-1]库存管理系统
  8. 信息组织 | 信息内容分析与标引
  9. 亚马逊云科技不断迭代,为客户提供更加优质的服务
  10. 网易面试——人工智能工程师