开始新增历史内容
This commit is contained in:
@@ -12,6 +12,7 @@ MAIN_WEBHOOK_URL = config.FindItem("main_webhook_url", "")
|
||||
|
||||
config.SaveProperties()
|
||||
|
||||
|
||||
class MessageSender:
|
||||
"""消息发送器"""
|
||||
|
||||
@@ -162,26 +163,35 @@ class BasicWPSInterface(PluginInterface):
|
||||
# 机器人名称模式(用于从@消息中提取)
|
||||
AT_PATTERN = re.compile(r'@[^\s]+\s+(.+)', re.DOTALL)
|
||||
|
||||
@override
|
||||
async def callback(self, message: str, chat_id: int, user_id: int) -> str|None:
|
||||
webhook_url = self.get_webhook_url(message, user_id)
|
||||
if get_internal_debug():
|
||||
config.Log("Info", f"Webhook URL: {webhook_url}, Message: {LimitStringLength(message)}, User ID: {user_id}")
|
||||
if webhook_url == "" or webhook_url == None:
|
||||
return
|
||||
|
||||
def parse_message_after_at(self, message: str) -> str:
|
||||
# 去除首尾空格
|
||||
message = message.strip()
|
||||
|
||||
# 尝试提取@后的内容
|
||||
at_match = BasicWPSInterface.AT_PATTERN.search(message)
|
||||
if at_match:
|
||||
message = at_match.group(1).strip()
|
||||
return at_match.group(1).strip()
|
||||
return message
|
||||
|
||||
async def send_markdown_message(self, message: str, chat_id: int, user_id: int) -> str|None:
|
||||
webhook_url = self.get_webhook_url(message, user_id)
|
||||
if get_internal_debug():
|
||||
config.Log("Info", f"Webhook URL: {webhook_url}, Message: {LimitStringLength(message)}, User ID: {user_id}")
|
||||
if webhook_url == "" or webhook_url == None:
|
||||
return None
|
||||
|
||||
result = await self.get_message_sender_function(webhook_url, self.get_message_sender_type())(message)
|
||||
config.Log("Info", f"Webhook URL: {webhook_url}, Message: {LimitStringLength(message)}, Result: {result}")
|
||||
return None
|
||||
|
||||
@override
|
||||
async def callback(self, message: str, chat_id: int, user_id: int) -> str|None:
|
||||
message = self.parse_message_after_at(message)
|
||||
if message == "":
|
||||
return None
|
||||
return await self.send_markdown_message(message, chat_id, user_id)
|
||||
|
||||
|
||||
class WPSAPI(BasicWPSInterface):
|
||||
@override
|
||||
def is_enable_plugin(self) -> bool:
|
||||
|
||||
Reference in New Issue
Block a user