fix actions

This commit is contained in:
jxxghp
2025-02-27 18:58:11 +08:00
parent b080a2003f
commit 37926b4c19
3 changed files with 11 additions and 12 deletions
+8 -6
View File
@@ -1,16 +1,17 @@
import copy
from typing import List, Optional, Union
from pydantic import Field
from app.actions import BaseAction, ActionChain
from app.schemas import ActionParams, ActionContext, MessageChannel
from app.schemas import ActionParams, ActionContext
class SendMessageParams(ActionParams):
"""
发送消息参数
"""
channel: Optional[List[str]] = Field([], description="消息渠道")
client: Optional[List[str]] = Field([], description="消息渠道")
userid: Optional[Union[str, int]] = Field(None, description="用户ID")
@@ -29,7 +30,7 @@ class SendMessageAction(BaseAction):
@property
def description(self) -> str:
return "发送特定消息"
return "发送队列中的所有消息"
@property
def data(self) -> dict:
@@ -43,12 +44,13 @@ class SendMessageAction(BaseAction):
"""
发送messages中的消息
"""
for message in context.messages:
if params.channel:
message.channel = MessageChannel(params.channel)
for message in copy.deepcopy(context.messages):
if params.client:
message.source = params.client
if params.userid:
message.userid = params.userid
self.chain.post_message(message)
context.messages.remove(message)
context.messages = []