mirror of
https://github.com/xuthus83/LittlePaimon.git
synced 2025-04-12 23:29:37 +08:00
✨ 群聊学习
不学以命令前缀
开头的消息,修复web ui
禁用列表不能翻页的问题
This commit is contained in:
parent
0546be70c8
commit
d8e81fefdd
@ -15,10 +15,14 @@ from nonebot import get_bot
|
|||||||
from nonebot.adapters.onebot.v11 import GroupMessageEvent, MessageSegment, ActionFailed
|
from nonebot.adapters.onebot.v11 import GroupMessageEvent, MessageSegment, ActionFailed
|
||||||
from tortoise.functions import Count
|
from tortoise.functions import Count
|
||||||
from LittlePaimon.utils import NICKNAME, SUPERUSERS, logger
|
from LittlePaimon.utils import NICKNAME, SUPERUSERS, logger
|
||||||
|
from LittlePaimon.utils.typing import command_start
|
||||||
from .models import ChatBlackList, ChatContext, ChatAnswer, ChatMessage
|
from .models import ChatBlackList, ChatContext, ChatAnswer, ChatMessage
|
||||||
from .config import config_manager
|
from .config import config_manager
|
||||||
|
|
||||||
chat_config = config_manager.config
|
chat_config = config_manager.config
|
||||||
|
command_start_ = command_start.copy()
|
||||||
|
if '' in command_start_:
|
||||||
|
command_start.remove('')
|
||||||
|
|
||||||
NO_PERMISSION_WORDS = [f'{NICKNAME}就喜欢说这个,哼!', f'你管得着{NICKNAME}吗!']
|
NO_PERMISSION_WORDS = [f'{NICKNAME}就喜欢说这个,哼!', f'你管得着{NICKNAME}吗!']
|
||||||
ENABLE_WORDS = [f'{NICKNAME}会尝试学你们说怪话!', f'好的呢,让{NICKNAME}学学你们的说话方式~']
|
ENABLE_WORDS = [f'{NICKNAME}会尝试学你们说怪话!', f'好的呢,让{NICKNAME}学学你们的说话方式~']
|
||||||
@ -76,6 +80,10 @@ class LearningChat:
|
|||||||
logger.debug('群聊学习', f'➤该群<m>{self.data.group_id}</m>未开启群聊学习,跳过')
|
logger.debug('群聊学习', f'➤该群<m>{self.data.group_id}</m>未开启群聊学习,跳过')
|
||||||
# 如果未开启群聊学习,跳过
|
# 如果未开启群聊学习,跳过
|
||||||
return Result.Pass
|
return Result.Pass
|
||||||
|
elif command_start_ and self.data.message.startswith(tuple(command_start_)):
|
||||||
|
# 以命令前缀开头的消息,跳过
|
||||||
|
logger.debug('群聊学习', '➤消息以命令前缀开头,跳过')
|
||||||
|
return Result.Pass
|
||||||
elif self.data.user_id in self.ban_users:
|
elif self.data.user_id in self.ban_users:
|
||||||
# 发言人在屏蔽列表中,跳过
|
# 发言人在屏蔽列表中,跳过
|
||||||
logger.debug('群聊学习', f'➤发言人<m>{self.data.user_id}</m>在屏蔽列表中,跳过')
|
logger.debug('群聊学习', f'➤发言人<m>{self.data.user_id}</m>在屏蔽列表中,跳过')
|
||||||
|
@ -164,10 +164,7 @@ async def get_chat_blacklist(page: int = 1, perPage: int = 10, keywords: Optiona
|
|||||||
filter_arg = {'keywords__contains': keywords} if keywords else {}
|
filter_arg = {'keywords__contains': keywords} if keywords else {}
|
||||||
items = await ChatBlackList.filter(**filter_arg).offset((page - 1) * perPage).limit(perPage).values()
|
items = await ChatBlackList.filter(**filter_arg).offset((page - 1) * perPage).limit(perPage).values()
|
||||||
for item in items:
|
for item in items:
|
||||||
if item['global_ban']:
|
item['bans'] = '全局禁用' if item['global_ban'] else str(item['ban_group_id'][0])
|
||||||
item['bans'] = '全局禁用'
|
|
||||||
else:
|
|
||||||
item['bans'] = str(item['ban_group_id'][0])
|
|
||||||
if bans:
|
if bans:
|
||||||
items = list(filter(lambda x: bans in x['bans'], items))
|
items = list(filter(lambda x: bans in x['bans'], items))
|
||||||
return {
|
return {
|
||||||
@ -175,7 +172,7 @@ async def get_chat_blacklist(page: int = 1, perPage: int = 10, keywords: Optiona
|
|||||||
'msg': 'ok',
|
'msg': 'ok',
|
||||||
'data': {
|
'data': {
|
||||||
'items': items,
|
'items': items,
|
||||||
'total': len(items)
|
'total': await ChatBlackList.filter(**filter_arg).count()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -96,6 +96,7 @@ blacklist_table = TableCRUD(mode='table',
|
|||||||
title='',
|
title='',
|
||||||
syncLocation=False,
|
syncLocation=False,
|
||||||
api='/LittlePaimon/api/get_chat_blacklist',
|
api='/LittlePaimon/api/get_chat_blacklist',
|
||||||
|
interval=15000,
|
||||||
headerToolbar=[ActionType.Ajax(label='取消所有禁用',
|
headerToolbar=[ActionType.Ajax(label='取消所有禁用',
|
||||||
level=LevelEnum.warning,
|
level=LevelEnum.warning,
|
||||||
confirmText='确定要取消所有禁用吗?',
|
confirmText='确定要取消所有禁用吗?',
|
||||||
|
@ -4,7 +4,7 @@ from nonebot import get_driver
|
|||||||
from .logger import logger
|
from .logger import logger
|
||||||
from .scheduler import scheduler
|
from .scheduler import scheduler
|
||||||
|
|
||||||
__version__ = '3.0.3'
|
__version__ = '3.0.4'
|
||||||
|
|
||||||
DRIVER = get_driver()
|
DRIVER = get_driver()
|
||||||
try:
|
try:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user