Skip to content

Latest commit

 

History

History
183 lines (150 loc) · 8.84 KB

v3.4_config.md

File metadata and controls

183 lines (150 loc) · 8.84 KB

v3.4 配置文件模板

HRobot 支持配置文件,配置文件在 mcl/config/com.happysnaker.HRobot/config.json 中,您可以手动创建配置文件,不过建议您运行一次 mcl.cmd,这会自动生产配置文件 config.json,如下是配置文件的模板,请注意对于 QQ 号或群号请务必用单引号 ‘ ’ 表示,否则可能会被程序识别为一个整数,我们建议对于任何字符串,都使用单引号以避免歧义

# 成员输入 帮助 或 help 或菜单后机器人回复的消息
menu: '欢迎使用 HRobot v$CURRENT_VERSION,请前往 https://github.com/happysnaker/mirai-plugin-HRobot 查看相关信息'

# 指明机器人生效的群,include 和 exclude 只能配置一个而置另一个为空
# include 表示机器人只在这些群内生效
# exclude 表示机器人在除这些群外的所有群内生效
# 若都为空则表示对所有群生效
include:
exclude:
  - '群号1'
  - '群号2'

# 指定调用网络 API 的超时时间,单位毫秒
timeout: 5000
# 指定命令前缀,允许为空
commandPrefix: '#'
# 聊天是否需要 @ 机器人,如果此字段为 false,则任意一条消息机器人都回回复,建议为 true
enableAt: true

# 对机器人的回复替代
replyReplace:
  - '菲菲': '欧尼酱'        # 将回复语句中的菲菲替代为欧尼酱
  - '猛男': '漂亮妹妹'

# 配置超级管理员与管理员
# 超级管理员只有一个,并在第一项给出,管理员可有多个
administrator:
  - '超级管理员 QQ 号'
  - '管理员QQ号'
  - '管理员QQ号'

# 配置群管理员,群管理员的配置通常只在其所在群内生效
groupAdministrator:
  - '群管理员QQ号'
  - '群管理员QQ号'

# 配置坎公管理员,管理坎公相关信息
gtAdministrator:
  - '坎公管理员QQ号'
  - '坎公管理员QQ号'


# 自动审批配置,当验证消息为空时则会默认同意
# 2022-09-27 声明:QQ 群自带此消息,此功能将在未来废弃
autoApproval:
  - 'QQ 群号': '审批验证消息'
  - 'QQ 群号': ''


# 是否开启涩图,可关闭涩图防止被封
# 此配置在未来某个版本可能会移除,请使用更精确的 colorStrategy 进行控制
colorSwitch: true
# 涩图发送策略 0~4
# 0 表示不发送任何消息;  1 表示仅发送图片链接; 2 表示仅发送图片; 3 表示既发送图片,又发送图片链接
# v3.4 新增选项 4,4 表示仅图片链接,与 1 的区别在于 1 上传了腾讯服务器,而 4 发送原始链接,手机 QQ 中可能会被视为恶意链接
colorStrategy: 3
# 涩图撤回时间,单位为秒
pictureWithdrawalTime: 30



# 开启敏感词检测的群
enableSensitiveWordDetection:
  - '群号'
  - '群号'
# 敏感词检测是是否需要忽略一些无意义的词,例如假设 艹尼玛 为敏感词 艹&&&&&尼玛 其中的 & 为无意义的词,建议开启
skipIsMeaninglessWord: true
# 检测跳步,例如 艹天尼玛,中间跳一了一步(”天“),开启后将对跳步自动检测
# 不建议设置过大,否则很容易误判,建议设置小于等于 3
skipStep: 2
# 撤回阈值,当检测到多少个敏感词后机器人会警告成员并撤回成员消息
withdrawalThreshold: 1



# 坎公配置,需要配置群号对应的 cookie,其中 members 是可选项,如果不配置 members,在催刀时默认会将所有群成员作为公会成员
gtConfig:
  - groupId: '群号1'
    gtCookie: 'cookie1'
    members:
      - '成员1'
      - '成员2'
  - groupId: '群号2'
    gtCookie: 'cookie2'
  - groupId: ''                # 当群号为空时,代表 cookie 对所有群生效,匹配时会自上向下检测
    gtCookie: 'cookie3'



# 发送鸡汤时有一定概率生成毒鸡汤,在这里配置概率,这是一个 [0, 1] 之间的小数
duChickenSoupProbability: 0.2



# 俄罗斯轮盘赌配置,当必中或者必不中时游戏结束
russianRoulette:
  totalNum: 6   # 总的弹夹数
  realNum: 1    # 其中的真弹数,真弹数不得超过总弹数
  # 奖励或惩罚最小基数(为积分系统做准备),实际奖惩积分数会根据实际概率进行调整,但大多总会落在 [base, 2*base] 区间内
  # 注意如果一名玩家中枪,那么他会将本轮游戏全部获益积分全部亏损进去
  base: 100



