Merge pull request #89 from thsrite/main
This commit is contained in:
commit
a2ac1b543c
@ -29,3 +29,16 @@ async def webhook_message(background_tasks: BackgroundTasks,
|
|||||||
args = request.query_params
|
args = request.query_params
|
||||||
background_tasks.add_task(start_webhook_chain, body, form, args)
|
background_tasks.add_task(start_webhook_chain, body, form, args)
|
||||||
return schemas.Response(success=True)
|
return schemas.Response(success=True)
|
||||||
|
|
||||||
|
|
||||||
|
@router.get("/", summary="Webhook消息响应", response_model=schemas.Response)
|
||||||
|
async def webhook_message(background_tasks: BackgroundTasks,
|
||||||
|
token: str, request: Request) -> Any:
|
||||||
|
"""
|
||||||
|
Webhook响应
|
||||||
|
"""
|
||||||
|
if token != settings.API_TOKEN:
|
||||||
|
return schemas.Response(success=False, message="token认证不通过")
|
||||||
|
args = request.query_params
|
||||||
|
background_tasks.add_task(start_webhook_chain, None, None, args)
|
||||||
|
return schemas.Response(success=True)
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
import json
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Optional, Tuple, Union, Any, List, Generator
|
from typing import Optional, Tuple, Union, Any, List, Generator
|
||||||
|
|
||||||
@ -40,7 +41,11 @@ class EmbyModule(_ModuleBase):
|
|||||||
:param args: 请求参数
|
:param args: 请求参数
|
||||||
:return: 字典,解析为消息时需要包含:title、text、image
|
:return: 字典,解析为消息时需要包含:title、text、image
|
||||||
"""
|
"""
|
||||||
return self.emby.get_webhook_message(form.get("data"))
|
if form and form.get("data"):
|
||||||
|
result = form.get("data")
|
||||||
|
else:
|
||||||
|
result = json.dumps(dict(args))
|
||||||
|
return self.emby.get_webhook_message(result)
|
||||||
|
|
||||||
def media_exists(self, mediainfo: MediaInfo, itemid: str = None) -> Optional[ExistMediaInfo]:
|
def media_exists(self, mediainfo: MediaInfo, itemid: str = None) -> Optional[ExistMediaInfo]:
|
||||||
"""
|
"""
|
||||||
|
@ -591,6 +591,14 @@ class Emby(metaclass=Singleton):
|
|||||||
eventItem.client = message.get('Session').get('Client')
|
eventItem.client = message.get('Session').get('Client')
|
||||||
if message.get("User"):
|
if message.get("User"):
|
||||||
eventItem.user_name = message.get("User").get('Name')
|
eventItem.user_name = message.get("User").get('Name')
|
||||||
|
if message.get("item_isvirtual"):
|
||||||
|
eventItem.item_isvirtual = message.get("item_isvirtual")
|
||||||
|
eventItem.item_type = message.get("item_type")
|
||||||
|
eventItem.item_name = message.get("item_name")
|
||||||
|
eventItem.item_path = message.get("item_path")
|
||||||
|
eventItem.tmdb_id = message.get("tmdb_id")
|
||||||
|
eventItem.season_id = message.get("season_id")
|
||||||
|
eventItem.episode_id = message.get("episode_id")
|
||||||
|
|
||||||
# 获取消息图片
|
# 获取消息图片
|
||||||
if eventItem.item_id:
|
if eventItem.item_id:
|
||||||
|
@ -391,12 +391,12 @@ class MediaSyncDel(_PluginBase):
|
|||||||
if not self._enabled:
|
if not self._enabled:
|
||||||
return
|
return
|
||||||
event_data = event.event_data
|
event_data = event.event_data
|
||||||
event_type = event_data.get("event_type")
|
event_type = event_data.event
|
||||||
if not event_type or str(event_type) != 'media_del':
|
if not event_type or str(event_type) != 'media_del':
|
||||||
return
|
return
|
||||||
|
|
||||||
# 是否虚拟标识
|
# 是否虚拟标识
|
||||||
item_isvirtual = event_data.get("item_isvirtual")
|
item_isvirtual = event_data.item_isvirtual
|
||||||
if not item_isvirtual:
|
if not item_isvirtual:
|
||||||
logger.error("item_isvirtual参数未配置,为防止误删除,暂停插件运行")
|
logger.error("item_isvirtual参数未配置,为防止误删除,暂停插件运行")
|
||||||
self.update_config({
|
self.update_config({
|
||||||
@ -417,24 +417,24 @@ class MediaSyncDel(_PluginBase):
|
|||||||
history = self.get_data('history') or []
|
history = self.get_data('history') or []
|
||||||
|
|
||||||
# 媒体类型
|
# 媒体类型
|
||||||
media_type = event_data.get("media_type")
|
media_type = event_data.item_type
|
||||||
# 媒体名称
|
# 媒体名称
|
||||||
media_name = event_data.get("media_name")
|
media_name = event_data.item_name
|
||||||
# 媒体路径
|
# 媒体路径
|
||||||
media_path = event_data.get("media_path")
|
media_path = event_data.item_path
|
||||||
# tmdb_id
|
# tmdb_id
|
||||||
tmdb_id = event_data.get("tmdb_id")
|
tmdb_id = event_data.tmdb_id
|
||||||
# 季数
|
# 季数
|
||||||
season_num = event_data.get("season_num")
|
season_num = event_data.season_id
|
||||||
if season_num and str(season_num).isdigit() and int(season_num) < 10:
|
if season_num and str(season_num).isdigit() and int(season_num) < 10:
|
||||||
season_num = f'S0{season_num}'
|
season_num = f'S0{season_num}'
|
||||||
else:
|
elif season_num:
|
||||||
season_num = f'S{season_num}'
|
season_num = f'S{season_num}'
|
||||||
# 集数
|
# 集数
|
||||||
episode_num = event_data.get("episode_num")
|
episode_num = event_data.episode_id
|
||||||
if episode_num and str(episode_num).isdigit() and int(episode_num) < 10:
|
if episode_num and str(episode_num).isdigit() and int(episode_num) < 10:
|
||||||
episode_num = f'E0{episode_num}'
|
episode_num = f'E0{episode_num}'
|
||||||
else:
|
elif episode_num:
|
||||||
episode_num = f'E{episode_num}'
|
episode_num = f'E{episode_num}'
|
||||||
|
|
||||||
if not media_type:
|
if not media_type:
|
||||||
|
@ -133,3 +133,4 @@ class WebhookEventInfo(BaseModel):
|
|||||||
image_url: Optional[str] = None
|
image_url: Optional[str] = None
|
||||||
item_favorite: Optional[bool] = None
|
item_favorite: Optional[bool] = None
|
||||||
save_reason: Optional[str] = None
|
save_reason: Optional[str] = None
|
||||||
|
item_isvirtual: Optional[bool] = None
|
||||||
|
Loading…
x
Reference in New Issue
Block a user