DingTalk「开发者说」钉钉酷应用&酷学院:企业社群学习“酷化”之路

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: 酷应用是钉钉平台上比较新的一个概念,他是一种全新的基于沉浸式、场景化、网络协同理念的应用形态。不同于传统 ToB 应用由比较复杂的功能、单据、流程和报表组成,酷应用使用轻量化的方式,将复杂功能解构、碎片化。

单人画板2.png

分享人:杨舟

视频地址一键回放

目录

  • 一、关于酷学院
  • 二、酷应用-让企业培训更“酷”
  • 三、群酷应用开发中的典型场景
  • 四、上手开发酷应用
  • 五、Q&A

一、关于酷学院

image.png

酷学院是酷渲科技的核心产品,公司的核心使命是通过酷学院产品,将 500 强赋能员工的资源和能力对接给中国 4300 万企业和组织。

酷学院积累了 2000 多万企业的在线学习用户,拥有 20 万+企业客户。在在平台上沉淀了 1000 +涵盖 9 大行业的标杆培训案例以及 15,000 多门精品课程。

目前,酷渲科技在全国有 500 +员工,全国十多个城市均设有分公司和办事处。与钉钉合作后,在平台上分别获得了钉钉销售第一名和学习培训品类第一名。

image.png

组织学习是企业培训最传统的领域。企业培训主管通常通过学习任务、入职新员工任务、线下培训场景以及定时考试四个场景组织整个企业的培训过。

除了组织学习以外,线上培训逐步拓展出了新的场景,比如岗位学习,不同员工、岗位从初级到中级到高级资深的成长路径,每条路径上都有必须要学习的内容,需要通过不同的认证考试,最终通过岗位学习方法逐步建立起岗位职级提升体系建立起。从功能上看,主要由岗位地图、职业学习路径、岗位认证等构建岗位学习。

论是岗位还是组织学习,都需要由企业培训主管组织。而员工也有自主学习的诉求,因此我们的平台沉淀了非常丰富的自主学习内容,包括内部课程、外部课程,企业可以采购,让员工通过碎片时间自主学习,随时随地学习。

在个人学习的基础上,也需要社交学习。比如导师带教一对一、基于群的学习社区、 PK 赛等,比如在不同部门、岗位之间组织学习PK、知识比拼、技能比拼,激发和促进员工的学习动力。

image.png

酷渲科技的产品战略经历了4个阶段。

  • 1.0时代:在线学习考试平台。目标为让员工能够看了学,懂了考,会了实操,是基于任务式的学习。
  • 2.0时代:培训数字化操作系统。增加了主动学习元素,包括新员工学习知识图谱、企业知识库,将所有内容沉淀到知识库,让员工能够利用碎片化时间进行学习。
  • 3.0 时代:企业人才发展平台。核心打造了岗位学习路径,通过个人发展与兴趣学习结合,构建出了岗位提升体系,提升员工岗位实践能力。
  • 4.0 时代:组织能力提升平台。 目前,酷渲科技正在本想4.0 时代,核心为构建组织成长路径,通过组织能力诊断、组织人才盘点、企业文化系统以及数字化人才供应链,还有非常核心的企业培训与绩效管理一体化结合的服务,实现提升组织力的最终目标。

二、酷应用-让企业培训更“酷”

image.png

酷应用是钉钉平台上比较新的一个概念,他是一种全新的基于沉浸式、场景化、网络协同理念的应用形态。不同于传统 ToB 应用由比较复杂的功能、单据、流程和报表组成,酷应用使用轻量化的方式,将复杂功能解构、碎片化。

简单来说,酷应用在钉钉场景里深度融合 ISV 能力,不需要打开 ISV 主应用,可直接在群里或代办里形成业务闭环,通过消息推送的方式触达审批者,直接点击完成,不需要进入到主应用。

酷应用具有四个显著特性:

第一,沉浸式体验,不需要脱离聊天、上下文,不打断当前工作。

第二,场景化协同。信息围绕着场景和具体事项,员工和员工之间高效协同。

第三,即时数据分析。利用高效系统产生的结构化数据进行即时分析,形成有效洞察。

第四,指标化运营。人人参与,实干真用,与组织激励制度相结合,让数字化真正落地。

image.png

在酷化之前,酷学院的培训形态分为管理端和学员端,两个端分离,操作链路相对较长。管理端提供给企业培训主管部门使用,能够对学员的学习状态进行可视化监控,比如考试成绩、学习进度跟踪。学员端提供给员工使用,可以查看课程、考试、新员工任务等。

image.png

酷化的业务场景上瞄准了主课之前的预习和之后的复习。

酷学院的酷应用打通了核心流程。在群场景里,作为群扩展,培训主管或讲师可发布课程,过程非常流畅、轻便,学院可在群里直接进行学习。完成学习后,管理员可以在群里跟踪学生学习成果,通过吊顶卡片的形式查看学习完成情况以及排名等。还可一键催促,对未完成学习的人进行通知督促,并将学习排行榜发布在群里。所有流程均在群里完成,非常轻量。

image.png

广州牛小灶餐饮管理有限公司市我们的标杆客户,目前年营收数亿元,员工数千人。客户通过酷学院酷应用在群里发布了大量课程,员工在不同群里进行学习。

目前酷学院酷应用 58 天内新开通客户 17,000 多,群场景成为了全新的业绩增长入口,为客户提供了创新的产品体验。

三、群酷应用开发中的典型场景

为了快速接入酷应用,我们选择了比较简单场景——线上课进行实践。线上课业务可以将课程发布在线上,企业学员主动学习,学习完成以后会产生数据,管理员可以搜集数据并进行统计,查看学员学习情况,主要分为发布课程和学习课程两个功能。

image.png

开通能力上,支持成员开通以及管理员开通两种模式。如上图左侧,上面是群快捷栏的开通入口,下面是群酷应用市场的开通入口。接入了以后,钉钉侧支持将开通入口预装在群快捷栏里。另外,如果是通过成员授权开通,则成员可以自行解除授权。

开通上,我们总结了三条经验:

第一,酷应用开通后需要同步开通主应用,酷应用和主应用的用户权限需要保持一致,以便用户在酷应用与主应用之间自由切换。

第二,管理员授权开通以后,成员授权会转为管理员授权。

第三,管理员开通到期以后,再有成员授权开通,会导致应用授权范围发生变更。

image.png

消息卡片是酷应用的重要载体。上方的吊顶卡片可以做链接,进行跳转,进行简单交互。下方为消息卡片。

卡片内容可动态变更,比如吊顶卡片上预留了几个统计数据,用户完成学习任务以后会实时变更;卡片可以进行轻量级交互,比如查看消息;卡片四端一致, 包括iOS、安卓、 Windows 以及 macOS ,用户不会感觉到任何差异;卡片数据支持私有和公有,千人千面。

消息卡片上,我们也总结了4条经验:

第一,千人千面不能超过 500 份。比如群里人数大于 500 ,想为每人设置一份数据则无法实现。为了解决该问题,我们将群内所有成员分成两种身份,分别是管理员和普通使用者。管理员一般不会超过 500 个,因此管理员的所有数据是千人千面。但是群内普通成员看到的所有数据都为同一份。

第二,合理里设置唯一键,保证卡片数据幂等。如果群内成员特别多,完成学习以后发消息卡片通知群内成员,巨大的数据量大会造成不少压力,而且存在很多重复数据。比如榜单数据形成后,数据并不会有太大变化。如果没有做好幂等,需要不断请求钉钉接口,可能会触发限流。

第三,同步调用和异步调用分开,减少并发,防止被限流。大量群成员完成任务以后会不断更新消息卡片、吊顶卡片,极易触发限流,因此,我们通过将同步调用和异步调用区分开,吊顶卡片通过同步调用,消息卡片通过异步调用,采用了消息队列的方式,有用户完成任务以后,会将消息存放至消息队列,缓慢地消费队列,减少并发调用钉钉接口,以免被限流。但是在体验上会有折损,比如有些用户完成了学习任务,但是无法立刻看到群内的消息卡片。

第四,消息卡片需要设计关闭选项。群内发布的学习项目比较多时,需要左右横滑切换卡片才能找到学习项目,因此我们设计了关闭选项,任务学习完成或过期以后,可以将卡片关闭,体验会更好。

image.png

酷应用大多存在于在群内,群内成员不一定在主应用授权范围内。因此,我们重新开发了群选人组件,主要包括选择群成员和群成员搜索两个能力。如上图左侧所示,“本群2人因未授权无法展示、选择”,即使选择上了,也不能使用应用,因此系统直接将其过滤。

目前钉钉侧只提供了群成员 ID 列表接口,只能通过接口获取群里所有成员 ID ,此外,还需要获取成员姓名、头像信息,此类信息目前都需要通过主应用获取,因此需要通过群成员 ID 到主应用授权范围内组织成员中获取信息。如果成员过多,则选人性能很差。

因此,我们将所有群成员缓存在 Redis 里,然后对接了钉钉群成员变更事件,钉钉群内有成员发生变更时,会收到成员变更事件,实时更新 Redis 里的群成员。选人时直接读 Redis ,不再读取钉钉接口,大幅降低了接口调用时长,提升了选人效率。

image.png

主应用主要为企业内部群提供服务,但是酷应用可以接外部群。培训群是场景群,虽然群标签依然是内部群,但也可以在群内拉其他外部组织的成员一起进行学习。

企业内部群和培训群均支持快捷栏预装和应用市场安装,可按照行业覆盖,可以通过培训群预装酷应用。同时,企业内部组织和非内部组织都可以使用酷应用,企业组织内部可以通过企业内部群开通酷应用,企业外部群可以通过培训群开通酷应用。

企业内部群开通以后的组织架构是真实的组织架构;而培训群是外部群,开通以后的组织架构是敏捷组织,是一个虚拟的类似于群组织,成员所属组织与企业无关。培训群无法读取成员信息,难以转化。

image.png

酷化为我们带来了丰富的价值:

  • 线索量提升,7月上线酷应用后,积累了2W+条线索量。
  • DAG 以及 DAU 提升明显,两个月内有 2W+组织开通了酷应用。
  • 提升了培训学习场景用户体验,用户可以在群内完成培训学习,场景完全闭环。

产品侧的经验可以总结为以下几点:

  • 将群看作独立场景:内部群中有应用可见范围内成员与应用可见范围外成员,应用可见范围内又有管理员、部门负责人、普通成员等多种角色,需要单独设计群成员的身份权限等。
  • 要顺应,不要创造:群内功能要符合用户在群内工作沟通的习惯。
  • 要小不要大:酷应用不是主应用的入口,而是一个能够独立完成业务的场景,群内操作应尽量简单。

技术侧的经验可以总结为以下几点:

  • 吊顶卡片不能真正实现千人千面,卡片更新要注意限流。
  • 选取群成员:目前钉钉并没有提供成熟的选人组件,需要技术开发,对性能要求较高。
  • 外部群获取到的组织为敏捷组织,不是真实的企业组织,目前并没有商业化手段。
  • 成员授权的快捷栏投放需要按照最新文档接入。

四、上手开发酷应用

image.png

群扩展是酷应用的一种,酷应用包含很多类型,比如待办酷应用、链接酷应用。群扩展是应用在会话中使用的扩展形态,主要基于主应用扩展了会话快捷入口、会话机器人和互动卡片的能力。从技术能力上,还可以实现在单聊会话中集成酷应用。

群扩展主要基于群聊会话窗口完成业务,使用户无需脱离会话窗口即可进行学习,提升了用户体验。

作为第三方企业,开发群酷应用主要有以下几个流程:

第一步:上架第三方企业应用。入驻成为产品方案商,完成应用开发和自检,提交应用商品上架。

第二步:在主应用上配置群扩展的基本信息,包括开启扩展到群会话,配置群扩展名称、简介、图标等,配置群扩展入口名称、图标、访问地址。访问地址需要区分 PC 端和移动端。

第三步:设置机器人消息推送的接收地址。

第四步:开发互动卡片,主要基于钉钉开放平台的卡片平台搭建出互动卡片模板,借助钉钉提供的卡片发送能力发送互动卡片或发送吊顶卡片至群里。

第五步:群扩展应用上架,在钉钉开放平台里提交审核,审核通过之后会上架到酷应用中心。

第六步:用户可以在群里启用酷应用,在群里体验酷应用功能。

第七步:使用群扩展应用。

配置基本信息时会配置快捷栏入口地址,配置完成之后,可以通过入口地址跳转到前端对应的 H5 页面,实现业务需求。

image.png

群扩展酷应用是基于主应用,所以配置群扩展基本信息也是在开放平台主应用里进行。主应用配置里点击酷应用扩展,可创建自己的群酷应用。填入群应用基本信息、图片图标、名称简介、群应用入口名称、地址信息等。开发阶段的体验也必须先提交审核,否则应用无法添加到群里。

image.png

机器人消息推送也在主应用配置里完成,配置消息接收地址,用于接收会话机器人收到的消息。三方企业应用在将酷应用扩展到群会话时,会为应用绑定一个机器人,通过该机器人发送互动卡片到群里,因此机器人的 robotCode 码也是重要信息,发送互动卡片时需要使用robotCode 。

image.png

互动卡片开发首主要基于互动卡片搭建平台搭建出互动卡片模板。模板创建分为普通版和高级版。我们选择使用高级版,它是一个在线可视化搭建平台,可以通过拖拽组件的方式快速搭建出自己需要的卡片模板,根据业务需要设置卡片对应的数据模型。卡片模板搭建完成后,可以通过调用钉钉接口发送设计好的卡片。

