Home > Backend Development > PHP Tutorial > 微信公众号怎么主动给用户发送信息

微信公众号怎么主动给用户发送信息

PHPz
Release: 2020-09-04 17:28:55
Original
11295 people have browsed it

微信公众号主动给用户发送信息的方法:首先在公众号后台功能模块中添加“客服功能”模块;然后获取“access_token”并调用发送方法;最后在使用时直接调用“sendmsg()”方法传值即可。

微信公众号怎么主动给用户发送信息

微信公众号怎么主动给用户发送信息?

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

如图所示:

企业微信截图_15921877152275.png

 

然后就进入代码环节了。

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

//先添加客服
function addkf()
{
    $token = getToken();
    $url = ‘https://api.weixin.qq.com/customservice/kfaccount/add?access_token=‘.$token;
    $data = ‘{
         "kf_account" : "system@system",
         "nickname" : "客服1",
         "password" : "admin",
    }‘;
    echo https_request($url,$data);
}
Copy after login

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

//获取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;
}
Copy after login

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

最后上完成的图

企业微信截图_15921877245039.png

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

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

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

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

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

更多相关知识,请访问PHP中文网

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template