寶塔搭建VPS補貨監控系統:VPS-Inventory-Monitoring 配置教程 支持微信/TG推送

針對VPS主機商不定期推出一些廉價的VPS主機或者暢銷/促銷產品,產品套餐時限有限,極容易斷貨後再補貨,大部分人可能無法及時關註官網,則可能錯過優惠產品。
VPS-Inventory-Monitoring,是一個免費開源的項目,主要原理是通過Curl 抓取網頁源代碼來監控目標字段的變化,例如當特定的網頁URL中出現瞭“缺貨”、“Out of Stock”等字樣,表示該主機套餐有沒有補貨,利用這個原理實時監控VPS主機套餐的庫存。本文主要介紹如何開啟TG通知。
本站補貨監控地址:buhuo.xiaosb.com || TG:快速備案補貨VPS通知
1.github地址

項目:https://github.com/546669204/vps-inventory-monitoring
感興趣的可以先star 再 fork備份

2.準備條件/搭建所用環境
虛擬主機或者VPS均可,推薦使用VPS虛擬服務器。
1.安裝寶塔
2.一鍵快速安裝LNMP環境(這裡使用php7.0,mysql5.6)
3.創建一個網站,(購買域名,https://www.namesilo.com,優惠碼maobuni,解析域名到vps)
4.進入網站目錄,下載https://github.com/546669204/vps-inventory-monitoring/archive/master.zip到目錄中,解壓,並將網站運行目錄設置為public,取消防跨站,網站偽靜態配置選擇thinkphp,開啟SSL。

5.將根目錄下的mysql.sql通過寶塔導入到你的數據庫,並且編輯app/database.example.php文件,重命名為database.php,並填寫數據庫信息,需要填數據庫地址,名稱,用戶,以及密碼,端口可不填(默認3306)
6.編輯app/index/config.php文件,修改定時時間、你的域名等,然後打開域名訪問即可。
7.最後網站還不能自己定時檢測庫存,我們需要設置定時檢測庫存,有2種方法(建議第一種)
方法一、定時任務設置
點擊寶塔左側定時計劃,任務類型選擇URL訪問,時間設置每30分鐘,URL:https://你的網站域名/index/index/test

方法二、運行驗證程序,間隔時間去app/index/config.php修改
screen -S vpstest //創建screen
cd [網站根目錄]
php think VpsTest
CTRL A D //退出screen
然後關閉ssh即可 重新進入查看可使用
screen -r vpstest
8.訪問網站,註冊你的帳戶,默認為第一個用戶,即id為1。擁有管理權限。註冊不瞭的可能是php版本導致,或其他問題,也可以直接去數據庫xm_user表修改/添加用戶。帳戶權限修改在文件app/index/config.php程序暫時沒有刪除以及編輯操作,不過我們可以去數據庫,通過操作xm_place、xm_company、xm_index進行刪除及編輯操作。如果添加後不會檢測,修改數據庫xm_index的status為1(1視為通過審核)
3.使用Docker安裝
docker安裝

安裝寶塔
安裝docker管理器,軟件商店中安裝
安裝docker-compose

pip install docker-composegit clone https://github.com/546669204/vps-inventory-monitoring.gitcd vps-inventory-monitoringdocker-compose up -d

訪問 ip:7780,網站頁面

如有問題,請嘗試:docker-compose downdocker-compose builddocker-compose up -d
4.驗證函數(檢測庫存)
驗證函數說明
函數說明$curl[“Code”] 返回狀態碼$curl[“RequestHeader”] 請求頭$curl[“ResponseHeader”] 返回頭$str 返回源代碼$value[“stock”] 原庫存狀態
使用示例
if ($curl[”Code”] != 200){ //首先判斷狀態碼
return false;
}
if (strpos($str,”maobuni”)==false){ //檢測是否正常打開有無公司名字之類關鍵詞
return $value[”stock”]; //返回原庫存狀態
}
if (strpos($str,”缺貨”)!==false){ //檢測是否含有缺貨關鍵詞
return false;
}
return true;
搬瓦工補貨示例
if ($curl[”Code”] != 200){
return false;
}
if (strpos($str,”微基”)==false){
return $value[”stock”];
}
if (strpos($str,”缺貨”)!==false){
return false;
}
return true;

if ($curl[”Code”] != 200){
return false;
}
if (strpos($str,”Bandwagon”)==false){
return $value[”stock”];
}
if (strpos($str,”Out of Stock”)!==false){
return false;
}
return true;

if ($curl[”Code”] != 200){
return false;
}
if (strpos($str,”GigsGigsCloud”)==false){
return $value[”stock”];
}
if (strpos($str,”CLOUDLET LAX-V1″)==false){
return false;
}
return true;
5.TG推送機器人
項目地址:https://github.com/546669204/Telegram-Push-Bot

TG私聊 botfather,輸入/newbot ,然後輸入BOT昵稱,再輸入BOT名字,然後就會得到token,類似Use this token to access the HTTP API之後
下載推送源碼,並修改bot.php文件裡面的token為自己bot的token
在寶塔上新建網站,綁定域名,並且把bot.php上傳到網站根目錄,並且用寶塔開啟SSL

訪問鏈接:https://api.telegram.org/bot[Token並無需保留括號]/setWebhook?url=https://[你的bot域名,並無需保留括號]/bot.php其中[token]修改為自己bot的token,[domian]修改為bot.php所在網站的域名,訪問之後得到“{“ok”:true,”result”:true,”description”:”Webhook is already set”}”即成功。
VPS-Inventory-Monitoring 默認代碼用的作者的TG Bot,因此我們需要把源碼的鏈接替換掉成自己的。請分別打開以下文件,把https://cloud.hcaiyue.top/tgbot.php替換成自己的bot所在域名。

/gotest/config.json
/app/index/model/index.php
/app/index/command/VpsTest.php
邀請自己的bot進入頻道,設置為管理員 然後在頻道發送 /start 獲取 sckey ,填入/app/index/config.php,這樣補貨後會推送到頻道(註冊時填寫的TGscky是私聊bot獲得的,如果你訂閱瞭某個補貨條目,那麼會收到TGbot的推送)
也可以手動通過`POST http://[domain]/bot.phpmethod=send&sckey=[XXX]&content=[CONTENT]`來發送消息
具體的添加監控可以在網頁上進行,刪除等需要直接區數據庫操作。(隻有在庫存狀態改變時候才會進行通知,試驗通知可以手動進入數據庫將庫存修改為0,然後等待監控觸發,庫存更改,是否收到通知)
本站補貨監控地址:buhuo.xiaosb.com || TG:快速備案補貨VPS通知 || VPS交流群

本文出自快速备案,转载时请注明出处及相应链接。

本文永久链接: https://kuaisubeian.cc/47504.html

kuaisubeian