Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
M
Mirai
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
MyCard
Mirai
Commits
c64156bd
Commit
c64156bd
authored
Apr 10, 2020
by
Him188
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
882c6238
98542546
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
23 additions
and
3 deletions
+23
-3
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/receive/OnlinePush.kt
...ndroid/network/protocol/packet/chat/receive/OnlinePush.kt
+23
-3
No files found.
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/receive/OnlinePush.kt
View file @
c64156bd
...
@@ -15,6 +15,7 @@ import kotlinx.io.core.*
...
@@ -15,6 +15,7 @@ import kotlinx.io.core.*
import
kotlinx.serialization.Serializable
import
kotlinx.serialization.Serializable
import
net.mamoe.mirai.contact.MemberPermission
import
net.mamoe.mirai.contact.MemberPermission
import
net.mamoe.mirai.event.Event
import
net.mamoe.mirai.event.Event
import
net.mamoe.mirai.event.broadcast
import
net.mamoe.mirai.event.events.*
import
net.mamoe.mirai.event.events.*
import
net.mamoe.mirai.message.GroupMessage
import
net.mamoe.mirai.message.GroupMessage
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.QQAndroidBot
...
@@ -28,16 +29,21 @@ import net.mamoe.mirai.qqandroid.network.Packet
...
@@ -28,16 +29,21 @@ import net.mamoe.mirai.qqandroid.network.Packet
import
net.mamoe.mirai.qqandroid.network.protocol.data.jce.MsgInfo
import
net.mamoe.mirai.qqandroid.network.protocol.data.jce.MsgInfo
import
net.mamoe.mirai.qqandroid.network.protocol.data.jce.OnlinePushPack
import
net.mamoe.mirai.qqandroid.network.protocol.data.jce.OnlinePushPack
import
net.mamoe.mirai.qqandroid.network.protocol.data.jce.RequestPacket
import
net.mamoe.mirai.qqandroid.network.protocol.data.jce.RequestPacket
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.*
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.ImMsgBody
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.ImMsgBody
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.MsgOnlinePush
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.MsgOnlinePush
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.Oidb0x8fc
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.OnlinePushTrans
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.OnlinePushTrans
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.TroopTips0x857
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.TroopTips0x857
import
net.mamoe.mirai.qqandroid.network.protocol.packet.EMPTY_BYTE_ARRAY
import
net.mamoe.mirai.qqandroid.network.protocol.packet.IncomingPacketFactory
import
net.mamoe.mirai.qqandroid.network.protocol.packet.IncomingPacketFactory
import
net.mamoe.mirai.qqandroid.network.protocol.packet.OutgoingPacket
import
net.mamoe.mirai.qqandroid.network.protocol.packet.OutgoingPacket
import
net.mamoe.mirai.qqandroid.network.protocol.packet.buildResponseUniPacket
import
net.mamoe.mirai.qqandroid.network.protocol.packet.buildResponseUniPacket
import
net.mamoe.mirai.qqandroid.utils._miraiContentToString
import
net.mamoe.mirai.qqandroid.utils._miraiContentToString
import
net.mamoe.mirai.qqandroid.utils.encodeToString
import
net.mamoe.mirai.qqandroid.utils.io.JceStruct
import
net.mamoe.mirai.qqandroid.utils.io.JceStruct
import
net.mamoe.mirai.qqandroid.utils.io.readString
import
net.mamoe.mirai.qqandroid.utils.io.readString
import
net.mamoe.mirai.qqandroid.utils.io.serialization.*
import
net.mamoe.mirai.qqandroid.utils.io.serialization.decodeUniPacket
import
net.mamoe.mirai.qqandroid.utils.io.serialization.decodeUniPacket
import
net.mamoe.mirai.qqandroid.utils.io.serialization.jce.JceId
import
net.mamoe.mirai.qqandroid.utils.io.serialization.jce.JceId
import
net.mamoe.mirai.qqandroid.utils.io.serialization.jceRequestSBuffer
import
net.mamoe.mirai.qqandroid.utils.io.serialization.jceRequestSBuffer
...
@@ -79,12 +85,26 @@ internal class OnlinePush {
...
@@ -79,12 +85,26 @@ internal class OnlinePush {
}
}
val
group
=
bot
.
getGroup
(
pbPushMsg
.
msg
.
msgHead
.
groupInfo
!!
.
groupCode
)
val
group
=
bot
.
getGroup
(
pbPushMsg
.
msg
.
msgHead
.
groupInfo
!!
.
groupCode
)
val
sender
=
group
[
pbPushMsg
.
msg
.
msgHead
.
fromUin
]
as
MemberImpl
val
name
=
extraInfo
?.
groupCard
?.
run
{
try
{
loadAs
(
Oidb0x8fc
.
CommCardNameBuf
.
serializer
()).
richCardName
!!
.
first
{
it
.
text
.
isNotEmpty
()
}
.
text
.
encodeToString
()
}
catch
(
e
:
Exception
)
{
encodeToString
()
}
}
?:
pbPushMsg
.
msg
.
msgHead
.
groupInfo
.
groupCard
// 没有 extraInfo 就从 head 里取
// println(pbPushMsg.msg.msgBody.richText.contentToString())
val
flags
=
extraInfo
?.
flags
?:
0
val
flags
=
extraInfo
?.
flags
?:
0
return
GroupMessage
(
return
GroupMessage
(
senderName
=
pbPushMsg
.
msg
.
msgHead
.
groupInfo
.
groupCard
,
senderName
=
name
.
also
{
sender
=
group
[
pbPushMsg
.
msg
.
msgHead
.
fromUin
],
if
(
it
!=
sender
.
nameCard
)
{
val
origin
=
sender
.
_nameCard
sender
.
_nameCard
=
name
MemberCardChangeEvent
(
origin
,
name
,
sender
,
sender
).
broadcast
()
// 不知道operator
}
},
sender
=
sender
,
message
=
pbPushMsg
.
msg
.
toMessageChain
(
bot
,
groupIdOrZero
=
group
.
id
,
onlineSource
=
true
),
message
=
pbPushMsg
.
msg
.
toMessageChain
(
bot
,
groupIdOrZero
=
group
.
id
,
onlineSource
=
true
),
permission
=
when
{
permission
=
when
{
flags
and
16
!=
0
->
MemberPermission
.
ADMINISTRATOR
flags
and
16
!=
0
->
MemberPermission
.
ADMINISTRATOR
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment