求助!MiraiConsole无法监听聊天的消息内容
-
问题描述
这里是我从实列里抄出来的指令
在console中执行没有问题不过在聊天中执行的时候返回的log仅仅只表明bot收到这么一条消息,然后就没有反应了
相关的代码
override fun onEnable() { logger.info { "Plugin loaded" } // 注册指令 MySimpleCommand.register() MyCompositeCommand.register() MyTestCmd.register() val PERMISSION_EXECUTE_1 by lazy { PermissionService.INSTANCE.register(permissionId("execute1"), "注册权限的示例") } } object MyTestCmd : SimpleCommand( Mirai, "tell", "私聊", description = "Tell somebody privately", ) { @Handler // 标记这是指令处理器 // 函数名随意 suspend fun CommandSender.handle(target: User, message: String) { // 这两个参数会被作为指令参数要求 target.sendMessage(message) } }
一些其他的相关问题
在尝试使用权限这块的代码时IDE会返回错误
在这里先提前感谢各位大佬的解答!
-
-
你需要为用户分配权限,用户才能在聊天使用指令(还要安装插件 chat-command)
https://github.com/mamoe/mirai-console#执行指令 -
@him188 这个我是定义了的
放在override fun onEnable()里val PERMISSION_EXECUTE_1 by lazy { PermissionService.INSTANCE.register(permissionId("execute1"), "注册权限的示例") }
顺便我有个问题想要请教一下,怎么引用第三方的jar包呢?
我直接添加到 idea的文件->项目结构->库 里没有效果感谢解答
-
与通常 gradle 项目一样引用,打包时使用 buildPlugin
-
-
这边建议emmm, 配合kotlin相关的书籍写
-
@samarium150 谢谢
-
@him188 抱歉,可能是我的意思表达的不太明确
前面的那个问题我是指
我在override fun onEnable()里定义了PERMISSION_EXECUTE_1以后在下面的代码里引用还是会报错 -
你代码的意思是在 onEnable 定义了一个 局部变量 而不是一个字段, 自然不能从别的地方引用, 建议读 《30分钟入土 kotlin》
-
@karlatemp 我之前也确实没有往变量作用范围上面想
因为这里是直接从实列里抄下来的
30分钟入土 kotlin 我会去找时间看的,感谢解答