NapCat + Overflow 也好用,还不需要GUI,省不少内存
MR-MonkeyRay 发布的帖子
-
RE: 想收集一下现在大家对于mirai的使用情况
还在使用mirai吗:是
通过那种登录方式使用的mirai:2.Overflow
mirai登录情况稳定吗:稳定
mirai的相关功能使用方式:1.mirai插件
使用mirai的相关平台:linux -
RE: 小白求助:Mirai怎么实现发送URL下的图片?
@greenhandzdl 可以试试读到inputStream之后那个上传图片,并获取上传好图片的id,然后发送(我直接粘我自己的代码吧...):
// draw pic val img = DrawUtil.drawImg(candidates) val os = ByteArrayOutputStream() ImageIO.write(img, "png", os) // read pic val stream: InputStream = ByteArrayInputStream(os.toByteArray()) stream.close() os.close() // send pic sendMessage(Image.fromId(stream.uploadAsImage(subject).imageId))
-
RE: HitHit锤人插件
摸人的好像不行?
Mirai版本: 2.10.1
HitHit版本: 2.0.0
试了At人,精确匹配,模糊匹配,都报错:2022-04-07 21:13:38 E/HitHit: Exception in coroutine Plugin org.iris.plugin.HitHit of HitHit java.lang.IllegalArgumentException: input == null! at java.desktop/javax.imageio.ImageIO.read(ImageIO.java:1356) at org.iris.plugin.model.HitHitTool.mkImg(HitHitTool.kt:49) at org.iris.plugin.model.HitHitTool.getAction(HitHitTool.kt:37) at org.iris.plugin.HitHit$onEnable$3.invokeSuspend(HitHit.kt:108) at org.iris.plugin.HitHit$onEnable$3.invoke(HitHit.kt) at org.iris.plugin.HitHit$onEnable$3.invoke(HitHit.kt) at net.mamoe.mirai.event.EventChannel$subscribeAlways$1.invokeSuspend(EventChannel.kt:455) at net.mamoe.mirai.event.EventChannel$subscribeAlways$1.invoke(EventChannel.kt) at net.mamoe.mirai.event.EventChannel$subscribeAlways$1.invoke(EventChannel.kt) at net.mamoe.mirai.internal.event.Handler$onEvent$2.invokeSuspend(InternalEventListeners.kt:50) at net.mamoe.mirai.internal.event.Handler$onEvent$2.invoke(InternalEventListeners.kt) at net.mamoe.mirai.internal.event.Handler$onEvent$2.invoke(InternalEventListeners.kt) at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:89) at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:165) at kotlinx.coroutines.BuildersKt.withContext(Unknown Source) at net.mamoe.mirai.internal.event.Handler.onEvent(InternalEventListeners.kt:50) at net.mamoe.mirai.internal.event.InternalEventListenersKt.process(InternalEventListeners.kt:166) at net.mamoe.mirai.internal.event.InternalEventListenersKt.callAndRemoveIfRequired(InternalEventListeners.kt:115) at net.mamoe.mirai.internal.event.InternalEventListenersKt$callAndRemoveIfRequired$1.invokeSuspend(InternalEventListeners.kt) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.UndispatchedCoroutine.afterResume(CoroutineContext.kt:147) at kotlinx.coroutines.AbstractCoroutine.resumeWith(AbstractCoroutine.kt:102) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)