ToolsCommunication

package
v5.1.43 Latest Latest
Warning

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

Go to latest
Published: Jul 12, 2024 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	//Sort 分类
	Sort = ClassSort.Sort{
		SortTableName: "tools_communication_sort",
	}
	//Tag 标签
	Tag = ClassTag.Tag{
		TagTableName: "tools_communication_tag",
	}

	//OpenSub 是否启动订阅
	OpenSub = false
)

Functions

func AppendRoomTwo

func AppendRoomTwo(args *ArgsAppendRoomTwo) (roomData FieldsRoom, oneData FieldsFrom, twoData FieldsFrom, err error)

AppendRoomTwo 检查并建立双向聊天房间 两个来源建立,第一个为房主

func CheckOrgAndRoom

func CheckOrgAndRoom(args *ArgsCheckOrgAndRoom) (err error)

func DeleteRoom

func DeleteRoom(args *ArgsDeleteRoom) (err error)

DeleteRoom 删除房间

func Init

func Init()

Init 初始化

func MakeAgoraToken

func MakeAgoraToken(args *ArgsMakeAgoraToken) (data string, err error)

MakeAgoraToken 生成声网token

func OutRoom

func OutRoom(args *ArgsOutRoom) (err error)

OutRoom 退出房间

func Run

func Run()

func UpdateFromExpire

func UpdateFromExpire(args *ArgsUpdateFromExpire) (err error)

UpdateFromExpire 更新来源的到期时

func UpdateRoom

func UpdateRoom(args *ArgsUpdateRoom) (err error)

UpdateRoom 修改房间

func UpdateRoomExpire

func UpdateRoomExpire(args *ArgsUpdateRoomExpire) (err error)

Types

type ArgsAppendRoom

type ArgsAppendRoom struct {
	//房间ID
	RoomID int64 `db:"room_id" json:"roomID" check:"id"`
	//链接方式
	// 0 系统自带TCP握手方式; 1 系统自带RTC方式; 2 第三方agora服务
	ConnectType int `db:"connect_type" json:"connectType" check:"intThan0" empty:"true"`
	//来源系统
	FromSystem int `db:"from_system" json:"fromSystem" check:"intThan0"`
	//来源ID
	FromID int64 `db:"from_id" json:"fromID" check:"id"`
	//昵称
	Name string `db:"name" json:"name" check:"name"`
	//链接token
	// 用于第三方链接用
	Token string `db:"token" json:"token"`
	//是否允许发言
	AllowSend bool `db:"allow_send" json:"allowSend" check:"bool"`
	//角色类型
	// 0 普通; 1 房主; 2 副房主
	Role int `db:"role" json:"role" check:"intThan0" empty:"true"`
	//扩展参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
}

ArgsAppendRoom 加入房间参数

type ArgsAppendRoomTwo

type ArgsAppendRoomTwo struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//链接方式
	// 0 系统自带TCP握手方式; 1 系统自带RTC方式; 2 第三方agora服务
	ConnectType int `db:"connect_type" json:"connectType" check:"intThan0" empty:"true"`
	//通讯类型
	DataType int `db:"data_type" json:"dataType" check:"intThan0"`
	//分类
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//标签
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
	//房间名称
	Name string `db:"name" json:"name" check:"name"`
	//描述
	Des string `db:"des" json:"des" check:"des" min:"1" max:"600" empty:"true"`
	//封面ID
	CoverFileID int64 `db:"cover_file_id" json:"coverFileID" check:"id" empty:"true"`
	//房间链接密码
	Password string `db:"password" json:"password" check:"password" empty:"true"`
	//来源系统
	FromSystem int `db:"from_system" json:"fromSystem" check:"intThan0"`
	//来源ID
	FromID int64 `db:"from_id" json:"fromID" check:"id"`
	//昵称
	FromName string `db:"from_name" json:"fromName" check:"name"`
	//链接方式
	// 0 系统自带TCP握手方式; 1 系统自带RTC方式; 2 第三方agora服务
	FromConnectType int `db:"from_connect_type" json:"fromConnectType" check:"intThan0" empty:"true"`
	//到达系统
	ToSystem int   `db:"to_system" json:"toSystem" check:"intThan0"`
	ToID     int64 `db:"to_id" json:"toID" check:"id"`
	//到达昵称
	ToName string `db:"to_name" json:"toName" check:"name"`
	//链接方式
	// 0 系统自带TCP握手方式; 1 系统自带RTC方式; 2 第三方agora服务
	ToConnectType int `db:"to_connect_type" json:"toConnectType" check:"intThan0" empty:"true"`
}

