This article will share with you the idea of using the customer service interface implemented by php for unlimited Mass Sending of various types of messages. If you need it, you can refer
This article will share with you the idea of using the customer service interface implemented by php for unlimited Mass Sending of various types of messages. If you need it, you can refer
Unlimited group of messages using customer service interfaces
SendAllMsg. php
Signature <? Php/* Author: yf usage instructions: Public Account unlimited group interface, use instance: $ test = new SendAllMsg ("Your appId", "Your appSecret "); $ test-> sendMsgToAll (); // call the Group Sending method. Note: 1. usage conditions: authentication number or test number 2. the group message content can be text, text, music, etc. For details about $ data, refer to the development documentation/Customer Service Interface 3. if the number of users exceeds, You need to modify getUserInfo (). For details, refer to the letter development documentation/getting the list of followers, thank you */interface iSendAllMsg {function getData ($ url); // curl sends the get request function postData ($ url, $ data); // curl sends the post Request function getAccessToken (); // This method has been called in the constructor to obtain the access_token. Note that the storage time of the access_token is 7200 sfunction sendMsgToAll () on the wx server. // The group message sending method, the sent message $ data can be modified by yourself} 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, success, 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 ":" Test, sorry to disturb you "}}'; $ this-> postData ($ url, $ data) ;}}$ test = new SendAllMsg ("YOURappId", "YOURappSecret "); $ test-> sendMsgToall ();?>
The above is all the content of this article. I hope you will like it.