# 自定义关键字配置,支持群内关键字和全局关键字,群内关键字只在群内生效,关键字会有优先匹配群内关键字
# 群内关键字以群号作为关键字,嵌套一层 map,如下所示
# 回复允许以列表形式配置,机器人会进行随机回复
customKeyword:
  '全局关键字': '全局关键字回复 [hrobot::$img](https://tenapi.cn/acg)'  # 使用内部标签 img 返回图片,可参考配置手册
  '#regex#全局正则表达式': '全局正则表达式回复'
  '群号':
    '群内关键字': '群内关键字回复'
    '#regex#群内正则表达式': '群内正则表达式回复'
  # 示例
  '#regex#早.?.?': '[hrobot::$quote](quote)早什么早,早上要说我爱你'    # 匹配以早开头、长度为 1-3 的句子,$quote 是内部标签,可引用触发消息
  '#regex#[\d]{11}': '这是谁的电话号码?'                 # 匹配 11 位数字
  '#regex#呜+': ['你呜你🐎呢', '怎么了,遇到伤心事了?']    # 匹配任意一个或多个呜
  # 下列配置只在群 903025723 生效
  '903025723':
    '牛批': ['你牛什么牛?', '能有我牛?']
    '#regex#6*': ['6', '233', '老铁 666 啊', '[mirai:face:317]']



# 定时发送消息任务配置,请注意定时任务无法中途取消,除非你强制性停止机器人
# 支持在 content 以列表形式配置定时任务,机器人会随机进行发送
# 定时任务在机器人登录时会自动注册,你可以使用命令中途注册,但注意 #重载配置 命令是无法重新注册定时任务的
# 目前支持两种策略:
#  第一种是配置 hour 和 minute,这会在每天对应时间触发,注意这种配置可能在将来某个版本被移除,建议使用 cron 表达式
#  第二种是配置 cron expression,这允许你更精确的控制任务触发时间,生成 cron 可百度或参考 https://cron.qqe2.com/
periodicTask:
  # 下面任务表示在每日的 12 点 05 分 向群 903025723 发送一条消息,消息末尾包含一张美图
  - groupId: '903025723'    # 定时任务发送消息的群
    hour: 12                # 配置时间
    minute: 5               # 配置时间
    count: 0                # 一共持续几次,0 会被识别为最大次数 INT_MAX,可视为无限次
    content: |-             # 发布的内容,|- 是 yaml 的语法。这允许字符串换行
      你好呀!我很喜欢你
      晚安!
    image: true             # 是否在消息末尾附加一张随机美图
  # 下列 cron 表达式控制每隔 3min 触发一次任务
  - groupId: '903025723'    # 定时任务发送消息的群
    cron: '0 0/3 * * * ?'
    count: 0                # 一共持续几次,0 会被识别为最大次数 INT_MAX,可视为无限次
    content:           # 如果内容为列表,机器人会随机选择发送
      - |-             # 发布的内容,|- 是 yaml 的语法。这允许字符串换行
        [mirai:face:317]  
        [hrobot::$img](https://tenapi.cn/acg)
      - |-             # 发布的内容,|- 是 yaml 的语法。这允许字符串换行
        呃....
        额....
        饿....
        [hrobot::$img](https://tenapi.cn/acg)
        [hrobot::$img](http://h1.ioliu.cn/bing/HallesWood_ZH-CN9790575479_1920x1080.jpg?imageslim)
        [hrobot::$img](/app/config/test.png)
        [hrobot::$at](2199828958)
        上述演示了内部标签 img、at 的用法,可参考配置手册
    image: false


# 订阅配置,一旦检测到订阅内容更新,机器人会进行通知(最多会存在 3 分钟延迟)
# 实验性功能,如有 BUG 请提 issue
# 请注意如果 at 成员找不到,或者 at All 无权限或超过限制,消息会发送失败
subscribe:
  # UP 动态包括:发布动态、转发动态、直播了、投稿视频、投稿文章
  - platform: 'bilibili'             # 订阅平台,目前仅支持 bilibili
    type: 0                          # 类型,对于 bilibili 来说,0 代表订阅 UP 动态
    key: '384136794'                 # UP 的 ID,可参考配置手册
    pushGroup: '903025723'           # 检测到更新后需要推送的群
    atMembers: ['qq']                # 推送时需要 at 的成员,允许置空,请保证所 at 成员 QQ 正确性
  # 订阅番剧
  - platform: 'bilibili'
    type: 1                          # 类型 1 代表订阅番剧更新
    key: '39487'                     # 那么这个 key 代表番剧的 ID,可参考配置手册
    pushGroup: '903025723'
    atMembers: ['qq', '-1']          # -1 代表 atAll,请注意 atAll 是有权限和次数限制的,不推荐 at All,除非你能确定不会超过次数限制