已解决 [Kotlin]请问各位在使用CompositeCommand时调用其它方法如何传入GroupMessageEvent
-
请问各位在使用CompositeCommand时调用其它方法如何传入GroupMessageEvent
-
Console 本身与 bot 无关, console 也不靠 core 消息事件驱动, console也不实现
MemberCommandSenderOnMessage
, 在脱离 bot 上下文的环境下你需要使用Bot.getInstance()
/Bot.instances
.CommandSenderOnMessage
的注释写的很清楚, 只有该命令的触发者是来自在线聊天环境的时候sender
才会实现CommandSenderOnMessage
, console 本身与在线聊天环境没有任何关系 -
-
@karlatemp 通过命令行启动一个功能,然后向指定群发送消息,但是这个过程中获取到的机器人对象为null
-
您的问题描述不清楚,我无法理解您在问什么
-
@karlatemp 在console中输入/xxx start后,无论是
val event = (this as? CommandSenderOnMessage<*>)?.fromEvent
还是
val event = (this as? MemberCommandSenderOnMessage)?.fromEvent
event.bot获取都是null
-
console与bot无关
-
插件依赖2.7-M2
从console发送/xxx start启动一个功能 =>@SubCommand("start","启动") suspend fun CommandSender.start() { val event = (this as? MemberCommandSenderOnMessage)?.fromEvent xxx(event) 这里输出event为null 这里需要调用方法,这个方法会向指定的QQ群发送消息 }
这个方法需要先判断是否是我需要的群,然后发送消息
所以我这里需要获取机器人的所有群的list。
这时候传进来的event无法获取所有群的list,event本身为null -
Console 本身与 bot 无关, console 也不靠 core 消息事件驱动, console也不实现
MemberCommandSenderOnMessage
, 在脱离 bot 上下文的环境下你需要使用Bot.getInstance()
/Bot.instances
.CommandSenderOnMessage
的注释写的很清楚, 只有该命令的触发者是来自在线聊天环境的时候sender
才会实现CommandSenderOnMessage
, console 本身与在线聊天环境没有任何关系 -
@karlatemp 非常感谢XD