在发送飞书卡片节点内,点击更多即可看到回调配置的功能入口,点击后,可在弹窗内对请求地址进行配置。订阅回调后,aily 将会在用户交互行为(如点击卡片按钮)发生时向配置的请求地址推送消息。 你需要立即返回响应内容,以反馈用户的操作。
250px|700px|reset
处理回调请求
当终端用户点击飞书卡片上的回传交互组件后,你在 aily 应用内注册的回调请求地址将会收到卡片回传交互回调请求。该回调包含了用户与卡片之间的交互信息。
你的业务服务器接收到回调请求后,需要在 3 秒内响应回调请求,声明通过弹出 Toast 提示、更新卡片、保持原内容不变等方式响应用户交互。
回调结构体
250px|700px|reset
此外,Web 渠道下的卡片回调体结构与飞书渠道基本保持一致,但不提供 header.token、context.open_message_id、context.open_chat_id 等飞书渠道下特有的字段。
响应回调的结构体
你的业务服务器接收到回调请求后,需要在 3 秒内响应回调请求,声明通过弹出 Toast 提示、更新卡片、保持原内容不变等方式响应用户交互。
响应体示例:
{
"toast":{
"type":"info",
"content":"卡片交互成功",
"i18n":{
"zh_cn":"卡片交互成功",
"en_us":"card action success"
}
},
"card":{
"type":"raw",
"data":{
"config":{
"enable_forward":true
},
"elements":[
{
"tag":"div",
"text":{
"content":"This is the plain text",
"tag":"plain_text"
}
}
],
"header":{
"template":"blue",
"title":{
"content":"This is the title",
"tag":"plain_text"
}
}
}
}
}}}
加密请求
250px|700px|reset
配置加密密钥后,aily 会向回调地址推送加密后的请求。加密推送能够让用户数据更加安全,建议用户配置密钥。加密推送的请求示例如下所示:
{
"encrypt": "FIAfJPGRmFZWkaxPQ1XrJZVbv2JwdjfLk4jx0k/U1deAqYK3AXOZ5zcHt/cC4ZNTqYwWUW/EoL+b2hW/C4zoAQQ5CeMtbxX2zHjm+E4nX/Aww+FHUL6iuIMaeL2KLxqdtbHRC50vgC2YI7xohnb3KuCNBMUzLiPeNIpVdnYaeteCmSaESb+AZpJB9PExzTpRDzCRv+T6o5vlzaE8UgIneC1sYu85BnPBEMTSuj1ZZzfdQi7ZW992Z4dmJxn9e8FL2VArNm99f5Io3c2O4AcNsQENNKtfAAxVjCqc3mg5jF0nKabA+u/5vrUD76flX1UOF5fzJ0sApG2OEn9wfyPDRBsApn9o+fceF9hNrYBGsdtZrZYyGG387CGOtKsuj8e2E8SNp+Pn4E9oYejOTR+ZNLNi+twxaXVlJhr6l+RXYwEiMGQE9zGFBD6h2dOhKh3W84p1GEYnSRIz1+9/Hp66arjC7RCrhuW5OjCj4QFEQJiwgL45XryxHtiZ7JdAlPmjVsL03CxxFZarzxzffryrWUG3VkRdHRHbTsC34+ScoL5MTDU1QAWdqUC1T7xT0lCvQELaIhBTXAYrznJl6PlA83oqlMxpHh0gZBB1jFbfoUr7OQbBs1xqzpYK6Yjux6diwpQB1zlZErYJUfCqK7G/zI9yK/60b4HW0k3M+AvzMcw="
}}}
应用的服务端接收到加密请求后,需要用配置的密钥进行解密处理。