Skip to content

Commit 0332395

Browse files
cssxshHim188
authored andcommitted
Add client properties to MessageSyncEvents, add OtherClientCommandSenderOnMessageSync and MessageSyncEvent.toCommandSender
1 parent 1a2241b commit 0332395

File tree

7 files changed

+204
-27
lines changed

7 files changed

+204
-27
lines changed

mirai-console/backend/mirai-console/compatibility-validation/jvm/api/jvm.api

+7
Original file line numberDiff line numberDiff line change
@@ -326,6 +326,7 @@ public abstract interface class net/mamoe/mirai/console/command/CommandSender :
326326
public static fun from (Lnet/mamoe/mirai/event/events/GroupMessageEvent;)Lnet/mamoe/mirai/console/command/MemberCommandSenderOnMessage;
327327
public static fun from (Lnet/mamoe/mirai/event/events/GroupTempMessageEvent;)Lnet/mamoe/mirai/console/command/GroupTempCommandSenderOnMessage;
328328
public static fun from (Lnet/mamoe/mirai/event/events/MessageEvent;)Lnet/mamoe/mirai/console/command/CommandSenderOnMessage;
329+
public static fun from (Lnet/mamoe/mirai/event/events/MessageSyncEvent;)Lnet/mamoe/mirai/console/command/OtherClientCommandSenderOnMessageSync;
329330
public static fun from (Lnet/mamoe/mirai/event/events/OtherClientMessageEvent;)Lnet/mamoe/mirai/console/command/OtherClientCommandSenderOnMessage;
330331
public static fun from (Lnet/mamoe/mirai/event/events/StrangerMessageEvent;)Lnet/mamoe/mirai/console/command/StrangerCommandSenderOnMessage;
331332
public abstract fun getBot ()Lnet/mamoe/mirai/Bot;
@@ -350,6 +351,7 @@ public final class net/mamoe/mirai/console/command/CommandSender$Companion {
350351
public final fun from (Lnet/mamoe/mirai/event/events/GroupMessageEvent;)Lnet/mamoe/mirai/console/command/MemberCommandSenderOnMessage;
351352
public final fun from (Lnet/mamoe/mirai/event/events/GroupTempMessageEvent;)Lnet/mamoe/mirai/console/command/GroupTempCommandSenderOnMessage;
352353
public final fun from (Lnet/mamoe/mirai/event/events/MessageEvent;)Lnet/mamoe/mirai/console/command/CommandSenderOnMessage;
354+
public final fun from (Lnet/mamoe/mirai/event/events/MessageSyncEvent;)Lnet/mamoe/mirai/console/command/OtherClientCommandSenderOnMessageSync;
353355
public final fun from (Lnet/mamoe/mirai/event/events/OtherClientMessageEvent;)Lnet/mamoe/mirai/console/command/OtherClientCommandSenderOnMessage;
354356
public final fun from (Lnet/mamoe/mirai/event/events/StrangerMessageEvent;)Lnet/mamoe/mirai/console/command/StrangerCommandSenderOnMessage;
355357
public final fun of (Lnet/mamoe/mirai/contact/Friend;)Lnet/mamoe/mirai/console/command/FriendCommandSender;
@@ -551,6 +553,11 @@ public final class net/mamoe/mirai/console/command/OtherClientCommandSenderOnMes
551553
public fun getFromEvent ()Lnet/mamoe/mirai/event/events/OtherClientMessageEvent;
552554
}
553555