image.png

基于上一步创建的卡片模板,通过调用服务端 API 发送钉钉互动卡片。根据设计模板 ID 以及卡片模板里需要的数据,调用 API 会自动组装数据,将卡片发送到群里。

发送卡片之前需要获取机器人RobotCode以及模板ID,模板 ID 在卡片搭建平台列表页面可查看。

一般情况下发送卡片在前端页面触发操作,前端页面通过群会话快捷栏入口进入,可以通过占位符形式获取到群 ID ,然后准确地将卡片信息发到对应群里。

image.png

最后,在创建群应用页面,点击提交审核,进入审核流程。审核完成之后即可上架。

酷应用是钉钉今年的战略重心,它强调PaaS First、Partner First ,将自己摆在底层能力提供者的位置上,这也是ISV 所期待的。

大家一起加入这个生态开发酷应用,对于钉钉方、对 ISV 方以及开发者都非常有利。钉钉侧得到了生态丰富,ISV 侧通过酷应用完善自己的产品能力,并且得到了流量扶持。而对于开发者,酷应用越来越繁荣,开发者掌握的技能也更具有价值。

五、Q&A

Q:选人组件里,群成员实变更,酷学院如何进行实时同步?
A:我们接入了钉钉群成员获取接口,只能获取到群成员 ID 信息。因为选人时不仅需要姓名,还需要部门等详细信息,而此类信息只能从主应用组织架构里获取。因此会涉及到群成员 ID 与主应用的匹配关系。开通酷应用以后,我们会将群成员ID以及其他详细信息缓存在 Redis ,然后对接了钉钉提供的群成员变更事件,有成员退出或加入时,可以实时收到事件并更新缓存,大大提高了选人性能,在选人体验上也会更好。

Q:消息卡片更新时,如何控制更新频率防止被限流?
A:采用了消息队列,主要目的为削峰。很多用户同时完成任务发出消息以后,会先将消息发到队列里,通过队列做限流组件控制流速,必避免了触发钉钉限流。即使有请求穿透了限流组件,到达了钉钉,钉钉也会返回限流错误码,通过错误码降低流速。达到了既可以控制频次,又可以防止被限流的目的。

Q:除了群扩展,是否还有其他酷化场景?
A:最开始我们只是将最简单的线上课学习场景酷化,后续逐渐考虑将使用频次最高的场景比如学习项目以及考试场景搬至酷应用。最近钉钉对代办做了半屏优化,点击待办时会出现半屏效果。因此我认为后续我们也可以将审批等相关场景酷化,体验更流畅、更方便。

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
4月前
在钉钉开放平台中,事件订阅功能允许你的应用订阅钉钉的各种事件
在钉钉开放平台中,事件订阅功能允许你的应用订阅钉钉的各种事件【1月更文挑战第20天】【1月更文挑战第98篇】
140 1
|
4月前
|
开发者
电子好书发您分享《钉钉应用开发者速成手册》
电子好书发您分享《钉钉应用开发者速成手册》
126 2
|
4月前
|
搜索推荐
钉钉:不可取代的企业通讯与管理工具
钉钉:不可取代的企业通讯与管理工具
|
4月前
|
机器人 API
钉钉里{"code: 400, 错误描述:机器人权限校验不通过;解决方案:请登陆开放平台后台,检查机器人是否归属于token对应的主应用名下 请问场景机器人-发消息-这个报错什么原因导致的啊?
钉钉里{"code: 400, 错误描述:机器人权限校验不通过;解决方案:请登陆开放平台后台,检查机器人是否归属于token对应的主应用名下 请问场景机器人-发消息-这个报错什么原因导致的啊?
151 0
|
14天前
|
Serverless Go API
Serverless 应用引擎产品使用之在阿里云Serverless中,我想在钉钉机器人中使用函数计算的签名认证如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
19 0
|
21天前
|
敏捷开发 测试技术 持续交付
云效产品使用常见问题之企业钉钉解散后,不知道云效功能是否可以正常使用如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
1月前
|
移动开发
钉钉PC端点击消息通知的链接显示该应用已停用或未授权你的访问
开发的H5微应用能发送含详情页链接的卡片消息至用户移动端,用户可顺利跳转。然而,在PC端点击相同链接会显示“应用已停用或未授权”,提示联系管理员,附带图片说明问题。
|
2月前
|
监控 Serverless 开发者
Serverless 应用引擎常见问题之应用重启或者挂了通过钉钉发消息提醒如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
30 1
|
2月前
钉钉开放平台支持多种类型的应用
【2月更文挑战第19天】钉钉开放平台支持多种类型的应用
35 6