127 lines
4.4 KiB
Go
127 lines
4.4 KiB
Go
/**
|
||
* @Author: Echo
|
||
* @Author:1711788888@qq.com
|
||
* @Date: 2021/5/29 17:39
|
||
* @Desc: Push Api Request And Response Type Definition.
|
||
*/
|
||
|
||
package push
|
||
|
||
import "git.echol.cn/loser/tencent-im/internal/types"
|
||
|
||
type (
|
||
// 推送条件
|
||
condition struct {
|
||
TagsAnd []string `json:"TagsAnd"` // (选填)标签条件的交集。标签是一个不超过50字节的字符串。注意属性推送和标签推送不可同时作为推送条件。TagsAnd 条件中的标签个数不能超过10个
|
||
TagsOr []string `json:"TagsOr"` // (选填)标签条件的并集。标签是一个不超过50字节的字符串。注意属性推送和标签推送不可同时作为推送条件。TagsOr 条件中的标签个数不能超过10个
|
||
AttrsAnd map[string]interface{} `json:"AttrsAnd"` // (选填)属性条件的交集。注意属性推送和标签推送不可同时作为推送条件
|
||
AttrsOr map[string]interface{} `json:"AttrsOr"` // (选填)属性条件的并集。注意属性推送和标签推送不可同时作为推送条件
|
||
}
|
||
|
||
// 推送(请求)
|
||
pushMessageReq struct {
|
||
FromUserId string `json:"From_Account,omitempty"` // (选填)消息推送方帐号
|
||
Condition *condition `json:"Condition,omitempty"` // (选填)推送条件
|
||
MsgRandom uint32 `json:"MsgRandom"` // (必填)消息随机数,由随机函数产生
|
||
MsgBody []*types.MsgBody `json:"MsgBody"` // (必填)消息内容
|
||
MsgLifeTime int `json:"MsgLifeTime,omitempty"` // (选填)消息离线存储时间,单位秒,最多保存7天(604800秒)。默认为0,表示不离线存储
|
||
OfflinePushInfo *types.OfflinePushInfo `json:"OfflinePushInfo,omitempty"` // (选填)离线推送信息配置
|
||
}
|
||
|
||
// 推送(响应)
|
||
pushMessageResp struct {
|
||
types.ActionBaseResp
|
||
TaskId string `json:"TaskId"` // 推送任务ID
|
||
}
|
||
|
||
// 设置应用属性名称(请求)
|
||
setAttrNamesReq struct {
|
||
AttrNames map[string]string `json:"AttrNames"` // (必填)属性名
|
||
}
|
||
|
||
// 获取应用属性名称(请求)
|
||
getAttrNamesReq struct {
|
||
}
|
||
|
||
// 获取应用属性名称(响应)
|
||
getAttrNamesResp struct {
|
||
types.ActionBaseResp
|
||
AttrNames map[string]string `json:"AttrNames"` // 属性名
|
||
}
|
||
|
||
// 获取用户属性(请求)
|
||
getUserAttrsReq struct {
|
||
UserIds []string `json:"To_Account"` // (必填)目标用户帐号列表
|
||
}
|
||
|
||
// 获取用户属性(响应)
|
||
getUserAttrsResp struct {
|
||
types.ActionBaseResp
|
||
Attrs []*userAttrItem `json:"Attrs"`
|
||
}
|
||
|
||
// 用户属性
|
||
userAttrItem struct {
|
||
UserId string `json:"To_Account"` // 用户UserId
|
||
Attrs map[string]interface{} `json:"Attrs"` // 用户属性
|
||
}
|
||
|
||
// 设置用户属性(请求)
|
||
setUserAttrsReq struct {
|
||
Attrs []*userAttrItem `json:"Attrs"` // (必填)用户属性
|
||
}
|
||
|
||
// 删除用户属性(请求)
|
||
deleteUserAttrsReq struct {
|
||
Attrs []deleteUserAttr `json:"Attrs"` // (必填)用户属性
|
||
}
|
||
|
||
// 删除的用户属性
|
||
deleteUserAttr struct {
|
||
UserId string `json:"To_Account"` // 用户UserId
|
||
Attrs []string `json:"Attrs"` // 用户属性
|
||
}
|
||
|
||
// 获取用户标签(请求)
|
||
getUserTagsReq struct {
|
||
UserIds []string `json:"To_Account"` // (必填)目标用户帐号列表
|
||
}
|
||
|
||
// 获取用户标签(响应)
|
||
getUserTagsResp struct {
|
||
types.ActionBaseResp
|
||
Tags []userTag `json:"Tags"` // 用户标签内容列表
|
||
}
|
||
|
||
// 用户标签
|
||
userTag struct {
|
||
UserId string `json:"To_Account"`
|
||
Tags []string `json:"Tags"`
|
||
}
|
||
|
||
// 添加用户标签(请求)
|
||
addUserTagsReq struct {
|
||
Tags []*userTag `json:"Tags"` // (必填)用户标签内容列表
|
||
}
|
||
|
||
// 删除用户标签(请求)
|
||
deleteUserTagsReq struct {
|
||
Tags []*userTag `json:"Tags"` // (必填)用户标签内容列表
|
||
}
|
||
|
||
// 删除用户所有标签(请求)
|
||
deleteUserAllTagsReq struct {
|
||
UserIds []string `json:"To_Account"`
|
||
}
|
||
|
||
ImageInfo = types.ImageInfo
|
||
MsgTextContent = types.MsgTextContent
|
||
MsgFaceContent = types.MsgFaceContent
|
||
MsgFileContent = types.MsgFileContent
|
||
MsgImageContent = types.MsgImageContent
|
||
MsgSoundContent = types.MsgSoundContent
|
||
MsgVideoContent = types.MsgVideoContent
|
||
MsgCustomContent = types.MsgCustomContent
|
||
MsgLocationContent = types.MsgLocationContent
|
||
)
|