mirror of
https://github.com/fumiama/NanoBot.git
synced 2026-06-11 13:40:26 +08:00
✨ QQサポートを追加
This commit is contained in:
32
event.go
32
event.go
@@ -47,10 +47,14 @@ func (bot *Bot) processEvent(payload *WebsocketPayload) {
|
||||
caller: bot,
|
||||
}
|
||||
switch tp {
|
||||
case "DirectMessageCreate":
|
||||
case "C2cMessageCreate", "GroupAtMessageCreate":
|
||||
ctx.IsQQ = true
|
||||
}
|
||||
switch tp {
|
||||
case "DirectMessageCreate", "C2cMessageCreate":
|
||||
ctx.IsToMe = true
|
||||
fallthrough
|
||||
case "MessageCreate", "AtMessageCreate":
|
||||
case "MessageCreate", "AtMessageCreate", "GroupAtMessageCreate":
|
||||
tp = "Message"
|
||||
case "DirectMessageDelete":
|
||||
ctx.IsToMe = true
|
||||
@@ -78,9 +82,27 @@ func (bot *Bot) processEvent(payload *WebsocketPayload) {
|
||||
ctx.value = x
|
||||
switch tp {
|
||||
case "Message":
|
||||
ctx.Message = (*Message)(x.UnsafePointer())
|
||||
if ctx.Message.MentionEveryone {
|
||||
ctx.IsToMe = true
|
||||
if ctx.IsQQ {
|
||||
msgv2 := (*MessageV2)(x.UnsafePointer())
|
||||
ctx.Message = &Message{
|
||||
ID: msgv2.ID,
|
||||
Content: msgv2.Content,
|
||||
ChannelID: msgv2.GroupOpenID,
|
||||
GuildID: payload.T,
|
||||
Timestamp: msgv2.Timestamp,
|
||||
Attachments: msgv2.Attachments,
|
||||
Author: &User{},
|
||||
}
|
||||
if msgv2.Author.UserOpenID != "" {
|
||||
ctx.Message.Author.ID = msgv2.Author.UserOpenID
|
||||
} else if msgv2.Author.MemberOpenID != "" {
|
||||
ctx.Message.Author.ID = msgv2.Author.MemberOpenID
|
||||
}
|
||||
} else {
|
||||
ctx.Message = (*Message)(x.UnsafePointer())
|
||||
if ctx.Message.MentionEveryone {
|
||||
ctx.IsToMe = true
|
||||
}
|
||||
}
|
||||
log.Infoln(getLogHeader(), "=>", ctx.Message)
|
||||
case "MessageDelete":
|
||||
|
||||
Reference in New Issue
Block a user