mirror of
https://github.com/jxxghp/MoviePilot-Plugins.git
synced 2026-03-27 10:05:57 +00:00
fix(WebHook): add compatibility with MoviePilot v2
This commit is contained in:
@@ -1,9 +1,11 @@
|
||||
from app.plugins import _PluginBase
|
||||
from typing import Any, List, Dict, Tuple
|
||||
|
||||
from app.core.config import settings
|
||||
from app.core.event import eventmanager
|
||||
from app.log import logger
|
||||
from app.plugins import _PluginBase
|
||||
from app.schemas.types import EventType
|
||||
from app.utils.http import RequestUtils
|
||||
from typing import Any, List, Dict, Tuple
|
||||
from app.log import logger
|
||||
|
||||
|
||||
class WebHook(_PluginBase):
|
||||
@@ -134,6 +136,9 @@ class WebHook(_PluginBase):
|
||||
if not self._enabled or not self._webhook_url:
|
||||
return
|
||||
|
||||
if not event or not event.event_type:
|
||||
return
|
||||
|
||||
def __to_dict(_event):
|
||||
"""
|
||||
递归将对象转换为字典
|
||||
@@ -159,21 +164,27 @@ class WebHook(_PluginBase):
|
||||
else:
|
||||
return str(_event)
|
||||
|
||||
version = getattr(settings, "VERSION_FLAG", "v1")
|
||||
event_type = event.event_type if version == "v1" else event.event_type.value
|
||||
|
||||
event_info = {
|
||||
"type": event.event_type,
|
||||
"type": event_type,
|
||||
"data": __to_dict(event.event_data)
|
||||
}
|
||||
|
||||
if self._method == 'POST':
|
||||
ret = RequestUtils(content_type="application/json").post_res(self._webhook_url, json=event_info)
|
||||
else:
|
||||
ret = RequestUtils().get_res(self._webhook_url, params=event_info)
|
||||
if ret:
|
||||
logger.info("发送成功:%s" % self._webhook_url)
|
||||
elif ret is not None:
|
||||
logger.error(f"发送失败,状态码:{ret.status_code},返回信息:{ret.text} {ret.reason}")
|
||||
else:
|
||||
logger.error("发送失败,未获取到返回信息")
|
||||
try:
|
||||
if self._method == 'POST':
|
||||
ret = RequestUtils(content_type="application/json").post_res(self._webhook_url, json=event_info)
|
||||
else:
|
||||
ret = RequestUtils().get_res(self._webhook_url, params=event_info)
|
||||
if ret:
|
||||
logger.info(f"发送成功:{self._webhook_url}")
|
||||
elif ret is not None:
|
||||
logger.error(f"发送失败,状态码:{ret.status_code},返回信息:{ret.text} {ret.reason}")
|
||||
else:
|
||||
logger.error("发送失败,未获取到返回信息")
|
||||
except Exception as e:
|
||||
logger.error(f"发送请求时发生异常:{e}")
|
||||
|
||||
def stop_service(self):
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user