github.com/tada-team/tdproto@v1.51.57/meetings.go (about)

     1  package tdproto
     2  
     3  type Meeting struct {
     4  	Id                     string                 `json:"id"`
     5  	TeamUuid               string                 `json:"team_uuid,omitempty"`
     6  	OwnerContactUuid       JID                    `json:"owner_contact_uuid,omitempty"`
     7  	OwnerUserUuid          string                 `json:"owner_user_uuid,omitempty"`
     8  	PersonalAccountId      string                 `json:"personal_account_id,omitempty"`
     9  	StartAt                ISODateTimeString      `json:"start_at"`
    10  	EndAt                  ISODateTimeString      `json:"end_at"`
    11  	Duration               int32                  `json:"duration"`
    12  	Freq                   *Freq                  `json:"freq,omitempty"`
    13  	IsArchive              bool                   `json:"is_archive,omitempty"`
    14  	IsOutside              *bool                  `json:"is_outside,omitempty"`
    15  	IsRequired             bool                   `json:"is_required,omitempty"`
    16  	CanEdit                bool                   `json:"can_edit,omitempty"`
    17  	MeetingMembers         []MeetingMember        `json:"meeting_members,omitempty"`
    18  	VCSEnabled             bool                   `json:"vcs_enabled,omitempty"`
    19  	IVCSInfo               *IVCSInfo              `json:"ivcs_info,omitempty"`
    20  	MeetingRecipientStatus MeetingRecipientStatus `json:"meeting_recipient_status"`
    21  	Chat
    22  }
    23  
    24  type IVCSInfo struct {
    25  	ConferenceID string `json:"conference_id,omitempty"`
    26  	JoinToken    string `json:"join_token,omitempty"`
    27  	InviteLink   string `json:"invite_link,omitempty"`
    28  }
    29  
    30  type MeetingsGetRequest struct {
    31  	TeamUuid    string  `json:"team_uuid"`
    32  	DateFrom    string  `json:"date_from"`
    33  	DateTo      string  `json:"date_to"`
    34  	Limit       *int32  `json:"limit,omitempty"`
    35  	Offset      *int32  `json:"offset,omitempty"`
    36  	IsArchive   *bool   `json:"is_archive,omitempty"`
    37  	IsFreq      *bool   `json:"is_freq,omitempty"`
    38  	IsPublic    *bool   `json:"is_public,omitempty"`
    39  	IsOutside   *bool   `json:"is_outside,omitempty"`
    40  	IsRequired  *bool   `json:"is_required,omitempty"`
    41  	MembersJids *string `json:"members_jids,omitempty"`
    42  }
    43  
    44  type MeetingsResponse struct {
    45  	PaginatedMeetings
    46  }
    47  
    48  type MeetingsDatesResponse struct {
    49  	Dates []string `json:"dates"`
    50  }
    51  
    52  type MeetingsCountResponse struct {
    53  	CountCells    int32 `json:"count_cells"`
    54  	CountMeetings int32 `json:"count_meetings"`
    55  }
    56  
    57  type MeetingsCreateRequest struct {
    58  	OwnerContactUuid JID                          `json:"owner_contact_uuid"`
    59  	TeamUuid         string                       `json:"team_uuid"`
    60  	Title            string                       `json:"title,omitempty"`
    61  	Description      string                       `json:"description,omitempty"`
    62  	StartAt          string                       `json:"start_at"`
    63  	Duration         int32                        `json:"duration"`
    64  	Freq             *Freq                        `json:"freq,omitempty"`
    65  	Members          []MeetingsMemberCreateParams `json:"members"`
    66  	IsPublic         bool                         `json:"is_public,omitempty"`
    67  	IsOutside        *bool                        `json:"is_outside,omitempty"`
    68  	VCSEnabled       bool                         `json:"vcs_enabled,omitempty"`
    69  }
    70  
    71  type Freq struct {
    72  	Frequency                int32                    `json:"frequency"`
    73  	FreqDays                 []int32                  `json:"freq_days,omitempty"`
    74  	RepeatabilityType        MeetingRepeatabilityType `json:"repeatability_type"`
    75  	RepeatabilityDescription string                   `json:"repeatability_description,omitempty"`
    76  }
    77  
    78  type MeetingsUpdateRequest struct {
    79  	MeetingId            string                       `json:"meeting_id"`
    80  	TeamUuid             string                       `json:"team_uuid"`
    81  	StartAt              *string                      `json:"start_at,omitempty"`
    82  	Duration             *int32                       `json:"duration,omitempty"`
    83  	Freq                 *Freq                        `json:"freq,omitempty"`
    84  	IsPublic             *bool                        `json:"is_public,omitempty"`
    85  	IsOutside            *bool                        `json:"is_outside,omitempty"`
    86  	Title                *string                      `json:"title,omitempty"`
    87  	Description          *string                      `json:"description,omitempty"`
    88  	AddMembers           []MeetingsMemberCreateParams `json:"add_members,omitempty"`
    89  	RemoveMembers        []JID                        `json:"remove_members,omitempty"`
    90  	NotificationsEnabled *bool                        `json:"notifications_enabled,omitempty"`
    91  	CountersEnabled      *bool                        `json:"counters_enabled,omitempty"`
    92  	VCSEnabled           *bool                        `json:"vcs_enabled,omitempty"`
    93  }
    94  
    95  type MeetingsDeleteRequestParams struct {
    96  	TeamUuid string            `json:"team_uuid"`
    97  	Date     ISODateTimeString `json:"date,omitempty"`
    98  }
    99  
   100  type MeetingMember struct {
   101  	MeetingId         string                `json:"meeting_id"`
   102  	ChatUuid          string                `json:"chat_uuid"`
   103  	Contact           Contact               `json:"contact"`
   104  	Presence          MeetingPresenceStatus `json:"presence"`
   105  	Status            MeetingMemberStatus   `json:"status"`
   106  	CanChangePresence bool                  `json:"can_change_presence,omitempty"`
   107  	CanChangeStatus   bool                  `json:"can_change_status,omitempty"`
   108  	CanRemove         bool                  `json:"can_remove,omitempty"`
   109  }
   110  
   111  type MeetingsMembersGetRequestParams struct {
   112  	MeetingId    string                 `json:"meeting_id"`
   113  	TeamUuid     string                 `json:"team_uuid"`
   114  	UuidSections []string               `json:"uuid_sections,omitempty"`
   115  	Presence     *MeetingPresenceStatus `json:"presence,omitempty"`
   116  	Status       *MeetingMemberStatus   `json:"status,omitempty"`
   117  	Limit        *int32                 `json:"limit,omitempty"`
   118  	Offset       *int32                 `json:"offset,omitempty"`
   119  }
   120  
   121  type MeetingsMembersResponse struct {
   122  	Items  []MeetingMember `json:"items"`
   123  	Limit  *int32          `json:"limit,omitempty"`
   124  	Offset *int32          `json:"offset,omitempty"`
   125  	Total  *int32          `json:"total,omitempty"`
   126  }
   127  
   128  type MeetingsMembersCreateRequest struct {
   129  	Members  []MeetingsMemberCreateParams `json:"members"`
   130  	TeamUuid string                       `json:"team_uuid"`
   131  }
   132  
   133  type MeetingsMemberCreateParams struct {
   134  	Jid    JID                 `json:"jid"`
   135  	Status MeetingMemberStatus `json:"status,omitempty"`
   136  }
   137  
   138  type MeetingsMembersCreateResponse struct {
   139  	Members []MeetingMember `json:"members,omitempty"`
   140  	Errors  []string        `json:"errors,omitempty"`
   141  }
   142  
   143  type MeetingsMembersUpdateRequest struct {
   144  	Status   MeetingMemberStatus `json:"status,omitempty"`
   145  	TeamUuid string              `json:"team_uuid"`
   146  }
   147  
   148  type MeetingsMembersDeleteRequestParams struct {
   149  	TeamUuid string `json:"team_uuid"`
   150  }
   151  
   152  type MeetingsMembersBatchDeleteRequestParams struct {
   153  	TeamUuid    string `json:"team_uuid"`
   154  	MembersJids []JID  `json:"members_jids"`
   155  }
   156  
   157  type MeetingsGetFrequencyDescriptionParams struct {
   158  	Frequency         int32                    `json:"frequency"`
   159  	FreqDays          *string                  `json:"freq_days,omitempty"`
   160  	RepeatabilityType MeetingRepeatabilityType `json:"repeatability_type"`
   161  }
   162  
   163  type MeetingsUpdateCellRequest struct {
   164  	MeetingId        string `json:"meeting_id"`
   165  	TeamUuid         string `json:"team_uuid"`
   166  	Duration         int32  `json:"duration"`
   167  	CellStartOldDate string `json:"cell_start_old_date"`
   168  	CellStartNewDate string `json:"cell_start_new_date"`
   169  }