企业微信消息卡片内容定制
发送文本卡片消息
消息中心的消息模板管理中预制了任务管理消息模板,这就是流程发送消息的模板。
文本卡片消息格式包括标题和描述,均支持使用变量。
流程中支持的变量如下,变量使用${变量名称}方式引用。
变量含义 | 变量名称 |
---|---|
任务标题 | title |
流程发起时间 | piCreateTime |
流程发起人 | piCreatorName |
流程发起人机构名称 | piCreatorOgnName |
流程发起人部门名称 | piCreatorDptName |
流程发起人岗位名称 | piCreatorPosName |
流程发起人组织名称 | piCreatorOrgName |
任务创建时间 | taskCreateTime |
任务创建人 | taskCreatorName |
任务创建人机构名称 | taskCreatorOgnName |
任务创建人部门名称 | taskCreatorDptName |
任务创建人岗位名称 | taskCreatorPosName |
任务创建人组织名称 | taskCreatorOrgName |
任务处理页面链接 | url |
任务管理消息模板设置如下图所示
其中消息的内容模板如下
<div class="gray">${taskCreateTime}</div>
<div class="normal">流程发起人:${piCreatorName}</div>
<div class="normal">发起时间:${piCreateTime}</div>
<div class="normal">发起机构:${piCreatorOgnName}</div>
<div class="highlight">任务创建人:${taskCreatorName}</div>
<div class="normal">创建时间:${taskCreateTime}<div>
<div class="normal">创建机构:${taskCreatorOgnName}</div>
运行效果如下图所示(模板中的换行是为了阅读方便,会造成下面的空行)
发送文本消息
通过下面的配置不发送文本卡片消息,而发送文本消息
- 选中消息模板中的禁用详情开关
- 在内容模板中定义了类似
<a href='${url}'>查看详情</a>
的代码
效果如下图所示:
按钮交互型消息
下面介绍对于“按钮交互型应用消息”,更新其“任务卡片消息”中按钮状态的步骤
“未处理消息”效果如图:
“完成消息”效果如图:
实现如上效果配置说明如下
接收消息回调参数设置
打开企业微信管理后台,打开应用管理中要配置的应用。在功能区域中,消息接收——设置 API 接收中配置 API 接收消息
在接收消息服务器配置页面中,配置接收消息的 URL,地址为:门户域名/message/main/wx/callback
例如: https://entryglf875-vip.trunk.xcaas.net/message/main/wx/callback
获取 Token 和 EncodingAESKey 值,可点击随机获取按钮进行获取(注意:获取的值一定要保存,如果没有保存当前页面配置,再重新打开该页面需要重新获取),配置完成后点击保存即可
如果参数配置不正确或者网络不通情况,则会报如图 openapi 回调地址请求不通过的提示
打开平台门户,进入“统一通用配置”中“企业微信配置”配置项,使用上面获取的 Token 和 EncodingAESKey 值进行配置
消息模版配置消息按钮交互样式
打开消息中心——消息模板管理功能,在任务管理模版中进行扩展配置
配置内容为:{"wx":{"msgtype":"button_interaction","btnText":"进入处理"}}
如果要配置按钮类型可以添加 btnStyle 配置,如: {"wx":{"msgtype":"button_interaction","btnText":"进入处理","btnStyle":"2"}}
更新任务卡片消息状态设置
46及以前版本需要自行调用下面的 API,47及以后版本系统自动调用下面的 API。
调用企业微信提供的 API:https://qyapi.weixin.qq.com/cgi-bin/message/update_template_card?access_token=xxx
更新消息状态
此接口除了 access_token 参数,还有请求体 body 中的参数:如下
{
"userids" : ["JiShuang"],
"partyids" : [],
"tagids" : [],
"atall" : 0,
"agentid" : XXXXX,
"response_code": "ltKJmlT8s3mny5alrXQbAfarRDciNKYmd9uu5OV4MYE",
"button":{
"replace_name": "处理完成"
}
}
API 中参数获取说明如下,没有说明的参数可以参考企业微信官方接口中“更新按钮为不可点击状态”参数的说明:
access_token:调用企业微信接口获取:
https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRET
corpid:“统一通用配置功能——企业微信配置”中配置的 corpid corpsecret:“统一通用配置功能——企业微信配置”中配置的应用Secret
- response_code:可通过消息中心应用中的消息日志中获取
- userids:可通过消息中心应用中的消息日志接收者账号中获取
- agentid:企业微信应用的 id,“统一通用配置———企业微信配置”中 AgentId 的值
- replace_name::企业微信中消息按钮的要替换的文本