35 lines
535 B
Go
35 lines
535 B
Go
package ms_api
|
|
|
|
import "time"
|
|
|
|
// 消息服务
|
|
type IMsgServer interface {
|
|
// 获取消息服务名
|
|
GetChannel() string
|
|
|
|
// 发送消息间隔时间,单位ms
|
|
GetInterval() time.Duration
|
|
|
|
// 构造定时发送的消息
|
|
OnTick() ([]*TopicMsg, error)
|
|
|
|
// 当发生错误时执行的逻辑
|
|
OnError(err error)
|
|
}
|
|
|
|
// 消息实体
|
|
type TopicMsg struct {
|
|
// 通道
|
|
Channel string
|
|
|
|
// 消息内容
|
|
Data []byte
|
|
}
|
|
|
|
func NewTopicMsg(channel string, data []byte) *TopicMsg {
|
|
return &TopicMsg{
|
|
Channel: channel,
|
|
Data: data,
|
|
}
|
|
}
|