Skip to content

Commit

Permalink
✨加入智能私聊
Browse files Browse the repository at this point in the history
  • Loading branch information
JustUndertaker committed Sep 8, 2021
1 parent 416bbdc commit 084c689
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 2 deletions.
2 changes: 2 additions & 0 deletions configs/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,8 @@
DEFAULT_LEFT_KICK: str = "被管理员狠狠地踢走了……"
'''默认成员被踢说辞'''

PRIVATE_CHAT:bool=True
'''是否开启智能私聊,开启后私聊会自动回复'''

IMG_CACHE: bool = True
'''截图是否缓存,缓存会下载图标到本地'''
38 changes: 36 additions & 2 deletions plugins/group_manager/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from nonebot import get_driver, on_regex, on_notice,on_request
from nonebot import get_driver, on_regex, on_notice,on_request,on_message
from nonebot.plugin import export
from datetime import datetime
from nonebot.adapters.cqhttp import (
Expand All @@ -12,12 +12,13 @@
GroupRequestEvent,
PrivateMessageEvent
)
from configs.config import DEFAULT_WELCOME, DEFAULT_LEFT, DEFAULT_LEFT_KICK, DEFAULT_STATUS,DEFAULT_FIREND_ADD,DEFAULT_GROUP_ADD
from configs.config import DEFAULT_WELCOME, DEFAULT_LEFT, DEFAULT_LEFT_KICK, DEFAULT_STATUS,DEFAULT_FIREND_ADD,DEFAULT_GROUP_ADD,PRIVATE_CHAT
from nonebot.permission import SUPERUSER
from nonebot.adapters.cqhttp.permission import GROUP_ADMIN, GROUP_OWNER
from utils.log import logger
from utils.utils import get_admin_list, nickname
from utils.browser import get_html_screenshots
from ..chat.data_source import get_reply_jx3,get_reply_qingyunke
from .data_source import (
group_init,
user_init,
Expand Down Expand Up @@ -318,3 +319,36 @@ async def _(bot: Bot, event: PrivateMessageEvent):
else:
msg="所有群已关闭机器人!"
await change_all.finish(msg)


chat_event=['message.private.friend','message.private.group']
chat=on_message(rule=check_event(chat_event),priority=9, block=True)


@chat.handle()
async def _(bot: Bot, event: PrivateMessageEvent):
'''其他人私聊消息
自动根据确定API
'''
if not PRIVATE_CHAT:
await chat.finish()
# 获得聊天内容
text = event.get_plaintext()
name = event.sender.nickname
log = f'{name}{event.user_id})私聊闲聊:{text}'
logger.info(log)

# 使用jx3api访问
msg = await get_reply_jx3(text)
if msg is None:
# 使用青云客访问
msg = await get_reply_qingyunke(text)
if msg is None:
# 访问失败
log = '接口访问失败,关闭事件。'
logger.info(log)
await chat.finish()

log = f'接口返回:{msg}'
logger.info(log)
await chat.finish(msg)

0 comments on commit 084c689

Please sign in to comment.