im

package
v0.0.0-...-c33d657 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 27, 2021 License: MIT Imports: 11 Imported by: 0

README

IM

例子
package main

import (
	"github.com/lhlyu/yunxin-go/im"
	"log"
)

func main() {
	var appKey,appSecret,accid string
	yx := im.NewIM(appKey,appSecret)
	resp := yx.ApiUserUnblock(accid)
	if !resp.IsSuccess() {
		log.Println(resp.Err,resp.BodyString())
		return
	}
	log.Println(resp.BodyString())
}
注意

消息抄送 和 第三方回调 没有实现(作者没用到)

方法
// 创建网易云信IM账号
ApiUserCreate(param *UserCreateParam) *ImResp 
// 更新网易云信IM token
ApiUserUpdate(accid string, props string, token string) *ImResp 
// 重置网易云信IM token
ApiUserRefreshToken(accid string) *ImResp 
// 封禁网易云信IM账号
ApiUserBlock(accid string, needkick string, kickNotifyExt string) *ImResp 
// 解禁网易云信IM账号
ApiUserUnblock(accid string) *ImResp 
// 更新用户名片
ApiUserUpdateUinfo(param *UserUpdateUinfoParam) *ImResp 
// 获取用户名片
ApiUserGetUinfos(accids string) *ImResp 
// 设置桌面端在线时,移动端是否需要推送
ApiUserSetDonnop(accid string, donnopOpen string) *ImResp 
// 账号全局禁言
ApiUserMute(accid string, mute bool) *ImResp 
// 加好友
ApiFriendAdd(param *FriendAddParam) *ImResp 
// 更新好友相关信息
ApiFriendUpdate(param *FriendUpdateParam) *ImResp 
// 删除好友
ApiFriendDelete(accid string, faccid string, isDeleteAlias bool) *ImResp 
// 获取好友关系
ApiFriendGet(accid string, updatetime int64, createtime int64) *ImResp 
// 设置黑名单/静音
ApiUserSetSpecialRelation(param *UserSetSpecialRelationParam) *ImResp 
// 查看指定用户的黑名单和静音列表
ApiUserListBlackAndMuteList(accid string) *ImResp 
// 给用户或者高级群发送普通消息,包括文本,图片,语音,视频和地理位置
ApiMsgSendMsg(param *MsgSendMsgParam) *ImResp 
// 批量发送点对点普通消息
ApiMsgSendBatchMsg(param *MsgSendBatchMsgParam) *ImResp 
// 发送自定义系统通知
ApiMsgSendAttachMsg(param *MsgSendAttachMsgParam) *ImResp 
// 批量发送点对点自定义系统通知
ApiMsgSendBatchAttachMsg(param *MsgSendBatchAttachMsgParam) *ImResp 
// 文件上传
ApiMsgUpload(param *MsgUploadParam) *ImResp 
// 文件上传(multipart方式)
ApiMsgFileUpload(param *MsgFileUploadParam) *ImResp 
// 上传NOS文件清理任务
ApiJobNosDel(param *JobNosDelParam) *ImResp 
// 消息撤回
ApiMsgRecall(param *MsgRecallParam) *ImResp 
// 发送广播消息
ApiMsgBroadcastMsg(param *MsgBroadcastMsgParam) *ImResp 
// 单向撤回消息
ApiMsgDelMsgOneWay(param *MsgDelMsgOneWayParam) *ImResp 
// 删除会话漫游
ApiMsgDelRoamSession(kind int, from string, to string) *ImResp 
// 创建群
ApiTeamCreate(param *TeamCreateParam) *ImResp 
// 拉人入群
ApiTeamAdd(param *TeamAddParam) *ImResp 
// 踢人出群
ApiTeamKick(param *TeamKickParam) *ImResp 
// 解散群
ApiTeamRemove(tid string, owner string) *ImResp 
// 编辑群资料
ApiTeamUpdate(param *TeamUpdateParam) *ImResp 
// 群信息与成员列表查询
ApiTeamQuery(tids string, ope int, ignoreInvalid bool) *ImResp 
// 获取群组详细信息
ApiTeamQueryDetail(tid int64) *ImResp 
// 获取群组已读消息的已读详情信息
ApiTeamGetMarkReadInfo(param *TeamGetMarkReadInfoParam) *ImResp 
// 移交群主
ApiTeamChangeOwner(param *TeamChangeOwnerParam) *ImResp 
// 任命管理员
ApiTeamAddManager(tid string, owner string, members string) *ImResp 
// 移除管理员
ApiTeamRemoveManager(tid string, owner string, members string) *ImResp 
// 获取某用户所加入的群信息
ApiTeamJoinTeams(accid string) *ImResp 
// 修改群昵称
ApiTeamUpdateTeamNick(param *TeamUpdateTeamNickParam) *ImResp 
// 修改消息提醒开关
ApiTeamMuteTeam(tid string, accid string, ope int) *ImResp 
// 禁言群成员
ApiTeamMuteTlist(param *TeamMuteTlistParam) *ImResp 
// 主动退群
ApiTeamLeave(tid string, accid string) *ImResp 
// 将群组整体禁言
ApiTeamMuteTlistAll(param *TeamMuteTlistAllParam) *ImResp 
// 获取群组禁言列表
ApiTeamListTeamMute(tid string, owner string) *ImResp 
// 创建超级群
ApiSuperteamCreate(param *SuperteamCreateParam) *ImResp 
// 解散超级群
ApiSuperteamDismiss(tid string, owner string) *ImResp 
// 拉人入超级群
ApiSuperteamInvite(param *SuperteamInviteParam) *ImResp 
// 踢人出超级群
ApiSuperteamKick(tid string, owner string, kickAccids string) *ImResp 
// 修改超级群信息
ApiSuperteamUpdateTinfo(param *SuperteamUpdateTinfoParam) *ImResp 
// 获取超级群信息
ApiSuperteamGetTinfos(tids string) *ImResp 
// 修改超级群成员信息
ApiSuperteamUpdateTlist(param *SuperteamUpdateTlistParam) *ImResp 
// 获取超级群成员信息
ApiSuperteamGetTlists(param *SuperteamGetTlistsParam) *ImResp 
// 超级群发送普通消息
ApiSuperteamSendMsg(param *SuperteamSendMsgParam) *ImResp 
// 超级群查询云端历史消息
ApiSuperteamQueryHistoryMsg(param *SuperteamQueryHistoryMsgParam) *ImResp 
// 主动退超级群
ApiSuperteamLeave(tid string, accid string) *ImResp 
// 超级群移交群主
ApiSuperteamChangeOwner(param *SuperteamChangeOwnerParam) *ImResp 
// 超级群添加管理员
ApiSuperteamAddManager(tid string, owner string, managerAccids string) *ImResp 
// 超级群解除管理员
ApiSuperteamRemoveManager(tid string, owner string, managerAccids string) *ImResp 
// 超级群禁言群
ApiSuperteamMute(tid string, owner string, muteType string) *ImResp 
// 超级群禁言群成员
ApiSuperteamMuteTlist(param *SuperteamMuteTlistParam) *ImResp 
// 超级群发送自定义系统通知
ApiSuperteamSendAttachMsg(param *SuperteamSendAttachMsgParam) *ImResp 
// 超级群撤回消息
ApiSuperteamRecallMsg(param *SuperteamRecallMsgParam) *ImResp 
// 超级群变更群人数级别
ApiSuperteamChangeLevel(tid string, owner string, tlevel string) *ImResp 
// 超级群获取某用户所加入的群信息
ApiSuperteamJoinTeams(accid string) *ImResp 
// 创建聊天室
ApiChatroomCreate(param *ChatroomCreateParam) *ImResp 
// 查询聊天室信息
ApiChatroomGet(roomid int64, needOnlineUserCount string) *ImResp 
// 批量查询聊天室信息
ApiChatroomGetBatch(roomids string, needOnlineUserCount string) *ImResp 
// 更新聊天室信息
ApiChatroomUpdate(param *ChatroomUpdateParam) *ImResp 
// 修改聊天室开/关闭状态
ApiChatroomToggleCloseStat(roomid int64, operator string, valid string) *ImResp 
// 设置聊天室内用户角色
ApiChatroomSetMemberRole(param *ChatroomSetMemberRoleParam) *ImResp 
// 请求聊天室地址
ApiChatroomRequestAddr(param *ChatroomRequestAddrParam) *ImResp 
// 发送聊天室消息
ApiChatroomSendMsg(param *ChatroomSendMsgParam) *ImResp 
// 往聊天室内添加机器人
ApiChatroomAddRobot(param *ChatroomAddRobotParam) *ImResp 
// 从聊天室内删除机器人
ApiChatroomRemoveRobot(roomid int64, accids string) *ImResp 
// 清空聊天室机器人
ApiChatroomCleanRobot(roomid int64, notify bool) *ImResp 
// 设置临时禁言状态
ApiChatroomTemporaryMute(param *ChatroomTemporaryMuteParam) *ImResp 
// 往聊天室有序队列中新加或更新元素
ApiChatroomQueueOffer(param *ChatroomQueueOfferParam) *ImResp 
// 从队列中取出元素
ApiChatroomQueuePoll(roomid int64, key string) *ImResp 
// 排序列出队列中所有元素
ApiChatroomQueueList(roomid int64) *ImResp 
// 删除清理整个队列
ApiChatroomQueueDrop(roomid int64) *ImResp 
// 初始化队列
ApiChatroomQueueInit(roomid int64, sizeLimit int64) *ImResp 
// 将聊天室整体禁言
ApiChatroomMuteRoom(param *ChatroomMuteRoomParam) *ImResp 
// 查询聊天室统计指标TopN
ApiStatsChatroomTopn(param *StatsChatroomTopnParam) *ImResp 
// 分页获取成员列表
ApiChatroomMembersByPage(param *ChatroomMembersByPageParam) *ImResp 
// 批量获取在线成员信息
ApiChatroomQueryMembers(roomid int64, accids string) *ImResp 
// 变更聊天室内的角色信息
ApiChatroomUpdateMyRoomRole(param *ChatroomUpdateMyRoomRoleParam) *ImResp 
// 批量更新聊天室队列元素
ApiChatroomQueueBatchUpdateElements(param *ChatroomQueueBatchUpdateElementsParam) *ImResp 
// 查询用户创建的开启状态聊天室列表
ApiChatroomQueryUserRoomIds(creator string) *ImResp 
// 关闭指定聊天室进出通知
ApiChatroomUpdateInOutNotification(roomid int64, close bool) *ImResp 
// 单聊云端历史消息查询
ApiHistoryQuerySessionMsg(param *HistoryQuerySessionMsgParam) *ImResp 
// 群聊云端历史消息查询
ApiHistoryQueryTeamMsg(param *HistoryQueryTeamMsgParam) *ImResp 
// 聊天室云端历史消息查询
ApiHistoryQueryChatroomMsg(param *HistoryQueryChatroomMsgParam) *ImResp 
// 删除聊天室云端历史消息
ApiChatroomDeleteHistoryMessage(roomid int64, fromAcc string, msgTimetag int64) *ImResp 
// 用户登录登出事件记录查询
ApiHistoryQueryUserEvents(param *HistoryQueryUserEventsParam) *ImResp 
// 批量查询广播消息
ApiHistoryQueryBroadcastMsg(broadcastId int64, limit int, kind int64) *ImResp 
// 查询单条广播消息
ApiHistoryQueryBroadcastMsgById(broadcastId int64) *ImResp 
// 订阅在线状态事件
ApiEventSubscribeAdd(param *EventSubscribeAddParam) *ImResp 
// 取消在线状态事件订阅
ApiEventSubscribeDelete(accid string, eventType int, publisherAccids string) *ImResp 
// 取消全部在线状态事件订阅
ApiEventSubscribeBatchdel(accid string, eventType int) *ImResp 
// 查询在线状态事件订阅关系
ApiEventSubscribeQuery(accid string, eventType int, publisherAccids string) *ImResp 

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ChatroomAddRobotParam

type ChatroomAddRobotParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 机器人账号accid列表,必须是有效账号,账号数量上限100个
	// 是否必须: true
	Accids string `json:"accids"`

	// 机器人信息扩展字段,请使用json格式,长度4096字符
	// 是否必须: false
	RoleExt string `json:"roleExt,omitempty"`

	// 机器人进入聊天室通知的扩展字段,请使用json格式,长度2048字符
	// 是否必须: false
	NotifyExt string `json:"notifyExt,omitempty"`
}

type ChatroomCleanRobotParam

type ChatroomCleanRobotParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 是否发送退出聊天室通知消息,默认为false
	// 是否必须: false
	Notify bool `json:"notify,omitempty"`
}

type ChatroomCreateParam

type ChatroomCreateParam struct {
	// 聊天室属主的账号accid
	// 是否必须: true
	Creator string `json:"creator"`

	// 聊天室名称,长度限制128个字符
	// 是否必须: true
	Name string `json:"name"`

	// 公告,长度限制4096个字符
	// 是否必须: false
	Announcement string `json:"announcement,omitempty"`

	// 直播地址,长度限制1024个字符
	// 是否必须: false
	Broadcasturl string `json:"broadcasturl,omitempty"`

	// 扩展字段,最长4096字符
	// 是否必须: false
	Ext string `json:"ext,omitempty"`

	// 队列管理权限:0:所有人都有权限变更队列,1:只有主播管理员才能操作变更。默认0
	// 是否必须: false
	Queuelevel int `json:"queuelevel,omitempty"`
}

type ChatroomDeleteHistoryMessageParam

type ChatroomDeleteHistoryMessageParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 消息发送者的accid
	// 是否必须: true
	FromAcc string `json:"fromAcc"`

	// 消息的时间戳,单位毫秒,应该拿到原始消息中的时间戳为参数
	// 是否必须: true
	MsgTimetag int64 `json:"msgTimetag"`
}

type ChatroomGetBatchParam

type ChatroomGetBatchParam struct {
	// 多个roomid,格式为:["6001","6002","6003"](JSONArray对应的roomid,如果解析出错,会报414错误),限20个roomid
	// 是否必须: true
	Roomids string `json:"roomids"`

	// 是否需要返回在线人数,true或false,默认false
	// 是否必须: false
	NeedOnlineUserCount string `json:"needOnlineUserCount,omitempty"`
}

type ChatroomGetParam

type ChatroomGetParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 是否需要返回在线人数,true或false,默认false
	// 是否必须: false
	NeedOnlineUserCount string `json:"needOnlineUserCount,omitempty"`
}

type ChatroomMembersByPageParam

type ChatroomMembersByPageParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 需要查询的成员类型,0:固定成员;1:非固定成员;2:仅返回在线的固定成员
	// 是否必须: true
	Type int `json:"type"`

	// 单位毫秒,按时间倒序最后一个成员的时间戳,0表示系统当前时间
	// 是否必须: true
	Endtime int64 `json:"endtime"`

	// 返回条数,<=100
	// 是否必须: true
	Limit int64 `json:"limit"`
}

type ChatroomMuteRoomParam

type ChatroomMuteRoomParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 操作者accid,必须是管理员或创建者
	// 是否必须: true
	Operator string `json:"operator"`

	// true或false
	// 是否必须: true
	Mute string `json:"mute"`

	// true或false,默认true
	// 是否必须: false
	NeedNotify string `json:"needNotify,omitempty"`

	// 通知扩展字段
	// 是否必须: false
	NotifyExt string `json:"notifyExt,omitempty"`
}

type ChatroomQueryMembersParam

type ChatroomQueryMembersParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// ["abc","def"], 账号列表,最多200条
	// 是否必须: true
	Accids string `json:"accids"`
}

type ChatroomQueryUserRoomIdsParam

type ChatroomQueryUserRoomIdsParam struct {
	// 聊天室创建者accid
	// 是否必须: true
	Creator string `json:"creator"`
}

type ChatroomQueueBatchUpdateElementsParam

type ChatroomQueueBatchUpdateElementsParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 操作者accid,必须是管理员或创建者
	// 是否必须: true
	Operator string `json:"operator"`

	// 更新的key-value对,最大200个,示例:{"k1":"v1","k2":"v2"}
	// 是否必须: true
	Elements string `json:"elements"`

	// true或false,是否需要发送更新通知事件,默认true
	// 是否必须: false
	NeedNotify bool `json:"needNotify,omitempty"`

	// 通知事件扩展字段,长度限制2048
	// 是否必须: false
	NotifyExt string `json:"notifyExt,omitempty"`
}

type ChatroomQueueDropParam

type ChatroomQueueDropParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`
}

type ChatroomQueueInitParam

type ChatroomQueueInitParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 队列长度限制,0~1000
	// 是否必须: true
	SizeLimit int64 `json:"sizeLimit"`
}

type ChatroomQueueListParam

type ChatroomQueueListParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`
}

type ChatroomQueueOfferParam

type ChatroomQueueOfferParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// elementKey,新元素的UniqKey,长度限制128字符
	// 是否必须: true
	Key string `json:"key"`

	// elementValue,新元素内容,长度限制4096字符
	// 是否必须: true
	Value string `json:"value"`

	// 提交这个新元素的操作者accid,默认为该聊天室的创建者,若operator对应的帐号不存在,会返回404错误。
	// 若指定的operator不在线,则添加元素成功后的通知事件中的操作者默认为聊天室的创建者;若指定的operator在线,则通知事件的操作者为operator。
	// 是否必须: false
	Operator string `json:"operator,omitempty"`

	// 这个新元素的提交者operator的所有聊天室连接在从该聊天室掉线或者离开该聊天室的时候,提交的元素是否需要删除。
	// true:需要删除;false:不需要删除。默认false。
	// 当指定该参数为true时,若operator当前不在该聊天室内,则会返回403错误。
	// 是否必须: false
	Transient string `json:"transient,omitempty"`
}

type ChatroomQueuePollParam

type ChatroomQueuePollParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 目前元素的elementKey,长度限制128字符,不填表示取出头上的第一个
	// 是否必须: false
	Key string `json:"key,omitempty"`
}

type ChatroomRemoveRobotParam

type ChatroomRemoveRobotParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 机器人账号accid列表,必须是有效账号,账号数量上限100个
	// 是否必须: true
	Accids string `json:"accids"`
}

type ChatroomRequestAddrParam

type ChatroomRequestAddrParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 进入聊天室的账号
	// 是否必须: true
	Accid string `json:"accid"`

	// 1:weblink(客户端为web端时使用); 2:commonlink(客户端为非web端时使用);3:wechatlink(微信小程序使用), 默认1
	// 是否必须: false
	Clienttype int `json:"clienttype,omitempty"`

	// 客户端ip,传此参数时,会根据用户ip所在地区,返回合适的地址
	// 是否必须: false
	Clientip string `json:"clientip,omitempty"`
}

type ChatroomSendMsgParam

type ChatroomSendMsgParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 客户端消息id,使用uuid等随机串,msgId相同的消息会被客户端去重
	// 是否必须: true
	MsgId string `json:"msgId"`

	// 消息发出者的账号accid
	// 是否必须: true
	FromAccid string `json:"fromAccid"`

	// 消息类型:
	// 0: 表示文本消息,
	// 1: 表示图片,
	// 2: 表示语音,
	// 3: 表示视频,
	// 4: 表示地理位置信息,
	// 6: 表示文件,
	// 10: 表示Tips消息,
	// 100: 自定义消息类型(特别注意,对于未对接易盾反垃圾功能的应用,该类型的消息不会提交反垃圾系统检测)
	// 是否必须: true
	MsgType int `json:"msgType"`

	// 重发消息标记,0:非重发消息,1:重发消息,如重发消息会按照msgid检查去重逻辑
	// 是否必须: false
	ResendFlag int `json:"resendFlag,omitempty"`

	// 文本消息:填写消息文案;
	// 其它类型消息,请参考 消息格式示例;
	// 长度限制4096字符
	// 是否必须: false
	Attach string `json:"attach,omitempty"`

	// 消息扩展字段,内容可自定义,请使用JSON格式,长度限制4096字符
	// 是否必须: false
	Ext string `json:"ext,omitempty"`

	// 是否跳过存储云端历史,0:不跳过,即存历史消息;1:跳过,即不存云端历史;默认0
	// 是否必须: false
	SkipHistory int `json:"skipHistory,omitempty"`

	// 可选,消息丢弃的概率。取值范围[0-9999];
	// 其中0代表不丢弃消息,9999代表99.99%的概率丢弃消息,默认不丢弃;
	// 注意如果填写了此参数,下面的highPriority参数则会无效;
	// 此参数可用于流控特定业务类型的消息。
	// 是否必须: false
	AbandonRatio int `json:"abandonRatio,omitempty"`

	// 可选,true表示是高优先级消息,云信会优先保障投递这部分消息;false表示低优先级消息。默认false。
	// 强烈建议应用恰当选择参数,以便在必要时,优先保障应用内的高优先级消息的投递。若全部设置为高优先级,则等于没有设置,单个聊天室最多支持每秒10条的高优先级消息,超过的会转为普通消息。 高优先级消息可以设置进入后重发,见needHighPriorityMsgResend参数
	// 是否必须: false
	HighPriority bool `json:"highPriority,omitempty"`

	// 可选,true表示会重发消息,false表示不会重发消息。默认true。注:若设置为true, 用户离开聊天室之后重新加入聊天室,在有效期内还是会收到发送的这条消息,目前有效期默认30s。在没有配置highPriority时needHighPriorityMsgResend不生效。
	// 是否必须: false
	NeedHighPriorityMsgResend bool `json:"needHighPriorityMsgResend,omitempty"`

	// 可选,单条消息是否使用易盾反垃圾,可选值为0。
	// 0:(在开通易盾的情况下)不使用易盾反垃圾而是使用通用反垃圾,包括自定义消息。
	// 若不填此字段,即在默认情况下,若应用开通了易盾反垃圾功能,则使用易盾反垃圾来进行垃圾消息的判断
	// 是否必须: false
	UseYidun int `json:"useYidun,omitempty"`

	// 可选,易盾反垃圾增强反作弊专属字段,限制json,长度限制1024字符(详见易盾反垃圾接口文档反垃圾防刷版专属字段)
	// 是否必须: false
	YidunAntiCheating string `json:"yidunAntiCheating,omitempty"`

	// 可选,反垃圾业务ID,实现“单条消息配置对应反垃圾”,若不填则使用原来的反垃圾配置
	// 是否必须: false
	Bid string `json:"bid,omitempty"`

	// 对于对接了易盾反垃圾功能的应用,本消息是否需要指定经由易盾检测的内容(antispamCustom)。
	// true或false, 默认false。
	// 只对消息类型为:100 自定义消息类型 的消息生效。
	// 是否必须: false
	Antispam string `json:"antispam,omitempty"`

	// 在antispam参数为true时生效。
	// 自定义的反垃圾检测内容, JSON格式,长度限制同body字段,不能超过5000字符,要求antispamCustom格式如下:
	// {"type":1,"data":"custom content"}
	// 字段说明:
	// 1. type: 1:文本,2:图片。
	// 2. data: 文本内容or图片地址。
	// 是否必须: false
	AntispamCustom string `json:"antispamCustom,omitempty"`

	// 所属环境,根据env可以配置不同的抄送地址
	// 是否必须: false
	Env string `json:"env,omitempty"`
}

type ChatroomSetMemberRoleParam

type ChatroomSetMemberRoleParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 操作者账号accid
	// 是否必须: true
	Operator string `json:"operator"`

	// 被操作者账号accid
	// 是否必须: true
	Target string `json:"target"`

	// 操作:
	// 1: 设置为管理员,operator必须是创建者
	// 2:设置普通等级用户,operator必须是创建者或管理员
	// -1:设为黑名单用户,operator必须是创建者或管理员
	// -2:设为禁言用户,operator必须是创建者或管理员
	// 是否必须: true
	Opt int `json:"opt"`

	// true或false,true:设置;false:取消设置;
	// 执行“取消”设置后,若成员非禁言且非黑名单,则变成游客
	// 是否必须: true
	Optvalue string `json:"optvalue"`

	// 通知扩展字段,长度限制2048,请使用json格式
	// 是否必须: false
	NotifyExt string `json:"notifyExt,omitempty"`
}

type ChatroomTemporaryMuteParam

type ChatroomTemporaryMuteParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 操作者accid,必须是管理员或创建者
	// 是否必须: true
	Operator string `json:"operator"`

	// 被禁言的目标账号accid
	// 是否必须: true
	Target string `json:"target"`

	// 0:解除禁言;>0设置禁言的秒数,不能超过2592000秒(30天)
	// 是否必须: true
	MuteDuration int64 `json:"muteDuration"`

	// 操作完成后是否需要发广播,true或false,默认true
	// 是否必须: false
	NeedNotify string `json:"needNotify,omitempty"`

	// 通知广播事件中的扩展字段,长度限制2048字符
	// 是否必须: false
	NotifyExt string `json:"notifyExt,omitempty"`
}

type ChatroomToggleCloseStatParam

type ChatroomToggleCloseStatParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 操作者账号,必须是创建者才可以操作
	// 是否必须: true
	Operator string `json:"operator"`

	// true或false,false:关闭聊天室;true:打开聊天室
	// 是否必须: true
	Valid string `json:"valid"`
}

type ChatroomUpdateInOutNotificationParam

type ChatroomUpdateInOutNotificationParam struct {
	// 聊天室ID
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// true/false, 是否关闭进出通知
	// 是否必须: true
	Close bool `json:"close"`
}

type ChatroomUpdateMyRoomRoleParam

type ChatroomUpdateMyRoomRoleParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 需要变更角色信息的accid
	// 是否必须: true
	Accid string `json:"accid"`

	// 变更的信息是否需要持久化,默认false,仅对聊天室固定成员生效
	// 是否必须: false
	Save bool `json:"save,omitempty"`

	// 是否需要做通知
	// 是否必须: false
	NeedNotify bool `json:"needNotify,omitempty"`

	// 通知的内容,长度限制2048
	// 是否必须: false
	NotifyExt string `json:"notifyExt,omitempty"`

	// 聊天室室内的角色信息:昵称,不超过64个字符
	// 是否必须: false
	Nick string `json:"nick,omitempty"`

	// 聊天室室内的角色信息:头像
	// 是否必须: false
	Avator string `json:"avator,omitempty"`

	// 聊天室室内的角色信息:开发者扩展字段
	// 是否必须: false
	Ext string `json:"ext,omitempty"`
}

type ChatroomUpdateParam

type ChatroomUpdateParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 聊天室名称,长度限制128个字符
	// 是否必须: false
	Name string `json:"name,omitempty"`

	// 公告,长度限制4096个字符
	// 是否必须: false
	Announcement string `json:"announcement,omitempty"`

	// 直播地址,长度限制1024个字符
	// 是否必须: false
	Broadcasturl string `json:"broadcasturl,omitempty"`

	// 扩展字段,长度限制4096个字符
	// 是否必须: false
	Ext string `json:"ext,omitempty"`

	// true或false,是否需要发送更新通知事件,默认true
	// 是否必须: false
	NeedNotify string `json:"needNotify,omitempty"`

	// 通知事件扩展字段,长度限制2048
	// 是否必须: false
	NotifyExt string `json:"notifyExt,omitempty"`

	// 队列管理权限:0:所有人都有权限变更队列,1:只有主播管理员才能操作变更
	// 是否必须: false
	Queuelevel int `json:"queuelevel,omitempty"`
}

type EventSubscribeAddParam

type EventSubscribeAddParam struct {
	// 事件订阅人账号
	// 是否必须: true
	Accid string `json:"accid"`

	// 事件类型,固定设置为1,即 eventType=1
	// 是否必须: true
	EventType int `json:"eventType"`

	// 被订阅人的账号列表,最多100个账号,JSONArray格式。示例:["pub_user1","pub_user2"]
	// 是否必须: true
	PublisherAccids string `json:"publisherAccids"`

	// 有效期,单位:秒。取值范围:60~2592000(即60秒到30天)
	// 是否必须: true
	Ttl int64 `json:"ttl"`
}

type EventSubscribeBatchdelParam

type EventSubscribeBatchdelParam struct {
	// 事件订阅人账号
	// 是否必须: true
	Accid string `json:"accid"`

	// 事件类型,固定设置为1,即 eventType=1
	// 是否必须: true
	EventType int `json:"eventType"`
}

type EventSubscribeDeleteParam

type EventSubscribeDeleteParam struct {
	// 事件订阅人账号
	// 是否必须: true
	Accid string `json:"accid"`

	// 事件类型,固定设置为1,即 eventType=1
	// 是否必须: true
	EventType int `json:"eventType"`

	// 取消被订阅人的账号列表,最多100个账号,JSONArray格式。示例:["pub_user1","pub_user2"]
	// 是否必须: true
	PublisherAccids string `json:"publisherAccids"`
}

type EventSubscribeQueryParam

type EventSubscribeQueryParam struct {
	// 事件订阅人账号
	// 是否必须: true
	Accid string `json:"accid"`

	// 事件类型,固定设置为1,即 eventType=1
	// 是否必须: true
	EventType int `json:"eventType"`

	// 被订阅人的账号列表,最多100个账号,JSONArray格式。示例:["pub_user1","pub_user2"]
	// 是否必须: true
	PublisherAccids string `json:"publisherAccids"`
}

type FriendAddParam

type FriendAddParam struct {
	// 加好友发起者accid
	// 是否必须: true
	Accid string `json:"accid"`

	// 加好友接收者accid
	// 是否必须: true
	Faccid string `json:"faccid"`

	// 1直接加好友,2请求加好友,3同意加好友,4拒绝加好友
	// 是否必须: true
	Type int `json:"type"`

	// 加好友对应的请求消息,第三方组装,最长256字符
	// 是否必须: false
	Msg string `json:"msg,omitempty"`

	// 服务器端扩展字段,限制长度256
	// 此字段client端只读,server端读写
	// 是否必须: false
	Serverex string `json:"serverex,omitempty"`
}

type FriendDeleteParam

type FriendDeleteParam struct {
	// 发起者accid
	// 是否必须: true
	Accid string `json:"accid"`

	// 要删除朋友的accid
	// 是否必须: true
	Faccid string `json:"faccid"`

	// 是否需要删除备注信息
	// 默认false:不需要,true:需要
	// 是否必须: false
	IsDeleteAlias bool `json:"isDeleteAlias,omitempty"`
}

type FriendGetParam

type FriendGetParam struct {
	// 发起者accid
	// 是否必须: true
	Accid string `json:"accid"`

	// 更新时间戳,接口返回该时间戳之后有更新的好友列表
	// 是否必须: true
	Updatetime int64 `json:"updatetime"`

	// 【Deprecated】定义同updatetime
	// 是否必须: false
	Createtime int64 `json:"createtime,omitempty"`
}

type FriendUpdateParam

type FriendUpdateParam struct {
	// 发起者accid
	// 是否必须: true
	Accid string `json:"accid"`

	// 要修改朋友的accid
	// 是否必须: true
	Faccid string `json:"faccid"`

	// 给好友增加备注名,限制长度128,可设置为空字符串
	// 是否必须: false
	Alias string `json:"alias,omitempty"`

	// 修改ex字段,限制长度256,可设置为空字符串
	// 是否必须: false
	Ex string `json:"ex,omitempty"`

	// 修改serverex字段,限制长度256,可设置为空字符串
	// 此字段client端只读,server端读写
	// 是否必须: false
	Serverex string `json:"serverex,omitempty"`
}

type HistoryQueryBroadcastMsgByIdParam

type HistoryQueryBroadcastMsgByIdParam struct {
	// 广播消息ID,应用内唯一。
	// 是否必须: true
	BroadcastId int64 `json:"broadcastId"`
}

type HistoryQueryBroadcastMsgParam

type HistoryQueryBroadcastMsgParam struct {
	// 查询的起始ID,0表示查询最近的limit条。默认0。
	// 是否必须: false
	BroadcastId int64 `json:"broadcastId,omitempty"`

	// 查询的条数,最大100。默认100。
	// 是否必须: false
	Limit int `json:"limit,omitempty"`

	// 查询的类型,1表示所有,2表示查询存离线的,3表示查询不存离线的。默认1。
	// 是否必须: false
	Type int64 `json:"type,omitempty"`
}

type HistoryQueryChatroomMsgParam

type HistoryQueryChatroomMsgParam struct {
	// 聊天室id
	// 是否必须: true
	Roomid int64 `json:"roomid"`

	// 用户账号
	// 是否必须: true
	Accid string `json:"accid"`

	// 查询的时间戳锚点,13位。reverse=1时timetag为起始时间戳,reverse=2时timetag为终止时间戳
	// 是否必须: true
	Timetag int64 `json:"timetag"`

	// 本次查询的消息条数上限(最多200条),小于等于0,或者大于200,会提示参数错误
	// 是否必须: true
	Limit int `json:"limit"`

	// 1按时间正序排列,2按时间降序排列。其它返回参数414错误。默认是2按时间降序排列
	// 是否必须: false
	Reverse int `json:"reverse,omitempty"`

	// 查询指定的多个消息类型,类型之间用","分割,不设置该参数则查询全部类型消息。
	// 格式示例: 0,1,2,3
	// 支持的消息类型:0:文本,1:图片,2:语音,3:视频,4:地理位置,5:通知,6:文件,10:提示,11:智能机器人消息,100:自定义消息。用英文逗号分隔。
	// 是否必须: false
	Type string `json:"type,omitempty"`
}

type HistoryQuerySessionMsgParam

type HistoryQuerySessionMsgParam struct {
	// 发送者accid
	// 是否必须: true
	From string `json:"from"`

	// 接收者accid
	// 是否必须: true
	To string `json:"to"`

	// 开始时间,毫秒级
	// 是否必须: true
	Begintime string `json:"begintime"`

	// 截止时间,毫秒级
	// 是否必须: true
	Endtime string `json:"endtime"`

	// 本次查询的消息条数上限(最多100条),小于等于0,或者大于100,会提示参数错误
	// 是否必须: true
	Limit int `json:"limit"`

	// 1按时间正序排列,2按时间降序排列。其它返回参数414错误.默认是按降序排列,即时间戳最晚的消息排在最前面。
	// 是否必须: false
	Reverse int `json:"reverse,omitempty"`

	// 查询指定的多个消息类型,类型之间用","分割,不设置该参数则查询全部类型消息格式示例: 0,1,2,3
	// 类型支持: 1:图片,2:语音,3:视频,4:地理位置,5:通知,6:文件,10:提示,11:Robot,100:自定义
	// 是否必须: false
	Type string `json:"type,omitempty"`
}

type HistoryQueryTeamMsgParam

type HistoryQueryTeamMsgParam struct {
	// 群id
	// 是否必须: true
	Tid string `json:"tid"`

	// 查询用户对应的accid.
	// 是否必须: true
	Accid string `json:"accid"`

	// 开始时间,毫秒级
	// 是否必须: true
	Begintime string `json:"begintime"`

	// 截止时间,毫秒级
	// 是否必须: true
	Endtime string `json:"endtime"`

	// 本次查询的消息条数上限(最多100条),小于等于0,或者大于100,会提示参数错误
	// 是否必须: true
	Limit int `json:"limit"`

	// 1按时间正序排列,2按时间降序排列。其它返回参数414错误。默认是按降序排列,即时间戳最晚的消息排在最前面。
	// 是否必须: false
	Reverse int `json:"reverse,omitempty"`

	// 查询指定的多个消息类型,类型之间用","分割,不设置该参数则查询全部类型消息格式示例: 0,1,2,3
	// 类型支持: 1:图片,2:语音,3:视频,4:地理位置,5:通知,6:文件,10:提示,11:Robot,100:自定义
	// 是否必须: false
	Type string `json:"type,omitempty"`

	// true(默认值):表示需要检查群是否有效,accid是否为有效的群成员;设置为false则仅检测群是否存在,accid是否曾经为群成员。
	// 是否必须: false
	CheckTeamValid bool `json:"checkTeamValid,omitempty"`
}

type HistoryQueryUserEventsParam

type HistoryQueryUserEventsParam struct {
	// 要查询用户的accid
	// 是否必须: true
	Accid string `json:"accid"`

	// 开始时间,毫秒级
	// 是否必须: true
	Begintime string `json:"begintime"`

	// 截止时间,毫秒级
	// 是否必须: true
	Endtime string `json:"endtime"`

	// 本次查询的消息条数上限(最多100条),小于等于0,或者大于100,会提示参数错误
	// 是否必须: true
	Limit int `json:"limit"`

	// 1按时间正序排列,2按时间降序排列。其它返回参数414错误。默认是按降序排列
	// 是否必须: false
	Reverse int `json:"reverse,omitempty"`
}

type IM

type IM interface {
	// 创建网易云信IM账号
	ApiUserCreate(param *UserCreateParam) *ImResp
	// 更新网易云信IM token
	ApiUserUpdate(accid string, props string, token string) *ImResp
	// 重置网易云信IM token
	ApiUserRefreshToken(accid string) *ImResp
	// 封禁网易云信IM账号
	ApiUserBlock(accid string, needkick string, kickNotifyExt string) *ImResp
	// 解禁网易云信IM账号
	ApiUserUnblock(accid string) *ImResp
	// 更新用户名片
	ApiUserUpdateUinfo(param *UserUpdateUinfoParam) *ImResp
	// 获取用户名片
	ApiUserGetUinfos(accids string) *ImResp
	// 设置桌面端在线时,移动端是否需要推送
	ApiUserSetDonnop(accid string, donnopOpen string) *ImResp
	// 账号全局禁言
	ApiUserMute(accid string, mute bool) *ImResp
	// 加好友
	ApiFriendAdd(param *FriendAddParam) *ImResp
	// 更新好友相关信息
	ApiFriendUpdate(param *FriendUpdateParam) *ImResp
	// 删除好友
	ApiFriendDelete(accid string, faccid string, isDeleteAlias bool) *ImResp
	// 获取好友关系
	ApiFriendGet(accid string, updatetime int64, createtime int64) *ImResp
	// 设置黑名单/静音
	ApiUserSetSpecialRelation(param *UserSetSpecialRelationParam) *ImResp
	// 查看指定用户的黑名单和静音列表
	ApiUserListBlackAndMuteList(accid string) *ImResp
	// 给用户或者高级群发送普通消息,包括文本,图片,语音,视频和地理位置
	ApiMsgSendMsg(param *MsgSendMsgParam) *ImResp
	// 批量发送点对点普通消息
	ApiMsgSendBatchMsg(param *MsgSendBatchMsgParam) *ImResp
	// 发送自定义系统通知
	ApiMsgSendAttachMsg(param *MsgSendAttachMsgParam) *ImResp
	// 批量发送点对点自定义系统通知
	ApiMsgSendBatchAttachMsg(param *MsgSendBatchAttachMsgParam) *ImResp
	// 文件上传
	ApiMsgUpload(param *MsgUploadParam) *ImResp
	// 文件上传(multipart方式)
	ApiMsgFileUpload(param *MsgFileUploadParam) *ImResp
	// 上传NOS文件清理任务
	ApiJobNosDel(param *JobNosDelParam) *ImResp
	// 消息撤回
	ApiMsgRecall(param *MsgRecallParam) *ImResp
	// 发送广播消息
	ApiMsgBroadcastMsg(param *MsgBroadcastMsgParam) *ImResp
	// 单向撤回消息
	ApiMsgDelMsgOneWay(param *MsgDelMsgOneWayParam) *ImResp
	// 删除会话漫游
	ApiMsgDelRoamSession(kind int, from string, to string) *ImResp
	// 创建群
	ApiTeamCreate(param *TeamCreateParam) *ImResp
	// 拉人入群
	ApiTeamAdd(param *TeamAddParam) *ImResp
	// 踢人出群
	ApiTeamKick(param *TeamKickParam) *ImResp
	// 解散群
	ApiTeamRemove(tid string, owner string) *ImResp
	// 编辑群资料
	ApiTeamUpdate(param *TeamUpdateParam) *ImResp
	// 群信息与成员列表查询
	ApiTeamQuery(tids string, ope int, ignoreInvalid bool) *ImResp
	// 获取群组详细信息
	ApiTeamQueryDetail(tid int64) *ImResp
	// 获取群组已读消息的已读详情信息
	ApiTeamGetMarkReadInfo(param *TeamGetMarkReadInfoParam) *ImResp
	// 移交群主
	ApiTeamChangeOwner(param *TeamChangeOwnerParam) *ImResp
	// 任命管理员
	ApiTeamAddManager(tid string, owner string, members string) *ImResp
	// 移除管理员
	ApiTeamRemoveManager(tid string, owner string, members string) *ImResp
	// 获取某用户所加入的群信息
	ApiTeamJoinTeams(accid string) *ImResp
	// 修改群昵称
	ApiTeamUpdateTeamNick(param *TeamUpdateTeamNickParam) *ImResp
	// 修改消息提醒开关
	ApiTeamMuteTeam(tid string, accid string, ope int) *ImResp
	// 禁言群成员
	ApiTeamMuteTlist(param *TeamMuteTlistParam) *ImResp
	// 主动退群
	ApiTeamLeave(tid string, accid string) *ImResp
	// 将群组整体禁言
	ApiTeamMuteTlistAll(param *TeamMuteTlistAllParam) *ImResp
	// 获取群组禁言列表
	ApiTeamListTeamMute(tid string, owner string) *ImResp
	// 创建超级群
	ApiSuperteamCreate(param *SuperteamCreateParam) *ImResp
	// 解散超级群
	ApiSuperteamDismiss(tid string, owner string) *ImResp
	// 拉人入超级群
	ApiSuperteamInvite(param *SuperteamInviteParam) *ImResp
	// 踢人出超级群
	ApiSuperteamKick(tid string, owner string, kickAccids string) *ImResp
	// 修改超级群信息
	ApiSuperteamUpdateTinfo(param *SuperteamUpdateTinfoParam) *ImResp
	// 获取超级群信息
	ApiSuperteamGetTinfos(tids string) *ImResp
	// 修改超级群成员信息
	ApiSuperteamUpdateTlist(param *SuperteamUpdateTlistParam) *ImResp
	// 获取超级群成员信息
	ApiSuperteamGetTlists(param *SuperteamGetTlistsParam) *ImResp
	// 超级群发送普通消息
	ApiSuperteamSendMsg(param *SuperteamSendMsgParam) *ImResp
	// 超级群查询云端历史消息
	ApiSuperteamQueryHistoryMsg(param *SuperteamQueryHistoryMsgParam) *ImResp
	// 主动退超级群
	ApiSuperteamLeave(tid string, accid string) *ImResp
	// 超级群移交群主
	ApiSuperteamChangeOwner(param *SuperteamChangeOwnerParam) *ImResp
	// 超级群添加管理员
	ApiSuperteamAddManager(tid string, owner string, managerAccids string) *ImResp
	// 超级群解除管理员
	ApiSuperteamRemoveManager(tid string, owner string, managerAccids string) *ImResp
	// 超级群禁言群
	ApiSuperteamMute(tid string, owner string, muteType string) *ImResp
	// 超级群禁言群成员
	ApiSuperteamMuteTlist(param *SuperteamMuteTlistParam) *ImResp
	// 超级群发送自定义系统通知
	ApiSuperteamSendAttachMsg(param *SuperteamSendAttachMsgParam) *ImResp
	// 超级群撤回消息
	ApiSuperteamRecallMsg(param *SuperteamRecallMsgParam) *ImResp
	// 超级群变更群人数级别
	ApiSuperteamChangeLevel(tid string, owner string, tlevel string) *ImResp
	// 超级群获取某用户所加入的群信息
	ApiSuperteamJoinTeams(accid string) *ImResp
	// 创建聊天室
	ApiChatroomCreate(param *ChatroomCreateParam) *ImResp
	// 查询聊天室信息
	ApiChatroomGet(roomid int64, needOnlineUserCount string) *ImResp
	// 批量查询聊天室信息
	ApiChatroomGetBatch(roomids string, needOnlineUserCount string) *ImResp
	// 更新聊天室信息
	ApiChatroomUpdate(param *ChatroomUpdateParam) *ImResp
	// 修改聊天室开/关闭状态
	ApiChatroomToggleCloseStat(roomid int64, operator string, valid string) *ImResp
	// 设置聊天室内用户角色
	ApiChatroomSetMemberRole(param *ChatroomSetMemberRoleParam) *ImResp
	// 请求聊天室地址
	ApiChatroomRequestAddr(param *ChatroomRequestAddrParam) *ImResp
	// 发送聊天室消息
	ApiChatroomSendMsg(param *ChatroomSendMsgParam) *ImResp
	// 往聊天室内添加机器人
	ApiChatroomAddRobot(param *ChatroomAddRobotParam) *ImResp
	// 从聊天室内删除机器人
	ApiChatroomRemoveRobot(roomid int64, accids string) *ImResp
	// 清空聊天室机器人
	ApiChatroomCleanRobot(roomid int64, notify bool) *ImResp
	// 设置临时禁言状态
	ApiChatroomTemporaryMute(param *ChatroomTemporaryMuteParam) *ImResp
	// 往聊天室有序队列中新加或更新元素
	ApiChatroomQueueOffer(param *ChatroomQueueOfferParam) *ImResp
	// 从队列中取出元素
	ApiChatroomQueuePoll(roomid int64, key string) *ImResp
	// 排序列出队列中所有元素
	ApiChatroomQueueList(roomid int64) *ImResp
	// 删除清理整个队列
	ApiChatroomQueueDrop(roomid int64) *ImResp
	// 初始化队列
	ApiChatroomQueueInit(roomid int64, sizeLimit int64) *ImResp
	// 将聊天室整体禁言
	ApiChatroomMuteRoom(param *ChatroomMuteRoomParam) *ImResp
	// 查询聊天室统计指标TopN
	ApiStatsChatroomTopn(param *StatsChatroomTopnParam) *ImResp
	// 分页获取成员列表
	ApiChatroomMembersByPage(param *ChatroomMembersByPageParam) *ImResp
	// 批量获取在线成员信息
	ApiChatroomQueryMembers(roomid int64, accids string) *ImResp
	// 变更聊天室内的角色信息
	ApiChatroomUpdateMyRoomRole(param *ChatroomUpdateMyRoomRoleParam) *ImResp
	// 批量更新聊天室队列元素
	ApiChatroomQueueBatchUpdateElements(param *ChatroomQueueBatchUpdateElementsParam) *ImResp
	// 查询用户创建的开启状态聊天室列表
	ApiChatroomQueryUserRoomIds(creator string) *ImResp
	// 关闭指定聊天室进出通知
	ApiChatroomUpdateInOutNotification(roomid int64, close bool) *ImResp
	// 单聊云端历史消息查询
	ApiHistoryQuerySessionMsg(param *HistoryQuerySessionMsgParam) *ImResp
	// 群聊云端历史消息查询
	ApiHistoryQueryTeamMsg(param *HistoryQueryTeamMsgParam) *ImResp
	// 聊天室云端历史消息查询
	ApiHistoryQueryChatroomMsg(param *HistoryQueryChatroomMsgParam) *ImResp
	// 删除聊天室云端历史消息
	ApiChatroomDeleteHistoryMessage(roomid int64, fromAcc string, msgTimetag int64) *ImResp
	// 用户登录登出事件记录查询
	ApiHistoryQueryUserEvents(param *HistoryQueryUserEventsParam) *ImResp
	// 批量查询广播消息
	ApiHistoryQueryBroadcastMsg(broadcastId int64, limit int, kind int64) *ImResp
	// 查询单条广播消息
	ApiHistoryQueryBroadcastMsgById(broadcastId int64) *ImResp
	// 订阅在线状态事件
	ApiEventSubscribeAdd(param *EventSubscribeAddParam) *ImResp
	// 取消在线状态事件订阅
	ApiEventSubscribeDelete(accid string, eventType int, publisherAccids string) *ImResp
	// 取消全部在线状态事件订阅
	ApiEventSubscribeBatchdel(accid string, eventType int) *ImResp
	// 查询在线状态事件订阅关系
	ApiEventSubscribeQuery(accid string, eventType int, publisherAccids string) *ImResp
}

func NewIM

func NewIM(appKey, appSecret string) IM

type ImResp

type ImResp struct {
	gjson.Result

	Err  error
	Body []byte
}

func (*ImResp) BodyString

func (r *ImResp) BodyString() string

func (*ImResp) IsSuccess

func (r *ImResp) IsSuccess() bool

没有错误 并且 状态码等于200才会成功

type JobNosDelParam

type JobNosDelParam struct {
	// 被清理文件的开始时间(毫秒级)
	// 是否必须: true
	StartTime int64 `json:"startTime"`

	// 被清理文件的结束时间(毫秒级)
	// 是否必须: true
	EndTime int64 `json:"endTime"`

	// 被清理的文件类型,文件类型包含contentType则被清理 如原始文件类型为"image/png",contentType参数为"image",则满足被清理条件
	// 是否必须: false
	ContentType string `json:"contentType,omitempty"`

	// 被清理文件的应用场景,完全相同才被清理 如上传文件时知道场景为"usericon",tag参数为"usericon",则满足被清理条件
	// 是否必须: false
	Tag string `json:"tag,omitempty"`
}

type MsgBroadcastMsgParam

type MsgBroadcastMsgParam struct {
	// 广播消息内容,最大4096字符
	// 是否必须: true
	Body string `json:"body"`

	// 发送者accid, 用户帐号,最大长度32字符,必须保证一个APP内唯一
	// 是否必须: false
	From string `json:"from,omitempty"`

	// 是否存离线,true或false,默认false
	// 是否必须: false
	IsOffline string `json:"isOffline,omitempty"`

	// 存离线状态下的有效期,单位小时,默认7天
	// 是否必须: false
	Ttl int `json:"ttl,omitempty"`

	// 目标客户端,默认所有客户端,jsonArray,格式:["ios","aos","pc","web","mac"]
	// 是否必须: false
	TargetOs string `json:"targetOs,omitempty"`
}

type MsgDelMsgOneWayParam

type MsgDelMsgOneWayParam struct {
	// 要撤回消息的msgid
	// 是否必须: true
	DeleteMsgid string `json:"deleteMsgid"`

	// 要撤回消息的创建时间
	// 是否必须: true
	Timetag int64 `json:"timetag"`

	// 13:表示点对点消息撤回,14:表示群消息撤回,其它为参数错误
	// 是否必须: true
	Type int `json:"type"`

	// 发消息的accid
	// 是否必须: true
	From string `json:"from"`

	// 如果点对点消息,为接收消息的accid,如果群消息,为对应群的tid
	// 是否必须: true
	To string `json:"to"`

	// 可以带上对应的描述
	// 是否必须: false
	Msg string `json:"msg,omitempty"`
}

type MsgDelRoamSessionParam

type MsgDelRoamSessionParam struct {
	// 会话类型,1-p2p会话,2-群会话,其他返回414
	// 是否必须: true
	Type int `json:"type"`

	// 发送者accid, 用户帐号,最大长度32字节
	// 是否必须: true
	From string `json:"from"`

	// type=1表示对端accid,type=2表示tid
	// 是否必须: true
	To string `json:"to"`
}

type MsgFileUploadParam

type MsgFileUploadParam struct {
	// 最大15M的字符流
	// 是否必须: true
	Content string `json:"content"`

	// 上传文件类型
	// 是否必须: false
	Type string `json:"type,omitempty"`

	// 返回的url是否需要为https的url,true或false,默认false
	// 是否必须: false
	Ishttps string `json:"ishttps,omitempty"`

	// 文件过期时长,单位:秒,必须大于等于86400
	// 是否必须: false
	ExpireSec int `json:"expireSec,omitempty"`

	// 文件的应用场景,不超过32个字符
	// 是否必须: false
	Tag string `json:"tag,omitempty"`
}

