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  }