mirror of
https://github.com/mamoe/mirai.git
synced 2025-02-02 04:30:25 +08:00
Add ContactMessage.time
This commit is contained in:
parent
200a140f38
commit
454205a6af
@ -241,7 +241,8 @@ internal class MessageSvc {
|
||||
if (friend.lastMessageSequence.compareAndSet(instant, msg.msgHead.msgSeq)) {
|
||||
return@mapNotNull FriendMessage(
|
||||
friend,
|
||||
msg.toMessageChain(bot, groupIdOrZero = 0, onlineSource = true)
|
||||
msg.toMessageChain(bot, groupIdOrZero = 0, onlineSource = true),
|
||||
msg.msgHead.msgTime
|
||||
)
|
||||
}
|
||||
} else return@mapNotNull null
|
||||
@ -266,7 +267,8 @@ internal class MessageSvc {
|
||||
msg.toMessageChain(bot,
|
||||
groupIdOrZero = 0,
|
||||
onlineSource = true,
|
||||
isTemp = true)
|
||||
isTemp = true),
|
||||
msg.msgHead.msgTime
|
||||
)
|
||||
}
|
||||
} else return@mapNotNull null
|
||||
|
@ -108,7 +108,8 @@ internal class OnlinePush {
|
||||
bot.logger.warning("判断群员权限失败: ${pbPushMsg.msg.msgHead._miraiContentToString()}. 请完整截图或复制此日志发送给 mirai 维护者以帮助解决问题.")
|
||||
MemberPermission.MEMBER
|
||||
}
|
||||
}
|
||||
},
|
||||
time = pbPushMsg.msg.msgHead.msgTime
|
||||
)
|
||||
}
|
||||
}
|
||||
|
@ -102,6 +102,12 @@ abstract class MessagePacketBase<out TSender : User, out TSubject : Contact> : P
|
||||
*/
|
||||
abstract val message: MessageChain
|
||||
|
||||
/**
|
||||
* 消息发送时间 (由服务器提供)
|
||||
*/
|
||||
@SinceMirai("0.39.0")
|
||||
abstract val time: Int
|
||||
|
||||
/**
|
||||
* 消息源
|
||||
*/
|
||||
|
@ -20,19 +20,25 @@ import net.mamoe.mirai.message.data.MessageSource
|
||||
import net.mamoe.mirai.message.data.OnlineMessageSource
|
||||
import net.mamoe.mirai.message.data.source
|
||||
import net.mamoe.mirai.utils.PlannedRemoval
|
||||
import net.mamoe.mirai.utils.currentTimeSeconds
|
||||
import net.mamoe.mirai.utils.getValue
|
||||
import net.mamoe.mirai.utils.unsafeWeakRef
|
||||
|
||||
/**
|
||||
* 好友消息
|
||||
*/
|
||||
class FriendMessage(
|
||||
class FriendMessage constructor(
|
||||
sender: Friend,
|
||||
override val message: MessageChain
|
||||
override val message: MessageChain,
|
||||
override val time: Int
|
||||
) : ContactMessage(), BroadcastControllable {
|
||||
@PlannedRemoval("1.0.0")
|
||||
@Deprecated("", level = DeprecationLevel.HIDDEN)
|
||||
constructor(sender: QQ, message: MessageChain) : this(sender as Friend, message)
|
||||
constructor(sender: QQ, message: MessageChain) : this(sender as Friend, message, currentTimeSeconds.toInt())
|
||||
|
||||
@PlannedRemoval("1.0.0")
|
||||
@Deprecated("", level = DeprecationLevel.HIDDEN)
|
||||
constructor(sender: Friend, message: MessageChain) : this(sender, message, currentTimeSeconds.toInt())
|
||||
|
||||
init {
|
||||
val source = message.getOrNull(MessageSource) ?: error("Cannot find MessageSource from message")
|
||||
|
@ -15,6 +15,8 @@ import net.mamoe.mirai.contact.Member
|
||||
import net.mamoe.mirai.contact.MemberPermission
|
||||
import net.mamoe.mirai.event.Event
|
||||
import net.mamoe.mirai.message.data.*
|
||||
import net.mamoe.mirai.utils.PlannedRemoval
|
||||
import net.mamoe.mirai.utils.currentTimeSeconds
|
||||
import net.mamoe.mirai.utils.getValue
|
||||
import net.mamoe.mirai.utils.unsafeWeakRef
|
||||
|
||||
@ -26,8 +28,14 @@ class GroupMessage(
|
||||
*/
|
||||
val permission: MemberPermission,
|
||||
sender: Member,
|
||||
override val message: MessageChain
|
||||
override val message: MessageChain,
|
||||
override val time: Int
|
||||
) : ContactMessage(), Event {
|
||||
@PlannedRemoval("1.0.0")
|
||||
@Deprecated("", level = DeprecationLevel.HIDDEN)
|
||||
constructor(senderName: String, permission: MemberPermission, sender: Member, message: MessageChain) :
|
||||
this(senderName, permission, sender, message, currentTimeSeconds.toInt())
|
||||
|
||||
init {
|
||||
val source = message.getOrNull(MessageSource) ?: error("Cannot find MessageSource from message")
|
||||
check(source is OnlineMessageSource.Incoming.FromGroup) { "source provided to a GroupMessage must be an instance of OnlineMessageSource.Incoming.FromGroup" }
|
||||
|
@ -9,9 +9,7 @@ import net.mamoe.mirai.message.data.MessageChain
|
||||
import net.mamoe.mirai.message.data.MessageSource
|
||||
import net.mamoe.mirai.message.data.OnlineMessageSource
|
||||
import net.mamoe.mirai.message.data.source
|
||||
import net.mamoe.mirai.utils.SinceMirai
|
||||
import net.mamoe.mirai.utils.getValue
|
||||
import net.mamoe.mirai.utils.unsafeWeakRef
|
||||
import net.mamoe.mirai.utils.*
|
||||
|
||||
/**
|
||||
* 临时会话消息
|
||||
@ -19,8 +17,14 @@ import net.mamoe.mirai.utils.unsafeWeakRef
|
||||
@SinceMirai("0.35.0")
|
||||
class TempMessage(
|
||||
sender: Member,
|
||||
override val message: MessageChain
|
||||
override val message: MessageChain,
|
||||
override val time: Int
|
||||
) : ContactMessage(), BroadcastControllable {
|
||||
@PlannedRemoval("1.0.0")
|
||||
@Deprecated("", level = DeprecationLevel.HIDDEN)
|
||||
constructor(sender: Member, message: MessageChain) :
|
||||
this(sender, message, currentTimeSeconds.toInt())
|
||||
|
||||
init {
|
||||
val source = message.getOrNull(MessageSource) ?: error("Cannot find MessageSource from message")
|
||||
check(source is OnlineMessageSource.Incoming.FromTemp) { "source provided to a TempMessage must be an instance of OnlineMessageSource.Incoming.FromTemp" }
|
||||
|
Loading…
Reference in New Issue
Block a user