You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
132 lines
5.0 KiB
132 lines
5.0 KiB
// Copyright © 2023 OpenIM. All rights reserved.
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
package apistruct
|
|
|
|
type OptResult struct {
|
|
ConversationID string `json:"conversationID"`
|
|
Result *int32 `json:"result"`
|
|
}
|
|
type GetAllConversationMessageOptReq struct {
|
|
OperationID string `json:"operationID" binding:"required"`
|
|
FromUserID string `json:"fromUserID" binding:"required"`
|
|
}
|
|
type GetAllConversationMessageOptResp struct {
|
|
ConversationOptResultList []*OptResult `json:"data"`
|
|
}
|
|
type GetReceiveMessageOptReq struct {
|
|
ConversationIDList []string `json:"conversationIDList" binding:"required"`
|
|
OperationID string `json:"operationID" binding:"required"`
|
|
FromUserID string `json:"fromUserID" binding:"required"`
|
|
}
|
|
type GetReceiveMessageOptResp struct {
|
|
ConversationOptResultList []*OptResult `json:"data"`
|
|
}
|
|
type SetReceiveMessageOptReq struct {
|
|
FromUserID string `json:"fromUserID" binding:"required"`
|
|
OperationID string `json:"operationID" binding:"required"`
|
|
Opt *int32 `json:"opt" binding:"required"`
|
|
ConversationIDList []string `json:"conversationIDList" binding:"required"`
|
|
}
|
|
type SetReceiveMessageOptResp struct {
|
|
ConversationOptResultList []*OptResult `json:"data"`
|
|
}
|
|
|
|
type Conversation struct {
|
|
OwnerUserID string `json:"ownerUserID" binding:"required"`
|
|
ConversationID string `json:"conversationID" binding:"required"`
|
|
ConversationType int32 `json:"conversationType" binding:"required"`
|
|
UserID string `json:"userID"`
|
|
GroupID string `json:"groupID"`
|
|
RecvMsgOpt int32 `json:"recvMsgOpt" binding:"omitempty,oneof=0 1 2"`
|
|
UnreadCount int32 `json:"unreadCount" binding:"omitempty"`
|
|
DraftTextTime int64 `json:"draftTextTime"`
|
|
IsPinned bool `json:"isPinned" binding:"omitempty"`
|
|
IsPrivateChat bool `json:"isPrivateChat"`
|
|
BurnDuration int32 `json:"burnDuration"`
|
|
GroupAtType int32 `json:"groupAtType"`
|
|
IsNotInGroup bool `json:"isNotInGroup"`
|
|
UpdateUnreadCountTime int64 `json:"updateUnreadCountTime"`
|
|
AttachedInfo string `json:"attachedInfo"`
|
|
Ex string `json:"ex"`
|
|
}
|
|
|
|
type SetConversationReq struct {
|
|
Conversation
|
|
NotificationType int32 `json:"notificationType"`
|
|
OperationID string `json:"operationID" binding:"required"`
|
|
}
|
|
|
|
type SetConversationResp struct{}
|
|
type ModifyConversationFieldReq struct {
|
|
Conversation
|
|
FieldType int32 `json:"fieldType" binding:"required"`
|
|
UserIDList []string `json:"userIDList" binding:"required"`
|
|
OperationID string `json:"operationID" binding:"required"`
|
|
}
|
|
type ModifyConversationFieldResp struct{}
|
|
|
|
type BatchSetConversationsReq struct {
|
|
Conversations []Conversation `json:"conversations" binding:"required"`
|
|
NotificationType int32 `json:"notificationType"`
|
|
OwnerUserID string `json:"ownerUserID" binding:"required"`
|
|
OperationID string `json:"operationID" binding:"required"`
|
|
}
|
|
|
|
type BatchSetConversationsResp struct {
|
|
Data struct {
|
|
Success []string `json:"success"`
|
|
Failed []string `json:"failed"`
|
|
} `json:"data"`
|
|
}
|
|
|
|
type GetConversationReq struct {
|
|
ConversationID string `json:"conversationID" binding:"required"`
|
|
OwnerUserID string `json:"ownerUserID" binding:"required"`
|
|
OperationID string `json:"operationID" binding:"required"`
|
|
}
|
|
|
|
type GetConversationResp struct {
|
|
Conversation Conversation `json:"data"`
|
|
}
|
|
|
|
type GetAllConversationsReq struct {
|
|
OwnerUserID string `json:"ownerUserID" binding:"required"`
|
|
OperationID string `json:"operationID" binding:"required"`
|
|
}
|
|
|
|
type GetAllConversationsResp struct {
|
|
Conversations []Conversation `json:"data"`
|
|
}
|
|
|
|
type GetConversationsReq struct {
|
|
ConversationIDs []string `json:"conversationIDs" binding:"required"`
|
|
OwnerUserID string `json:"ownerUserID" binding:"required"`
|
|
OperationID string `json:"operationID" binding:"required"`
|
|
}
|
|
|
|
type GetConversationsResp struct {
|
|
Conversations []Conversation `json:"data"`
|
|
}
|
|
|
|
type SetRecvMsgOptReq struct {
|
|
OwnerUserID string `json:"ownerUserID" binding:"required"`
|
|
ConversationID string `json:"conversationID"`
|
|
RecvMsgOpt int32 `json:"recvMsgOpt" binding:"omitempty,oneof=0 1 2"`
|
|
OperationID string `json:"operationID" binding:"required"`
|
|
NotificationType int32 `json:"notificationType"`
|
|
}
|
|
|
|
type SetRecvMsgOptResp struct{}
|