github.com/tada-team/tdproto@v1.51.57/server_message_updated.go (about) 1 package tdproto 2 3 func NewServerMessageUpdated(messages []Message, delayed bool, counters *ChatCounters, teamUnread *TeamUnread, badge *uint) (r ServerMessageUpdated) { 4 r.Name = r.GetName() 5 r.ConfirmId = ConfirmId() 6 r.Params.Messages = messages 7 r.Params.Delayed = delayed 8 9 r.Params.ChatCounters = make([]ChatCounters, 0) 10 if counters != nil { 11 r.Params.ChatCounters = append(r.Params.ChatCounters, *counters) 12 } 13 14 if teamUnread != nil { 15 if badge == nil { 16 panic("programming error: empty badge") 17 } 18 r.Params.TeamUnread = teamUnread 19 r.Params.Badge = badge 20 } 21 22 return r 23 } 24 25 // Chat message created, updated or deleted 26 type ServerMessageUpdated struct { 27 BaseEvent 28 Params serverMessageUpdatedParams `json:"params"` 29 } 30 31 func (p ServerMessageUpdated) GetName() string { return "server.message.updated" } 32 33 // Params of the server.message.updated event 34 type serverMessageUpdatedParams struct { 35 // Messages data 36 Messages []Message `json:"messages"` 37 38 // true = silently message update, false = new message 39 Delayed bool `json:"delayed"` 40 41 // Chat counters 42 ChatCounters []ChatCounters `json:"chat_counters"` 43 44 // Current team counters 45 TeamUnread *TeamUnread `json:"team_unread"` 46 47 // Total number of unreads, if changed 48 Badge *uint `json:"badge"` 49 }