ArgsAppendRoomTwo 检查并建立双向聊天房间参数

type ArgsCheckFromAndRoom

type ArgsCheckFromAndRoom struct {
	//房间ID
	RoomID int64 `db:"room_id" json:"roomID" check:"id"`
	//来源系统
	FromSystem int `db:"from_system" json:"fromSystem" check:"intThan0"`
	//来源ID
	FromID int64 `db:"from_id" json:"fromID" check:"id"`
}

ArgsCheckFromAndRoom 检查房间和来源关联性参数

type ArgsCheckOrgAndRoom

type ArgsCheckOrgAndRoom struct {
	//房间ID
	RoomID int64 `db:"room_id" json:"roomID" check:"id"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
}

ArgsCheckOrgAndRoom 检查房间和组织参数

type ArgsCreateRoom

type ArgsCreateRoom struct {
	//到期时间
	ExpireAt time.Time `db:"expire_at" json:"expireAt" check:"isoTime"`
	//链接方式
	// 0 系统自带TCP握手方式; 1 系统自带RTC方式; 2 第三方agora服务
	ConnectType int `db:"connect_type" json:"connectType" check:"intThan0" empty:"true"`
	//通讯类型
	DataType int `db:"data_type" json:"dataType" check:"intThan0"`
	//分类
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//标签
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//房间名称
	Name string `db:"name" json:"name" check:"name"`
	//描述
	Des string `db:"des" json:"des" check:"des" min:"1" max:"600" empty:"true"`
	//封面ID
	CoverFileID int64 `db:"cover_file_id" json:"coverFileID" check:"id" empty:"true"`
	//是否公开房间?
	// 私有化房间只允许特定链接链接,否则可以通过公共列表查询到
	IsPublic bool `db:"is_public" json:"isPublic" check:"bool"`
	//房间链接密码
	Password string `db:"password" json:"password" check:"password" empty:"true"`
	//最大人数
	MaxCount int `db:"max_count" json:"maxCount" check:"intThan0"`
	//扩展参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
}

ArgsCreateRoom 创建房间参数

type ArgsDeleteRoom

type ArgsDeleteRoom struct {
	//房间ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//来源
	FromID int64 `db:"from_id" json:"fromID" check:"id" empty:"true"`
}

ArgsDeleteRoom 删除房间参数

type ArgsGetFrom

type ArgsGetFrom struct {
	//来源系统
	FromSystem int `db:"from_system" json:"fromSystem" check:"intThan0"`
	//来源ID
	FromID int64 `db:"from_id" json:"fromID" check:"id"`
}

ArgsGetFrom 检查指定来源数据包参数

type ArgsGetFromList

type ArgsGetFromList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList `json:"pages"`
	//房间ID
	RoomID int64 `db:"room_id" json:"roomID" check:"id" empty:"true"`
	//来源系统
	FromSystem int `db:"from_system" json:"fromSystem" check:"intThan0" empty:"true"`
	//来源ID
	FromID int64 `db:"from_id" json:"fromID" check:"id" empty:"true"`
	//是否允许发言
	NeedAllowSend bool `db:"need_allow_send" json:"needAllowSend" check:"bool"`
	AllowSend     bool `db:"allow_send" json:"allowSend" check:"bool"`
	//角色类型
	// 0 普通; 1 房主; 2 副房主
	Role int `db:"role" json:"role" check:"intThan0" empty:"true"`
	//搜索
	Search string `json:"search" check:"search" empty:"true"`
}

ArgsGetFromList 获取房间的参与列表参数

type ArgsGetFromRoomID

type ArgsGetFromRoomID struct {
	//房间ID
	RoomID int64 `db:"room_id" json:"roomID" check:"id"`
	//来源系统
	FromSystem int `db:"from_system" json:"fromSystem" check:"intThan0"`
	//来源ID
	FromID int64 `db:"from_id" json:"fromID" check:"id"`
}

ArgsGetFromRoomID 检查指定来源数据包参数

type ArgsGetRoom

type ArgsGetRoom struct {
	//房间ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
}

ArgsGetRoom 获取指定房间信息参数

type ArgsGetRoomList

type ArgsGetRoomList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList `json:"pages"`
	//分类
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//标签
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
	//链接方式
	// 0 系统自带TCP握手方式; 1 系统自带RTC方式; 2 第三方agora服务
	ConnectType int `db:"connect_type" json:"connectType" check:"intThan0" empty:"true"`
	//通讯类型
	DataType int `db:"data_type" json:"dataType" check:"intThan0" empty:"true"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//是否公开房间?
	// 私有化房间只允许特定链接链接,否则可以通过公共列表查询到
	IsPublic bool `db:"is_public" json:"isPublic" check:"bool"`
	//是否删除
	IsRemove bool `db:"is_remove" json:"isRemove" check:"bool"`
	//搜索
	Search string `json:"search" check:"search" empty:"true"`
}

ArgsGetRoomList 获取房间列表参数

type ArgsGetRoomMore

type ArgsGetRoomMore struct {
	//ID列
	IDs pq.Int64Array `json:"ids" check:"ids"`
	//是否包含删除数据
	HaveRemove bool `json:"haveRemove" check:"bool"`
}

ArgsGetRoomMore 获取多个房间参数

type ArgsMakeAgoraToken

type ArgsMakeAgoraToken struct {
	//房间ID
	RoomID int64 `db:"room_id" json:"roomID" check:"id"`
	//来源系统
	FromSystem int `db:"from_system" json:"fromSystem" check:"intThan0"`
	//来源ID
	FromID int64 `db:"from_id" json:"fromID" check:"id"`
	//过期时间
	ExpireAt time.Time `db:"expire_at" json:"expireAt"`
	//链接方式
	// 0 系统自带TCP握手方式; 1 系统自带RTC方式; 2 第三方agora服务字符串; 3 第三方agora服务uint32; 4 第三方agora服务字符串trc; 5 第三方agora服务uint32 rtc
	ConnectType int `db:"connect_type" json:"connectType"`
}

ArgsMakeAgoraToken 生成声网token参数

type ArgsOutRoom

type ArgsOutRoom struct {
	//来源ID
	ID int64 `db:"id" json:"id" check:"id"`
	//来源系统
	FromSystem int `db:"from_system" json:"fromSystem" check:"intThan0"`
	//来源ID
	FromID int64 `db:"from_id" json:"fromID" check:"id"`
}

ArgsOutRoom 退出房间参数

type ArgsUpdateFromExpire

type ArgsUpdateFromExpire struct {
	//房间ID
	RoomID int64 `db:"room_id" json:"roomID" check:"id"`
	//来源系统
	FromSystem int `db:"from_system" json:"fromSystem" check:"intThan0"`
	//来源ID
	FromID int64 `db:"from_id" json:"fromID" check:"id"`
}

ArgsUpdateFromExpire 更新来源的到期时间参数

type ArgsUpdateRoom

type ArgsUpdateRoom struct {
	//房间ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//来源
	FromID int64 `db:"from_id" json:"fromID" check:"id" empty:"true"`
	//分类
	SortID int64 `db:"sort_id" json:"sortID" check:"id" empty:"true"`
	//标签
	Tags pq.Int64Array `db:"tags" json:"tags" check:"ids" empty:"true"`
	//到期时间
	ExpireAt time.Time `db:"expire_at" json:"expireAt" check:"isoTime"`
	//房间名称
	Name string `db:"name" json:"name" check:"name"`
	//描述
	Des string `db:"des" json:"des" check:"des" min:"1" max:"600" empty:"true"`
	//封面ID
	CoverFileID int64 `db:"cover_file_id" json:"coverFileID" check:"id" empty:"true"`
	//是否公开房间?
	// 私有化房间只允许特定链接链接,否则可以通过公共列表查询到
	IsPublic bool `db:"is_public" json:"isPublic" check:"bool"`
	//房间链接密码
	Password string `db:"password" json:"password" check:"password" empty:"true"`
	//最大人数
	MaxCount int `db:"max_count" json:"maxCount" check:"intThan0"`
	//扩展参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
}

