企微应用访问事件收集
企业微信支持进行主动事件及消息推送,可以将用户与应用的消息交互、用户操作过中触发的事件推送到客户指定的服务端。目前微搭中的工作流产品能力,新增了企微消息触发器,支持接收企微的推送并触发工作流,对接收到的内容进行处理。
后续的内容将介绍使用工作流接收企微消息推送并过滤出其中的用户进入应用的事件,并将事件通过数据模型记录到数据库中。
数据模型建立
用户进入应用的事件结构如下:
其中的关键信息是:
- 企微的公司ID
- 应用ID
- 进入应用的用户
- 进入应用的时间
我们根据如上信息,在微搭的数据模型中创建自定义数据模型,并增加如上字段,其中字段标识需要记录,用于后续工作流中配置时使用;
其中:
- 访问时间:为日期时间类型
- 访问用户:为文本类型
- 应用ID:为数字类型
- 企业ID:为文本类型
配置完成数据模型后进行发布,便于后续工作流使用。
工作流创建及配置
新建工作流及配置触发器
新建工作流并选择触发方式为“收到企微消息事件推送时”
配置触发器:
- 推送URL:复制并记录,用于填写到企微应用的推送地址中
- 企业ID:从企微后台获取
- Token:随机生成并复制记录,用于配置到企微应用的推送中
- EncodingAESKey:随机生成并复制记录,用于配置到企微应用的推送中
最终配置如下图
配置分支过滤
在触发器节点后面接一个分支节点,用于过滤事件,配置两个分支:
- 进入应用事件:条件详情如下,用于过滤出进入应用的事件
wecomTrigger.output.DecryptJson.Event == 'enter_agent'
- 其他事件:条件为true
配置数据模型写操作
在分支节点后续增加一个数据查询节点,配置分支到数据查询节点间的条件为进入应用事件
数据查询节点配置为“微搭数据模型”的类型,选择数据模型为上面步骤创建的“企微应用访问日志”,方法选择为“创建单条”
入参修改如下,其中的每个key,需要与数据模型创建时的字段标识对应,根据各自的创建情况调整及填写,分别为访问用户、应用id、访问时间、企微公司id。
({
"data": {
"fwyh": wecomTrigger.output.DecryptJson.FromUserName,
"yyID": wecomTrigger.output.DecryptJson.AgentID,
"fwsj": wecomTrigger.output.DecryptJson.CreateTime*1000,
"qwgsID": wecomTrigger.output.DecryptJson.ToUserName
}
})
工作流发布
工作流配置完成、保存后,进行发布,确认已经发布成功。
后续是否正常运行,可以通过工作流内的日志界面查看发布版本的运行情况。
企微应用配置
要正常发出事件或消息,企微应用需要配置推送,通过进入企微应用管理,并配置应用的接收消息配置,可以将应用消息和事件对接上工作流。
通过企微后台的应用管理,进入到需要配置推送的应用
配置接收消息API
填写工作流触发器的URL 并将触发器中配置的Token、EncodingAESKey配置在这里 消息及事件类型根据需要勾选,在这里我们需要确认勾选了“上报进入应用事件”
配置完成后可以保存退出。
事件收集验证
配置完成后,在企微中通过工作台进入应用。
查看工作流的运行日志,是否有类似日志,可以查看执行了分支节点、后续的query节点。
进入数据模型的数据管理页,切换到正式数据,查看是否有数据记录下来