Documentation
¶
Index ¶
Constants ¶
View Source
const ( // PublishKey 与前端(客户端约定的推送关键字) PublishKey = "publish" // OfflineTopicByUserIdKey 踢除,将用户某个topic踢下线 OfflineTopicByUserIdKey = "offline_topic_by_userid" // OfflineTopicKey 针对某个topic进行踢除 OfflineTopicKey = "offline_topic" // OfflineUserKey 将某个用户踢下线 OfflineUserKey = "offline_user" SourceClient FireSource = "client" SourceLogic FireSource = "logic" SourceSystem FireSource = "system" )
Variables ¶
View Source
var ( // ErrorClose 连接关闭的错误信息 ErrorClose = errors.New("firetower is collapsed") // ErrorBlock block错误信息 ErrorBlock = errors.New("network congestion") )
Functions ¶
This section is empty.
Types ¶
type DefaultCoder ¶
type DefaultCoder struct{}
func (*DefaultCoder) Encode ¶
func (c *DefaultCoder) Encode(msg *FireInfo) []byte
type FireInfo ¶
type FireInfo struct { Context FireLife `json:"c"` MessageType int `json:"t"` Message TopicMessage `json:"m"` }
FireInfo 接收的消息结构体
type FireLife ¶
type FireLife struct { ID string `json:"i"` StartTime time.Time `json:"t"` ClientID string `json:"c"` UserID string `json:"u"` Source FireSource `json:"s"` ExtMeta map[string]string `json:"e,omitempty"` }
FireLife 客户端推送消息的结构体
func (*FireLife) Reset ¶
func (f *FireLife) Reset(source FireSource, clientID, userID string)
type FireSource ¶
type FireSource string
type SinglePusher ¶
type SinglePusher struct {
// contains filtered or unexported fields
}
func DefaultPusher ¶
func DefaultPusher(b Brazier, coder Coder, logger *zap.Logger) *SinglePusher
func (*SinglePusher) Publish ¶
func (s *SinglePusher) Publish(fire *FireInfo) error
func (*SinglePusher) Receive ¶
func (s *SinglePusher) Receive() chan *FireInfo
type TopicMessage ¶
type TopicMessage struct { Topic string `json:"topic"` Data json.RawMessage `json:"data"` // 可能是个json Type string `json:"type"` }
TopicMessage 话题信息结构体
func (*TopicMessage) Json ¶
func (s *TopicMessage) Json() []byte
type WebSocketMessage ¶
Click to show internal directories.
Click to hide internal directories.