钉钉如何把功能放到消息界面?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
要将功能集成到钉钉的消息界面,通常需要通过钉钉的开放能力进行开发和配置。以下是实现这一目标的具体步骤和方法:
钉钉提供了UI SDK,允许开发者在消息界面中添加自定义的功能按钮或页面元素。通过配置相关参数,可以控制这些功能的展示和行为。
页面资源入参
所有涉及资源URL的参数必须使用https
协议,或者不带协议前缀(如//
),否则可能导致安全警告或资源加载失败。例如:
'https://img.alicdn.com/tfs/TB1OSGJcrj1gK0jSZFOXXc7GpXa-379-69.svg'
// 或
'//img.alicdn.com/tfs/TB1OSGJcrj1gK0jSZFOXXc7GpXa-379-69.svg'
页面元素入参
钉钉消息界面支持多种功能按钮的展示,例如聊天、音频、视频、屏幕共享等。以下是一些关键参数及其作用:
showChat
:是否展示聊天消息发送和接收功能,默认值为true
。showSpeakerIcon
:是否展示接收到的音频开关功能,默认值为true
。showMicroIcon
:是否展示本地麦克风开关功能,默认值为true
。showCameraIcon
:是否展示本地摄像头开关功能,默认值为true
。showShowScreenIcon
:是否展示共享屏幕功能,默认值为true
。文案定制
如果需要在界面上显示多语言文案,可以通过对象形式定义不同语言的内容。例如:
{
'en': 'Hello',
'zh-cn': '你好'
}
钉钉机器人是一种常见的扩展方式,可以将外部服务与钉钉消息界面集成。以下是具体操作步骤:
${queuePosition}
表示排队位置,${agentDisplayName}
表示坐席名称)。如果需要在消息界面中实现更复杂的IM功能(如消息存储、会话展示、即时感知等),可以基于表格存储(Tablestore)进行开发。
消息存储
使用im_timeline_store_table
表存储消息,支持单行和批量写入,按消息队列范围读取,并支持多维检索和全文检索。
会话窗口消息展示
通过timelineId
获取消息队列,调用scan
接口按sequenceId
倒序拉取最新消息,减少网络IO。
新消息即时统计
维护客户端长连接,当同步库有新消息写入时,通知客户端拉取并更新未读数。
多端同步
服务端维护checkpoint点和未读消息数,确保多端数据一致。
如果需要将特定事件(如告警、通知等)投递到钉钉消息界面,可以使用事件总线(EventBridge)。
前提条件
确保已开通事件总线和轻量消息队列(原MNS)服务。
实现步骤
对于物联网场景下的告警通知,可以通过钉钉物联小程序快速实现。
发送消息到个人
发送消息到群组
如果需要将第三方服务(如云效)与钉钉消息界面集成,可以按照以下步骤操作:
用户和组织同步
配置同步时机、用户差异处理、组织差异处理规则。
单点登录
将云效的回调地址配置到钉钉应用的安全设置中。
消息通知
完善钉钉应用中的机器人配置信息。
工作台访问
将云效网页地址粘贴到钉钉应用的PC端首页地址中。
https
协议或不带协议前缀,避免因安全问题导致资源加载失败。通过以上方法,您可以将自定义功能成功集成到钉钉的消息界面中。