# 结构体

# Bot

type Bot struct {
	Config Config
}
1
2
3
字段名 类型 说明
Config Config 机器人配置

# Config

type Config struct {
	Loglvl   int
	Host     string
	MasterQQ string
	Path     string
	MsgAwait bool
}
1
2
3
4
5
6
7
字段名 类型 说明
Loglvl int 输出的日志最低等级
Host string 对应机器人程序的WebSocket地址
MasterQQ string 机器人主人的QQ号码
Path string WebSocket请求的路径
MsgAwait bool 是否开启消息随机延迟功能

# FriendAdd

type FriendAdd struct {
	Time    int64 // 事件发生的时间戳
	SelfId int64 // 收到事件的机器人 QQ 号
	UserId int64 // 新添加好友 QQ 号
}
1
2
3
4
5
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
UserId int64 新添加好友 QQ 号

# FriendRecall

type FriendRecall struct {
	Time       int64 //	事件发生的时间戳
	SelfId    int64 //	收到事件的机器人 QQ 号
	UserId    int64 //	消息发送者 QQ 号
	MessageId int64 //	被撤回的消息 ID
}
1
2
3
4
5
6
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
UserId int64 消息发送者 QQ 号
MessageId int64 被撤回的消息 ID

# FriendRequest

type FriendRequest struct {
	Time    int64  //	事件发生的时间戳
	SelfId int64  //	收到事件的机器人 QQ 号
	UserId int64  //	发送请求的 QQ 号
	Comment string //	验证信息
	Flag    string //	请求 flag,在调用处理请求的 API 时需要传入
}
1
2
3
4
5
6
7
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
UserId int64 发送请求的 QQ 号
Comment string 验证信息
Flag string 请求 flag,在调用处理请求的 API 时需要传入

# GroupAdmin

type GroupAdmin struct {
	Time     int64  // 事件发生的时间戳
	SelfId  int64  // 收到事件的机器人 QQ 号
	SubType string // set|unset	事件子类型,分别表示设置和取消管理员
	GroupId int64  // 群号
	UserId  int64  // 管理员 QQ 号
}
1
2
3
4
5
6
7
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
SubType string set|unset 事件子类型,分别表示设置和取消管理员
GroupId int64 群号
UserId int64 管理员 QQ 号

# GroupBan

type GroupBan struct {
	Time        int64  //	事件发生的时间戳
	SelfId     int64  //	收到事件的机器人 QQ 号
	SubType    string //	ban、lift_ban	事件子类型,分别表示禁言、解除禁言
	GroupId    int64  //	群号
	OperatorId int64  //	操作者 QQ 号
	UserId     int64  //	被禁言 QQ 号
	Duration    int64  //	禁言时长,单位秒
}
1
2
3
4
5
6
7
8
9
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
SubType string ban、lift_ban 事件子类型,分别表示禁言、解除禁言
GroupId int64 群号
OperatorId int64 操作者 QQ 号
UserId int64 被禁言 QQ 号
Duration int64 禁言时长,单位秒

# GroupDecrease

type GroupDecrease struct {
	Time        int64  //	事件发生的时间戳
	SelfId     int64  //	收到事件的机器人 QQ 号
	SubType    string //	leave|kick|kick_me	事件子类型,分别表示主动退群、成员被踢、登录号被踢
	GroupId    int64  //	群号
	OperatorId int64  //	操作者 QQ 号(如果是主动退群,则和 UserId 相同)
	UserId     int64  //	离开者 QQ 号
}
1
2
3
4
5
6
7
8
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
SubType string leave|kick|kick_me 事件子类型,分别表示主动退群、成员被踢、登录号被踢
GroupId int64 群号
OperatorId int64 操作者 QQ 号(如果是主动退群,则和 UserId 相同)
UserId int64 离开者 QQ 号

# GroupIncrease

