微信公眾號之主動給用戶發送消息功能

 更新時間:2019年06月22日 10:58:17   作者:御風已失琊穹   我要評論
這篇文章主要介紹了微信公眾號之主動給用戶發送消息,需要的朋友可以參考下

前一段時間項目中遇到一個稍微麻煩一點的問題。

即客戶要求,他在后臺編輯好文章后要主動給每個用戶都發送消息,并可以讓用戶點擊直接進入文章頁面。

于是乎,當時腦子一熱,想著沒什么大的問題,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條消息的限制就會重置。

總結

以上所述是小編給大家介紹的微信公眾號之主動給用戶發送消息功能,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!

相關文章

  • PHP 輸出URL的快捷方式示例代碼

    PHP 輸出URL的快捷方式示例代碼

    輸出URL的快捷方式的實現方法有很多,在本文將為大家介紹下使用php是如何實現的,感興趣的朋友可以參考下,希望對大家有所幫助
    2013-09-09
  • php的ajax簡單實例

    php的ajax簡單實例

    本篇文章主要是對php的ajax簡單實例進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-02-02
  • Zend Framework框架之Zend_Mail實現發送Email郵件驗證功能及解決標題亂碼的方法

    Zend Framework框架之Zend_Mail實現發送Email郵件驗證功能及解決

    這篇文章主要介紹了Zend Framework框架之Zend_Mail實現發送Email郵件驗證功能及解決標題亂碼的方法,詳細分析了Zend_Mail組件實現郵件發送的具體步驟,并給出了標題亂碼的解決方法,需要的朋友可以參考下
    2016-03-03
  • thinkphp5實現無限級分類

    thinkphp5實現無限級分類

    這篇文章主要為大家詳細介紹了thinkphp5實現無限級分類,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • PHP函數addslashes和mysql_real_escape_string的區別

    PHP函數addslashes和mysql_real_escape_string的區別

    這篇文章主要介紹了PHP函數addslashes和mysql_real_escape_string的區別,以及一個SQL注入漏洞介紹,需要的朋友可以參考下
    2014-04-04
  • Laravel模型間關系設置分表的方法示例

    Laravel模型間關系設置分表的方法示例

    這篇文章主要給大家介紹了關于Laravel模型間關系設置分表的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2018-04-04
  • Laravel下生成驗證碼的類

    Laravel下生成驗證碼的類

    這篇文章主要為大家詳細介紹了Laravel下生成驗證碼的類,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • PHP安裝threads多線程擴展基礎教程

    PHP安裝threads多線程擴展基礎教程

    php5.3或以上,且為線程安全版本。apache和php使用的編譯器必須一致,通過phpinfo()查看Thread Safety為enabled則為線程安全版,通過phpinfo()查看Compiler項可以知道使用的編譯器,本文給大家介紹PHP安裝threads多線程擴展基礎教程,需要的朋友參考下
    2015-11-11
  • Yii學習總結之數據訪問對象 (DAO)

    Yii學習總結之數據訪問對象 (DAO)

    本文是YII學習總結系列文章的第二篇,主要向我們介紹了數據訪問對象(DAO),十分的詳細,有需要的小伙伴參考下
    2015-02-02
  • PHP中的Streams詳細介紹

    PHP中的Streams詳細介紹

    這篇文章主要介紹了PHP中的Streams詳細介紹,本文介紹了Stream 基礎知識、php:// Streams包裝類、Stream上下文等內容,需要的朋友可以參考下
    2014-11-11

最新評論

湖北11选5走势图爱彩乐