执行动作
更多执行动作可查看《变更属性》、《移出标签组》、《终止旅程》。
什么是webhook?
——webhook(也被称为网络回调或HTTP推送API)是一个应用为其他应用提供实时信息的一种方法。
——当webhook被触发后,它将传送数据到其他应用程序中去,该应用程序会立即获取到数据,而不需要定时调用当前应用的openAPI批量获取数据。Linkflow webhook 动作
——在Linkflow客户旅程中使用webhook动作图元,当客户旅程被触发,webhook可以向配置地址发起请求,将客户旅程触发事件信息、联系人信息、自定义信息发送给配置地址。配置webhook 动作图元
在客户旅程画板上,拖入webhook动作图元
点击设置按钮,填写信息
消息接收URL:请填写接收消息地址
请求方法:目前只支持post方法
消息格式:目前只支持JSON
消息结构体配置:您可以在此自定义消息结构体中的参数- 用户详情
消息结构体增加contact参数,包括所有非空的系统预置用户属性、自定义用户属性、用户来源utm - 关注状态用户微信账号
contact结构体中增加wechatAccounts参数 - 用户身份
选择需要推送的identities参数 - 用户自定义连接账号
contact结构体中增加udcAccounts参数 - 触发事件
消息结构体中增加event参数 - 自定义参数
消息结构体中增加_custom参数
示例:
{ "sendTime": 1553249452973, "contact": { "id": 100, "name": "张三", "mobilePhone": "13912341234", "email": "zhangsan@example.com", "utm": { "source": "企业微信", "medium": "名片分享", }, "wechatAccounts": [ { "appId":"wx73a996aaaaaaaaa", "openId":"oGMVZ1AGl3mMQfWkrVl535QNCZsI", "isActive":false }, { "appId":"wx73a996aaaaaaaaa", "openId":"oGMVZ1AGl3mMQfWkrVl535QIayAq", "isActive":true }, { "unionId":"ogdN81fzE7J6ZDVuyhGhOJ8MHTRc" }, { "unionId":"ogdN81fzE7J6ZDVuyhGhOJ8asdbs" } ], "identities": [ //用户身份 { "id": "ov7GewyvTj93CtHYJujyfqoe0XFY", "type": "wechat.openId", "dateCreated": "2022-12-20 09:22:17" }, { "id": "LA8nJq95615177365349220352", "type": "youzan.yzOpenId", "dateCreated": "2022-12-20 09:22:17" }, ], "udcAccounts": [ { "externalId": "externId1", //联系人在自定义渠道的账号 "channelId": "abc.com", //自定义渠道连接的channelid "channelName": "abc website" //自定义渠道连接的名称 } ] }, "event": { "eventDate": 1553249452973, "channelId": "wx123", "channelName": "微信mp", "event": "WECHAT__SUBSCRIBE", "attr1": "XXX", "attr2": "XXX", "contactId":18257, "id":104298, "items": [] }, "_custom": { "foo": "bar" } }
消息结构体参数字段含义
字段名 类型 描述 示例 sendTime long 请求时间 1553249452973 contact object 联系人 参见1.1联系人结构体参数字段 event object 触发事件 参见1.2事件结构体参数字段 _custom object 自定义参数 1.1联系人结构体参数字段含义
字段名 类型 描述 示例 id string 联系人ID 1553249452973 name string 联系人姓名 张三 mobilephone string 联系人手机 15150000000 email string 联系人邮箱 zhangsan@demo.com wechatAccounts list 联系微信账号列表(公众号、小程序) udcAccounts list 联系人自定义渠道账号列表 1.2事件结构体参数字段含义
字段名 类型 描述 示例 id string 事件id 104298 eventDate long 时间戳:事件发生时间 1554798374000 channelId string 连接id udc_1544vOULeekh channelName string 连接名称 源犀科技 event string 事件编码 WECHAT__SUBSCRIBE sdkVersion string SDK的版本 1.0.0 sdkType string 记录此事件的SDK iOS SDK platform string 应用平台 iOS screenWidth BigDecimal 屏幕宽度 screenHeight BigDecimal 屏幕高度 appVersion string 应用版本 bundleKey string 应用包名 os string 操作系统 Linux osVersion string 操作系统版本 例如8.1.1 browser string 浏览器名称 谷歌浏览器 browserVersion string 浏览器版本 11 country string 国家 中国 province string 省份 江苏 city string 城市 南京 networkType string 网络类型 WiFi manufacturer string 设备供应商 三星 deviceModel string 设备类型 iPhone operator string 运营商 中国联通 debugMode Boolean 是否是测试数据 true imei string IMEI ip string ip地址 latitude BigDecimal 纬度 longitude BigDecimal 经度 attr1 见1.3 事件属性名称 attr2 见1.3 事件属性名称 attr3 见1.3 事件属性名称 attr4 见1.3 事件属性名称 attr5 见1.3 事件属性名称 attr6 见1.3 事件属性名称 attr7 见1.3 事件属性名称 attr8 见1.3 事件属性名称 attr9 见1.3 事件属性名称 attr10 见1.3 事件属性名称 attr11 见1.3 事件属性名称 attr12 见1.3 事件属性名称 attr13 见1.3 事件属性名称 attr14 见1.3 事件属性名称 attr15 见1.3 事件属性名称 attr16 见1.3 事件属性名称 attr17 见1.3 事件属性名称 attr18 见1.3 事件属性名称 attr19 见1.3 事件属性名称 attr20 见1.3 事件属性名称 items list 子事件。 utm object utm参数。 { "source":"wechat", "medium":"qrcode", "content":"联否ALPHA", "term":"1" ,"campaign":"营销活动3"} contactId long 事件联系人id 18257 1.3事件属性类型值定义
值 含义 说明 text 字符串 integer 整数 number 数字 datetime 日期 enum 枚举 按照string处理 reference 引用 linkflow内部引用id,按照string处理 1.4用户身份类型字段含义
字段名 类型 描述 示例 id string 用户身份ID ov7GewyvTj93CtHYJujyfqoe0XFY type string 用户身份类型 wechat.openId dateCreated string 用户身份创建时间 022-12-20 09:22:17 推送规则
当工作流被触发,webhook工作被触发,linkflow会向配置地址发起请求。
1、消息推送服务通过 POST 、参数编码为 JSON 的方式向开发者提供的地址推送消息;
2、开发者接收到消息后需要在10秒内回复code为 200的响应;
3、当推送没有成功返回会进入重发,最多重发三次。 规则是无法连通或者返回的http code 大于等于500(服务器异常);
4、消息推送成功的逻辑是开发者服务器返回200。场景举例
场景描述:需要将每个加入标签组“webhook”的联系人同时同步到外部的服务器(如阿里云服务器等)
流程设计如下:
然后发布流程,凡是加入此标签组的人员均可以同步到外部服务器。注:联系人信息可以实时同步到外部服务器,如网络缓慢问题,数据同步会稍后延后。接口鉴权
1、当webhook配置的接口需要鉴权时,您可前往设置-App集成设置-授权设置中,配置一个用于获取令牌的授权,授权的配置请参考:《授权设置》
2、勾选webhook的启用鉴权功能,在下方填入需要鉴权的请求参数,令牌的值可以使用通配符#{auth.授权标识.令牌的key}获取(通配符外也可拼接空格与字符串)您需要根据您配置的授权返回结构自行判断填写令牌的key。更多执行动作可查看《webhook》、《加入群组》、《终止旅程》。
什么是内部通知
Linkflow提供了专门对内部工作人员通知的一种动作图元---内部通知。
【内部通知】只要是通过【微信公众号】发送模板消息通知内部人员(订阅号不具备模板消息功能)
【微信公众号】官方说明,为了防止过度营销,从2023年3月30日开始官方通知:《关于限制广告营销等非服务节点相关的模板消息下发的公告》
建议:
1、【微信公众号】后台核对【已申请的模板消息】是否符合以上要求,如不符合,建议可以另外申请符合要求的《模板消息》
2、如【客户旅程】中也涉及到不符合要求《模板消息》,建议也另外申请符合要求的《模板消息》
使用场景:
——如:粉丝关注了【微信公众号】、【访问网页】、【加入标签组】等触发事件,都可以通过【内部通知】通知相关同事。路径:【客户旅程】> 【新建客户旅程】> 【新建空白客户旅程】>【执行动作-内部通知】
使用方法:
选择【微信模板消息】
选择计划发送通知用到的微信公众号渠道
选择【通知对象】。可手动填写需要通知的用户的ID,也可使用动态参数选择触发事件属性,如访问网页事件的“推荐人”,“关注公众号”等
【触发条件】不同时,动态参数也不一致如下:
用户ID查找如下图:内部通知支持给指定一个联系人发送内部通知,不支持指定的两个或者三个发送,只能选择指定一个或者指定全部。其他配置同【微信】动作图元--发送模板消息。
选择《模板》,并填写模板相关信息,如下:选择模板时,请确认模板没有被删除,否则【内部通知】无效。使用场景:
推广人员发布自己的【一人一码】,详细可点击查看《一人一码》
用户【A】扫描二维码(通过“1”创建的一人一码)
查找【一人一码ID】在触发条件中填写【一人一码ID】
内部通知节点发送微信模板消息通知推广人员被扫码消息。
内部通知发送成功
——可以通过【联系人】中查看联系人【A】是否成功扫描【一人一码】,也能查看被扫码的联系人是否收到内部通知场景一
场景描述:提交金数据表单的用户,通过【内部通知】告知负责统计金数据提交表单的内部人员,然后将提交表单的人员加入到群组—【提交调研问卷组】,如下:
场景二
场景描述:微信扫描二维码,然后通过微信发送文本消息:欢迎关注微信公众号,并告知回复留言加入会员,再通过微信发送会员注册表单,凡是提交表单的粉丝,加入【高价值客户组】
执行条件中的【加入群组】,目前仅支持加入静态组,无法加入动态标签组!触发条件中的【加入标签组】
触发条件中的【加入群组】——指的是加入静态组
执行动作中的【加入标签组】
执行动作的【加入群组】——指的是加入静态组
使用【加入群组】执行动作组件时,选择您想要将进入客户旅程的联系人加入的标签组,可选择一个或多个签组组,点击【确定】即可。
此步骤需要您提前创建标签组。详细可以点击查看静态群组
利用【加入群组】执行动作组件可以根据业务场景创建相应的客户旅程。如将提交金数据表单注册会员的客户加入“演示提交注册”:
【变更属性】可以作为【触发条件】,也可以作为【执行动作】,可以触发客户旅程,也可以将进入客户旅程的用户的指定字段(包括自定义字段)变更成指定的值。
- 注意:
- 属性值输入的内容/设置的动态参数需满足更改属性的属性类型。例如选择更改的属性类型为数字型,若输入的内容为文字,两者类型不匹配,则进入旅程的联系人该属性值不会进行变更。
- 所选择的属性与属性值必须全部匹配,若有其一属性与属性值类型不匹配的情况,则所有属性均不会进行变更。
更多执行动作可查看《改变分数&使用场景》、《加入群组》、《A/B分配》。
什么是延时器?
- 【延时器】执行动作可以让进入旅程的联系人等待指定时长再进入下一个组件。
- 路径:【客户旅程】-点击右上角【创建客户旅程】-右方的【执行动作】中选择【延时器】
延时器设置
- 使用【延时器】动作组件,只需根据业务需要,设置好指定等待时长;
- 另外还可以选择【设置发送窗口】,可以选择时间,每周同一时间定时触发工作流,比如每周定时推送广告、模板消息等,这样就不用反复配置工作流。
注意:- 如果延时器在周二选择延时1分钟,且发送窗口选择周二17点发送,那么本周二17点不会发送,下周开始执行(设置发送窗口与延时时间选择均为当天,那么设置发送窗口要下周才生效)
- 如果延时器在周二选择延时1分钟,且发送窗口选择周三17点发送(非当天),那么在本周三17点会准时执行。(设置发送窗口选择为周二后的天数:周三~周日,那么在本周生效,反之,则为下周生效)
- 用【延时器】动作组件可以根据业务场景创建相应的客户旅程。
如对加入标签组的联系人延时1分钟发送微信模板信息,并且设定,每周三再次发送。
如何使用【改变分数】&查看路径
- 【改变分数】作用描述:某个用户提交问卷调查或者是点击公众号菜单或者是其他主动行为,然后每发生一个行为都给这个用户增加分数,达到某个分数值可以升级为VIP客户或者是可以获取到奖品等。
- 【改变分数】查看路径:【客户旅程】>【新建客户旅程】>【新建空白客户旅程】> 点击右边的【执行动作】> 选择【改变分数】
- 在使用【改变分数】动作组件时,需要您提前创建好值为整数型/数字型的【自定义字段】,详细可以点击查看《用户属性》
自定义字段只能选择“整数型”或者“数字型“,否则无法在“目标属性”中显示。- 自定义字段创建好后,即可通过【改变分数】动作组件进行增加或减少指定数量
- 用户分数查看路径:【用户和标签】-搜索需要查看的用户,如下
【改变分数】使用场景
利用【改变分数】动作组件可以根据业务场景创建相应的客户旅程。如给访问页面的联系人增加活跃度分值:
【移出群组】动作组件可以将进入客户旅程的所有联系人从某个指定群组中移除。
使用【移出群组】动作组件时,选择您想要将进入客户旅程的联系人移除的标签组,点击【确定】即可。
- 客户旅程以最后一个动作为结束点,自行终止旅程。也可以使用【终止旅程】动作组件,让进入客户旅程的联系人立即终止该旅程。
- 客户旅程存在分支的情况下(一般由系统条件分支或执行条件-AB分配等其他动作产生),如果其中某一分支没有后续执行条件,必须使用【终止旅程】执行条件结束客户旅程。
- 【终止旅程】动作组件无需额外配置,只需将该动作组件拖至您需要终止旅程的位置即可。
- 以下任意一个【条件分支】在客户旅程中出现,必须要加一个执行条件的【终止旅程】,否则无法保存此客户旅程。提示如下:
什么是A/B测试?
A/B测试,即为同一目标制定多个方案,将流量分割成A/B两组或多组,运行一段时间后可将流量全部分配给某一固定分支;或者根据每组用户的表现(即每组指标值的高低),系统自动执行表现好的那一组,即将流量全部分配给指标值高的那一组。
如何配置A/B测试?
注:
AB测试图元配置完,发布旅程后不可更改AB测试图元配置,即使停止旅程重新编辑也不可更改。因AB测试涉及流量分配以及指标计算,旅程发布后更改配置可能会导致指标计算异常。
1、添加分支并分配流量
设置分支,即根据需要设置不同的对照组。同时,给其设置流量配比,设置完成并发布旅程后,系统将按照该配置,自动将流量划分至各个分支。
2、配置指标
可以给每组分支设置指标,系统会自动计算这个指标值。
例:下图绿色分支指标设置为“访问网页的总次数”,则系统会计算:进入旅程的用户,在其进入旅程之后发生”访问网页“事件的总次数。
注:
- 指标值仅会统计“进入旅程的用户”发生的事件,未进入旅程的用户发生的事件不会统计在内。
- 同样的,指标值仅会统计这批用户进入旅程之后发生的事件,进入旅程之前或者达到设置的结束条件之后发生的事件不会统计在内。
- 每个分支的指标度量建议一致。比如分支一指标为下单数100,分支二是触达率60%,则这二者指标度量不一致,系统会在那按照100>0.6进行指标比较。
3、设置结束条件
计算节点:
一直执行:系统会一直按照设置的配置来给分支分配流量。且一直计算指标值。
进入AB测试达到xx人次:当进入AB测试图元的人次达到设定值时,系统将停止按照设定的配比来分配流量,会自动执行达标率高的分支或者执行某一固定分支。
截止日期:当到达指定的日期时间时,系统将停止按照设定的配比来分配流量,会自动执行达标率高的分支或者执行某一固定分支。
结束后:
可选择到底结束条件后,是自动执行达标率高的分支,还是执行某一固定分支。
测试指标统计
旅程发布中,可点击AB测试图元-数据-测试指标统计,可查看各个分支的指标数据。
A/B测试场景案例
1、小程序推广下,不知道哪个产品/小程序图更吸引用户点击?A/B测试设置4个分支,每组分支流量配比25%,分别发送不同路径的小程序。当进入AB测试人数达到400人次时,系统会自动执行打开小程序页面最高的那一分支。
- 用户详情