type GroupIncrease struct {
	Time        int64  //	事件发生的时间戳
	SelfId     int64  //	收到事件的机器人 QQ 号
	SubType    string // approve|invite	事件子类型,分别表示管理员已同意入群、管理员邀请入群
	GroupId    int64  //	群号
	OperatorId int64  //	操作者 QQ 号
	UserId     int64  //	加入者 QQ 号
}
1
2
3
4
5
6
7
8
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
SubType string approve|invite 事件子类型,分别表示管理员已同意入群、管理员邀请入群
GroupId int64 群号
OperatorId int64 操作者 QQ 号
UserId int64 加入者 QQ 号

# GroupRecall

type GroupRecall struct {
	Time        int64 // 事件发生的时间戳
	SelfId     int64 // 收到事件的机器人 QQ 号
	GroupId    int64 // 群号
	UserId     int64 // 消息发送者 QQ 号
	OperatorId int64 // 操作者 QQ 号
	MessageId  int64 // 被撤回的消息 ID
}
1
2
3
4
5
6
7
8
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
GroupId int64 群号
UserId int64 消息发送者 QQ 号
OperatorId int64 操作者 QQ 号
MessageId int64 被撤回的消息 ID

# GroupRequest

type GroupRequest struct {
	Time     int64  //	事件发生的时间戳
	SelfId  int64  //	收到事件的机器人 QQ 号
	SubType string //	add、invite	请求子类型,分别表示加群请求、邀请登录号入群
	GroupId int64  //	群号
	UserId  int64  //	发送请求的 QQ 号
	Comment  string //	验证信息
	Flag     string //	请求 flag,在调用处理请求的 API 时需要传入
}
1
2
3
4
5
6
7
8
9
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
SubType string add、invite 请求子类型,分别表示加群请求、邀请登录号入群
GroupId int64 群号
UserId int64 发送请求的 QQ 号
Comment string 验证信息
Flag string 请求 flag,在调用处理请求的 API 时需要传入

# GroupUpload

type GroupUpload struct {
	Time     int64 //	事件发生的时间戳
	SelfId  int64 //	收到事件的机器人 QQ 号
	GroupId int64 //	群号
	UserId  int64 //	发送者 QQ 号
	File     struct {
		Id    string //	文件 ID
		Name  string //	文件名
		Size  int64  //	文件大小(字节数)
		Busid int64
	} //	文件信息
}
1
2
3
4
5
6
7
8
9
10
11
12
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
GroupId int64 群号
UserId int64 发送者 QQ 号
File File[] 文件信息

文件信息

字段名 类型 说明
Id string 文件 ID
Name string 文件名
Size int64 文件大小(字节数)
Busid int64 文件类型

# LongEvent

type LongEvent struct {
	UserID   int64
	GroupID  int64
	Channel  *chan string
	EventKey string
	EventID  string
}
1
2
3
4
5
6
7
字段名 类型 说明
UserID int64 触发事件的用户QQ
GroupID int64 触发事件所在的QQ群号
Channel *chan string 对应事件的频道
EventKey string 事件键值
EventID string 事件内部ID

# MessageGroup

