Hoshinonyaruko / Gensokyo

基于qq官方api开发的符合onebot标准的golang实现,轻量、原生跨平台.
GNU General Public License v3.0
652 stars 44 forks source link

魔法指令频道@未忽略问题 #366

Closed youlanan closed 5 months ago

youlanan commented 5 months ago

当配置如下,且其余配置保持公域默认时,来自频道和群的消息格式不一致:

global_channel_to_group: true # 是否将频道转换成群 默认true
remove_at: true #是否忽略公域机器人指令前第一个[CQ:aq,qq=机器人] 场景(公域机器人,但插件未适配at开头)
remove_prefix : true

复现示例:

在频道发送指令:@bot /roll
收到:'[at:qq=xxx] roll'
在群聊发送指令:@bot /roll
收到:' roll'

主要需求:希望在开启global_channel_to_group和remove_at时,remove_at作用于来自频道的消息。

其他建议:在频道转群时独立配置其消息的过滤规则,这样做的好处是可以在仅使用群消息时也能通过tome进行频道群聊的区分,插件仅需少量改动即可适配。例如新增配置项 channel_to_group_remove_at: true

youlanan commented 5 months ago

经尝试,可通过使用 #开发增强类 中的 alias将 ‘[CQ:at,qq=xxx] ’ 替换为 ' ' 来临时解决指令过滤问题

  alias: #两两成对,指令替换,"a","b","c","d"代表将a开头替换为b开头,c开头替换为d开头.
    - "[CQ:at,qq=your_bot_id] "
    - " "