本文给大家分享的是php实现的利用微信的客服接口进行各类消息的无限群发,思路非常巧妙,有需要的小伙伴可以参考下
利用微信客服接口进行各类消息的无限群发
sendAllMsg.php
sendMsgToAll(); //调用群发方法 注:1.使用条件:认证号或测试号 2.群发消息内容可为图文、文本、音乐等,$data具体内容参照微信开发文档/客服接口 3.若用户量过万,需修改getUserInfo(),具体参照信开发文档/获取关注者列表 新手上路,大神们多多指点,谢谢 */ interface iSendAllMsg{ function getData($url); //curl 发送get请求 function postData($url,$data); //curl 发送post请求 function getAccessToken(); //在构造方法中已调用该方法来获取access_token,注意它在wx服务器的保存时间7200s function sendMsgToAll(); //群发消息方法,发送的消息$data 可自行修改 } class SendAllMsg implements iSendAllMsg{ private $appId; private $appSecret; private $access_token; // public function __construct($appId, $appSecret) { $this->appId = $appId; $this->appSecret = $appSecret; $this->access_token = $this->getAccessToken(); } // function getData($url){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)'); curl_setopt($ch, CURLOPT_ENCODING, 'gzip'); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); $data = curl_exec($ch); curl_close($ch); return $data; } // function postData($url,$data){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)'); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_AUTOREFERER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $tmpInfo = curl_exec($ch); if (curl_errno($ch)) { return curl_error($ch); } curl_close($ch); return $tmpInfo; } // function getAccessToken(){ $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$this->appId."&secret=".$this->appSecret; $res = $this->getData($url); $jres = json_decode($res,true); $access_token = $jres['access_token']; return $access_token; } // private function getUserInfo(){ $url = "https://api.weixin.qq.com/cgi-bin/user/get?access_token=".$this->access_token; $res = $this->getData($url); $jres = json_decode($res,true); //print_r($jres); $userInfoList = $jres['data']['openid']; return $userInfoList; } function sendMsgToAll(){ $userInfoList = $this->getUserInfo(); $url = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=".$this->access_token; foreach($userInfoList as $val){ $data = '{ "touser":"'.$val.'", "msgtype":"text", "text": { "content":"测试一下,抱歉打扰各位" } }'; $this->postData($url,$data); } } } $test = new SendAllMsg("YOURappId","YOURappSecret"); $test->sendMsgToall(); ?>
以上就是本文的全部内容了,,希望大家能够喜欢。

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

SublimeText3 Chinese version
Chinese version, very easy to use
