Skip to content

Commit

Permalink
update MessageChannels LastMessageID
Browse files Browse the repository at this point in the history
  • Loading branch information
topi314 committed Jun 1, 2022
1 parent 734eba7 commit 33d0ea6
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 0 deletions.
19 changes: 19 additions & 0 deletions discord/channel.go
Original file line number Diff line number Diff line change
Expand Up @@ -995,3 +995,22 @@ func ApplyGuildIDToChannel(channel GuildChannel, guildID snowflake.ID) GuildChan
panic("unknown channel type")
}
}

func ApplyLastMessageIDToChannel(channel MessageChannel, lastMessageID snowflake.ID) MessageChannel {
switch c := channel.(type) {
case GuildTextChannel:
c.lastMessageID = &lastMessageID
return c
case GuildVoiceChannel:
c.lastMessageID = &lastMessageID
return c
case GuildNewsChannel:
c.lastMessageID = &lastMessageID
return c
case GuildThread:
c.lastMessageID = &lastMessageID
return c
default:
panic("unknown channel type")
}
}
4 changes: 4 additions & 0 deletions handlers/message_create_handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,10 @@ func (h *gatewayHandlerMessageCreate) HandleGatewayEvent(client bot.Client, sequ

client.Caches().Messages().Put(message.ChannelID, message.ID, message)

if channel, ok := client.Caches().Channels().GetMessageChannel(message.ChannelID); ok {
client.Caches().Channels().Put(message.ChannelID, discord.ApplyLastMessageIDToChannel(channel, message.ID))
}

genericEvent := events.NewGenericEvent(client, sequenceNumber, shardID)
client.EventManager().DispatchEvent(&events.MessageCreate{
GenericMessage: &events.GenericMessage{
Expand Down

0 comments on commit 33d0ea6

Please sign in to comment.