Skip to content

MCDR-GUGUBot QQ机器人 群聊管理 聊天互转(原PFingan服务器MCDRQQ机器人插件)

License

Notifications You must be signed in to change notification settings

LoosePrince/PF-GUGUBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PF-GUGUBot

PF-QQchat(支持离线服务器)

PFingan服务器MCDRQQ机器人插件

页面浏览量计数  查看次数起始时间 仓库大小  最新版 议题  已关闭issues 下载量 最新发布下载量

目前我们正在为 MCDR 开发一个 WebUI ,目前正在公开测试中(已有正式版本),您可以使用 WebUI 来配置和管理 MCDR 插件和配置,包括 GUGUbot 和 cq-qq-api ,如需了解开发进度或参与测试,请访问:PF-MCDR-WebUI

使用方式-MCDR快捷安装:

  • MCDR服务端输入 !!MCDR plugin install gugubot
  • 加载后,在/config/cq_qq_api/config.json中配置接收api
  • 加载后,在/config/GUGUbot/config.yml中配置机器人
  • 重载 cq_qq_api: !!MCDR plugin reload cq_qq_api

使用方式-github下载安装:

  • 下载PF-cq_qq_api前置插件并放入/plugins

  • Release里面的GUGUbot.mcdr放入/plugins

  • 加载后,在/config/cq_qq_api/config.json中配置服务

  • 加载后,在/config/GUGUbot/config.yml中配置机器人

  • 重载 cq_qq_api: !!MCDR plugin reload cq_qq_api

    注:如果您在安装完成后启动提示没有配置文件请下载config_default.yml重名名为config.yml放入/config/GUGUbot/config.yml再运行

目录

依赖

Python包

Python模块

  • 已存储在插件对应的文件夹内的 requirements.txt 中, 可以使用 pip install -r requirements.txt 安装

前置插件

功能列表

QQ部分帮助,向QQ机器人发送,可以私聊也可以群聊发送 #帮助

基本功能:聊天互相转发

游戏内功能

游戏内功能帮助
!!klist','显示游戏内关键词
!!qq <msg>', '向QQ群发送消息(可以触发qq关键词)
!!add <关键词> <回复>','添加游戏内关键词回复
!!del <关键词>','删除指定游戏关键词
@ <QQ名/号> <消息>','让机器人在qq里@

群聊功能

群聊功能帮助
命令帮助如下:
#玩家                -> 获取在线玩家列表
#假人                -> 获取在线假人列表
#服务器              -> 同时获取在线玩家和假人列表
#绑定 <游戏ID>       -> 绑定你的游戏ID
#mc <消息>           -> 向游戏内发送消息(可以触发游戏内关键词)
#风格                -> 机器人风格帮助
#游戏关键词 列表     -> 显示现有游戏内关键词列表
#删除假人 <假人名字> -> 删除游戏内指定假人

关键词相关:
#添加 <关键词> <回复> -> 添加游戏内关键词回复
#添加图片 <关键词>    -> 添加关键词图片
#删除 <关键词>        -> 删除关键词
#列表                 -> 获取关键词回复列表
#帮助                 -> 查看关键词相关帮助
机器人回复风格

机器人回复风格切换 #风格

#风格 列表   -> 风格列表
#风格 <风格> -> 切换至指定风格

内置模式:正常 傲娇 AI生成后内置的模式:雌小鬼 御姐 萝莉 波奇酱 病娇 中二病

管理功能

群聊功能帮助
管理员命令帮助如下
#绑定   -> 查看绑定相关帮助
#白名单 -> 查看白名单相关帮助
#启动指令 -> 查看启动指令相关帮助
#违禁词 -> 查看违禁词相关帮助
#关键词 -> 查看关键词相关帮助
#游戏内关键词 -> 查看游戏内关键词相关帮助
#uuid   -> 查看uuid 匹配相关帮助
#名字   -> 查看机器人名字相关帮助
#审核   -> 协助审核功能
#执行 <command> -> 执行指令
#重启 -> 重载机器人
绑定详细指令
#绑定 列表            -> 查看绑定列表
#绑定 查询 <QQ号>     -> 查询绑定ID
#绑定 解绑 <QQ号>     -> 解除绑定
#绑定 <QQ号> <游戏ID> -> 绑定新ID
#绑定 清空 -> 清空绑定名单 + 白名单(需二次确认)
白名单详细指令
#白名单 添加 <target> -> 添加白名单成员
#白名单 列表 -> 列出白名单成员
#白名单 关   -> 关闭白名单
#白名单 开   -> 开启白名单
#白名单 重载 -> 重载白名单
#白名单 删除 <target> -> 删除白名单成员 <target> 可以是玩家名/目标选择器/UUID
启动指令详细指令
#启动指令 添加 <名称> <指令> -> 添加启动指令
#启动指令 删除 <名称>        -> 删除指定启动指令
#启动指令 列表 -> 查看现有启动指令
#启动指令 开   -> 开启开服指令
#启动指令 关   -> 关闭开服指令
#启动指令 执行 -> 执行一遍开服指令
#启动指令 重载 -> 重载开服指令
违禁词详细指令
#违禁词 添加 <违禁词> <违禁理由> -> 添加违禁词
#违禁词 列表 -> 显示违禁词列表及理由
#违禁词 删除 <违禁词> -> 删除指定违禁词
#违禁词 开   -> 开启违禁词
#违禁词 关   -> 关闭违禁词
#违禁词 重载 -> 重载违禁词
关键词详细指令
#关键词 开   -> 开启关键词
#关键词 关   -> 关闭关键词
#关键词 重载 -> 重载关键词
#关键词 列表 -> 显示关键词列表
#添加 <关键词> <回复> -> 添加关键词
#删除 <关键词> -> 删除指定关键词
游戏内关键词详细指令
#游戏关键词 开   -> 开启游戏内关键词
#游戏关键词 关   -> 关闭游戏内关键词
#游戏关键词 重载 -> 重载游戏内关键词
#游戏关键词 列表 -> 显示游戏内关键词列表
#游戏关键词添加 <关键词> <回复> -> 添加游戏内关键词
#游戏关键词删除 <关键词> -> 删除指定游戏内关键词
风格详细指令
#风格        -> 风格帮助
#风格 列表   -> 风格列表
#风格 <风格> -> 切换至指定风格
uuid匹配详细指令
#uuid        -> 查看uuid相关帮助
#uuid 列表   -> 查看uuid绑定表
#uuid 重载 -> 重新匹配uuid
#uuid 更新 <老ID> <新ID> -> 改白名单的名字
机器人名字详细指令
#名字 -> 查看名字相关帮助
#名字 开 -> 机器人名字显示为在线人数
#名字 关 -> 机器人名字为特殊空白名字
审核名单详细指令
#审核 开 -> 开启自动审核
#审核 关 -> 关闭自动审核
#审核 添加 <QQ号> <别名> -> 添加审核员的别名(匹配用)
#审核 删除 <QQ号> -> 删除审核员
#审核 列表 -> 审核员列表
指令详细指令
#指令 <command> -> 执行指令
详细功能说明
绑定 功能说明 记录玩家mc内ID,转发到游戏内会显示绑定时的ID

在群聊中使用 #绑定 xxx 来绑定 在管理员/管理群中,可以对玩家绑定进行 增删查改 操作

白名单 功能说明 管理员权限专属,可以通过此功能 增删查改 服务器白名单
启动指令 功能说明 有些指令想服务器启动时自动执行? 添加启动指令!

机器人会在服务器启动时,自动指令添加的指令.

违禁词 功能说明 熊孩子多?容易吵架?腐竹天天被催女装?

聊天中出现违禁词(句中一部分也算),机器人自动撤回 + 提示 注: 需要机器人有群管理员权限

关键词 功能说明 想要复读机?关键信息记录(服务器种子)?

添加关键词! 发送绑定的关键词就会回复记录的内容. 支持图片,请使用 #添加图片 <关键词> 进行添加

游戏内关键词 功能说明 MC游戏内可触发的关键词

记录坐标小帮手

风格 功能说明 机器人回复风格

可以给机器人换一个性格

支持自定义风格:

  • ./config/GUGUbot/ 中创建 extra_style.json
  • ./config/GUGUbot/config.yml 中设定上一步的路径 extra_style_path
  • 重载gugubot !!MCDR plugin reload gugubot 开始切换叭!
自定义说明

{} 的数量需要一致

缺少的回复会自动使用正常格式回复

{
 '正常' : {
   'add_cancel': '图片保存已取消',
   'add_existed': '已存在该关键词~',
   'add_image_instruction': '请发送要添加的图片~',
   'add_image_fail': '图片保存失败~',
   'add_image_previous_no_done': '上一个关键词还未绑定,添加哒咩!',
   'add_success':'添加成功!',
   'authorization_pass': '已通过{}的申请awa',
   'authorization_reject': '已拒绝{}的申请awa',
   'authorization_request': '{} 申请进群, 请审核',
   'ban_word_find':'回复包含违禁词请修改后重发,维护和谐游戏人人有责。\n违禁理由:{}',
   'bound_add_whitelist': '已将您添加到服务器白名单',
   'bound_exist': '您已绑定ID: {}, 请联系管理员修改',
   'bound_success': '已成功绑定',
   'command_success' : '指令执行成功',
   'delete_success':'删除成功!',
   'del_no_exist': '该关键词不存在',
   'del_whitelist_when_quit': '{}已退群,白名单同步删除',
   'key_word_exist': '已有指定关键词,请删除(#删除 <关键词>)后重试 awa',
   'lack_parameter': '缺少参数,请参考 #帮助 里的说明',
   'list': '列表如下: \n{}',
   'no_player_ingame': f"现在没人游玩服务器",
   'no_word': '列表空空的',
   'player_api_fail': '未能捕获服务器日志(推荐开启rcon精准获取玩家信息)',
   'player_list':'在线玩家共{}人,{}列表: {}',
   'player_notice_join': '{} 加入了游戏',
   'player_notice_leave': '{} 离开了游戏',
   'reload_success': '重载成功',
   'server_start':'服务器已启动',
   'server_stop': '服务器已关闭'
 }
}
uuid匹配 功能说明 在白名单开启时,自动使用更新的mc名称进行转发
机器人名字 功能说明 机器人群内名字自动显示服务器内人数

仅限单服使用,多服会随机显示其中一个服务器的人数

审核名单 功能说明 敬请期待(才不是咕咕咕)
指令 功能说明 执行服务器指令

在私聊或者管理群中使用 #指令 <command> 来执行 机器人会返回执行结果

配置

前置cq_qq_api配置

cq_qq_api是前置插件不可忽略

cq_qq_api服务端配置
  • config.json
配置项 默认值 说明
host 127.0.0.1 接收数据上报的地址
port 8080 对应数据上报的端口
post_path "" 对应数据上报的终点名
token "" 对应数据上报的token,用于加密信息
{
    "host": "127.0.0.1",
    "port": 8080,
    "post_path": "",
    "token": ""
}

以上为正向websocket

QQ机器人配置

以下为必要配置!

配置项 默认值 说明
正向websocket服务端口 8080 接收数据上报的端口
消息上报格式 CQ码 机器人基于CQ码进行解析

GUGUbot机器人配置

非常建议看看默认的配置文件 点击查看配置文件说明

必要项
QQ相关设置
  • admin_id: 管理员QQ号 默认拥有GUGUbot管理员权限(仅私聊)
  • group_id: 聊天转发的群
可选项
QQ相关设置
  • admin_group_id: 管理群群号,群内所有人都有管理权限(仅限该群内)
  • is_main_server: 是否为主服务器,分服请设置成false
  • server_name: 服务器名称前缀, mc转发到QQ时显示
指令开关
  • bound_notice: 是否进行绑定提示
  • ban_word: 违禁词撤回开关
  • execute_command: 执行指令开关
  • group_admin: 群指令(只能被咱们的管理员执行)
  • ingame_key_word: 游戏内关键词开关
  • key_word: 群聊关键词开关
  • list: 玩家列表查询开关
  • mc: #mc指令开关(非转发开关)
  • name: 机器人名字显示为服务器在线人数开关
  • qq: !!qq指令开关(非转发开关)
  • shenhe: 审核功能开关(咕咕咕)
  • start_command: 启动指令系统开关
  • whitelist: 白名单开关
转发设置
  • farward_other_bot: 转发官方机器人回复
  • keep_raw_image_link: 转发图片链接(适用于ChatImage)
  • mc_to_qq: MC转发到QQ开关
  • mc_to_qq_command: 服务器指令(!!/@)转发到QQ
  • player_notice: 玩家上下线通知
  • qq_to_mc: QQ转发到mc开关
  • show_group_notice: 上线显示最新群公告
路径
  • command_prefix: 群聊指令前缀识别

在dict_address底下 都是路径,不要跟上面的搞混了

  • ban_word_dict: 违禁词储存路径
  • bound_image_path: 绑定图片储存路径
  • extra_style_path: 自定义风格储存路径
  • font_path: 字体储存路径
  • key_word_dict: 群聊关键词储存路径
  • key_word_ingame_dict: 游戏内关键词储存路径
  • shenhe_log: 审核日志储存路径
  • shenheman: 审核管理员储存路径
  • start_command_dict: 启动指令储存路径
  • uuid_qqid: uuid储存路径
  • whitelist: 服务器白名单路径
其他设置
  • font_limit: 文字超长转图片 (默认大于150字转图片, 设置-1关闭)
  • max_bound: 一个玩家可以绑定多少个名称
  • show_message_in_console: 展示上报消息
  • style: (可选)机器人回复风格 #风格 查看风格帮助
  • style_cooldown: 风格切换冷却(单位: 秒)
  • whitelist_add_with_bound: 绑定时是否自动添加白名单
  • whitelist_remove_with_leave: 退群时是否自动移除白名单

有BUG或是新的IDEA

如果需要更多联动或提交想法和问题请提交 issues 或 QQ 1377820366 提交!
如需要帮助或者交流请通过 QQ群 726741344 进行询问或者交流
视情况添加,请勿联系他人(开发者:雪开

TODO

  • 更多的rcon功能接入
  • #45

贡献

代码贡献:QQChat | AnzhiZhang

技术支持:XueK__

About

MCDR-GUGUBot QQ机器人 群聊管理 聊天互转(原PFingan服务器MCDRQQ机器人插件)

Topics

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •  

Languages