type MsgRecallParam

type MsgRecallParam struct {
	// 要撤回消息的msgid
	// 是否必须: true
	DeleteMsgid string `json:"deleteMsgid"`

	// 要撤回消息的创建时间
	// 是否必须: true
	Timetag int64 `json:"timetag"`

	// 7:表示点对点消息撤回,8:表示群消息撤回,其它为参数错误
	// 是否必须: true
	Type int `json:"type"`

	// 发消息的accid
	// 是否必须: true
	From string `json:"from"`

	// 如果点对点消息,为接收消息的accid,如果群消息,为对应群的tid
	// 是否必须: true
	To string `json:"to"`

	// 可以带上对应的描述
	// 是否必须: false
	Msg string `json:"msg,omitempty"`

	// 1表示绕过撤回时间检测,其它为非法参数,最多撤回近30天内的消息。如果需要撤回时间检测,不填即可。
	// 是否必须: false
	IgnoreTime string `json:"ignoreTime,omitempty"`

	// 推送文案,android以此为推送显示文案;ios若未填写payload,显示文案以pushcontent为准。超过500字符后,会对文本进行截断。
	// 是否必须: false
	Pushcontent string `json:"pushcontent,omitempty"`

	// 推送对应的payload,必须是JSON,不超过2K字符
	// 是否必须: false
	Payload string `json:"payload,omitempty"`

	// 所属环境,根据env可以配置不同的抄送地址
	// 是否必须: false
	Env string `json:"env,omitempty"`

	// 扩展字段,最大5000字符
	// 是否必须: false
	Attach string `json:"attach,omitempty"`
}

type MsgSendAttachMsgParam

type MsgSendAttachMsgParam struct {
	// 发送者accid,用户帐号,最大32字符,APP内唯一
	// 是否必须: true
	From string `json:"from"`

	// 0:点对点自定义通知,1:群消息自定义通知,其他返回414
	// 是否必须: true
	Msgtype int `json:"msgtype"`

	// msgtype==0是表示accid即用户id,msgtype==1表示tid即群id
	// 是否必须: true
	To string `json:"to"`

	// 自定义通知内容,第三方组装的字符串,建议是JSON串,最大长度4096字符
	// 是否必须: true
	Attach string `json:"attach"`

	// 推送文案,最长500个字符。具体参见 推送配置参数详解。
	// 是否必须: false
	Pushcontent string `json:"pushcontent,omitempty"`

	// 必须是JSON,不能超过2k字符。该参数与APNs推送的payload含义不同。具体参见 推送配置参数详解。
	// 是否必须: false
	Payload string `json:"payload,omitempty"`

	// 如果有指定推送,此属性指定为客户端本地的声音文件名,长度不要超过30个字符,如果不指定,会使用默认声音
	// 是否必须: false
	Sound string `json:"sound,omitempty"`

	// 1表示只发在线,2表示会存离线,其他会报414错误。默认会存离线
	// 是否必须: false
	Save int `json:"save,omitempty"`

	// 发消息时特殊指定的行为选项,Json格式,可用于指定消息计数等特殊行为;option中字段不填时表示默认值。
	// option示例:
	// {"badge":false,"needPushNick":false,"route":false}
	// 字段说明:
	// 1. badge:该消息是否需要计入到未读计数中,默认true;
	// 2. needPushNick: 推送文案是否需要带上昵称,不设置该参数时默认false(ps:注意与sendMsg.action接口有别);
	// 3. route: 该消息是否需要抄送第三方;默认true (需要app开通消息抄送功能)
	// 是否必须: false
	Option string `json:"option,omitempty"`

	// 发自定义通知时,是否强制推送
	// 是否必须: false
	IsForcePush string `json:"isForcePush,omitempty"`

	// 发自定义通知时,强制推送文案,最长500个字符
	// 是否必须: false
	ForcePushContent string `json:"forcePushContent,omitempty"`

	// 发群自定义通知时,强推列表是否为群里除发送者外的所有有效成员
	// 是否必须: false
	ForcePushAll string `json:"forcePushAll,omitempty"`

	// 发群自定义通知时,强推列表,格式为JSONArray,如"accid1","accid2"
	// 是否必须: false
	ForcePushList string `json:"forcePushList,omitempty"`

	// 所属环境,根据env可以配置不同的抄送地址
	// 是否必须: false
	Env string `json:"env,omitempty"`
}

type MsgSendBatchAttachMsgParam

type MsgSendBatchAttachMsgParam struct {
	// 发送者accid,用户帐号,最大32字符,APP内唯一
	// 是否必须: true
	FromAccid string `json:"fromAccid"`

	// ["aaa","bbb"](JSONArray对应的accid,如果解析出错,会报414错误),最大限500人
	// 是否必须: true
	ToAccids string `json:"toAccids"`

	// 自定义通知内容,第三方组装的字符串,建议是JSON串,最大长度4096字符
	// 是否必须: true
	Attach string `json:"attach"`

	// 推送文案,最长500个字符。具体参见 推送配置参数详解。
	// 是否必须: false
	Pushcontent string `json:"pushcontent,omitempty"`

	// 必须是JSON,不能超过2k字符。该参数与APNs推送的payload含义不同。具体参见 推送配置参数详解。
	// 是否必须: false
	Payload string `json:"payload,omitempty"`

	// 如果有指定推送,此属性指定为客户端本地的声音文件名,长度不要超过30个字符,如果不指定,会使用默认声音
	// 是否必须: false
	Sound string `json:"sound,omitempty"`

	// 1表示只发在线,2表示会存离线,其他会报414错误。默认会存离线
	// 是否必须: false
	Save int `json:"save,omitempty"`

	// 发消息时特殊指定的行为选项,Json格式,可用于指定消息计数等特殊行为;option中字段不填时表示默认值。
	// option示例:
	// {"badge":false,"needPushNick":false,"route":false}
	// 字段说明:
	// 1. badge:该消息是否需要计入到未读计数中,默认true;
	// 2. needPushNick: 推送文案是否需要带上昵称,不设置该参数时默认false(ps:注意与sendBatchMsg.action接口有别)。
	// 3. route: 该消息是否需要抄送第三方;默认true (需要app开通消息抄送功能)
	// 是否必须: false
	Option string `json:"option,omitempty"`

	// 发自定义通知时,是否强制推送
	// 是否必须: false
	IsForcePush string `json:"isForcePush,omitempty"`

	// 发自定义通知时,强制推送文案,最长500个字符
	// 是否必须: false
	ForcePushContent string `json:"forcePushContent,omitempty"`

	// 所属环境,根据env可以配置不同的抄送地址
	// 是否必须: false
	Env string `json:"env,omitempty"`
}

type MsgSendBatchMsgParam

type MsgSendBatchMsgParam struct {
	// 发送者accid,用户帐号,最大32字符,
	// 必须保证一个APP内唯一
	// 是否必须: true
	FromAccid string `json:"fromAccid"`

	// ["aaa","bbb"](JSONArray对应的accid,如果解析出错,会报414错误),限500人
	// 是否必须: true
	ToAccids string `json:"toAccids"`

	// 0 表示文本消息,
	// 1 表示图片,
	// 2 表示语音,
	// 3 表示视频,
	// 4 表示地理位置信息,
	// 6 表示文件,
	// 10 表示提示消息,
	// 100 自定义消息类型
	// 是否必须: true
	Type int `json:"type"`

	// 最大长度5000字符,JSON格式。
	// 具体请参考: 消息格式示例
	// 是否必须: true
	Body string `json:"body"`

	// 发消息时特殊指定的行为选项,Json格式,可用于指定消息的漫游,存云端历史,发送方多端同步,推送,消息抄送等特殊行为;option中字段不填时表示默认值 option示例:
	// {"push":false,"roam":true,"history":false,"sendersync":true,"route":false,"badge":false,"needPushNick":true}
	// 字段说明:
	// 1. roam: 该消息是否需要漫游,默认true(需要app开通漫游消息功能);
	// 2. history: 该消息是否存云端历史,默认true;
	// 3. sendersync: 该消息是否需要发送方多端同步,默认true;
	// 4. push: 该消息是否需要APNS推送或安卓系统通知栏推送,默认true;
	// 5. route: 该消息是否需要抄送第三方;默认true (需要app开通消息抄送功能);
	// 6. badge:该消息是否需要计入到未读计数中,默认true;
	// 7. needPushNick: 推送文案是否需要带上昵称,不设置该参数时默认true;
	// 8. persistent: 是否需要存离线消息,不设置该参数时默认true;
	// 9. sessionUpdate: 是否将本消息更新到会话列表服务里本会话的lastmsg,默认true。
	// 是否必须: false
	Option string `json:"option,omitempty"`

	// 推送文案,最长500个字符。具体参见 推送配置参数详解。
	// 是否必须: false
	Pushcontent string `json:"pushcontent,omitempty"`

	// 必须是JSON,不能超过2k字符。该参数与APNs推送的payload含义不同。具体参见 推送配置参数详解。
	// 是否必须: false
	Payload string `json:"payload,omitempty"`

	// 开发者扩展字段,长度限制1024字符
	// 是否必须: false
	Ext string `json:"ext,omitempty"`

	// 可选,反垃圾业务ID,实现“单条消息配置对应反垃圾”,若不填则使用原来的反垃圾配置
	// 是否必须: false
	Bid string `json:"bid,omitempty"`

	// 可选,单条消息是否使用易盾反垃圾,可选值为0。
	// 0:(在开通易盾的情况下)不使用易盾反垃圾而是使用通用反垃圾,包括自定义消息。
	// 若不填此字段,即在默认情况下,若应用开通了易盾反垃圾功能,则使用易盾反垃圾来进行垃圾消息的判断
	// 是否必须: false
	UseYidun int `json:"useYidun,omitempty"`

	// 可选,易盾反垃圾增强反作弊专属字段,限制json,长度限制1024字符(详见易盾反垃圾接口文档反垃圾防刷版专属字段)
	// 是否必须: false
	YidunAntiCheating string `json:"yidunAntiCheating,omitempty"`

	// 是否需要返回消息ID
	// false:不返回消息ID(默认值)
	// true:返回消息ID(toAccids包含的账号数量不可以超过100个)
	// 是否必须: false
	ReturnMsgid bool `json:"returnMsgid,omitempty"`

	// 所属环境,根据env可以配置不同的抄送地址
	// 是否必须: false
	Env string `json:"env,omitempty"`
}

type MsgSendMsgParam

type MsgSendMsgParam struct {
	// 发送者accid,用户帐号,最大32字符,
	// 必须保证一个APP内唯一
	// 是否必须: true
	From string `json:"from"`

	// 0:点对点个人消息,1:群消息(高级群),其他返回414
	// 是否必须: true
	Ope int `json:"ope"`

	// ope==0是表示accid即用户id,ope==1表示tid即群id
	// 是否必须: true
	To string `json:"to"`

	// 0 表示文本消息,
	// 1 表示图片,
	// 2 表示语音,
	// 3 表示视频,
	// 4 表示地理位置信息,
	// 6 表示文件,
	// 10 表示提示消息,
	// 100 自定义消息类型(特别注意,对于未对接易盾反垃圾功能的应用,该类型的消息不会提交反垃圾系统检测)
	// 是否必须: true
	Type int `json:"type"`

	// 最大长度5000字符,JSON格式。
	// 具体请参考: 消息格式示例
	// 是否必须: true
	Body string `json:"body"`

	// 对于对接了易盾反垃圾功能的应用,本消息是否需要指定经由易盾检测的内容(antispamCustom)。
	// true或false, 默认false。
	// 只对消息类型为:100 自定义消息类型 的消息生效。
	// 是否必须: false
	Antispam string `json:"antispam,omitempty"`

	// 在antispam参数为true时生效。
	// 自定义的反垃圾检测内容, JSON格式,长度限制同body字段,不能超过5000字符,要求antispamCustom格式如下:
	// {"type":1,"data":"custom content"}
	// 字段说明:
	// 1. type: 1:文本,2:图片。
	// 2. data: 文本内容or图片地址。
	// 是否必须: false
	AntispamCustom string `json:"antispamCustom,omitempty"`

	// 发消息时特殊指定的行为选项,JSON格式,可用于指定消息的漫游,存云端历史,发送方多端同步,推送,消息抄送等特殊行为;option中字段不填时表示默认值 ,option示例:
	// {"push":false,"roam":true,"history":false,"sendersync":true,"route":false,"badge":false,"needPushNick":true}
	// 字段说明:
	// 1. roam: 该消息是否需要漫游,默认true(需要app开通漫游消息功能);
	// 2. history: 该消息是否存云端历史,默认true;
	// 3. sendersync: 该消息是否需要发送方多端同步,默认true;
	// 4. push: 该消息是否需要APNS推送或安卓系统通知栏推送,默认true;
	// 5. route: 该消息是否需要抄送第三方;默认true (需要app开通消息抄送功能);
	// 6. badge:该消息是否需要计入到未读计数中,默认true;
	// 7. needPushNick: 推送文案是否需要带上昵称,不设置该参数时默认true;
	// 8. persistent: 是否需要存离线消息,不设置该参数时默认true;
	// 9. sessionUpdate: 是否将本消息更新到会话列表服务里本会话的lastmsg,默认true。
	// 是否必须: false
	Option string `json:"option,omitempty"`

	// 推送文案,最长500个字符。具体参见 推送配置参数详解。
	// 是否必须: false
	Pushcontent string `json:"pushcontent,omitempty"`

	// 必须是JSON,不能超过2k字符。该参数与APNs推送的payload含义不同。具体参见 推送配置参数详解。
	// 是否必须: false
	Payload string `json:"payload,omitempty"`

	// 开发者扩展字段,长度限制1024字符
	// 是否必须: false
	Ext string `json:"ext,omitempty"`

	// 发送群消息时的强推用户列表(云信demo中用于承载被@的成员),格式为JSONArray,如["accid1","accid2"]。若forcepushall为true,则forcepushlist为除发送者外的所有有效群成员
	// 是否必须: false
	Forcepushlist string `json:"forcepushlist,omitempty"`

	// 发送群消息时,针对强推列表forcepushlist中的用户,强制推送的内容
	// 是否必须: false
	Forcepushcontent string `json:"forcepushcontent,omitempty"`

	// 发送群消息时,强推列表是否为群里除发送者外的所有有效成员,true或false,默认为false
	// 是否必须: false
	Forcepushall string `json:"forcepushall,omitempty"`

	// 可选,反垃圾业务ID,实现“单条消息配置对应反垃圾”,若不填则使用原来的反垃圾配置
	// 是否必须: false
	Bid string `json:"bid,omitempty"`

	// 可选,单条消息是否使用易盾反垃圾,可选值为0。
	// 0:(在开通易盾的情况下)不使用易盾反垃圾而是使用通用反垃圾,包括自定义消息。
	// 若不填此字段,即在默认情况下,若应用开通了易盾反垃圾功能,则使用易盾反垃圾来进行垃圾消息的判断
	// 是否必须: false
	UseYidun int `json:"useYidun,omitempty"`

	// 可选,易盾反垃圾增强反作弊专属字段,限制json,长度限制1024字符(详见易盾反垃圾接口文档反垃圾防刷版专属字段)
	// 是否必须: false
	YidunAntiCheating string `json:"yidunAntiCheating,omitempty"`

	// 可选,群消息是否需要已读业务(仅对群消息有效),0:不需要,1:需要
	// 是否必须: false
	MarkRead int `json:"markRead,omitempty"`

	// 是否为好友关系才发送消息,默认否
	// 注:使用该参数需要先开通功能服务
	// 是否必须: false
	CheckFriend bool `json:"checkFriend,omitempty"`

	// 自定义消息子类型,大于0
	// 是否必须: false
	SubType int `json:"subType,omitempty"`

	// 发送方是否无感知。0-有感知,1-无感知。若无感知,则消息发送者无该消息的多端、漫游、历史记录等。
	// 是否必须: false
	MsgSenderNoSense int `json:"msgSenderNoSense,omitempty"`

	// 接受方是否无感知。0-有感知,1-无感知。若无感知,则消息接收者者无该消息的多端、漫游、历史记录等
	// 是否必须: false
	MsgReceiverNoSense int `json:"msgReceiverNoSense,omitempty"`

	// 所属环境,根据env可以配置不同的抄送地址
	// 是否必须: false
	Env string `json:"env,omitempty"`
}

type MsgUploadParam

type MsgUploadParam struct {
	// 字符流base64串(Base64.encode(bytes)) ,最大15M的字符流
	// 是否必须: true
	Content string `json:"content"`

	// 上传文件类型
	// 是否必须: false
	Type string `json:"type,omitempty"`

	// 返回的url是否需要为https的url,true或false,默认false
	// 是否必须: false
	Ishttps string `json:"ishttps,omitempty"`

	// 文件过期时长,单位:秒,必须大于等于86400
	// 是否必须: false
	ExpireSec int `json:"expireSec,omitempty"`

	// 文件的应用场景,不超过32个字符
	// 是否必须: false
	Tag string `json:"tag,omitempty"`
}

type StatsChatroomTopnParam

type StatsChatroomTopnParam struct {
	// topn值,可选值 1~500,默认值100
	// 是否必须: false
	Topn int `json:"topn,omitempty"`

	// 需要查询的指标所在的时间坐标点,不提供则默认当前时间,单位秒/毫秒皆可
	// 是否必须: false
	Timestamp int64 `json:"timestamp,omitempty"`

	// 统计周期,可选值包括 hour/day, 默认hour
	// 是否必须: false
	Period string `json:"period,omitempty"`

	// 取排序值,可选值 active/enter/message,分别表示按日活排序,进入人次排序和消息数排序, 默认active
	// 是否必须: false
	Orderby string `json:"orderby,omitempty"`
}

type SuperteamAddManagerParam

type SuperteamAddManagerParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 要添加为管理员的accid(JSONArray),["aaa","bbb"],一次最多操作10个
	// 是否必须: true
	ManagerAccids string `json:"managerAccids"`
}

type SuperteamChangeLevelParam

type SuperteamChangeLevelParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 群人数级别,[2,200(默认)]
	// 是否必须: true
	Tlevel string `json:"tlevel"`
}

type SuperteamChangeOwnerParam

type SuperteamChangeOwnerParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 新群主的用户对应的accid
	// 是否必须: true
	Accid string `json:"accid"`

	// 1:群主移交群主后离开此群,2:群主移交群主后成为普通成员,其它会提示参数错误
	// 是否必须: true
	Leave string `json:"leave"`
}

type SuperteamCreateParam

type SuperteamCreateParam struct {
	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 邀请的群成员列表。["aaa","bbb"](JSONArray对应的accid,如果解析出错会报414),inviteAccids与owner总和上限为200。inviteAccids中无需再加owner自己的账号。
	// 是否必须: true
	InviteAccids string `json:"inviteAccids"`

	// 群名称,最大长度64字符
	// 是否必须: true
	Tname string `json:"tname"`

	// 群描述,最大长度512字符
	// 是否必须: false
	Intro string `json:"intro,omitempty"`

	// 群公告,最大长度1024字符
	// 是否必须: false
	Announcement string `json:"announcement,omitempty"`

	// 自定义群扩展属性,第三方可以根据此属性自定义扩展自己的群属性,最大长度1024字符
	// 是否必须: false
	ServerCustom string `json:"serverCustom,omitempty"`

	// 群头像,最大长度1024字符
	// 是否必须: false
	Icon string `json:"icon,omitempty"`

	// 邀请发送的文字,最大长度150字符
	// 是否必须: true
	Msg string `json:"msg"`

	// 申请入群模式,0-入群不需要申请,1-入群需要申请,2-不允许申请入群。其它返回414
	// 是否必须: true
	Joinmode string `json:"joinmode"`

	// 邀请同意模式,0-邀请需要同意(默认),1-邀请不需要同意。其它返回414
	// 是否必须: false
	Beinvitemode string `json:"beinvitemode,omitempty"`

	// 谁可以邀请他人入群,0-管理员(默认),1-所有人。其它返回414
	// 是否必须: false
	Invitemode string `json:"invitemode,omitempty"`

	// 谁可以修改群资料,0-管理员(默认),1-所有人。其它返回414
	// 是否必须: false
	Uptinfomode string `json:"uptinfomode,omitempty"`

	// 谁可以更新群自定义属性,0-管理员(默认),1-所有人。其它返回414
	// 是否必须: false
	Upcustommode string `json:"upcustommode,omitempty"`

	// 群人数级别,[2,200(默认)]
	// 是否必须: false
	Tlevel string `json:"tlevel,omitempty"`
}

type SuperteamDismissParam

type SuperteamDismissParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`
}

type SuperteamGetTinfosParam

type SuperteamGetTinfosParam struct {
	// tid列表,如["3083","3084"]
	// 是否必须: true
	Tids string `json:"tids"`
}

type SuperteamGetTlistsParam

type SuperteamGetTlistsParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 时间戳,单位毫秒,查询的时间起点。
	// 是否必须: true
	Timetag string `json:"timetag"`

	// 本次查询的条数上限(最多100条),小于等于0,或者大于100,会提示参数错误
	// 是否必须: true
	Limit string `json:"limit"`

	// 1:按时间正序排列,2:按时间降序排列。其它会提示参数错误。默认是1按时间正序排列
	// 是否必须: false
	Reverse string `json:"reverse,omitempty"`
}

type SuperteamInviteParam

type SuperteamInviteParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主或管理员用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 被拉入群的accid(JSONArray),["aaa","bbb"],一次最多操作200个
	// 是否必须: true
	InviteAccids string `json:"inviteAccids"`

	// 邀请发送的文字,最大长度150字符
	// 是否必须: true
	Msg string `json:"msg"`
}

type SuperteamJoinTeamsParam

type SuperteamJoinTeamsParam struct {
	// 用户帐号,最大长度32字符
	// 是否必须: true
	Accid string `json:"accid"`
}

type SuperteamKickParam

type SuperteamKickParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主或管理员用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 被踢出群的accid(JSONArray),["aaa","bbb"],一次最多操作200个
	// 是否必须: true
	KickAccids string `json:"kickAccids"`
}

type SuperteamLeaveParam

type SuperteamLeaveParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 要退群的用户对应的accid
	// 是否必须: true
	Accid string `json:"accid"`
}

type SuperteamMuteParam

type SuperteamMuteParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 0:解除禁言,1:禁言普通成员,3:禁言整个群(包括群主)
	// 是否必须: true
	MuteType string `json:"muteType"`
}

type SuperteamMuteTlistParam

type SuperteamMuteTlistParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主或管理员用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 要禁言的accid(JSONArray),["aaa","bbb"],一次最多操作10个
	// 是否必须: true
	MuteAccids string `json:"muteAccids"`

	// 1:禁言,0:解禁
	// 是否必须: true
	Mute string `json:"mute"`
}

type SuperteamQueryHistoryMsgParam

type SuperteamQueryHistoryMsgParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 查询用户对应的accid
	// 是否必须: true
	Accid string `json:"accid"`

	// 开始时间,ms
	// 是否必须: true
	Begintime string `json:"begintime"`

	// 截止时间,ms
	// 是否必须: true
	Endtime string `json:"endtime"`

	// 本次查询的消息条数上限(最多100条),小于等于0,或者大于100,会提示参数错误
	// 是否必须: true
	Limit int `json:"limit"`

	// 1按时间正序排列,2按时间降序排列,其它返回参数414错误,默认是按降序排列
	// 是否必须: false
	Reverse int `json:"reverse,omitempty"`

	// 查询指定的多个消息类型,类型之间用","分割,不设置该参数则查询全部类型消息。 类型支持,1:图片,2:语音,3:视频,4:地理位置,5:通知,6:文件,10:提示,100:自定义
	// 是否必须: false
	Type string `json:"type,omitempty"`
}

type SuperteamRecallMsgParam

type SuperteamRecallMsgParam struct {
	// 要撤回消息的msgid
	// 是否必须: true
	DeleteMsgid string `json:"deleteMsgid"`

	// 要撤回消息的创建时间(创建时间为云信服务器生成的消息发送时间戳)
	// 是否必须: true
	Timetag string `json:"timetag"`

	// 发送者accid, 用户帐号,最大长度32字符
	// 是否必须: true
	From string `json:"from"`

	// 群tid
	// 是否必须: true
	To string `json:"to"`

	// 可以带上对应的描述
	// 是否必须: false
	Msg string `json:"msg,omitempty"`

	// 1表示忽略撤回时间检测,0表示不忽略,其它为非法参数,默认0,如果需要撤回时间检测,不填即可
	// 是否必须: false
	IgnoreTime string `json:"ignoreTime,omitempty"`

	// 推送内容,不超过500字符
	// 是否必须: false
	PushContent string `json:"pushContent,omitempty"`

	// 推送对应的payload,必须是JSON,不能超过2k字符
	// 是否必须: false
	PushPayload string `json:"pushPayload,omitempty"`
}

type SuperteamRemoveManagerParam

type SuperteamRemoveManagerParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 要解除掉管理员的accid(JSONArray),["aaa","bbb"],一次最多操作10个
	// 是否必须: true
	ManagerAccids string `json:"managerAccids"`
}

type SuperteamSendAttachMsgParam

type SuperteamSendAttachMsgParam struct {
	// 发送者accid, 用户帐号,最大长度32字符
	// 是否必须: true
	From string `json:"from"`

	// 群tid
	// 是否必须: true
	To string `json:"to"`

	// 通知具体内容,第三方组装的字符串,是JSON串,最大长度4096字符
	// 是否必须: true
	Attach string `json:"attach"`

	// 推送内容,不超过500字符
	// 是否必须: false
	PushContent string `json:"pushContent,omitempty"`

	// 推送对应的payload,必须是JSON,不能超过2k字符
	// 是否必须: false
	PushPayload string `json:"pushPayload,omitempty"`

	// 可以指定为客户端本地的声音文件,长度不要超过30个字符
	// 是否必须: false
	Sound string `json:"sound,omitempty"`

	// 发消息时特殊指定的行为选项,Json格式,可用于指定消息计数等特殊行为;option中字段不填时表示默认值。
	// option示例:
	// {"badge":false,"needPushNick":false,"route":false}
	// 字段说明:
	// 1. badge:该消息是否需要计入到未读计数中,默认true;
	// 2. needPushNick: 推送文案是否需要带上昵称,不设置该参数时默认false(注意与sendMsg.action接口有别);
	// 3. route: 该消息是否需要抄送第三方;默认true (需要app开通消息抄送功能);
	// 是否必须: false
	Option string `json:"option,omitempty"`

	// 发自定义通知时,是否强制推送
	// 是否必须: false
	IsForcePush string `json:"isForcePush,omitempty"`

	// 发自定义通知时,强制推送文案,最长500个字符
	// 是否必须: false
	ForcePushContent string `json:"forcePushContent,omitempty"`

	// 发自定义通知时,强推列表是否为群里除发送者外的所有有效成员
	// 是否必须: false
	ForcePushAll string `json:"forcePushAll,omitempty"`

	// 发自定义通知时,强推列表,格式为JSONArray,如"accid1","accid2"
	// 是否必须: false
	ForcePushList string `json:"forcePushList,omitempty"`
}

type SuperteamSendMsgParam

type SuperteamSendMsgParam struct {
	// 群tid
	// 是否必须: true
	Tid string `json:"tid"`

	// 消息发送者accid,必须是群成员
	// 是否必须: true
	FromAccid string `json:"fromAccid"`

	// 0 表示文本消息,
	// 1 表示图片,
	// 2 表示语音,
	// 3 表示视频,
	// 4 表示地理位置信息,
	// 6 表示文件,
	// 100 自定义消息类型(特别注意,对于未对接易盾反垃圾功能的应用,该类型的消息不会提交反垃圾系统检测)
	// 是否必须: true
	Type string `json:"type"`

	// 最大长度5000字符,JSON格式。
	// 具体请参考: 消息格式示例
	// 是否必须: true
	Body string `json:"body"`

	// 对于对接了易盾反垃圾功能的应用,本消息是否需要指定经由易盾检测的内容(antispamCustom)。
	// true或false, 默认false。
	// 只对消息类型为:100 自定义消息类型 的消息生效。
	// 是否必须: false
	Antispam string `json:"antispam,omitempty"`

	// 在antispam参数为true时生效。
	// 自定义的反垃圾检测内容, JSON格式,长度限制同body字段,不能超过5000字符,要求antispamCustom格式如下:
	// {"type":1,"data":"custom content"}
	// 字段说明:
	// 1. type: 1:文本,2:图片。
	// 2. data: 文本内容or图片地址。
	// 是否必须: false
	AntispamCustom string `json:"antispamCustom,omitempty"`

	// 可选,单条消息是否使用易盾反垃圾,可选值为0。
	// 0:(在开通易盾的情况下)不使用易盾反垃圾而是使用通用反垃圾,包括自定义消息。
	// 若不填此字段,即在默认情况下,若应用开通了易盾反垃圾功能,则使用易盾反垃圾来进行垃圾消息的判断。
	// 是否必须: false
	UseYidun string `json:"useYidun,omitempty"`

	// 可选,易盾反垃圾增强反作弊专属字段,限制json,长度限制1024字符(详见易盾反垃圾接口文档反垃圾防刷版专属字段)
	// 是否必须: false
	YidunAntiCheating string `json:"yidunAntiCheating,omitempty"`

	// 发消息时特殊指定的行为选项,JSON格式,可用于指定消息的漫游,存云端历史,发送方多端同步,消息抄送等特殊行为;option中字段不填时表示默认值 ,option示例:
	// {"roam":true,"history":false,"sendersync":true,"route":false}
	// 字段说明:
	// 1. roam: 该消息是否需要漫游,默认true(需要app开通漫游消息功能);
	// 2. history: 该消息是否存云端历史,默认true;
	// 3. sendersync: 该消息是否需要发送方多端同步,默认true;
	// 4. route: 该消息是否需要抄送第三方;默认true (需要app开通消息抄送功能);
	// 5. persistent: 是否需要存离线消息,不设置该参数时默认true;
	// 6. push: 该消息是否需要推送,默认true;
	// 7. badge: 该消息是否需要计入到未读计数中,默认true;
	// 8. needPushNick: 推送文案是否需要带上昵称,默认true;
	// 是否必须: false
	Option string `json:"option,omitempty"`

	// 开发者扩展字段,长度限制1024字符
	// 是否必须: false
	Ext string `json:"ext,omitempty"`

	// 推送内容,不超过500字符
	// 是否必须: false
	PushContent string `json:"pushContent,omitempty"`

	// 推送对应的payload,必须是JSON,不能超过2k字符
	// 是否必须: false
	PushPayload string `json:"pushPayload,omitempty"`

	// 发送消息时,是否强制推送
	// 是否必须: false
	IsForcePush string `json:"isForcePush,omitempty"`

	// 发送消息时,强制推送的内容
	// 是否必须: false
	ForcePushContent string `json:"forcePushContent,omitempty"`

	// 发送消息时,强推(@操作)列表是否为群里除发送者外的所有有效成员
	// 是否必须: false
	ForcePushAll string `json:"forcePushAll,omitempty"`

	// 发送消息时,强推(@操作)列表,格式为JSONArray,如"accid1","accid2"
	// 是否必须: false
	ForcePushList string `json:"forcePushList,omitempty"`

	// 所属环境,根据env可以配置不同的抄送地址
	// 是否必须: false
	Env string `json:"env,omitempty"`
}

type SuperteamUpdateTinfoParam

type SuperteamUpdateTinfoParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主或管理员用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 群名称,最大长度64字符
	// 是否必须: false
	Tname string `json:"tname,omitempty"`

	// 群描述,最大长度512字符
	// 是否必须: false
	Intro string `json:"intro,omitempty"`

	// 群公告,最大长度1024字符
	// 是否必须: false
	Announcement string `json:"announcement,omitempty"`

	// 自定义群扩展属性,第三方可以根据此属性自定义扩展自己的群属性,最大长度1024字符
	// 是否必须: false
	ServerCustom string `json:"serverCustom,omitempty"`

	// 群头像,最大长度1024字符
	// 是否必须: false
	Icon string `json:"icon,omitempty"`

	// 申请入群模式,0-入群不需要申请,1-入群需要申请,2-不允许申请入群。其它返回414
	// 是否必须: false
	Joinmode string `json:"joinmode,omitempty"`

	// 谁可以邀请他人入群,0-管理员(默认),1-所有人。其它返回414
	// 是否必须: false
	Invitemode string `json:"invitemode,omitempty"`

	// 谁可以修改群资料,0-管理员(默认),1-所有人。其它返回414
	// 是否必须: false
	Uptinfomode string `json:"uptinfomode,omitempty"`

	// 谁可以更新群自定义属性,0-管理员(默认),1-所有人。其它返回414
	// 是否必须: false
	Upcustommode string `json:"upcustommode,omitempty"`

	// 邀请同意模式,0-邀请需要同意(默认),1-邀请不需要同意。其它返回414
	// 是否必须: false
	Beinvitemode string `json:"beinvitemode,omitempty"`
}

type SuperteamUpdateTlistParam

type SuperteamUpdateTlistParam struct {
	// 云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 要修改的用户对应的accid
	// 是否必须: true
	Accid string `json:"accid"`

	// 1:关闭消息提醒,0:打开消息提醒,其他值无效
	// 是否必须: false
	SilentType string `json:"silentType,omitempty"`

	// 群成员昵称,最大长度32字符
	// 是否必须: false
	Nick string `json:"nick,omitempty"`

	// 自定义扩展字段,最大长度32字符
	// 是否必须: false
	Custom string `json:"custom,omitempty"`
}

type TeamAddManagerParam

type TeamAddManagerParam struct {
	// 网易云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// ["aaa","bbb"](JSONArray对应的accid,如果解析出错会报414),长度最大1024字符(一次添加最多10个管理员)
	// 是否必须: true
	Members string `json:"members"`
}

type TeamAddParam

type TeamAddParam struct {
	// 网易云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 用户帐号,最大长度32字符,按照群属性invitemode传入
	// 是否必须: true
	Owner string `json:"owner"`

	// ["aaa","bbb"](JSONArray对应的accid,如果解析出错会报414),一次最多拉200个成员
	// 是否必须: true
	Members string `json:"members"`

	// 管理后台建群时,0不需要被邀请人同意加入群,1需要被邀请人同意才可以加入群。其它会返回414
	// 是否必须: true
	Magree int `json:"magree"`

	// 邀请发送的文字,最大长度150字符
	// 是否必须: true
	Msg string `json:"msg"`

	// 自定义扩展字段,最大长度512
	// 是否必须: false
	Attach string `json:"attach,omitempty"`
}

type TeamChangeOwnerParam

type TeamChangeOwnerParam struct {
	// 网易云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 新群主帐号,最大长度32字符
	// 是否必须: true
	Newowner string `json:"newowner"`

	// 1:群主解除群主后离开群,2:群主解除群主后成为普通成员。其它414
	// 是否必须: true
	Leave int `json:"leave"`
}

type TeamCreateParam

type TeamCreateParam struct {
	// 群名称,最大长度64字符
	// 是否必须: true
	Tname string `json:"tname"`

	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 邀请的群成员列表。["aaa","bbb"](JSONArray对应的accid,如果解析出错会报414),members与owner总和上限为200。members中无需再加owner自己的账号。
	// 是否必须: true
	Members string `json:"members"`

	// 群公告,最大长度1024字符
	// 是否必须: false
	Announcement string `json:"announcement,omitempty"`

	// 群描述,最大长度512字符
	// 是否必须: false
	Intro string `json:"intro,omitempty"`

	// 邀请发送的文字,最大长度150字符
	// 是否必须: true
	Msg string `json:"msg"`

	// 管理后台建群时,0不需要被邀请人同意加入群,1需要被邀请人同意才可以加入群。其它会返回414
	// 是否必须: true
	Magree int `json:"magree"`

	// 群建好后,sdk操作时,0不用验证,1需要验证,2不允许任何人加入。其它返回414
	// 是否必须: true
	Joinmode int `json:"joinmode"`

	// 自定义高级群扩展属性,第三方可以跟据此属性自定义扩展自己的群属性。(建议为json),最大长度1024字符
	// 是否必须: false
	Custom string `json:"custom,omitempty"`

	// 群头像,最大长度1024字符
	// 是否必须: false
	Icon string `json:"icon,omitempty"`

	// 被邀请人同意方式,0-需要同意(默认),1-不需要同意。其它返回414
	// 是否必须: false
	Beinvitemode int `json:"beinvitemode,omitempty"`

	// 谁可以邀请他人入群,0-管理员(默认),1-所有人。其它返回414
	// 是否必须: false
	Invitemode int `json:"invitemode,omitempty"`

	// 谁可以修改群资料,0-管理员(默认),1-所有人。其它返回414
	// 是否必须: false
	Uptinfomode int `json:"uptinfomode,omitempty"`

	// 谁可以更新群自定义属性,0-管理员(默认),1-所有人。其它返回414
	// 是否必须: false
	Upcustommode int `json:"upcustommode,omitempty"`

	// 该群最大人数(包含群主),范围:2至应用定义的最大群人数(默认:200)。其它返回414
	// 是否必须: false
	TeamMemberLimit int `json:"teamMemberLimit,omitempty"`
}

type TeamGetMarkReadInfoParam

type TeamGetMarkReadInfoParam struct {
	// 群id,群唯一标识,创建群时会返回
	// 是否必须: true
	Tid int64 `json:"tid"`

	// 发送群已读业务消息时服务器返回的消息ID
	// 是否必须: true
	Msgid int64 `json:"msgid"`

	// 消息发送者账号
	// 是否必须: true
	FromAccid string `json:"fromAccid"`

	// 是否返回已读、未读成员的accid列表,默认为false
	// 是否必须: false
	Snapshot bool `json:"snapshot,omitempty"`
}

type TeamJoinTeamsParam

type TeamJoinTeamsParam struct {
	// 要查询用户的accid
	// 是否必须: true
	Accid string `json:"accid"`
}

type TeamKickParam

type TeamKickParam struct {
	// 网易云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 管理员的accid,用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 被移除人的accid,用户账号,最大长度32字符;注:member或members任意提供一个,优先使用member参数
	// 是否必须: false
	Member string `json:"member,omitempty"`

	// ["aaa","bbb"](JSONArray对应的accid,如果解析出错,会报414)一次最多操作200个accid; 注:member或members任意提供一个,优先使用member参数
	// 是否必须: false
	Members string `json:"members,omitempty"`

	// 自定义扩展字段,最大长度512
	// 是否必须: false
	Attach string `json:"attach,omitempty"`
}

type TeamLeaveParam

type TeamLeaveParam struct {
	// 网易云信服务器产生,群唯一标识,创建群时会返回
	// 是否必须: true
	Tid string `json:"tid"`

	// 退群的accid
	// 是否必须: true
	Accid string `json:"accid"`
}

type TeamListTeamMuteParam

type TeamListTeamMuteParam struct {
	// 网易云信服务器产生,群唯一标识,创建群时会返回
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主的accid
	// 是否必须: true
	Owner string `json:"owner"`
}

type TeamMuteTeamParam

type TeamMuteTeamParam struct {
	// 网易云信服务器产生,群唯一标识,创建群时会返回
	// 是否必须: true
	Tid string `json:"tid"`

	// 要操作的群成员accid
	// 是否必须: true
	Accid string `json:"accid"`

	// 1:关闭消息提醒,2:打开消息提醒,其他值无效
	// 是否必须: true
	Ope int `json:"ope"`
}

type TeamMuteTlistAllParam

type TeamMuteTlistAllParam struct {
	// 网易云信服务器产生,群唯一标识,创建群时会返回
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主的accid
	// 是否必须: true
	Owner string `json:"owner"`

	// true:禁言,false:解禁(mute和muteType至少提供一个,都提供时按mute处理)
	// 是否必须: false
	Mute string `json:"mute,omitempty"`

	// 禁言类型 0:解除禁言,1:禁言普通成员 3:禁言整个群(包括群主)
	// 是否必须: false
	MuteType int `json:"muteType,omitempty"`
}

type TeamMuteTlistParam

type TeamMuteTlistParam struct {
	// 网易云信服务器产生,群唯一标识,创建群时会返回
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主accid
	// 是否必须: true
	Owner string `json:"owner"`

	// 禁言对象的accid
	// 是否必须: true
	Accid string `json:"accid"`

	// 1-禁言,0-解禁
	// 是否必须: true
	Mute int `json:"mute"`
}

type TeamQueryDetailParam

type TeamQueryDetailParam struct {
	// 群id,群唯一标识,创建群时会返回
	// 是否必须: true
	Tid int64 `json:"tid"`
}

type TeamQueryParam

type TeamQueryParam struct {
	// 群id列表,如["3083","3084"]
	// 是否必须: true
	Tids string `json:"tids"`

	// 1表示带上群成员列表,0表示不带群成员列表,只返回群信息
	// 是否必须: true
	Ope int `json:"ope"`

	// 是否忽略无效的tid,默认为false。设置为true时将忽略无效tid,并在响应结果中返回无效的tid
	// 是否必须: false
	IgnoreInvalid bool `json:"ignoreInvalid,omitempty"`
}

type TeamRemoveManagerParam

type TeamRemoveManagerParam struct {
	// 网易云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// ["aaa","bbb"](JSONArray对应的accid,如果解析出错会报414),长度最大1024字符(一次解除最多10个管理员)
	// 是否必须: true
	Members string `json:"members"`
}

type TeamRemoveParam

type TeamRemoveParam struct {
	// 网易云信服务器产生,群唯一标识,创建群时会返回,最大长度128字符
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`
}

type TeamUpdateParam

type TeamUpdateParam struct {
	// 网易云信服务器产生,群唯一标识,创建群时会返回
	// 是否必须: true
	Tid string `json:"tid"`

	// 群名称,最大长度64字符
	// 是否必须: false
	Tname string `json:"tname,omitempty"`

	// 群主用户帐号,最大长度32字符
	// 是否必须: true
	Owner string `json:"owner"`

	// 群公告,最大长度1024字符
	// 是否必须: false
	Announcement string `json:"announcement,omitempty"`

	// 群描述,最大长度512字符
	// 是否必须: false
	Intro string `json:"intro,omitempty"`

	// 群建好后,sdk操作时,0不用验证,1需要验证,2不允许任何人加入。其它返回414
	// 是否必须: false
	Joinmode int `json:"joinmode,omitempty"`

	// 自定义高级群扩展属性,第三方可以跟据此属性自定义扩展自己的群属性。(建议为json),最大长度1024字符
	// 是否必须: false
	Custom string `json:"custom,omitempty"`

	// 群头像,最大长度1024字符
	// 是否必须: false
	Icon string `json:"icon,omitempty"`

	// 被邀请人同意方式,0-需要同意(默认),1-不需要同意。其它返回414
	// 是否必须: false
	Beinvitemode int `json:"beinvitemode,omitempty"`

	// 谁可以邀请他人入群,0-管理员(默认),1-所有人。其它返回414
	// 是否必须: false
	Invitemode int `json:"invitemode,omitempty"`

	// 谁可以修改群资料,0-管理员(默认),1-所有人。其它返回414
	// 是否必须: false
	Uptinfomode int `json:"uptinfomode,omitempty"`

	// 谁可以更新群自定义属性,0-管理员(默认),1-所有人。其它返回414
	// 是否必须: false
	Upcustommode int `json:"upcustommode,omitempty"`

	// 该群最大人数(包含群主),范围:2至应用定义的最大群人数(默认:200)。其它返回414
	// 是否必须: false
	TeamMemberLimit int `json:"teamMemberLimit,omitempty"`
}

type TeamUpdateTeamNickParam

type TeamUpdateTeamNickParam struct {
	// 群唯一标识,创建群时网易云信服务器产生并返回
	// 是否必须: true
	Tid string `json:"tid"`

	// 群主 accid
	// 是否必须: true
	Owner string `json:"owner"`

	// 要修改群昵称的群成员 accid
	// 是否必须: true
	Accid string `json:"accid"`

	// accid 对应的群昵称,最大长度32字符
	// 是否必须: false
	Nick string `json:"nick,omitempty"`

	// 自定义扩展字段,最大长度1024字节
	// 是否必须: false
	Custom string `json:"custom,omitempty"`
}

type UserBlockParam

type UserBlockParam struct {
	// 网易云信IM账号,最大长度32字符,必须保证一个
	// APP内唯一
	// 是否必须: true
	Accid string `json:"accid"`

	// 是否踢掉被禁用户,true或false,默认false
	// 是否必须: false
	Needkick string `json:"needkick,omitempty"`

	// 踢人时的扩展字段,SDK版本需要大于等于v7.7.0
	// 是否必须: false
	KickNotifyExt string `json:"kickNotifyExt,omitempty"`
}

type UserCreateParam

type UserCreateParam struct {
	// 网易云信IM账号,最大长度32字符,必须保证一个
	// APP内唯一(只允许字母、数字、半角下划线_、
	// @、半角点以及半角-组成,不区分大小写,
	// 会统一小写处理,请注意以此接口返回结果中的accid为准)。
	// 是否必须: true
	Accid string `json:"accid"`

	// 网易云信IM账号昵称,最大长度64字符。
	// 是否必须: false
	Name string `json:"name,omitempty"`

	// json属性,开发者可选填,最大长度1024字符。该参数已不建议使用。
	// 是否必须: false
	Props string `json:"props,omitempty"`

	// 网易云信IM账号头像URL,开发者可选填,最大长度1024
	// 是否必须: false
	Icon string `json:"icon,omitempty"`

	// 网易云信IM账号可以指定登录IM token值,最大长度128字符,
	// 并更新,如果未指定,会自动生成token,并在
	// 创建成功后返回
	// 是否必须: false
	Token string `json:"token,omitempty"`

	// 用户签名,最大长度256字符
	// 是否必须: false
	Sign string `json:"sign,omitempty"`

	// 用户email,最大长度64字符
	// 是否必须: false
	Email string `json:"email,omitempty"`

	// 用户生日,最大长度16字符
	// 是否必须: false
	Birth string `json:"birth,omitempty"`

	// 用户mobile,最大长度32字符,非中国大陆手机号码需要填写国家代码(如美国:+1-xxxxxxxxxx)或地区代码(如香港:+852-xxxxxxxx)
	// 是否必须: false
	Mobile string `json:"mobile,omitempty"`

	// 用户性别,0表示未知,1表示男,2女表示女,其它会报参数错误
	// 是否必须: false
	Gender int `json:"gender,omitempty"`

	// 用户名片扩展字段,最大长度1024字符,用户可自行扩展,建议封装成JSON字符串
	// 是否必须: false
	Ex string `json:"ex,omitempty"`
}

type UserGetUinfosParam

type UserGetUinfosParam struct {
	// 用户帐号(例如:JSONArray对应的accid串,如:["zhangsan"],如果解析出错,会报414)(一次查询最多为200)
	// 是否必须: true
	Accids string `json:"accids"`
}

type UserListBlackAndMuteListParam

type UserListBlackAndMuteListParam struct {
	// 用户帐号,最大长度32字符,必须保证一个
	// APP内唯一
	// 是否必须: true
	Accid string `json:"accid"`
}

type UserMuteParam

type UserMuteParam struct {
	// 用户帐号
	// 是否必须: true
	Accid string `json:"accid"`

	// 是否全局禁言:
	// true:全局禁言,false:取消全局禁言
	// 是否必须: true
	Mute bool `json:"mute"`
}

type UserRefreshTokenParam

type UserRefreshTokenParam struct {
	// 网易云信IM账号,最大长度32字符,必须保证一个
	// APP内唯一
	// 是否必须: true
	Accid string `json:"accid"`
}

type UserSetDonnopParam

type UserSetDonnopParam struct {
	// 用户帐号
	// 是否必须: true
	Accid string `json:"accid"`

	// 桌面端在线时,移动端是否不推送:
	// true:移动端不需要推送,false:移动端需要推送
	// 是否必须: true
	DonnopOpen string `json:"donnopOpen"`
}

type UserSetSpecialRelationParam

type UserSetSpecialRelationParam struct {
	// 用户帐号,最大长度32字符,必须保证一个
	// APP内唯一
	// 是否必须: true
	Accid string `json:"accid"`

	// 被加黑或加静音的帐号
	// 是否必须: true
	TargetAcc string `json:"targetAcc"`

	// 本次操作的关系类型,1:黑名单操作,2:静音列表操作
	// 是否必须: true
	RelationType int `json:"relationType"`

	// 操作值,0:取消黑名单或静音,1:加入黑名单或静音
	// 是否必须: true
	Value int `json:"value"`
}

type UserUnblockParam

type UserUnblockParam struct {
	// 网易云信IM账号,最大长度32字符,必须保证一个
	// APP内唯一
	// 是否必须: true
	Accid string `json:"accid"`
}

type UserUpdateParam

type UserUpdateParam struct {
	// 网易云信IM账号,最大长度32字符,必须保证一个
	// APP内唯一
	// 是否必须: true
	Accid string `json:"accid"`

	// 该参数已不建议使用。
	// 是否必须: false
	Props string `json:"props,omitempty"`

	// 网易云信IM账号可以指定登录token值,最大长度128字符
	// 是否必须: false
	Token string `json:"token,omitempty"`
}

type UserUpdateUinfoParam

type UserUpdateUinfoParam struct {
	// 用户帐号,最大长度32字符,必须保证一个APP内唯一
	// 是否必须: true
	Accid string `json:"accid"`

	// 用户昵称,最大长度64字符,可设置为空字符串
	// 是否必须: false
	Name string `json:"name,omitempty"`

	// 用户头像,最大长度1024字节,可设置为空字符串
	// 是否必须: false
	Icon string `json:"icon,omitempty"`

	// 用户签名,最大长度256字符,可设置为空字符串
	// 是否必须: false
	Sign string `json:"sign,omitempty"`

	// 用户email,最大长度64字符,可设置为空字符串
	// 是否必须: false
	Email string `json:"email,omitempty"`

	// 用户生日,最大长度16字符,可设置为空字符串
	// 是否必须: false
	Birth string `json:"birth,omitempty"`

	// 用户mobile,最大长度32字符,非中国大陆手机号码需要填写国家代码(如美国:+1-xxxxxxxxxx)或地区代码(如香港:+852-xxxxxxxx),可设置为空字符串
	// 是否必须: false
	Mobile string `json:"mobile,omitempty"`

	// 用户性别,0表示未知,1表示男,2女表示女,其它会报参数错误
	// 是否必须: false
	Gender int `json:"gender,omitempty"`

	// 用户名片扩展字段,最大长度1024字符,用户可自行扩展,建议封装成JSON字符串,也可以设置为空字符串
	// 是否必须: false
	Ex string `json:"ex,omitempty"`
}

type YunxinIM

type YunxinIM struct {
	AppKey    string
	AppSecret string

	// 自定义处理日志(错误信息)
	LogHandler func(err error)
	// 自定义随机数
	RandHandler func() string
	// 自定义 Http 客户端
	HttpClient *http.Client
}

func (*YunxinIM) DoPost

func (y *YunxinIM) DoPost(uri string, v interface{}, contentType string) *ImResp

func (*YunxinIM) Format

func (*YunxinIM) Format(v interface{}) ([]byte, error)

func (*YunxinIM) PostFrom

func (y *YunxinIM) PostFrom(uri string, v interface{}) *ImResp

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL