監(jiān)控服務(wù)調(diào)用微信API如何給自己發(fā)告警信息
今天心血來潮,想試試用微信公眾號給自己發(fā)消息。主要是想如何運維監(jiān)控的設(shè)備故障時可以通過微信告警。
查了一下開發(fā)者文檔,發(fā)現(xiàn)普通未認證訂閱號不能通過API群發(fā),認證訂閱號每天只能群一條信號,而認證的服務(wù)號每月發(fā)給每個月戶也只有4條。瞬間心涼了一半,于是網(wǎng)上又搜了一下,發(fā)現(xiàn)有個“WeiXin-Private-API-master”的東東說是可以單獨給每個關(guān)注的用戶發(fā)送,于是下載試了一下,失敗。再去查查官方文檔,已找不到這個“single send”接口,官方的FAQ里回答也是沒有這個功能。
最后使用公眾平臺測試賬號,最后總算成功了。具體的步驟如下:
注:測試賬號每天可以發(fā)送100條分組群發(fā)信息和100條openid列表群發(fā)信息。
1.注冊公眾平臺訂閱號(個人的未認證訂閱號即可)
2.開通開發(fā)者中心功能,注冊公眾平臺測試賬號。獲取到appID和appsecret
3.通過appID和appsecret獲取access_token。(也即是臨時憑證,有效時間為兩小時,需要在到期前去更新)。獲取的url為
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
(將上面的APPID和APPSECRET替換成第2步獲取到的ID和密碼)
4.使用個人微信號關(guān)注這個測試賬號,關(guān)注后在右方會出現(xiàn)加密后的微信號(也就是OpenID)
5.通過腳本調(diào)用API,這里用PHP,以O(shè)penID列表群發(fā)為例
<?php $post_data = array( "touser"=>array('OpenID1', 'OpenID2'), //把OpenID替換成第4步獲取到的加密微信號注意這里至少要兩個OpenID,否則會返回錯誤信息。如果只有一個賬號關(guān)注了的話,可以自己再隨便造一個,或兩個OpenID寫成一樣 "msgtype"=> "text", "text" => array( "content" => "I am msg.") ); $post_data = json_encode($post_data) ; //因為API只接受json的格式的數(shù)據(jù),所以要進行json encode,當然,以上的代碼也可直接寫成下面這樣: //$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證書問題,不加的話會報錯,所以直接信任證書了。 $result=curl_exec($ch); echo curl_error($ch);curl_close($ch); print_r($result);
6.用瀏覽器打開這個頁面,顯示成功:
7.在手機上查看訂閱號發(fā)來的信息。(有一些延遲,所以對于需要緊急處理的監(jiān)控不適合用微信訂閱號來發(fā))
最后再強調(diào)一下,為了騰訊了為安全,使用access_token,兩小時就超時,所以要在超時前重新獲取,可以直接在代碼里進行刷新獲取。測試賬號每天可獲取最大次數(shù)為2000次。
以上內(nèi)容就是監(jiān)控服務(wù)調(diào)用微信API如何給自己發(fā)告警信息的全部內(nèi)容,希望大家喜歡。
相關(guān)文章
Git客戶端TortoiseGit(Windows系統(tǒng))的使用方法
這篇文章主要介紹了Git客戶端TortoiseGit(Windows系統(tǒng))的使用方法,需要的朋友可以參考下2014-09-09利用Ansible實現(xiàn)批量服務(wù)器自動化管理詳解
Ansible是基于Python開發(fā)的,采用YAML語言編寫自動化腳本playbook,?可以在Linux、Unix等系統(tǒng)上運行,?本文主要介紹了如何利用Ansible實現(xiàn)批量服務(wù)器自動化管理,需要的可以參考下2024-01-01windows2008系統(tǒng)中rsync計劃任務(wù)返回0x1問題處理
本文給大家分享的是小編在給windows2008配置rsync同步的過程中遇到的一個問題,在win03系統(tǒng)下可以正常返回0x0,結(jié)果到了win08系統(tǒng)中就變成了0x1,雖然也同步成功了,但是作為一個完美主義強迫癥患者,堅決不能忍,經(jīng)過一番查證,找到了解決辦法,分享給大家2017-04-04基于epoll實現(xiàn) Reactor服務(wù)器的詳細過程
在我們調(diào)用epoll_create的時候會創(chuàng)建出epoll模型,這個模型也是利用文件描述類似文件系統(tǒng)的方式控制該結(jié)構(gòu),這篇文章主要介紹了基于epoll實現(xiàn) Reactor服務(wù)器的詳細過程,需要的朋友可以參考下2023-12-12