ArgsUpdateRoom 修改房间参数

type ArgsUpdateRoomExpire

type ArgsUpdateRoomExpire struct {
	//房间ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//来源
	FromID int64 `db:"from_id" json:"fromID" check:"id" empty:"true"`
}

更新房间过期时间 继续延续5分钟

type FieldsFrom

type FieldsFrom struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//到期时间
	ExpireAt time.Time `db:"expire_at" json:"expireAt"`
	//房间ID
	RoomID int64 `db:"room_id" json:"roomID"`
	//来源系统
	// 1 用户; 2 设备
	FromSystem int `db:"from_system" json:"fromSystem"`
	//来源ID
	FromID int64 `db:"from_id" json:"fromID"`
	//昵称
	Name string `db:"name" json:"name"`
	//链接token
	// 用于第三方链接用
	Token string `db:"token" json:"token"`
	//是否允许发言
	AllowSend bool `db:"allow_send" json:"allowSend"`
	//角色类型
	// 0 普通; 1 房主; 2 副房主
	Role int `db:"role" json:"role"`
	//扩展参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
}

FieldsFrom 参与来源

func AppendRoom

func AppendRoom(args *ArgsAppendRoom) (data FieldsFrom, err error)

AppendRoom 加入房间

func CheckFromAndRoom

func CheckFromAndRoom(args *ArgsCheckFromAndRoom) (data FieldsFrom, err error)

CheckFromAndRoom 检查房间和来源关联性

func GetFrom

func GetFrom(args *ArgsGetFrom) (dataList []FieldsFrom, err error)

GetFrom 检查指定来源数据包

func GetFromList

func GetFromList(args *ArgsGetFromList) (dataList []FieldsFrom, dataCount int64, err error)

GetFromList 获取房间的参与列表

func GetFromRoomID

func GetFromRoomID(args *ArgsGetFromRoomID) (data FieldsFrom, err error)

GetFromRoomID 检查指定来源数据包

type FieldsRoom

type FieldsRoom struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//更新时间
	UpdateAt time.Time `db:"update_at" json:"updateAt"`
	//删除时间
	DeleteAt time.Time `db:"delete_at" json:"deleteAt"`
	//到期时间
	ExpireAt time.Time `db:"expire_at" json:"expireAt"`
	//链接方式
	// 0 系统自带TCP握手方式; 1 系统自带RTC方式; 2 第三方agora服务字符串; 3 第三方agora服务uint32; 4 第三方agora服务字符串trc; 5 第三方agora服务uint32 rtc
	ConnectType int `db:"connect_type" json:"connectType"`
	//通讯类型
	DataType int `db:"data_type" json:"dataType"`
	//分类
	SortID int64 `db:"sort_id" json:"sortID"`
	//标签
	Tags pq.Int64Array `db:"tags" json:"tags"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID"`
	//房间名称
	Name string `db:"name" json:"name"`
	//描述
	Des string `db:"des" json:"des"`
	//封面ID
	CoverFileID int64 `db:"cover_file_id" json:"coverFileID"`
	//是否公开房间?
	// 私有化房间只允许特定链接链接,否则可以通过公共列表查询到
	IsPublic bool `db:"is_public" json:"isPublic"`
	//房间链接密码
	Password string `db:"password" json:"password"`
	//最大人数
	MaxCount int `db:"max_count" json:"maxCount"`
	//扩展参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
}

func CreateRoom

func CreateRoom(args *ArgsCreateRoom) (data FieldsRoom, err error)

CreateRoom 创建房间

func GetRoom

func GetRoom(args *ArgsGetRoom) (data FieldsRoom, err error)

GetRoom 获取指定房间信息

func GetRoomList

func GetRoomList(args *ArgsGetRoomList) (dataList []FieldsRoom, dataCount int64, err error)

GetRoomList 获取房间列表

func GetRoomMore

func GetRoomMore(args *ArgsGetRoomMore) (dataList []FieldsRoom, err error)

GetRoomMore 获取多个房间

Jump to

Keyboard shortcuts

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