relay

package
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 25, 2020 License: MIT Imports: 8 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidPeerSession = errors.New("relay: Require cellnet.Session")
)

Functions

func Relay

func Relay(sesDetector, msg interface{}, contextIDList ...int64) error

sesDetector: 提供要发送到的目标session, 发送msg消息,并携带ContextID

func ResoleveInboundEvent

func ResoleveInboundEvent(inputEvent cellnet.Event) (ouputEvent cellnet.Event, handled bool)

处理入站的relay消息

func ResolveOutboundEvent

func ResolveOutboundEvent(inputEvent cellnet.Event) (handled bool)

处理relay.Relay出站消息的日志

func SetBroadcaster

func SetBroadcaster(callback BroadcasterFunc)

设置广播函数, 回调时,按对应Peer/Session所在的队列中调用

Types

type BroadcasterFunc

type BroadcasterFunc func(event *RecvMsgEvent)

type RecvMsgEvent

type RecvMsgEvent struct {
	Ses cellnet.Session
	Msg interface{}

	ContextID []int64
}

func (*RecvMsgEvent) Message

func (self *RecvMsgEvent) Message() interface{}

func (*RecvMsgEvent) OneContextID

func (self *RecvMsgEvent) OneContextID() int64

func (*RecvMsgEvent) RelayBack

func (self *RecvMsgEvent) RelayBack(msg interface{})

消息原路返回

func (*RecvMsgEvent) Session

func (self *RecvMsgEvent) Session() cellnet.Session

type RelayACK

type RelayACK struct {
	MsgID     uint16
	Data      []byte
	ContextID []int64
}

func (*RelayACK) String

func (self *RelayACK) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL