微信公众平台高级群发接口===
- 格式:docx
- 大小:366.28 KB
- 文档页数:8
微信开发-群发接⼝前⾯说到的都是⼀条⼀条的回复给⽤户消息,如果想要⼀次性发给多个⽤户,就要使⽤微信提供的群发接⼝了。
微信群发需要注意(其实就是微信⽂档⾥⾯的内容):1.次数不⼀样,认证的订阅号可以每天发送⼀条群发消息,⽽认证的服务号虽然每天可以发送100条,但是⽤户每⽉只能接收四条,多余四条的将发送失败。
2.群发的时候,认证的订阅号每天只能使⽤is_to_all群发⼀次或者在公众平台群发⼀次。
相应的,服务号每个⽉公众平台群发+is_to_all群发最多只能四次。
根据标签群发 1.这个接⼝是通过post请求的,请求参数根据群发的内容略有不同。
2.tagid就是以前的分组id现在改名叫标签,在微信公众平台->⽤户管理的右侧可以看到已经创建的标签名,获得标签id需要通过接⼝来获得已经创建的所有标签的id。
3.当is_to_all为true时,可以选择不填写tagid。
4.media_id需要通过微信上传素材接⼝获得。
5.群发接⼝可以发送卡券,cardid需要通过创建卡券获得或者卡券相关事件推送获得。
/***根据标签进⾏群发*/public function pushByTags(){$access_token=get_token();$url="https:///cgi-bin/message/mass/sendall?access_token=".$access_token;$data=array('filter'=>array('is_to_all'=>false,'tag_id'=>135),'text'=>array('content'=>'test'),'msgtype'=>'text');$result=json_decode(curl($url,json_encode($data)),true);if($result['errcode']==0){echo "群发成功";M('monthtuisong')->add(array('msgid'=>$result['msg_id'])); }else{echo "群发失败";}} 返回errcode=0只是意味着群发任务提交成功,并不意味着群发结束,后续的群发过程中可能受到各种因素的影响,需要⼀段时间才能群发完毕。
微信公众平台免费开放9大接口下一个明星帐号就是你微信公众平台免费开放9大接口下一个明星帐号就是你2013-11-05 来源: 综合消息作为微信公众平台成长起来的第一批明星企业,南航、招行、广东联通等企业在微信上提供的特色服务和良好反馈,让众多中小企业羡慕不已。
如今,微信公众平台向服务号免费开放9 大高级技术接口,将个性化定制、精准服务的选择权交到企业手上,企业也能充分发挥自身想象力,开发出自己的“ 智能客服” 。
据了解,本次微信公众平台开放的9 大技术接口包括了语音识别、客服接口、OAuth2.0 网页授权、生成带参数二维码、获取用户地理位置、获取用户基本信息、获取关注者列表、用户分组接口以及上传下载多媒体文件,涉及多个与企业服务息息相关的内容。
可以说掌握了这些接口能力,企业在个性、精准服务和互动交流上无疑将更加出彩。
下面我们就一起来看看这些高级接口开放背后的意义和可以延伸的用法。
1. 语音识别描述:通过语音识别接口,用户发送的语音,微信后台将同时给出语音识别出的文本内容。
意义:第三方可以调用微信自主研发的语音识别技术,将用户语音发送的信息自动识别为文字,以便于系统快速处理需求。
依靠微信强大的语音识别技术,企业在公众平台操作时间大大减少,显著提升企业在公众平台上的运营效率,及时对用户的反馈提供支持。
例如在“海尔智能空调”微信公众帐号中就用到了“语音识别”功能,用户可以通过语音来告诉微信需要的温度、风速、模式等,通过语音识别后微信就会自动向空调发出指令来进行相应的调节。
同样,未来电视也能动动嘴就搜节目,关注“中国互联网电视”微信公众号,直接通过语音搜索“告诉”微信想看的节目就能自动调台,解决了遥控器难以文字输入的弱点。
语音识别便于系统快速处理需求,提升企业在公众平台上的运营效率,及时对用户的反馈提供支持。
2. 客服接口描述:通过客服接口,公众号可以在用户发送过消息的 24 小时内,向用户回复消息。
群发消息的方法操作方法:登录微信公众平台=》群发消息=》根据需要填写文字/语音/图片/视频/录音等内容后,选择对群发对象、性别、群发地区发送即可。
群发消息内容目前支持群发的内容:文字、语音、图片、视频、图文消息。
1、群发内容中需添加文字+图片+视频,可先在“素材管理”中设置图文消息,然后群发时选择“图文消息”类型即可。
2、上传至素材管理中的图片、语音可多次群发,没有有效期。
3、群发图文消息的标题上限为64个字节;4、群发内容字数上限为1200个字符、或600个汉字。
5、语音限制:最大5M,最长60秒,支持 mp3、 wma、 wav、 amr格式。
6、视频限制:最大20M,支持rm, rmvb, wmv, avi, mpg, mpeg, mp4格式。
(上传视频后为了便于粉丝通过手机查看,系统会自动进行压缩,请谅解。
)注:公众平台群发消息目前只支持中文和英文,暂时不支持其他语言,请您谅解。
群发消息的规则1、群发消息条数:公众订阅号(认证用户、非认证用户)在24小时内只能群发1条消息;公众服务号(认证用户、非认证用户),1个月(按自然月)内可发送4条群发消息。
2、通过微信公众平台已经群发的消息内容(包括群发成功、或群发后审核中的内容),不支持修改或者删除消息内容。
3、用户第1次群发时,会自动弹出签署使用协议(服务协议)提示框,签署协议以后不会再提醒、也无法查看协议,请您了解。
4、被加入黑名单的关注用户,不会接收到群发信息。
5、为了保持绿色网络环境,请您不要发布色情、暴力、赌博、血腥、政治等违反国家法律法规的信息,避免引起其他用户投诉,导致您的微信公众号无法正常使用。
群发人数的上限微信公众平台群发消息的人数没有限制,只能群发给粉丝,不支持群发给非订阅用户。
群发消息的保存时间微信公众平台群发的消息暂不支持删除,会永久保存。
群发成功,而粉丝未收到群发消息的说明在微信公众平台消息群发成功后,而粉丝未收到群发消息,可能导致的原因:1、通过微信公众平台群发消息时,对群发对象、性别、群发地区进行了选择,不在选择内的粉丝则无法接收消息。
微信公众平台消息接口指南
公众平台用户提交信息后,微信服务器将发送GET请求到填写的URL上,并且带上四个参数:
开发者通过检验signature对请求进行校验(下面有校验方式)。
若确认此次GET请求来自微信服务器,请原样返回echostr 参数内容,则接入生效,否则接入失败。
signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。
消息推送
当普通微信用户向公众账号发消息时,微信服务器将POST该消息到填写的URL上。
结构如下:
事件推送
事件推送只支持微信4.5版本,目前仅开启自定义菜单接口事件推送。
其余功能即将开放,敬请期待。
对于每一个POST请求,开发者在响应包中返回特定xml结构,对该消息进行响应(现支持回复文本、图文、语音、视频、音乐和对收到的消息进行星标操作)。
微信服务器在五秒内收不到响应会断掉连接。
回复xml结构如下:。
微信公众平台使用方法:五大微信公众平台使用功能介绍现状很多人都在注册微信公众账号,只是对于企业微信公众账号以及个人微信公众账号在很多功能方面都不知道如何使用。
本片文章主要解说下微信公众平台五大功能使用,让大家在做微信推广的时候能够更加有效:1.群发功能使用2.关键词回复3.用户消息回复4.被添加自动回复5.开发者模式一:群发功能使用微信公众平台群发规则说明和群发消息的方法操作方法:登录微信公众平台(https://)=》群发消息=》根据需要填写文字/语音/图片/视频/录音等内容后,选择对群发对象、性别、群发地区发送即可。
群发消息内容目前支持群发的内容:文字、语音、图片、视频、图文消息。
1、群发内容中需添加文字+图片+视频,可先在“素材管理”中设置图文消息,然后群发时选择“图文消息”类型即可。
2、上传至素材管理中的图片、语音可多次群发,没有有效期。
3、群发图文消息的标题上限为64个字节;4、群发内容字数上限为1200个字符、或600个汉字。
5、语音限制:最大5M,最长60秒,支持mp3、wma、wav、amr格式。
6、视频限制:最大20M,支持rm, rmvb, wmv, avi, mpg, mpeg, mp4格式。
(上传视频后为了便于粉丝通过手机查看,系统会自动进行压缩,请谅解。
)注:公众平台群发消息目前只支持中文和英文,暂时不支持其他语言,请您谅解。
群发消息的规则1、群发消息条数:公众订阅号(认证用户、非认证用户)在24小时内只能群发1条消息;公众服务号(认证用户、非认证用户),1个月(按自然月)内可发送4条群发消息。
2、通过微信公众平台已经群发的消息内容(包括群发成功、或群发后审核中的内容),不支持修改或者删除消息内容。
3、用户第1次群发时,会自动弹出签署使用协议(服务协议)提示框,签署协议以后不会再提醒、也无法查看协议,请您了解。
4、被加入黑名单的关注用户,不会接收到群发信息。
5、为了保持绿色网络环境,请您不要发布色情、暴力、赌博、血腥、政治等违反国家法律法规的信息,避免引起其他用户投诉,导致您的微信公众号无法正常使用。
微信公众平台接口API<?php/*** Author: helen* CreateTime: 2015/12/9 20:14* description: 微信公众平台接口API*/class Wechat{/*** @FunctionDescription:验证开发者服务器url有效性* @Param:token(令牌用户手动输入的配置信息)* @Return:echostr(随机字符串)* @Description:* @Author:helen zheng*/public function valid($token){$echostr = $_GET['echostr'];if($this->checkSignature($token)){echo $echostr;exit;}}/*** @FunctionDescription:检验signature函数* @Param:token(令牌用户手动输入的配置信息)* @Return:true/false* @Description:微信服务器发送get请求将signature、timestamp、nonce、echostr四个参数发送到开发者提供的url,利用接收到的参数进行验证。
* @Author:helen zheng*/function checkSignature($token){/*获取微信发送确认的参数。
*/$signature = $_GET['signature']; /*微信加密签名,signature 结合了开发者填写的token参数和请求中的timestamp参数、nonce 参数。
*/$timestamp = $_GET['timestamp']; /*时间戳 */$nonce = $_GET['nonce']; /*随机数 */$echostr = $_GET['echostr']; /*随机字符串*//*加密/校验流程*//*1. 将token、timestamp、nonce三个参数进行字典序排序*/ $array = array($token,$timestamp,$nonce);sort($array,SORT_STRING);/*2. 将三个参数字符串拼接成一个字符串进行sha1加密*/$str = sha1( implode($array) );/*3. 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信*/if( $str==$signature && $echostr ){return ture;}else{return false;}}/*** @FunctionDescription:获取access_token* @Param:AppID(第三方用户唯一凭证),AppSecret(第三方用户唯一凭证密钥)* @Return:access_token( string(length=117))* @Description:access_token的存储至少要保留512个字符空间。
2、不同于在公众平台网站上群发,开发者每日可使用分组群发或OpenID列表群发,但每个用户每个月最多只能接收同个公众号的4条群发消息。
3、使用接口群发,并不会影响公众平台网站上的群发次数,也就是说,接口群发次数和网站群发次数是分开计算的。
但用户每月只能接收4条的限制仍生效,多于4条之后的群发将对该用户发送失败。
这段文字初看起来,可能有点难以理解,我来简单解释下:1、每月(自然月)群发4次的权限,主要限制是在用户接收群发消息的次数,而不是公号的群发次数。
其衡量标准是以每个用户每月最多只能接受同个公众号的4条群发消息作为标准,而公众号可以借助开发模式每天都可群发多次,但无论你怎么群发,每个用户每个月最多接收你4条群发消息,其他的群发将会失败!2、OpenID列表:OpenID是加密后的微信号(由数字+大小写字母组合成的一组复杂字符串),每个用户对每个公众号的OpenID是唯一的。
关注者列表由一串OpenID组成,一次拉取调用最多拉取10000个关注者的OpenID,可以通过多次拉取的方式来满足需求。
通过OpenID分组的方式,要比人工在后台手工分组更加灵活、及时、精准、高效。
记得微信公众号刚推出服务号的时候,就有人问我是否要选择/升级为服务号,我几乎都劝告他们千万千万要谨慎,如果1是你的号不是基于用户对你的强需求,2是一定要服务号的高级接口才可以完成开发,3是有其他方式来引导粉丝关注,千万不要选择服务号。
当然,也有人不听我的话,追悔莫及为时已晚。
一是因为微信公众号的强达到、强提醒的功能,让用户养成了被动发现和阅读的习惯,如每月(自然月)群发一次,很容易被用户遗忘;二是用户关注的账号和好友越来越多,而服务号与普通好友的对话页在一起,很容易淹没在茫茫对话之中;三是大部分公号的粉丝来自于朋友圈,现在一个月只能群发一次,很多开发能力和活动策划能力弱的账号几乎失去了新粉丝的来源。
后来服务号为了在对话列表里能多提示用户,新增了一个功能,只要用户打开某个服务号,就算不做任何操作,都会排在对话列表的第一个,虽然这个做法对服务号有一定的好处,但是也没有这次增加群发次数,更能达到提醒用户、增强活跃度、提升服务能力的目的。
微网站后台操作群发权限
服务号每月可群发4条消息
订阅号每天可群发一条消息
1.登陆微信公众平台(https://),在菜单栏点击“素材管理”。
2点击“加号”添加单图文/多图文消息
3点击(单图文)后出现此页面后可以自行编辑,(横框内为必填项)
4点击(多图文)后出现此页面,同上,点击左侧加号可增加图文页。
4编辑完成后选择保存。
5保存完以后点击功能菜单中的群发功能
6点击图文消息插入编辑好的图文,点击“群发”即可。
微网站内容添加编辑
1、登录微网站后台(/),点击“功能管理”字样
2、点击右侧的“3G站”
3、出现如下图,点击最右侧“微网站内容管理”,
4、滚动条往下拖,点击“编辑”、“查看””删除“可以对网站文字内容进行编辑、查看、删除
点击“新增图文自定义回复”,可添加新闻、优惠活动等图文信息。
5、点击“相册”,滚动条往下拖,可对现有的相册进行编辑、增加相片
6、点击“创建相册”,可增加相册数量,如实填写相册名称、相册封面图、等信息。
7、把鼠标放在需要编辑的相册上面,点击“编辑”,出现如上图,可对相册信息进行修改
8、点击“上传图片”滚动条往下拖,点击“添加图片”可对该相册添加图片数量
9、保存后,如下图
10、点击“上传”再点击“修改”,这样子才算是成功添加了图片数量
PS:每上传一张图片,都要点击后面修改字样,才算成功
11、点击相册封面图片,查看相册具体图片。
1微信公众号类型选择公众平台帐号类型分为服务号和订阅号两种。
1)服务号:给企业和组织提供更强大的业务服务与用户管理能力,帮助企业快速实现全新的公众号服务平台。
2)订阅号:为媒体和个人提供一种新的信息传播方式,构建与读者之间更好的沟通与管理模式。
1.1服务号与订阅号的应用区别服务号与订阅号在实际应用中的区别如下表所示:表服务号与订阅号应用功能差别1.2服务号高级接口权限1.2.1微信高级接口介绍1. 微信高级接口高级接口仅限微信认证的服务号使用。
一旦微信认证被取消,高级接口中的所有接口将被停用。
2. 微信认证后将自动开通高级接口,获得高级接口中所有接口权限,无需二次申请。
3. 一旦微信认证被取消,高级接口中的所有接口将被停用。
1.2.2服务号高级接口权限高级接口含有获取用户基本信息、客服接口、高级群发接口等高级接口权限如下图所示:图高级接口权限列表2微信公众号注册2.1微信公众号注册说明2.1.1注册邮箱说明注册所用邮箱用于登陆微信公众平台账号,且邮箱账号须为未绑定微信的邮箱账号,然后设置登陆密码,如下所示:登陆邮箱查看邮件,并激活公众平台账号2.1.2选择适合自身的公众账号微信公众平号注册时,可根据公众号的用途,具体选择对应的类型。
“企业”类型包括:企业、分支机构、企业相关品牌、产品与服务、以及招聘、客服等类型的公众号。
“媒体”类型包括:报纸、杂志、电视、电台、通讯社、其他媒体等类型的公众号。
包括:国内外、各级、各类政府机构、事业单位、具有行政职能的社会组织等类型的公众号。
目前主要覆盖公安机构、党团机构、司法机构、交通机构、旅游机构、工商税务机构、市政机构、涉外机构等。
包括:不属于企业、政府、媒体、个人的机构类型的公众号。
包括:不属于企业、政府、媒体、其他组织类型的公众号。
2.1.3企业类型信息登记说明手机号码、身份证、营业执照、组织机构代码、企业邮箱登记的限1、同一个企业邮箱只能申请1个公众号。
微信公众平台高级群发接口在这篇微信公众平台高级接口开发教程中,我们将介绍如何使用接口实现微信公众平台群发功能。
本文分为以下四个部分:
1.准备群发内容
2.选择群发对象
3.执行群发
4.接收群发结果
一、准备群发内容
群发内容可以是文本、图片、语音、视频、图文。
群发文本只需要文本内容,其他内容需要获得相应的media_id。
1. 文本内容
文本内容就是一段文字,比如:"微信公众平台开发最佳实践"
2. 图片、语音、视频
要求如下:
∙Ÿ 图片(image): 128K,支持JPG格式
∙Ÿ 语音(voice):256K,播放长度不超过60s,支持AMR\MP3格式
∙Ÿ 视频(video):1MB,支持MP4格式
准备好以后,需要使用上传下载多媒体文件接口将其上传到微信服务器,获得media_id。
上传的开发方法,可以参考本博客的第80篇教程微信公众平台开发(80) 上传下载多媒体文件
3. 图文
首先要准备缩略图,要求如下:
∙缩略图(thumb):64KB,支持JPG格式
{
}
根据上述POST结构,定义图文数组如下:
上传成功后,返回如下,将得到图文消息的media_id
{
"type":"news",
"media_id":"CsEf3ldqkAYJAU6EJeIkStVDSvffUJ54vqbThMgplD-VJXXof6ctX5fI6-aYyUiQ", "created_at":1391857799
}
二、选择群发对象
群发对象可以是用户组,也可以是OpenID列表。
1.用户组
获得用户分组,需要使用高级接口中的查询所有分组接口,获得相应的group_id,
开发方法,可以参考本博客的第88篇教程微信公众平台开发(88) 用户分组接口
2.OpenID列表
OpenID列表,是使用高级接口中的获取关注者列表接口来实现的。
开发方法,可以参考本博客的第87篇教程微信公众平台开发(87) 获取关注者列表
三、执行群发
由于群发对象的不同,执行群发也有不同的方式。
1. 对用户组群发
对用户组群发的接口如下:
https:///cgi-bin/message/mass/sendall?access_token=ACCESS_TOKEN
要POST的内容按内容不同组成也不一样。
文本:
{
"filter":{
"group_id":"2"
},
"text":{
"content":"CONTENT"
},
"msgtype":"text"
}
语音(注意此处media_id需通过基础支持中的上传下载多媒体文件来得到):
{
"filter":{
"group_id":"2"
},
"voice":{
"media_id":"123dsdajkasd231jhksad"
},
"msgtype":"voice"
}
图片(注意此处media_id需通过基础支持中的上传下载多媒体文件来得到):
{
"filter":{
"group_id":"2"
},
"image":{
"media_id":"123dsdajkasd231jhksad"
},
"msgtype":"image"
}
视频
{
"filter":{
"group_id":"2"
},
"mpvideo":{
"media_id":"IhdaAQXuvJtGzwwc0abfXnzeezfO0NgPK6AQYShD8RQYMTtfzbLdBIQkQziv2XJc", },
"msgtype":"mpvideo"
}
图文消息(注意图文消息的media_id需要通过上述方法来得到):
{
"filter":{
}
array(3) { }
下面是向用户组发送图文消息的效果,分别是接收到图文消息,查看图文消息内容后的效果,
2.对OpenID列表群发
接口如下:
https:///cgi-bin/message/mass/send?access_token=ACCESS_TOKEN
POST数据示例如下:
文本:
{
"touser": [
"oR5Gjjl_eiZoUpGozMo7dbBJ362A",
"oR5Gjjo5rXlMUocSEXKT7Q5RQ63Q"
],
"msgtype": "text",
"text": {
"content": "hello from boxer."
}
}
语音:
{
"touser":[
"OPENID1",
"OPENID2"
],
"voice":{
"media_id":"mLxl6paC7z2Tl-NJT64yzJve8T9c8u9K2x-Ai6Ujd4lIH9IBuF6-2r66mamn_gIT"
},
"msgtype":"voice"
}
{
} {
} {
}
<xml> </xml>
从上可以看出,这其实是公众号群发助手模拟向公众号发送消息,那么群发结果也是返回给公众号助手。
在微信公众平台PHP SDK
中增加该事件消息的处理结果如下:
private function receiveEvent($object)
{
$content = "";
switch ($object->Event)
{
case "subscribe":
$content = "欢迎关注方倍工作室";
break;
case "MASSSENDJOBFINISH":
$content = "消息ID:".$object->MsgID.
"\n结果:".$object->Status.
"\n粉丝数:".$object->TotalCount.
"\n过滤:".$object->FilterCount.
"\n发送成功:".$object->SentCount.
"\n发送失败:".$object->ErrorCount;
break;
default:
break;
}
$result = $this->transmitText($object, $content);
return$result;
}
====================================================================。