微信公众平台开发教程(一)

来源:互联网 发布:相叶雅纪水川麻美 知乎 编辑:程序博客网 时间:2024/03/29 06:33
1、前期准备
微信公众平台(订阅号、服务号、企业号)
服务器(云引擎BAESAE、阿里服务器、服务器平台)

个人只能注册订阅号
企业可以选择注册服务号或企业号
2、订阅号与服务器号区别
订阅号:针对个人或媒体,每天可以群发1信息,默认不具有自定义菜单,
服务器号:针对企业或银行,每月可以群发4信息,默认具有自定义菜单

3、微信两种运营模式
编辑模式(使用微信内置平台进行数据的管理与操作)
开发者模式(重点学习,通过PHP开发微信程序)
4、编辑模式(应用场景)
l 不具备开发能力的运营者
l 主要是进行品牌宣传、新闻媒体、自助客服的公众帐号
l 运营初期,不需要特别多的功能
l 开发模式系统升级、故障等特殊情况

5、编辑知识点(群发功能、自动回复)
1)群发功能

2自动回复

被添加自动回复(关注回复):当用户关注我们的公众平台时,系统会自动返回当前信息。
关键词自动回复:当我们设定的关键词与用户发送的关键词相匹配时,系统自动回复当前消息。
未全匹配:当用户发送的内容包含当前关键词,系统自动回复
已全匹配:当用户发送的内容与当前关键词完全匹配,系统自动回复
消息自动回复:当用户发送的关键词与我们设定的关键词不匹配时,系统自动回复此信息
一、微信开发模式
1、微信开发者模式原理图
1编辑模式原理图
 
2开发者模式原理图


2、微信公众平台开发接口
① 进入开发文档

② 找到接入指南

③ 下载官方接口
 
获取到以下压缩包:
 
解压程序如下图所示:


⑤ 开发自定义服务器(SAE云引擎服务器)
1)通过新浪微博账号登陆平台,效果如下:

2创建新应用

3)点击管理应用

4)创建一个新版本

5输入微博安全邮箱密码(不是微博密码),在微博个人中心à账号安全可以设置
 
6通过SVN上传代码到SVN服务器
 
7输入微博安全邮箱用户名与密码
 
 

⑥ 上传api接口到SAE
复制微信官方接口到项目目录中,并改名为api.php且需要设置TOKEN密钥
 

⑦ 打开微信公众平台开发者模式,填入我们的SAE服务器地址,如
http://gzitcast.sinaapp.com/

出现以下提示代表接入成功。

如果未接入成功,请检查链接地址、密钥而且SAE必须进行实名认证才可以正常接入。

⑧ 注释掉验证代码,开启自动回复功能
 

测试如下图所示:
 
二、微信的6大接收接口
1文本消息接口
基本语法如下:

说明:在接收到的XML数据中,我们可以通过判断MsgType节点内容,如果为text类型,代表当前用户发送的数据类型为文本类型。
① 定义msgType变量用于接收用户消息类型
 
② 判断用户消息为文本消息的数据、

测试结果:
 
2、图片消息接口
可以通过判断MsgType为image,代表用户消息类型为图片消息


测试结果:
 
3、语音消息接口
基本语法:

如果MsgType类型为voice,代表语音消息
 
4、视频消息接口(视频接口与小视频接口)视频消息接口

视频消息接口


测试结果:
 
5、地址位置接口
基本语法:

6、链接消息接口
基本语法


测试结果:
 
综合案例:简易号码簿
项目需求:
用户关注后或输入?自动弹出自定义回复文本信息如下:
1特种服务号码
2通讯服务号码
3银行服务号码
4用户反馈
回复1
常用特种服务号码:
匪警:110
火警:119
急救中心:120
回复2
常用通讯服务号码:
中移动:10086
中电信:10000
中联通:10010
回复3
银行服务号码
建设银行:95533
工商银行:99588
农业银行:95599
回复4
尊敬的用户,为了更好的为您服务,请将系统的不足之处反馈给我们。
反馈格式:@+建议内容
例如:@希望增加***号码
回复@
回复:感谢您的宝贵建议,我们会努力为您提供更好的服务!
示例代码:



运行效果:
 
常用3回复接口
注意:微信5处理

1、文本回复接口

ToUserName(手机端微信)
FromUserName(微信公众账号)
CreateTime 时间戳
MsgType 回复类型,文本消息为“text”
Content 回复内容
要用到的知识点:sprintf函数:格式化字符串
string sprintf ( string $format [, mixed $args [, mixed $... ]] )
$format 必选项,要格式化的字符串
[,mixed $args] 要格式化的变量,多个变量是通过逗号隔开的
示例代码:

测试结果:
 
2、音乐回复接口
基本语法:

测试结果:
 
扩展:编写音乐网站后台,对接微信公众账号!
3、图文消息接口


:当使用单图文信息时,Description会正常显示,但是多图文信息,只会显示文章标题,忽略描述信息谨记!!!
单图文实现:


测试结果:单图文
 
多图文实现

测试效果:
 
LBS接口
LBSLocation Based Service):基于地理位置的服务
$longitude 经度
$latitude 纬度
1、获取用户的经纬度信息
基本语法:

通过以上XML数据可以获取到相关信息:Location_X 纬度 Location_Y 经度
 

测试结果:
 
2、通过经纬度信息获取用户的详细位置
通过百度地图API获取用户的详细位置


测试结果:
 

五、微信机器人开发1、图灵机器人
图灵机器人:http://www.tuling123.com/openapi/
接口地址:http://www.tuling123.com/openapi/api?key=KEY&info=你漂亮么
参数说明:
key 密钥文件
info 要接收的关键词
示例代码:

测试结果:
 
2、微信语音识别
① 首先在功能区开启语音识别接口
② 语音识别接口基本语法:

通过以上XML数据分析可知:如果开启了语音识别功能,系统会自动返回Recognition节点信息,就是语音翻译后的结果:
③ 接收Recognition节点信息
 
④ 编写相关源代码

测试效果:



0 0
原创粉丝点击