tencent-im/recentcontact/types.go
2022-09-27 11:31:23 +08:00

79 lines
5.0 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* @Author: wanglin
* @Author: wanglin@vspn.com
* @Date: 2021/10/28 16:11
* @Desc: TODO
*/
package recentcontact
import "git.echol.cn/loser/tencent-im/internal/types"
// FetchSessionsArg 拉取会话列表(参数)
type FetchSessionsArg struct {
UserId string // (必填)请求拉取该用户的会话列表
TimeStamp int // (必填)普通会话的起始时间,第一页填 0
StartIndex int // (必填)普通会话的起始位置,第一页填 0
TopTimeStamp int // (必填)置顶会话的起始时间,第一页填 0
TopStartIndex int // (必填)置顶会话的起始位置,第一页填 0
IsAllowTopSession bool // (选填)是否支持置顶会话
IsReturnEmptySession bool // (选填)是否返回空会话
IsAllowTopSessionPaging bool // (选填)是否支持置顶会话分页
}
// PullSessionsArg 续拉取会话列表(参数)
type PullSessionsArg struct {
UserId string // (必填)请求拉取该用户的会话列表
IsAllowTopSession bool // (选填)是否支持置顶会话
IsReturnEmptySession bool // (选填)是否返回空会话
IsAllowTopSessionPaging bool // (选填)是否支持置顶会话分页
}
// FetchSessionsRet 拉取会话列表(返回)
type FetchSessionsRet struct {
TimeStamp int // 普通会话下一页拉取的起始时间,分页拉取时通过请求包的 TimeStamp 字段带给移动通信后台
StartIndex int // 普通会话下一页拉取的起始位置,分页拉取时通过请求包的 StartIndex 字段带给移动通信后台
TopTimeStamp int // 置顶会话下一页拉取的起始时间,分页拉取时通过请求包的 TopTimeStamp 字段带给移动通信后台
TopStartIndex int // 置顶会话下一页拉取的起始位置,分页拉取时通过请求包的 TopStartIndex 字段带给移动通信后台
HasMore bool // 是否拉完了数据
List []*SessionItem // 会话对象数组
}
// fetchSessionsReq 拉取会话列表(请求)
type fetchSessionsReq struct {
UserId string `json:"From_Account"` // (必填)请求拉取该用户的会话列表
TimeStamp int `json:"TimeStamp"` // (必填)普通会话的起始时间,第一页填 0
StartIndex int `json:"StartIndex"` // (必填)普通会话的起始位置,第一页填 0
TopTimeStamp int `json:"TopTimeStamp"` // (必填)置顶会话的起始时间,第一页填 0
TopStartIndex int `json:"TopStartIndex"` // (必填)置顶会话的起始位置,第一页填 0
AssistFlags int `json:"AssistFlags"` // 必填会话辅助标志位bit 0 - 是否支持置顶会话bit 1 - 是否返回空会话bit 2 - 是否支持置顶会话分页)
}
// fetchSessionsResp 拉取会话列表(响应)
type fetchSessionsResp struct {
types.ActionBaseResp
CompleteFlag int `json:"CompleteFlag"` // 结束标识1 表示已返回全量会话0 表示还有会话没拉完
TimeStamp int `json:"TimeStamp"` // 普通会话下一页拉取的起始时间,分页拉取时通过请求包的 TimeStamp 字段带给移动通信后台
StartIndex int `json:"StartIndex"` // 普通会话下一页拉取的起始位置,分页拉取时通过请求包的 StartIndex 字段带给移动通信后台
TopTimeStamp int `json:"TopTimeStamp"` // 置顶会话下一页拉取的起始时间,分页拉取时通过请求包的 TopTimeStamp 字段带给移动通信后台
TopStartIndex int `json:"TopStartIndex"` // 置顶会话下一页拉取的起始位置,分页拉取时通过请求包的 TopStartIndex 字段带给移动通信后台
Sessions []*SessionItem `json:"SessionItem"` // 会话对象数组
}
// SessionItem 会话对象
type SessionItem struct {
Type SessionType `json:"Type"` // 会话类型1 表示 C2C 会话2 表示 G2C 会话
UserId string `json:"To_Account,omitempty"` // C2C 会话才会返回,返回会话方的 UserID
GroupId string `json:"GroupId,omitempty"` // G2C 会话才会返回,返回群 ID
MsgTime int `json:"MsgTime"` // 会话时间
TopFlag int `json:"TopFlag"` // 置顶标记0 标识普通会话1 标识置顶会话
}
// deleteSessionReq 删除单个会话(请求)
type deleteSessionReq struct {
FromUserId string `json:"From_Account"` // (必填)请求删除该 UserID 的会话
Type SessionType `json:"type"` // 必填会话类型1 表示 C2C 会话2 表示 G2C 会话
ToUserId string `json:"To_Account"` // (必填)待删除的会话的 UserID
ClearRamble int `json:"ClearRamble,omitempty"` // 选填是否清理漫游消息1 表示清理漫游消息0 表示不清理漫游消息
}