type MessageGroup struct {
	SelfID    int64  // 收到事件的机器人 QQ 号
	SubType   string // 消息子类型 正常消息是 normal 匿名消息是 anonymous 系统提示是 notice
	MessageID int64  // 消息 ID
	GroupID   int64  // 群号
	UserID    int64  // 发送者 QQ 号
	Anonymous struct {
		Id   int64  // 匿名用户 ID
		Name string // 匿名用户名称
		Flag string // 匿名用户 flag,在调用禁言 API 时需要传入
	} //	匿名信息,如果不是匿名消息则为 null
	Message    string // 消息内容
	RawMessage string //	原始消息内容
	Sender     struct {
		UserID   int64  // 发送者 QQ 号
		Nickname string // 昵称
		Card     string // 群名片/备注
		Sex      string // 性别,male 或 female 或 unknown
		Age      int64  // 年龄
		Area     string // 地区
		Level    string // 成员等级
		Role     string // 角色,owner 或 admin 或 member
		Title    string // 专属头衔
	} // 发送人信息
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
字段名 类型 说明
SelfID int64 收到事件的机器人 QQ 号
SubType string 消息子类型 正常消息是 normal 匿名消息是 anonymous 系统提示是 notice
MessageID int64 消息 ID
GroupID int64 群号
UserID int64 发送者 QQ 号
Anonymous Anonymous[] 匿名信息,如果不是匿名消息则为 null
Message string 消息内容
RawMessage string 原始消息内容
Sender Sender[] 发送人信息

Anonmyous:

字段名 类型 说明
Id int64 匿名用户 ID
Name string 匿名用户名称
Flag string 匿名用户 flag,在调用禁言 API 时需要传入

Sender:

字段名 类型 说明
UserID int64 发送者 QQ 号
Nickname string 昵称
Card string 群名片/备注
Sex string 性别,male 或 female 或 unknown
Age int64 年龄
Area string 地区
Level string 成员等级
Role string 角色,owner 或 admin 或 member
Title string 专属头衔

# MessagePrivate

type MessagePrivate struct {
	SelfID     int64  // 收到事件的机器人 QQ 号
	SubType    string // 消息子类型(friend,group,other)
	MessageID  int64  // 消息id
	UserID     int64  // 发送者 QQ 号
	Message    string // 消息内容
	RawMessage string // 原始消息内容
	Sender     struct {
		UserID   int64  // 发送者 QQ 号
		Nickname string // 昵称
		Sex      string // 性别,male 或 female 或 unknown
		Age      int64  // 年龄
	} // 发送人信息
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
字段名 类型 说明
SelfID int64 收到事件的机器人 QQ 号
SubType string 消息子类型(friend,group,other)
MessageID int64 消息id
UserID int64 发送者 QQ 号
Message string 消息内容
RawMessage string 原始消息内容
Sender Sender[] 发送人信息

Sender:

字段名 类型 说明
UserID int64 发送者 QQ 号
Nickname string 昵称
Sex string 性别,male 或 female 或 unknown
Age int64 年龄

# MetaHeartbeat

type MetaHeartbeat struct {
	Time     int64       //	事件发生的时间戳
	SelfId  int64       //	收到事件的机器人 QQ 号
	Status   interface{} //	状态信息
	Interval int64       //	到下次心跳的间隔,单位毫秒
}
1
2
3
4
5
6
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
Status interface{} 状态信息
Interval int64 到下次心跳的间隔,单位毫秒

# MetaLifecycle

type MetaLifecycle struct {
	Time     int64  //	事件发生的时间戳
	SelfId  int64  //	收到事件的机器人 QQ 号
	SubType string // enable、disable、connect	事件子类型,分别表示 OneBot 启用、停用、WebSocket 连接成功
}
1
2
3
4
5
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
SubType string enable、disable、connect 事件子类型,分别表示 OneBot 启用、停用、WebSocket 连接成功

# Notify

type Notify struct {
	Time       int64  // 事件发生的时间戳
	SelfId    int64  // 收到事件的机器人 QQ 号
	SubType   string // poke|lucky_king|honor	提示类型:戳一戳|红包运气王|荣誉
	GroupId   int64  // 群号
	UserId    int64  // 发送者 QQ 号|红包发送者 QQ 号|成员 QQ 号
	TargetId  int64  // 被戳者 QQ 号|运气王 QQ 号 //!仅在戳一戳|运气王事件中有值
	Honor_type string // talkative|performer|emotion	荣誉类型:龙王|群聊之火|快乐源泉 //!仅在荣誉事件中有值
}
1
2
3
4
5
6
7
8
9
字段名 类型 说明
Time int64 事件发生的时间戳
SelfId int64 收到事件的机器人 QQ 号
SubType string poke|lucky_king|honor 提示类型:戳一戳|红包运气王|荣誉
GroupId int64 群号
UserId int64 发送者 QQ 号|红包发送者 QQ 号|成员 QQ 号
TargetId int64 被戳者 QQ 号|运气王 QQ 号 //!仅在戳一戳|运气王事件中有值
Honor_type string talkative|performer|emotion 荣誉类型:龙王|群聊之火|快乐源泉 //!仅在荣誉事件中有值