如何用Serverless云函数做免费私域运营机器人

关于私域流量 如何用Serverless云函数做免费私域运营机器人
文章图片

近几年,私域流量运营的话题被提及得越来越多。
私域流量是指从公域(internet)、它域(平台、媒体渠道、合作伙伴等)引流到自己私域(官网、客户名单),以及私域本身产生的流量(访客)。 私域流量是可以进行二次以上链接、触达、发售等市场营销活动客户数据。
而私域流量运营很重要的一点就是如何能自动化智能化的进行客户运营。
目前各大公司的办公软件都支持机器人这种应用形式,而这种机器人则是我们做私域流量运营的重要一环。
机器人能做什么 机器人在私域流量运营中可以做包括但不限于以下事情:

  1. 消息推送
  2. 智能客服
  3. 客户管理
  4. 建群引流
  5. 活动营销
  6. 企业互联
这些场景名词可能有些抽象,可以举几个具体例子。
  • 比如,用户进群之后会收到机器人自动发送的欢迎仪式,里面附带新用户代金券等,同时此消息是仅他可见,不会打扰其他用户。
  • 比如,用户通过询问智能客服机器人就能得到很多常见的答案,省去了人工成本。
  • 比如,机器人自动在群里发起某营销活动的报名,无需人工收集。
  • 再比如,通过客户管理,可以给客户打标签,针对不同的客户,自动发送不同的活动优惠。
  • 再再比如,通过机器人收集广告投放获取的商机,自动创建商机线索,并同步到群里自动@相关销售,闭环整个商机发现路径。
可以想象的空间有很多很多。
为什么是Serverless呢 为什么选择serverless来做呢,好处主要有以下几点:
  • 机器人的通信都是通过HTTP请求与企业微信通信,而serverless按调用次数收费,拥有极高的性价比。
  • 机器人通常在晚上都没有人使用,如果使用传统的服务器部署会有较高的闲置率,用serverless可以把利用率做到近乎百分百。
  • 机器人可能会涉及多个使用场景,可以针对不同的场景使用不同的FaaS云函数,做到细粒度的管理和问题隔离。
  • 腾讯云云函数支持所有主流语言,无需关心服务器,开发快,周期短,一个机器人从开发到上线最快只需要1小时。
为什么说免费呢?
因为腾讯云云函数包含有免费额度。而机器人的使用并不是高频调用,所以免费额度足以涵盖所有的使用量。
免费的羊毛薅起来吧!
如何用Serverless云函数做免费私域运营机器人
文章图片

这篇文章将选择企业微信作为平台,从最基础的场景,讲解如何用serverless云函数来完成一个企业微信机器人。
企业微信机器人原理 如何用Serverless云函数做免费私域运营机器人
文章图片

我们先来了解一下企业微信机器人的原理。如上图所示,左边表示我们的serverless云函数机器人,右边是企业微信。
中间的箭头表示两种机器人和企业微信的通信方式:
  1. 机器人单向给企业微信发送消息
  2. 机器人和企业微信双向互发消息
从图中可以看出,单向通信是蓝色的箭头,因为单向通信没有任何限制,机器人无法获取企业微信的相关信息。这种模式主要适合于所有的通知类的场景。比如消息推送,全局群发等。
而红色的箭头就有诸多限制了,因为企业微信可以向外发送信息的话,这里就涉及到很多安全问题了。因此企业微信对于这种情况主要做了多方面的限制:
  1. 发送的消息必须经过严格的加解密。
  2. 某些特殊消息内容拥有一定的实效性,比如获取会话信息必须通过一个临时的URL,有效期只有5分钟,且调用一次后失效。
  3. 双向通信的回调URL可以由企业设置一些限制,比如只支持企业内网URL。
那配合双向通信,就可以做到上面说的所有场景,比如智能客服、客户管理等。
机器人实战 那我们就从两个简单的场景来讲解一下如何实现一个企业微信机器人。
  1. 消息通知 - 单向通信
  2. 知识库搜索 - 双向通信
消息通知
首先需要创建一个机器人,创建方式是在任何一个企业微信群里,点击右上角,添加群机器人。
如何用Serverless云函数做免费私域运营机器人
文章图片

然后选择新创建一个机器人。
如何用Serverless云函数做免费私域运营机器人
文章图片

创建完成之后,你就获得了一个webhook地址。如下图。
如何用Serverless云函数做免费私域运营机器人
文章图片

