微信公众号开发之多客服用法

如果使用多客服的话,需要把用户消息转接至微信服务器

如果公众号处于开发模式,普通微信用户向公众号发消息时,微信服务器会先将消息POST到开发者填写的url上,如果希望将消息转发到多客服系统,则需要开发者在响应包中返回MsgType为transfer_customer_service的消息,微信服务器收到响应后会把当次发送的消息转发至多客服系统。 示例代码

 

微信开发根据关键词调用对应的方法

这里我是研究的小猪CMS的源码,首先你得知道这个路由:

/Conf/route.php ,

'api/:token'        => 'Home/Weixin/index',

可以看到  用户发送的所有内容都是Home/Weixin/index 这个方法处理的。再看看里面有多少个方法

01

 

 

02

 

目测最低也有30个。。那么他是怎么根据关键词处理的呢?

我们来看index方法的 47-48行

可以看到,他把从用户接收到的数据存到了$data数组,数组用有这些参数

03

 

毫无疑问$data[‘Content’]就是用户发送的消息,这样我们就获取到了用户发送的消息,剩下的就是根据用户发送的消息内容选择对应的方法处理了!

怎么处理的呢?看60-61行

可以看到,他是调用的reply方法处理,然后再回复给用户

reply()方法在64行,里面有一系列的判断,这里不再细说,这里我们主要来看257-276行的代码

下面的代码处理前调用了104行的keyword方法

这几行代码的组要作用就是把用户回复的汉字转换成拼音,然后根据这个拼音调用对应的方法。

 

比如用户发送 郑州天气  就是调用tianqi这个方法 1229行

这样就实现了根据关键词回复对应的内容

企业微信公众平台建设指南

一、自助问答类
对于企业来说,首先可以通过一些自助类的问题设置来引导客户加强对自身的了解,也可以解决一些常见的问题的回复。节省人工回复成本。
比如,在我们的一个客户(账号为”积分宝贝”)中,他设置了一些这样的自助问答类题目
1.欢迎语
欢迎语是在企业微信账号被关注后发送出来的消息,这条消息是给用户传达的第一印象。最好能包括所有大类的指南。
亲,太高兴你总算等到你来了.
1、想买什么东西请直接将产品名称回复给我(如“保温杯”)
2、想知道已经上线了哪些产品请回复“品类”或直接点击链接进入商城===》。
3、如需按价格区间搜索产品,请以“XX到XX”的格式回复(如“50到100”)
4、如需帮助或了解请回复“帮助”。
5、参加寻宝游戏请回复“寻宝”。
它的这个欢迎语做得很不错,把产品搜索类及帮助系统类这两大核心功能都做了一个引导,便于用户再次查询获得详细信息。
图:

2.导航与菜单

3.帮助系统
对于这类系统,可以同时设置多个关键字,让其搜索到同一结果
比如在积分宝贝中回复“帮助”、“介绍”、“干什么”、“?”、“help”、“sos”、“操作”等关键词,都统一回复下列信息。
如有以下问题请回复该问题中带“”的关键字或序号字母(如Q1):
Q1、如何“搜索”产品?
Q2、如何搜“价格”“区间”?
Q3、如何“购买”,“支付”、“快递”?
Q4、“积分宝贝”是什么?
Q5、“售后”“服务”
Q6、如何“联系”?
Q7、如何“关注”积分宝贝
Q8、如何“分享”“朋友圈”?
Q9、“寻宝”“游戏”怎么玩?
图:
帮助系统要将所有可能的功能都列出来,由用户自行来检索相应的信息,并且随时可以查询。
4、其他引导性关键词
这类引导性关键词主要有售后,服务,联系,电话,或者其他与企业关注比较密切的词。主要实现对其他类别的查询。

二、会员服务
很多企业是以会员为根基并由此赢利的,在将用户引导到微信公众平台上的时候,希望能延续这一关系并且得到加强,那么将让会员与微信绑定以便更好的互动就成了一个新的需要了。
1. 绑定会员
微信公众平台对每一个用户都有一个唯一固定不变的微信ID,这是一个加密了的身份ID,但是却是唯一的,我们可以在让用户信息绑定在这一微信账号上,这样便于集成现有网站会员的功能,而且可以通过移动端与会员互动。

使用email与自身系统绑定

获取二维码或会员卡号

2. 会员信息查询
微信用户与原有会员身份进行绑定之后,可以进行一些查询,比如用户自身信息,积分状态等的查询。

3. 会员提问
进行了绑定了会员,可以通过微信账号向企业提问,这一提问在微信后台被保存5天,如果需要,可以将这些问题设置成星标,以便企业在后台查找并且一对一的人工回复。

三、自助查询类
1.基于商品数据类的查询
在积分宝贝中,实现了关键词回复与查询回复的分离,当用户想要查询某个产品的时候,就直接输入产品中的某个名称,比如“咖啡机”、“皮带”等关键词,这样的关键词将从系统中搜索中相应的产品,以多图文的形式列出来,并且带上相应产品的链接。引导用户再进一步跳转到自身网站上去。
值得一提的是,我们在积分宝贝账号上集成了价格区间查询,这一功能丰富了查询方式,使客户能更快的找到适合自己价格区间的商品。

2. 基于第三方信息的查询
做电子商务的中小企业,基本上都免不了物流环节,那么一个快递类的查询就很有必要且有价值了。方倍工作室提供了快递查询功能,对于大客户免费集成到现有的微信公众平台开发接口中去。

四、活动类服务
1.地理位置类的活动
寻宝是一种基于地理位置与用户互动的活动,当用户提交自己的地理位置后,将返回与它最近的宝贝距离,而这一宝贝被存放在商家某连锁店中,只有用户找到这一连锁店,就能得么宝贝。

2.用户互动类活动
抽奖是另一常见的活动了,发起这一活动后,当用户发送某个指令的时候,抽奖后台随机生成某种抽奖号码并且与数据库奖品匹配,来得出用户获将与否。同时可以考虑将奖品分级发出,比如前15天产生三等奖,再10天用来产生二等奖,再5天产生一等奖,最后一天产生对特等奖。
另一种可行的方式是吸引用户关注,新用户通过发送由***推荐关注,来得知推荐最给力的用户,从来给他发奖品。

五、其他特色类
1. 图片处理
基于方倍工作室的微信公众平台上的图片识别技术中的人脸识别,一家眼镜店将用这一技术为用户匹配眼镜,当用户发送自己的正面清晰照的时候,后台能自动找出最适合用户脸型的眼镜框架并且返回。从来实现微信上的选镜架。

漂亮/帅气鉴定

近亲/亲子鉴定

男人味/女人味鉴定

2. 音乐服务(KTV)
一家KTV希望给用户提供音乐收听功能,基于方倍工作室的在线音乐点播技术,我们为他提供了现场音乐制作导入微信平台的。用户只需要输入演出的歌手的名称,就能听到该歌手在当天唱到的歌曲。

3. 节目回听
某国家级电台需要在节目中提供节目回听功能。

微信公众平台接口开发:从Hello2BizUser文本到subscribe事件

微信公众平台由于接口升级,将产生以下变更。新用户订阅,将由之前推送一条“Hello2BizUser”文本,变化为推送一条“subscribe”的事件。最近碰到好几个朋友询问新用户订阅事件后代码要怎么改,现在将详细过程讲解如

微信公众平台由于接口升级,将产生以下变更。新用户订阅,将由之前推送一条“Hello2BizUser”文本,变化为推送一条“subscribe”的事件。最近碰到好几个朋友询问新用户订阅事件后代码要怎么改,现在将详细过程讲解如下:

一、Hello2BizUser旧事件的处理

在老的关注事件中,用户关注微信公众平台账号后,系统会帮用户发送一条Hello2BizUser的文本给公众账号,公众账号后台开发模式下通过判断Hello2BizUser这个词来实现发送欢迎词。

代码样例如下:

if ($keyword == “Hello2BizUser”){
$contentStr = “欢迎关注方倍工作室,这其实是老的欢迎词,你收不到了”;
$resultStr = $this->transmitText($object, $contentStr, $funcFlag);
return $resultStr;
}

做出基础接口上的修改,影响会是所有人。一般不会轻易做这样的改动。

为什么微信要修改这一事件了,这个方法的弊端在于,如果用户没有判断这一事件,那么就不会有欢迎词,本来这也没什么关系,不出现欢迎词也不影响什么。但很多人的程序代码里面,所有流程直接就是判断关键词。比如我们曾看到过一家医院的微信账号,用户发送挂号的号码,就显示前面有多少人排列,但后台程序没有做区分,把Hello2BizUser也当成挂号单发送过去,返回没有找到Hello2BizUser这一挂号,不知道前面有多少人,搞得用户莫名奇妙。还有就是用户如果主动发送一个Hello2BizUser过去,那么得到的也是和欢迎词一样的内容,虽然很少有用户会去发这个东西。

另一方面,将用户关注做成事件,更有利于统计功能的实现。利用这个事件,我们就更能容易的判断出关注人数和退订人数,而原来的Hello2BizUser文本推送判断是有可能不准确的,因为用户可以手工发送,形成虚假关注统计。

二、“subscribe”订阅事件判断

subscribe是一种新的事件,我们先需要做事件类型做判断,我们在官方样例中增加对这一事件的判断,修改如下:

这样就完成了“subscribe”的订阅事件下的处理。

二、完整代码