Annotation Interface MessageHandlerFilter


@Documented @Inherited @Target(METHOD) @Retention(RUNTIME) public @interface MessageHandlerFilter
此注解仅与 @xxxMessageHandler 一起使用才有效
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    检查是否被at 如果值为 NEED 只处理带有at机器人的消息 如果值为 NOT_NEED 若消息中at了机器人此条消息会被忽略
    触发命令,支持正则 注: 仅用于消息校验, 不会返回 matcher (理论上可以做到, 但是会冲突
    若指明后缀, 则仅消息尾部匹配后缀的消息才可以触发, 如果为空则任意消息都可以触发
    long[]
    仅注解指明的群组会触发, 如果为空则任意群组都可以触发 注, 私聊消息无效
    boolean
    将过滤器反转, 即所有**不为默认值/非空**的过滤条件反转, 当某条件未设置时反转无效 例如 指明`senders`后, 只有指明的 qq 发送的消息会触发, 反转过滤器后, 指明的 qq 则不会触发
    检测是否包含回复 OFF 不处理 NONE 不包括回复 REPLY_ME 回复 bot 的消息 REPLY_OTHER 回复任意其他人的消息 REPLY_ALL 任意包括回复的消息
    long[]
    仅注解指明的 qq 发送会触发, 如果为空则任意消息都可以触发
    若指明前缀, 则仅消息头部匹配前缀的消息才可以触发, 如果为空则任意消息都可以触发
    消息中包含某一类型的 注0: reply 如果设为 REPLY_XXX, types 默认增加一条额外的 type.reply, types 为空不受影响 注1: 若 reply 为 NONE, types 包含 type.reply, 则本规则的 type.reply 条件无效
  • Element Details

    • cmd

      String cmd
      触发命令,支持正则 注: 仅用于消息校验, 不会返回 matcher (理论上可以做到, 但是会冲突
      Returns:
      正则表达式
      Default:
      ""
    • at

      AtEnum at
      检查是否被at 如果值为 NEED 只处理带有at机器人的消息 如果值为 NOT_NEED 若消息中at了机器人此条消息会被忽略
      Returns:
      at 枚举
      Default:
      OFF
    • reply

      ReplyEnum reply
      检测是否包含回复 OFF 不处理 NONE 不包括回复 REPLY_ME 回复 bot 的消息 REPLY_OTHER 回复任意其他人的消息 REPLY_ALL 任意包括回复的消息
      Returns:
      reply 枚举
      Default:
      OFF
    • types

      MsgTypeEnum[] types
      消息中包含某一类型的 注0: reply 如果设为 REPLY_XXX, types 默认增加一条额外的 type.reply, types 为空不受影响 注1: 若 reply 为 NONE, types 包含 type.reply, 则本规则的 type.reply 条件无效
      Default:
      {}
    • groups

      long[] groups
      仅注解指明的群组会触发, 如果为空则任意群组都可以触发 注, 私聊消息无效
      Returns:
      群组 ID
      Default:
      {}
    • senders

      long[] senders
      仅注解指明的 qq 发送会触发, 如果为空则任意消息都可以触发
      Returns:
      群组 ID
      Default:
      {}
    • startWith

      String[] startWith
      若指明前缀, 则仅消息头部匹配前缀的消息才可以触发, 如果为空则任意消息都可以触发
      Returns:
      前缀, 可多选
      Default:
      {}
    • endWith

      String[] endWith
      若指明后缀, 则仅消息尾部匹配后缀的消息才可以触发, 如果为空则任意消息都可以触发
      Returns:
      后缀缀, 可多选
      Default:
      {}
    • invert

      boolean invert
      将过滤器反转, 即所有**不为默认值/非空**的过滤条件反转, 当某条件未设置时反转无效 例如 指明`senders`后, 只有指明的 qq 发送的消息会触发, 反转过滤器后, 指明的 qq 则不会触发
      Returns:
      true 则反转
      Default:
      false