这个webhook地址就是你推送消息到企业微信的地址。
推送的消息格式有很多种,支持往群聊会话中发送文本、markdown、图片、图文、文件、模版卡片六种消息类型。
以文本消息为例,你只需要推送以下JSON内容到webhook地址,企业微信就会收到通知。
{ "chatid":"CHATID1 | CHATID2", "msgtype":"text", "text":{ "content":"广州今日天气:29度,大部分多云,降雨概率:60%", "mentioned_list":["lisi", "@all"], "mentioned_mobile_list":["13800001111", "@all"] } }

那么以云函数为例,如何创建云函数可以参考官网文档。
【如何用Serverless云函数做免费私域运营机器人】创建好之后,只需要几行代码就能完成一个通知发送机器人。如下图。
注意要将url替换成你的机器人webhook地址,content必须是utf8编码。
如何用Serverless云函数做免费私域运营机器人
文章图片

如果你期望每天早上8点定时推送天气预报,你只需要修改一下上面的代码,从某个天气预报API拿到天气预报,然后设置一个定时触发器,触发周期用CRON表达式定义每天8点触发,如下图。
如何用Serverless云函数做免费私域运营机器人
文章图片

这样之后,每天8点你的企业微信群就能收到如下图的消息了。
如何用Serverless云函数做免费私域运营机器人
文章图片

知识库搜索
上一个例子是单向通信的例子。那这个例子则是双向通信的例子。
在企业中,以及在私域流量运营中,我们经常有搜索知识库寻找答案的场景。这里我们就以搜索腾讯云文档为例,来向大家讲解如何完成一个双向通信的知识库搜索机器人。
我们要做的就是当输入关键字,就去腾讯云文档搜索结果并返回,同时高亮显示关键字和文档链接。
首先,还是一样的,你需要创建一个云函数。但这个云函数是需要接收企业微信发过来的消息,因此在上一个云函数的基础上,我们需要添加一个API网关触发器,让云函数能接收API请求。
创建触发器选择API网关触发器,创建好之后如下图,复制访问路径那个URL,它就是企业微信在回调消息的需要填的URL。
如何用Serverless云函数做免费私域运营机器人
文章图片

接着到企业微信,鼠标放到你创建的机器人上,点击配置,选择【接收消息配置】,在URL那里填入上面复制的URL。如下图。
Token和EncodingAESKey可以自己写,也可以随机获取,它是你用来做加密解密时用的。
如何用Serverless云函数做免费私域运营机器人
文章图片

当点击“保存”提交以上信息时,企业微信会发送一条验证消息到填写的URL,发送方法为GET。群机器人的接收消息服务器接收到验证请求后,需要作出正确的响应才能通过URL验证。
完成了上述设置之后,你在群聊中@机器人并输入你想搜索的关键字,你的云函数就会收到对应的JSON消息,msgContent就是你搜索的关键字。
{ "msgType": "text", "msgContent": "函数计费", "chatId": "XXX", "botKey": "XXX", "hookUrl": "http://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=XXXX", "botName": "腾讯云文档搜索助手", "userName": "XXX·", "msgId": "CAIQ4", "chatType": "group", "chatInfoUrl": "http://qyapi.weixin.qq.com/cgi-bin/webhook/get_chat_info?code=XXX" }

这个时候你只需要拿到msgContent的内容,然后去调用腾讯云的文档搜索API,拿到JSON的结果,把JSON结果处理为如下图中的markdown格式,并返回。
于是我们的腾讯文档搜索助手就做好了,使用效果如下图。
如何用Serverless云函数做免费私域运营机器人
文章图片

至此,我们两个企业微信机器人都做好了。
这里就不展示代码了,想看具体怎么写的同学可以去看我的源码。
总结 我从两个简单的例子去讲解了如何做企业微信机器人,而企业微信机器人是我们做私域流量运营的重要一步,同时Serverless则完美帮我们解决了实现机器人的技术选型。
  • 随着我们对客户体验和服务体验的追求,我们利用自动化的手段帮我们提高了响应速度,利用智能化帮我们提高了服务准确度。
  • 在追求售前和售后效率的今天,机器人的使用可以节省人力成本和时间,缩短客户等待时间。
  • Serverless作为一种弹性伸缩与按量计费的服务,完美匹配了机器人的使用场景,从成本与效率上帮助企业在私域流量运营场景中业务的快速搭建与迭代。
  • Serverless作为一种FaaS服务,通过多个云函数的编排,独立或混合的处理不同的业务场景,做到细粒度的管理,与业务容错隔离。
未来,我会继续探索Serverless做私域流量运营的更多场景和实践,也会继续和大家分享。
如果大家有私域流量运营相关的问题,欢迎来和我一起探讨。

    推荐阅读