12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- package dao
- import (
- "context"
- "encoding/json"
- "go-common/library/log"
- )
- const (
- _pushMsg = "push"
- _broadcastMsg = "broadcast"
- _broadcastRoomMsg = "broadcast_room"
- )
- type pushMsg struct {
- Type string `json:"type,omitempty"`
- Operation int32 `json:"operation,omitempty"`
- Server string `json:"server,omitempty"`
- Keys []string `json:"keys,omitempty"`
- Room string `json:"room,omitempty"`
- Speed int32 `json:"speed,omitempty"`
- Platform string `json:"platform,omitempty"`
- ContentType int32 `json:"content_type,omitempty"`
- Message json.RawMessage `json:"message,omitempty"`
- }
- // PushMsg push a message to databus.
- func (d *Dao) PushMsg(c context.Context, op int32, server, msg string, keys []string, contentType int32) (err error) {
- pushMsg := &pushMsg{
- Type: _pushMsg,
- Operation: op,
- Server: server,
- Keys: keys,
- Message: []byte(msg),
- ContentType: contentType,
- }
- if err = d.pushBus.Send(c, keys[0], pushMsg); err != nil {
- log.Error("PushMsg.send(server:%v,pushMsg:%v).error(%v)", server, pushMsg, err)
- }
- return
- }
- // BroadcastRoomMsg push a message to databus.
- func (d *Dao) BroadcastRoomMsg(c context.Context, op int32, room, msg string, contentType int32) (err error) {
- pushMsg := &pushMsg{
- Type: _broadcastRoomMsg,
- Operation: op,
- Room: room,
- Message: []byte(msg),
- ContentType: contentType,
- }
- if err = d.pushBus.Send(c, room, pushMsg); err != nil {
- log.Error("BroadcastRoomMsg.send(room:%v,pushMsg:%v).error(%v)", room, pushMsg, err)
- }
- return
- }
- // BroadcastMsg push a message to databus.
- func (d *Dao) BroadcastMsg(c context.Context, op, speed int32, msg, platform string, contentType int32) (err error) {
- pushMsg := &pushMsg{
- Operation: op,
- Type: _broadcastMsg,
- Speed: speed,
- Message: []byte(msg),
- Platform: platform,
- ContentType: contentType,
- }
- if err = d.pushBus.Send(c, _broadcastMsg, pushMsg); err != nil {
- log.Error("BroadcastMsg.send(_broadcastMsg:%v,pushMsg:%v).error(%v)", _broadcastMsg, pushMsg, err)
- }
- return
- }
|