監(jiān)控服務(wù)調(diào)用微信API如何給自己發(fā)告警信息
今天心血來潮,想試試用微信公眾號(hào)給自己發(fā)消息。主要是想如何運(yùn)維監(jiān)控的設(shè)備故障時(shí)可以通過微信告警。
查了一下開發(fā)者文檔,發(fā)現(xiàn)普通未認(rèn)證訂閱號(hào)不能通過API群發(fā),認(rèn)證訂閱號(hào)每天只能群一條信號(hào),而認(rèn)證的服務(wù)號(hào)每月發(fā)給每個(gè)月戶也只有4條。瞬間心涼了一半,于是網(wǎng)上又搜了一下,發(fā)現(xiàn)有個(gè)“WeiXin-Private-API-master”的東東說是可以單獨(dú)給每個(gè)關(guān)注的用戶發(fā)送,于是下載試了一下,失敗。再去查查官方文檔,已找不到這個(gè)“single send”接口,官方的FAQ里回答也是沒有這個(gè)功能。
最后使用公眾平臺(tái)測(cè)試賬號(hào),最后總算成功了。具體的步驟如下:
注:測(cè)試賬號(hào)每天可以發(fā)送100條分組群發(fā)信息和100條openid列表群發(fā)信息。
1.注冊(cè)公眾平臺(tái)訂閱號(hào)(個(gè)人的未認(rèn)證訂閱號(hào)即可)
2.開通開發(fā)者中心功能,注冊(cè)公眾平臺(tái)測(cè)試賬號(hào)。獲取到appID和appsecret

3.通過appID和appsecret獲取access_token。(也即是臨時(shí)憑證,有效時(shí)間為兩小時(shí),需要在到期前去更新)。獲取的url為
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
(將上面的APPID和APPSECRET替換成第2步獲取到的ID和密碼)
4.使用個(gè)人微信號(hào)關(guān)注這個(gè)測(cè)試賬號(hào),關(guān)注后在右方會(huì)出現(xiàn)加密后的微信號(hào)(也就是OpenID)

5.通過腳本調(diào)用API,這里用PHP,以O(shè)penID列表群發(fā)為例
<?php
$post_data = array( "touser"=>array('OpenID1', 'OpenID2'),
//把OpenID替換成第4步獲取到的加密微信號(hào)注意這里至少要兩個(gè)OpenID,否則會(huì)返回錯(cuò)誤信息。如果只有一個(gè)賬號(hào)關(guān)注了的話,可以自己再隨便造一個(gè),或兩個(gè)OpenID寫成一樣
"msgtype"=> "text",
"text" => array( "content" => "I am msg.")
);
$post_data = json_encode($post_data) ;
//因?yàn)锳PI只接受json的格式的數(shù)據(jù),所以要進(jìn)行json encode,當(dāng)然,以上的代碼也可直接寫成下面這樣:
//$postdata = '{"touser":["OpenID1","OpenID2"],"msgtype":"text","text":{"content":"I am msg."}}';
$url='https://api.weixin.qq.com/cgi-bin/message/mass/send?access_token=ACCESS_TOKEN';
//把ACCESS_TOKEN替換成第3步獲取到的token
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $p);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
//上面兩行是為了解決https證書問題,不加的話會(huì)報(bào)錯(cuò),所以直接信任證書了。
$result=curl_exec($ch); echo curl_error($ch);curl_close($ch);
print_r($result);
6.用瀏覽器打開這個(gè)頁面,顯示成功:

7.在手機(jī)上查看訂閱號(hào)發(fā)來的信息。(有一些延遲,所以對(duì)于需要緊急處理的監(jiān)控不適合用微信訂閱號(hào)來發(fā))

最后再強(qiáng)調(diào)一下,為了騰訊了為安全,使用access_token,兩小時(shí)就超時(shí),所以要在超時(shí)前重新獲取,可以直接在代碼里進(jìn)行刷新獲取。測(cè)試賬號(hào)每天可獲取最大次數(shù)為2000次。
以上內(nèi)容就是監(jiān)控服務(wù)調(diào)用微信API如何給自己發(fā)告警信息的全部內(nèi)容,希望大家喜歡。
相關(guān)文章
服務(wù)器端如何使用CORS來允許設(shè)置Cookie
這篇文章主要為大家介紹了服務(wù)器端如何使用CORS來允許設(shè)置Cookie的方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01
Zookeeper 單機(jī)環(huán)境和集群環(huán)境搭建
這篇文章主要介紹了Zookeeper 單機(jī)環(huán)境和集群環(huán)境搭建過程,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-08-08
自動(dòng)運(yùn)行 screen 任務(wù)詳解
這篇文章主要為大家介紹了自動(dòng)運(yùn)行 screen 任務(wù)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03
Windows服務(wù)器文件備份到本地的方法、Windows服務(wù)器數(shù)據(jù)備份方案
重要的數(shù)據(jù)必須備份,并且必須實(shí)時(shí)備份,否則一旦出現(xiàn)意外情況,將會(huì)給服務(wù)器文件安全帶來巨大災(zāi)難。那么,如何備份服務(wù)器文件呢?下面就一起來了解一下2019-05-05
基于HTTP協(xié)議實(shí)現(xiàn)的小型web服務(wù)器的方法
這篇文章主要介紹了基于HTTP協(xié)議實(shí)現(xiàn)的小型web服務(wù)器的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2007-08-08
服務(wù)器or本地項(xiàng)目部署全流程及常見問題記錄
本文詳細(xì)介紹了在Windows、Linux和Ubuntu系統(tǒng)中部署YOLOv5項(xiàng)目的過程,包括準(zhǔn)備工作、PyCharm連接遠(yuǎn)程服務(wù)器、項(xiàng)目環(huán)境配置、訓(xùn)練教程以及訓(xùn)練過程中的小技巧2024-11-11

