添加订阅列表
This commit is contained in:
26
main.py
26
main.py
@@ -314,6 +314,19 @@ class BangumiPlugin(Star):
|
||||
result = await self.subscription_service.unsubscribe(session_key, query)
|
||||
yield event.plain_result(result)
|
||||
|
||||
@filter.command("追番列表")
|
||||
async def list_subscriptions(
|
||||
self, event: AstrMessageEvent
|
||||
) -> AsyncGenerator[object, None]:
|
||||
"""列举当前会话的所有追番订阅。"""
|
||||
if not self.subscription_service:
|
||||
yield event.plain_result("❌ 订阅服务未就绪")
|
||||
return
|
||||
|
||||
session_key = self._resolve_session_key(event)
|
||||
result = self.subscription_service.list_subscriptions(session_key)
|
||||
yield event.plain_result(result)
|
||||
|
||||
# --- LLM Tool 区 ---
|
||||
|
||||
@filter.llm_tool(name="bangumi_search")
|
||||
@@ -399,6 +412,19 @@ class BangumiPlugin(Star):
|
||||
async for result in self.search_service.handle_calendar(event):
|
||||
yield result
|
||||
|
||||
@filter.llm_tool(name="bangumi_list_subscriptions")
|
||||
async def llm_list_subscriptions(
|
||||
self, event: AstrMessageEvent
|
||||
) -> AsyncGenerator[object, None]:
|
||||
"""列举当前会话已订阅的所有追番,包含番剧名称、Bangumi ID 和当前更新集数。当用户询问"我订阅了哪些番"、"追番列表"、"我在追什么"时调用。"""
|
||||
if not self.subscription_service:
|
||||
yield event.plain_result("❌ 订阅服务未就绪")
|
||||
return
|
||||
|
||||
session_key = self._resolve_session_key(event)
|
||||
result = self.subscription_service.list_subscriptions(session_key)
|
||||
yield event.plain_result(result)
|
||||
|
||||
@filter.llm_tool(name="bangumi_subscribe")
|
||||
async def llm_subscribe(
|
||||
self,
|
||||
|
||||
Reference in New Issue
Block a user