From c42b0d5fda9acb364c78d4895fd9b6afb3cde025 Mon Sep 17 00:00:00 2001 From: Mr Chen Date: Sat, 28 Sep 2024 21:43:44 +0800 Subject: [PATCH] Create webhook_index.py --- plugins/webhook/webhook_index.py | 63 ++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100755 plugins/webhook/webhook_index.py diff --git a/plugins/webhook/webhook_index.py b/plugins/webhook/webhook_index.py new file mode 100755 index 000000000..5b2777da6 --- /dev/null +++ b/plugins/webhook/webhook_index.py @@ -0,0 +1,63 @@ +# coding:utf-8 + +import sys +import io +import os +import time +import re +import json + +sys.path.append(os.getcwd() + "/class/core") +import mw + +app_debug = False +if mw.isAppleSystem(): + app_debug = True + + +def getPluginName(): + return 'webhook' + +def getPluginDir(): + return mw.getPluginDir() + '/' + getPluginName() + + +def getServerDir(): + return mw.getServerDir() + '/' + getPluginName() + + +def getCfgFilePath(): + return getServerDir() + "/cfg.json" + + +def getCfg(): + cfg = getCfgFilePath() + if not os.path.exists(cfg): + initCfg() + + data = mw.readFile(cfg) + data = json.loads(data) + return data + + +def runShellArgs(args): + data = getCfg() + for i in range(len(data)): + if data[i]['access_key'] == args['access_key']: + script_dir = getServerDir() + "/scripts" + shellFile = script_dir + '/' + args['access_key'] + param = args['params'] + if param == '': + param = 'no-parameters' + + param = re.sub("\"", '', param) + + cmd = "bash {} {} >> {}.log 2>&1 &".format( + shellFile, param, shellFile) + # print(cmd) + os.system(cmd) + data[i]['count'] += 1 + data[i]['uptime'] = int(time.time()) + mw.writeFile(getCfgFilePath(), json.dumps(data)) + return mw.returnJson(True, '运行成功!') + return mw.returnJson(False, '指定Hook不存在!')