钉钉互动卡片有哪些属性,如何发送、更新和控制回调?
钉钉互动卡片具有一些关键属性,包括发送人、接收人、卡片标题、卡片内容以及卡片按钮等。这些属性都可以通过调用API接口进行设置。
发送互动卡片,需要使用钉钉开放平台提供的机器人接口(Webhook),将互动卡片作为消息内容发送到指定的群聊。如果您希望更新已经发送的互动卡片,可以使用钉钉的消息更新接口。通过指定卡片的唯一标识符和需要更新的属性,例如卡片的内容或按钮等,就可以实现对卡片的更新,新的卡片内容会覆盖旧的卡片内容并显示在群聊中。
此外,互动卡片中的按钮可以设置回调参数。当用户点击按钮时,钉钉会发送一个回调事件给您的服务器。您可以在机器人接口(Webhook)配置的回调 URL 中处理这些回调事件,并根据需要进行业务逻辑的处理。例如,动态设置按钮时需填写按钮点击事件类型,同时注册互动卡片回调地址并保留参数callbackRouteKey。
钉钉互动卡片具有以下一些常见属性:
cardType
:卡片类型,通常设置为“interactive”表示互动卡片。title
:卡片的标题。description
:卡片的描述或内容。btns
或 buttons
:一个包含按钮对象的数组,每个按钮可以有以下属性:actionURL
:点击按钮后跳转的URL。title
:按钮的文本。value
:按钮的值,可以在回调中使用。form
(可选):用于表单类型的交互,包含表单字段和验证规则。msgType
:消息类型,对于互动卡片通常是“interactive”。发送、更新和控制回调的步骤如下:
发送互动卡片:
access_token
:访问令牌,用于身份验证。agent_id
:应用的AgentID。user_id
或 dept_id
:接收者的用户ID或部门ID。msg
或 message
:包含卡片属性的对象或JSON字符串。例如,使用JavaScript发送互动卡片可能如下所示:
const message = {
msgtype: 'interactive',
interactive: {
cardType: 'interactive',
title: '卡片标题',
description: '卡片描述',
btns: [
{
actionURL: 'http://example.com/button1',
title: '按钮1',
value: 'button1_value'
},
{
actionURL: 'http://example.com/button2',
title: '按钮2',
value: 'button2_value'
}
]
}
};
// 使用钉钉API发送消息
dingTalkApi.sendMessage(access_token, agent_id, user_id, message);
更新互动卡片:
例如:
const updatedMessage = {
// 更新后的卡片属性
};
// 使用钉钉API更新消息
dingTalkApi.updateMessage(access_token, messageId, updatedMessage);
控制回调:
你可以根据接收到的回调数据进行相应的处理和响应。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。