主动发送微信公众平台“模板消息”需要啥条件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了主动发送微信公众平台“模板消息”需要啥条件?相关的知识,希望对你有一定的参考价值。

目前有个主动推送日发电量的需求,准备用模版消息实现,但是貌似不满足消息主动下发的条件。
①模板消息不能主动下发给没有接受过服务的接收者(故障报警、灾害报警和不涉及营销推广的通知除外)
例:某用户仅仅是关注公众号,没有和公众号及其所属主体有任何交互行为,却无故收到该公众号下发的模板消息,属于违规行为
所谓的“不涉及营销推广的通知”具体指哪种消息模版,请有成功开发经验的大神指教。
(是“模板消息”不是“群发消息”,请指教!!)

具有支付能力的公众号才能有资格申请模板消息。

主动发送消息 目前可以通过两种方式实现:

1、通过微信的 ,高级群发接口 和 客服接口 (须认证后才能够使用) 进行消息的群发 规则 服务器每个月4条 订阅号每天一条 客服接口可以实现向单独用户发送消息 但是必须 该用户 24小时内跟公众号有过互动。

2、模拟登陆 ,获取到关注用户的fakeid 在通过fakeid 模拟发送消息 (有可能被TX屏蔽 慎用) 规则同样 该用户 24小时内跟公众号有过互动。

3、作模板就是新建一个公众号页面,可复制链接放到自定义菜单发布。如果在自定义才但还有空闲的情况下,可直接把制作好的模板链接,复制到自定义菜单的转向链接栏里。

参考技术A 这个不是微信自带的功能 你得用第三方来完成,我们可以根据标签群发,跟每位需要订阅的用户贴上标签,用户取消则把标签取消,实现精准营销 参考技术B 这个不是微信自带的功能 你得用第三方来完成 参考技术C 这个问题解决了吗? 我们现在也遇到这个问题了。 参考技术D 楼主解决了吗?我们也有同样的疑问啊

微信公众号之主动给用户发送消息

前一段时间项目中遇到一个稍微麻烦一点的问题。

即客户要求,他在后台编辑好文章后要主动给每个用户都发送消息,并可以让用户点击直接进入文章页面。

于是乎,当时脑子一热,想着没什么大的问题,so easy。模板消息不就得了。

后来在写代码的过程中却发现,并不行。

微信公众号中模板消息有很严格的限制。

1.必须有用户主动触发事件方可发送模板消息

2.模板消息一分钟只能发送六十条,超过六十条,不好意思。你懂。

于是乎,就想到了另一种方法:群发消息

但是一看文档中群发消息的限制,发现悲催了

群发消息服务号每个月最多只能发送4条。

而客户要求的是随时随地就能发送.这个4条明显不符合要求的。

怎么办呢?一度陷入困难之中。只好继续查看开发文档。

当看到客服功能时,突然想到,能不能用客服主动给用户发送消息呢?

于是乎,想到就去试验下。

首先,先在公众号后台功能模块中-》添加功能模块  添加   客服功能   模块

如图所示:

技术图片

 

然后就进入代码环节了。

先添加客服。也可以公众号后台添加

//先添加客服
function addkf()

    $token = getToken();
    $url = ‘https://api.weixin.qq.com/customservice/kfaccount/add?access_token=‘.$token;

    $data = ‘
         "kf_account" : "[email protected]",
         "nickname" : "客服1",
         "password" : "admin",
    ;
    echo https_request($url,$data);

然后就是主动发送消息的方法

//获取access_token的方法。
function getToken()

    $appid = ‘appid‘;
    $appsecret = ‘appsecret‘;
    $token_file = dirname(dirname(__FILE__)).‘/data/token.txt‘;
    if(!file_exists($token_file) || ((time() - filemtime($token_file)) > 7000))
        $TOKEN_URL="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$appsecret;

        $json=file_get_contents($TOKEN_URL);
        $result=json_decode($json);

        $ACC_TOKEN=$result->access_token;
        file_put_contents($token_file,$ACC_TOKEN);
    else
        $ACC_TOKEN = file_get_contents($token_file);
    
    return $ACC_TOKEN;


//调用发送方法
function sendmsg($content,$openid)

    $token = getToken();
    $url = ‘https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=‘.$token;
    $content = ‘感谢你的关注\\n回复你厉害 \\n例如<a href=\\"http://www.baidu.com\\">回复123456</a>‘;
    $data = ‘
        "touser":"‘.$openid.‘",
        "msgtype":"text",
        "text":
        
             "content":"‘.$content.‘"
        
    ;
    https_request($url,$data);
    return true;


/**
 * request 请求
 */
function https_request($url, $data = null)
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
    if (!empty($data))
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
    
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($curl);
    curl_close($curl);
    return $output;

使用的时候直接调用 sendmsg()方法传值就可以了。

最后上完成的图

技术图片

如图所示,公众号可以给用户发送消息,而且发送的内容你可以使用html 标签哦

虽然这样感觉很方便,但是同样,微信公众平台对此也有限制。

1.用户必须关注公众号,方可收到信息。

2.用户只能连续收到   20   条客服消息。超过后用户就收不到消息,

超过后,用户必须   主动给公众号发送消息  。或者  点击菜单栏,这样20条消息的限制就会重置。

以上就是本次分享的内容了。希望对观看的各位大佬们有所帮助。

转载本文需征得博主同意,且转载时需要标明出处!!!

其实我也不想这样,但是有人为了自己的搜索权重,不告知本人就转载了,同时也搜不到本人的文章了。

所以才出此下策。对于想转载的小伙伴说声抱歉,转载时请留言,本人会及时同意,谢谢。

2019年06月22日

以上是关于主动发送微信公众平台“模板消息”需要啥条件?的主要内容,如果未能解决你的问题,请参考以下文章

微信公众号之主动给用户发送消息

如何使用微信公众平台小程序

微信公众平台 发送模板消息

微信模板消息群发系统

微信公众平台开发(102) 模板消息

微信服务号怎么发送模板消息啊