556+
public final class net/mamoe/mirai/console/command/OtherClientCommandSenderOnMessageSync : net/mamoe/mirai/console/command/OtherClientCommandSender, net/mamoe/mirai/console/command/CommandSenderOnMessage {
557+
public synthetic fun getFromEvent ()Lnet/mamoe/mirai/event/events/MessageEvent;
558+
public fun getFromEvent ()Lnet/mamoe/mirai/event/events/MessageSyncEvent;
559+
}
560+
554561
public abstract interface class net/mamoe/mirai/console/command/PluginCustomCommandSender : net/mamoe/mirai/console/command/CommandSender, net/mamoe/mirai/console/command/SystemCommandSender {
555562
public abstract fun getOwner ()Lnet/mamoe/mirai/console/plugin/Plugin;
556563
public fun getPermitteeId ()Lnet/mamoe/mirai/console/permission/PermitteeId;

mirai-console/backend/mirai-console/src/command/CommandSender.kt

+19-1
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,9 @@ import kotlin.coroutines.CoroutineContext
5454
* - [MessageEvent.toCommandSender]
5555
* - [FriendMessageEvent.toCommandSender]
5656
* - [GroupMessageEvent.toCommandSender]
57-
* - [TempMessageEvent.toCommandSender]
5857
* - [StrangerMessageEvent.toCommandSender]
5958
* - [OtherClientMessageEvent.toCommandSender]
59+
* - [MessageSyncEvent.toCommandSender]
6060
*
6161
* - [Member.asCommandSender]
6262
* - [NormalMember.asTempCommandSender]
@@ -243,6 +243,14 @@ public interface CommandSender : CoroutineScope, Permittee {
243243
public fun OtherClientMessageEvent.toCommandSender(): OtherClientCommandSenderOnMessage =
244244
OtherClientCommandSenderOnMessage(this)
245245

246+
/**
247+
* 构造 [OtherClientCommandSenderOnMessageSync]
248+
*/
249+
@JvmStatic
250+
@JvmName("from")
251+
public fun MessageSyncEvent.toCommandSender(): OtherClientCommandSenderOnMessageSync =
252+
OtherClientCommandSenderOnMessageSync(this)
253+
246254
/**
247255
* 构造 [CommandSenderOnMessage]
248256
*/
@@ -255,6 +263,7 @@ public interface CommandSender : CoroutineScope, Permittee {
255263
is GroupTempMessageEvent -> toCommandSender()
256264
is StrangerMessageEvent -> toCommandSender()
257265
is OtherClientMessageEvent -> toCommandSender()
266+
is MessageSyncEvent -> toCommandSender()
258267
else -> throw IllegalArgumentException("Unsupported MessageEvent: ${this::class.qualifiedNameOrTip}")
259268
} as CommandSenderOnMessage<T>
260269

@@ -803,6 +812,14 @@ public class OtherClientCommandSenderOnMessage internal constructor(
803812
public override val fromEvent: OtherClientMessageEvent,
804813
) : OtherClientCommandSender(fromEvent.client), CommandSenderOnMessage<OtherClientMessageEvent>
805814

815+
/**
816+
* 代表一个 [其他客户端][OtherClient] 主动在群内、好友聊天等发送消息执行指令
817+
* @see OtherClientCommandSender 代表一个 [其他客户端][OtherClient] 执行指令, 但不一定是通过私聊方式
818+
*/
819+
public class OtherClientCommandSenderOnMessageSync internal constructor(
820+
public override val fromEvent: MessageSyncEvent,
821+
) : OtherClientCommandSender(fromEvent.client), CommandSenderOnMessage<MessageSyncEvent>
822+
806823
// endregion
807824

808825
// region PluginCustomCommandSender implementations
@@ -855,3 +872,4 @@ public abstract class AbstractPluginCustomCommandSenderJ(
855872
}
856873
}
857874
// endregion
875+

mirai-core-api/compatibility-validation/android/api/android.api

+11-1
Original file line numberDiff line numberDiff line change
@@ -2414,7 +2414,9 @@ public final class net/mamoe/mirai/event/events/FriendMessagePreSendEvent : net/
24142414

24152415
public final class net/mamoe/mirai/event/events/FriendMessageSyncEvent : net/mamoe/mirai/event/events/AbstractMessageEvent, net/mamoe/mirai/event/events/FriendEvent, net/mamoe/mirai/event/events/MessageSyncEvent {
24162416
public fun <init> (Lnet/mamoe/mirai/contact/Friend;Lnet/mamoe/mirai/message/data/MessageChain;I)V
2417+
public fun <init> (Lnet/mamoe/mirai/contact/OtherClient;Lnet/mamoe/mirai/contact/Friend;Lnet/mamoe/mirai/message/data/MessageChain;I)V
24172418
public fun getBot ()Lnet/mamoe/mirai/Bot;
2419+
public fun getClient ()Lnet/mamoe/mirai/contact/OtherClient;
24182420
public fun getFriend ()Lnet/mamoe/mirai/contact/Friend;
24192421
public fun getMessage ()Lnet/mamoe/mirai/message/data/MessageChain;
24202422
public fun getSender ()Lnet/mamoe/mirai/contact/Friend;
@@ -2596,7 +2598,9 @@ public final class net/mamoe/mirai/event/events/GroupMessagePreSendEvent : net/m
25962598

25972599
public final class net/mamoe/mirai/event/events/GroupMessageSyncEvent : net/mamoe/mirai/event/events/AbstractMessageEvent, net/mamoe/mirai/event/events/GroupAwareMessageEvent, net/mamoe/mirai/event/events/MessageSyncEvent {
25982600
public fun <init> (Lnet/mamoe/mirai/contact/Group;Lnet/mamoe/mirai/message/data/MessageChain;Lnet/mamoe/mirai/contact/Member;Ljava/lang/String;I)V
2601+
public fun <init> (Lnet/mamoe/mirai/contact/OtherClient;Lnet/mamoe/mirai/contact/Group;Lnet/mamoe/mirai/message/data/MessageChain;Lnet/mamoe/mirai/contact/Member;Ljava/lang/String;I)V
25992602
public fun getBot ()Lnet/mamoe/mirai/Bot;
2603+
public fun getClient ()Lnet/mamoe/mirai/contact/OtherClient;
26002604
public fun getGroup ()Lnet/mamoe/mirai/contact/Group;
26012605
public fun getMessage ()Lnet/mamoe/mirai/message/data/MessageChain;
26022606
public fun getSender ()Lnet/mamoe/mirai/contact/Member;
@@ -2728,7 +2732,9 @@ public final class net/mamoe/mirai/event/events/GroupTempMessagePreSendEvent : n
27282732

27292733
public final class net/mamoe/mirai/event/events/GroupTempMessageSyncEvent : net/mamoe/mirai/event/events/AbstractMessageEvent, net/mamoe/mirai/event/events/GroupAwareMessageEvent, net/mamoe/mirai/event/events/MessageSyncEvent {
27302734
public fun <init> (Lnet/mamoe/mirai/contact/NormalMember;Lnet/mamoe/mirai/message/data/MessageChain;I)V
2735+
public fun <init> (Lnet/mamoe/mirai/contact/OtherClient;Lnet/mamoe/mirai/contact/NormalMember;Lnet/mamoe/mirai/message/data/MessageChain;I)V
27312736
public fun getBot ()Lnet/mamoe/mirai/Bot;
2737+
public fun getClient ()Lnet/mamoe/mirai/contact/OtherClient;
27322738
public fun getGroup ()Lnet/mamoe/mirai/contact/Group;
27332739
public fun getMessage ()Lnet/mamoe/mirai/message/data/MessageChain;
27342740
public fun getSender ()Lnet/mamoe/mirai/contact/NormalMember;
@@ -3076,7 +3082,9 @@ public final class net/mamoe/mirai/event/events/MessageRecallEvent$GroupRecall :
30763082
public fun toString ()Ljava/lang/String;
30773083
}
30783084

3079-
public abstract interface class net/mamoe/mirai/event/events/MessageSyncEvent : net/mamoe/mirai/event/events/MessageEvent {
3085+
public abstract interface class net/mamoe/mirai/event/events/MessageSyncEvent : net/mamoe/mirai/event/events/MessageEvent, net/mamoe/mirai/event/events/OtherClientEvent {
3086+
public fun getBot ()Lnet/mamoe/mirai/Bot;
3087+
public abstract fun getClient ()Lnet/mamoe/mirai/contact/OtherClient;
30803088
}
30813089

30823090
public final class net/mamoe/mirai/event/events/NewFriendRequestEvent : net/mamoe/mirai/event/AbstractEvent, net/mamoe/mirai/event/events/BotEvent, net/mamoe/mirai/event/events/FriendInfoChangeEvent, net/mamoe/mirai/internal/network/Packet {
@@ -3235,8 +3243,10 @@ public final class net/mamoe/mirai/event/events/StrangerMessagePreSendEvent : ne
32353243
}
32363244

32373245
public final class net/mamoe/mirai/event/events/StrangerMessageSyncEvent : net/mamoe/mirai/event/events/AbstractMessageEvent, net/mamoe/mirai/event/events/MessageSyncEvent, net/mamoe/mirai/event/events/StrangerEvent {
3246+
public fun <init> (Lnet/mamoe/mirai/contact/OtherClient;Lnet/mamoe/mirai/contact/Stranger;Lnet/mamoe/mirai/message/data/MessageChain;I)V
32383247
public fun <init> (Lnet/mamoe/mirai/contact/Stranger;Lnet/mamoe/mirai/message/data/MessageChain;I)V
32393248
public fun getBot ()Lnet/mamoe/mirai/Bot;
3249+
public fun getClient ()Lnet/mamoe/mirai/contact/OtherClient;
32403250
public fun getMessage ()Lnet/mamoe/mirai/message/data/MessageChain;
32413251
public fun getSender ()Lnet/mamoe/mirai/contact/Stranger;
32423252
public synthetic fun getSender ()Lnet/mamoe/mirai/contact/User;

mirai-core-api/compatibility-validation/jvm/api/jvm.api

+11-1
Original file line numberDiff line numberDiff line change
@@ -2414,7 +2414,9 @@ public final class net/mamoe/mirai/event/events/FriendMessagePreSendEvent : net/
24142414

24152415
public final class net/mamoe/mirai/event/events/FriendMessageSyncEvent : net/mamoe/mirai/event/events/AbstractMessageEvent, net/mamoe/mirai/event/events/FriendEvent, net/mamoe/mirai/event/events/MessageSyncEvent {
24162416
public fun <init> (Lnet/mamoe/mirai/contact/Friend;Lnet/mamoe/mirai/message/data/MessageChain;I)V
2417+
public fun <init> (Lnet/mamoe/mirai/contact/OtherClient;Lnet/mamoe/mirai/contact/Friend;Lnet/mamoe/mirai/message/data/MessageChain;I)V
24172418
public fun getBot ()Lnet/mamoe/mirai/Bot;
2419+
public fun getClient ()Lnet/mamoe/mirai/contact/OtherClient;
24182420
public fun getFriend ()Lnet/mamoe/mirai/contact/Friend;
24192421
public fun getMessage ()Lnet/mamoe/mirai/message/data/MessageChain;
24202422
public fun getSender ()Lnet/mamoe/mirai/contact/Friend;
@@ -2596,7 +2598,9 @@ public final class net/mamoe/mirai/event/events/GroupMessagePreSendEvent : net/m
25962598

25972599
public final class net/mamoe/mirai/event/events/GroupMessageSyncEvent : net/mamoe/mirai/event/events/AbstractMessageEvent, net/mamoe/mirai/event/events/GroupAwareMessageEvent, net/mamoe/mirai/event/events/MessageSyncEvent {
25982600
public fun <init> (Lnet/mamoe/mirai/contact/Group;Lnet/mamoe/mirai/message/data/MessageChain;Lnet/mamoe/mirai/contact/Member;Ljava/lang/String;I)V
2601+
public fun <init> (Lnet/mamoe/mirai/contact/OtherClient;Lnet/mamoe/mirai/contact/Group;Lnet/mamoe/mirai/message/data/MessageChain;Lnet/mamoe/mirai/contact/Member;Ljava/lang/String;I)V
25992602
public fun getBot ()Lnet/mamoe/mirai/Bot;
2603+
public fun getClient ()Lnet/mamoe/mirai/contact/OtherClient;
26002604
public fun getGroup ()Lnet/mamoe/mirai/contact/Group;
26012605
public fun getMessage ()Lnet/mamoe/mirai/message/data/MessageChain;
26022606
public fun getSender ()Lnet/mamoe/mirai/contact/Member;
@@ -2728,7 +2732,9 @@ public final class net/mamoe/mirai/event/events/GroupTempMessagePreSendEvent : n
27282732

27292733
public final class net/mamoe/mirai/event/events/GroupTempMessageSyncEvent : net/mamoe/mirai/event/events/AbstractMessageEvent, net/mamoe/mirai/event/events/GroupAwareMessageEvent, net/mamoe/mirai/event/events/MessageSyncEvent {
27302734
public fun <init> (Lnet/mamoe/mirai/contact/NormalMember;Lnet/mamoe/mirai/message/data/MessageChain;I)V
2735+
public fun <init> (Lnet/mamoe/mirai/contact/OtherClient;Lnet/mamoe/mirai/contact/NormalMember;Lnet/mamoe/mirai/message/data/MessageChain;I)V
27312736
public fun getBot ()Lnet/mamoe/mirai/Bot;
2737+
public fun getClient ()Lnet/mamoe/mirai/contact/OtherClient;
27322738
public fun getGroup ()Lnet/mamoe/mirai/contact/Group;
27332739
public fun getMessage ()Lnet/mamoe/mirai/message/data/MessageChain;
27342740
public fun getSender ()Lnet/mamoe/mirai/contact/NormalMember;
@@ -3076,7 +3082,9 @@ public final class net/mamoe/mirai/event/events/MessageRecallEvent$GroupRecall :
30763082
public fun toString ()Ljava/lang/String;
30773083
}
30783084

3079-
public abstract interface class net/mamoe/mirai/event/events/MessageSyncEvent : net/mamoe/mirai/event/events/MessageEvent {
3085+
public abstract interface class net/mamoe/mirai/event/events/MessageSyncEvent : net/mamoe/mirai/event/events/MessageEvent, net/mamoe/mirai/event/events/OtherClientEvent {
3086+
public fun getBot ()Lnet/mamoe/mirai/Bot;
3087+
public abstract fun getClient ()Lnet/mamoe/mirai/contact/OtherClient;
30803088
}
30813089

30823090
public final class net/mamoe/mirai/event/events/NewFriendRequestEvent : net/mamoe/mirai/event/AbstractEvent, net/mamoe/mirai/event/events/BotEvent, net/mamoe/mirai/event/events/FriendInfoChangeEvent, net/mamoe/mirai/internal/network/Packet {
@@ -3235,8 +3243,10 @@ public final class net/mamoe/mirai/event/events/StrangerMessagePreSendEvent : ne
32353243
}
32363244

32373245
public final class net/mamoe/mirai/event/events/StrangerMessageSyncEvent : net/mamoe/mirai/event/events/AbstractMessageEvent, net/mamoe/mirai/event/events/MessageSyncEvent, net/mamoe/mirai/event/events/StrangerEvent {
3246+
public fun <init> (Lnet/mamoe/mirai/contact/OtherClient;Lnet/mamoe/mirai/contact/Stranger;Lnet/mamoe/mirai/message/data/MessageChain;I)V
32383247
public fun <init> (Lnet/mamoe/mirai/contact/Stranger;Lnet/mamoe/mirai/message/data/MessageChain;I)V
32393248
public fun getBot ()Lnet/mamoe/mirai/Bot;
3249+
public fun getClient ()Lnet/mamoe/mirai/contact/OtherClient;
32403250
public fun getMessage ()Lnet/mamoe/mirai/message/data/MessageChain;
32413251
public fun getSender ()Lnet/mamoe/mirai/contact/Stranger;
32423252
public synthetic fun getSender ()Lnet/mamoe/mirai/contact/User;

0 commit comments

Comments
 (0)