Documentation
¶
Index ¶
- Variables
- func CastInt64ToString(nativeValue int64) string
- func CastStringToInt64(str string) int64
- func ExecCommand(command string, args ...string) (string, error)
- func MergeConfigList(dest *[]Config, lists ...[]Config)
- func MergeGoMiraiMessageList(dest *[]gomirai.Message, lists ...[]gomirai.Message)
- func ParseJsonObj(obj interface{}, callDepth int) ([]string, []string)
- type Config
- type ConfigType
- type Control
- type ControlType
- type Do
- type Event
- type EventType
- type Message
- func (message *Message) AddDetail(detail MessageDetail)
- func (message *Message) CompleteContent(event Event)
- func (message *Message) CompleteType()
- func (message *Message) DeepCopy() Message
- func (message *Message) ToGoMiraiMessageList() ([]gomirai.Message, bool)
- func (message Message) ToString() string
- type MessageDetail
- type MessageType
- type Operation
- type OperationType
- type Receiver
- type ReceiverType
- type Sender
- type SenderType
- type SingalType
- type When
Constants ¶
This section is empty.
Variables ¶
var ConfigRoot string = "../../config"
var DataRoot = "../../data"
var DefaultConfigFileName string = "default.yml"
var FaceMapFullPath string = "../../config/face-map.yml"
var ImageFolder string = "../../mirai/plugins/MiraiAPIHTTP/images"
var PlguinFolder string = "../../plugins"
var RssDataFileName = "rss.yml"
var SettingFullPath string = "../../mirai/plugins/MiraiAPIHTTP/setting.yml"
Functions ¶
func CastInt64ToString ¶
func CastStringToInt64 ¶
func MergeConfigList ¶
func MergeGoMiraiMessageList ¶
func ParseJsonObj ¶
Types ¶
type Config ¶
type Config struct { InnerID int64 `json:"-"` Type ConfigType `json:"-"` IsCount bool `json:"-"` RssURL string `yaml:"url" json:"url"` CountID string `yaml:"countID" json:"countID"` Cron string `yaml:"cron" json:"cron"` When When `yaml:"when" json:"when"` Do Do `yaml:"do" json:"do"` }
func (*Config) CompleteContent ¶
func (*Config) CompleteType ¶
func (config *Config) CompleteType()
type ConfigType ¶
type ConfigType int
ConfigType 配置类型
const ( // ConfigTypeGlobal 全局生效的配置类型 ConfigTypeGlobal ConfigType = iota // ConfigTypeFriend 仅对好友消息生效的配置类型 ConfigTypeFriend // ConfigTypeGroup 仅对群消息生效的配置类型 ConfigTypeGroup //ConfigTypeCrontab 定时执行的配置 ConfigTypeCrontab )
type Control ¶
type Control struct { InnerType ControlType `json:"-"` Type string `yaml:"type" json:"type"` GroupIDList []string `yaml:"group" json:"group"` UserIDList []string `yaml:"user" json:"user"` }
func (*Control) CompleteContent ¶
func (*Control) CompleteType ¶
func (control *Control) CompleteType()
type ControlType ¶
type ControlType int
const ( // ControlTypeSuspend 挂起机器人 ControlTypeSuspend ControlType = iota // ControlTypeActive 激活机器人 ControlTypeActive // ControlTypeDestory 终止机器人 ControlTypeDestory // ControlTypeRestart 重启机器人 ControlTypeRestart // ControlTypeBlock 屏蔽指定消息接收者 ControlTypeBlock // ControlTypeUnblock 取消被屏蔽的一些消息接收者 ControlTypeUnblock )
type Do ¶
type Do struct { IsCount bool `yaml:"isCount" json:"isCount"` Message Message `yaml:"message" json:"message"` OperationList []Operation `yaml:"operation" json:"operation"` ControlList []Control `yaml:"control" json:"control"` }
func (*Do) AddOperation ¶
type Event ¶
type Event struct { Type EventType MessageID int64 Sender Sender MessageList []Message OperationList []Operation PreDefVarMap map[string]string }
Event 事件 @property Type EventType 事件类型 @property MessageID int64 接收到的消息ID @property SenderList []Sender 消息发送者列表。如果为群消息则 index=0 为群信息, index=1 为发送消息的成员信息 @property MessageList []Message 接收到的消息列表 @property OperationList []Operation 接收到的事件/操作列表 @property PreDefVarMap map[string]string 预定义变量 Map
func NewEventFromGoMiraiEvent ¶
NewEventFromGoMiraiEvent 从 gomirai.InEvent 中构造一个 Event @param goMiraiEvent gomirai.InEvent 事件
func (*Event) AddPerDefVar ¶ added in v0.1.4
type EventType ¶
type EventType int
EventType 事件类型
const ( // EventTypeGroupMessage 群消息事件类型 EventTypeGroupMessage EventType = iota // EventTypeFriendMessage 好友消息事件类型 EventTypeFriendMessage // EventTypeMemberMute 群成员禁言事件类型 EventTypeMemberMute // EventTypeGroupMuteAll 全员禁言事件类型 EventTypeGroupMuteAll // EventTypeGroupUnMuteAll 解除全员禁言事件类型 EventTypeGroupUnMuteAll // EventTypeMemberUnmute 解除群成员禁言事件类型 EventTypeMemberUnmute // EventTypeMemberJoin 新成员入群事件类型 EventTypeMemberJoin // EventTypeMemberLeaveByKick 踢人事件类型 EventTypeMemberLeaveByKick // EventTypeMemberLeaveByQuit 群成员自行退群事件类型 EventTypeMemberLeaveByQuit )
func CastGoMiraiEventTypeToEventType ¶
CastGoMiraiEventTypeToEventType 将 GoMiaraiEventType 转化为 EventType
type Message ¶
type Message struct { IsQuote bool `yaml:"quote" json:"quote"` Sender Sender `yaml:"sender" json:"sender"` Receiver Receiver `yaml:"receiver" json:"receiver"` DetailList []MessageDetail `yaml:"detail" json:"detail"` }
func NewMessageFromGoMiraiMessage ¶
func NewMessageFromGoMiraiMessage(goMiraiEvent gomirai.InEvent, goMiraiMessage gomirai.Message) (Message, error)
NewMessageFromGoMiraiMessage 从 gomirai.Message 中 构造一个 Message @param goMiraiMessage gomirai.Message
func (*Message) AddDetail ¶
func (message *Message) AddDetail(detail MessageDetail)
func (*Message) CompleteContent ¶
func (*Message) CompleteType ¶
func (message *Message) CompleteType()
func (*Message) ToGoMiraiMessageList ¶
ToGoMiraiMessage 将 Message 转换为 gomirai.Message
type MessageDetail ¶
type MessageDetail struct { InnerType MessageType `json:"-"` UserID string `yaml:"userID" json:"userID"` GroupID string `yaml:"groupID" json:"groupID"` Type string `yaml:"type" json:"type"` Text string `yaml:"text" json:"text"` Regex string `yaml:"regex" json:"regex"` URL string `yaml:"url" json:"url"` JSON bool `yaml:"json" json:"json"` Path string `yaml:"path" json:"path"` ReDirect bool `yaml:"reDirect" json:"reDirect"` FaceID int64 FaceName string `yaml:"faceName" json:"faceName"` }
func (*MessageDetail) CompleteContent ¶
func (detail *MessageDetail) CompleteContent(preDefVarMap map[string]string)
func (*MessageDetail) CompleteType ¶
func (detail *MessageDetail) CompleteType()
func (*MessageDetail) DeepCopy ¶
func (detail *MessageDetail) DeepCopy() MessageDetail
func (*MessageDetail) ToGoMiraiMessage ¶
func (detail *MessageDetail) ToGoMiraiMessage() (gomirai.Message, bool)
type MessageType ¶
type MessageType int
MessageType 消息类型
const ( // MessageTypePlain 文本消息类型 MessageTypePlain MessageType = iota // MessageTypeImage 图片消息类型 MessageTypeImage // MessageTypeFace 表情消息类型 MessageTypeFace // MessageTypeEvent 事件消息类型 MessageTypeEvent // MessageTypeXML XML消息类型 MessageTypeXML MessageTypeAt MessageTypeAtAll )
type Operation ¶
type Operation struct { InnerType OperationType `json:"-"` Type string `yaml:"type" json:"type"` GroupID string `yaml:"groupID" json:"groupID"` GroupName string `json:"-"` OperatorID int64 `json:"-"` OperatorName string `json:"-"` UserID string `yaml:"userID" json:"userID"` UserName string Second string `yaml:"second" json:"second"` }
func (*Operation) CompleteContent ¶
func (*Operation) CompleteType ¶
func (operation *Operation) CompleteType()
func (*Operation) ToGoMiraiMessage ¶
type OperationType ¶
type OperationType int
OperationType 操作/事件类型
const ( // OperationTypeMemberMute 禁言群成员操作类型 OperationTypeMemberMute OperationType = iota // OperationTypeMemberUnMute 解除群成员禁言操作类型 OperationTypeMemberUnMute // OperationTypeGroupMuteAll 全员禁言操作类型 OperationTypeGroupMuteAll // OperationTypeGroupUnMuteAll 解除全员禁言操作类型 OperationTypeGroupUnMuteAll // OperationTypeMemberJoin 新成员入群事件类型 OperationTypeMemberJoin // OperationTypeMemberLeaveByKick 踢人事件类型 OperationTypeMemberLeaveByKick // OperationTypeMemberLeaveByQuit 成员自行退运事件类型 OperationTypeMemberLeaveByQuit OperationTypeAt OperationTypeAtAll )
type Receiver ¶
type Receiver struct { GroupIDList []string `yaml:"group" json:"group"` UserIDList []string `yaml:"user" json:"user"` }
Receiver ... @property Type SenderType Sender 的类型 @property ID int64 Sender 的QQ号 @property Name string Sender 的名称 @property Permission string Sender 其它信息
func (*Receiver) AddGroupID ¶
func (*Receiver) CompleteContent ¶
type ReceiverType ¶
type ReceiverType int
ReceiverType Sender 的类型
const ( // ReceiverTypeGroup Sender 是群 ReceiverTypeGroup ReceiverType = iota // ReceiverTypeUser Sender 是QQ用户 ReceiverTypeUser )
type Sender ¶
type Sender struct { GroupIDList []string `yaml:"group" json:"group"` UserIDList []string `yaml:"user" json:"user"` }
Sender ... @property Type SenderType Sender 的类型 @property ID int64 Sender 的QQ号 @property Name string Sender 的名称 @property Permission string Sender 其它信息
func (*Sender) AddGroupID ¶
func (*Sender) CompleteContent ¶
type SenderType ¶
type SenderType int
SenderType Sender 的类型
const ( // SenderTypeFriend Sender 是好友 SenderTypeFriend SenderType = iota // SenderTypeGroup Sender 是群 SenderTypeGroup // SenderTypeMember Sender 是群成员 SenderTypeMember // SenderTypeUser Sender 是QQ用户 SenderTypeUser )