protocol

package
v0.5.5 Latest Latest
Warning

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

Go to latest
Published: Sep 22, 2021 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MessageKey

type MessageKey = uint16
const (
	MessageKeyHeartbeat   MessageKey = 0xffff // MessageKeyHeartbeat heartbeat message
	MessageKeyEmit        MessageKey = iota   // MessageKeyEmit Emit request, no response
	MessageKeyAckRequest                      // MessageKeyAckRequest Emit request, wait for response (ack)
	MessageKeyAckResponse                     // MessageKeyAckResponse ack response
)

type Packet

type Packet interface {
	Key() uint16
	Id() uint64
	Event() string
	Body() []byte
	NewReplyPacket(data []byte) Packet
}

type Protocol

type Protocol interface {
	NewPacket(key MessageKey, id uint64, event string, data []byte) Packet
	WritePacket(p Packet, w io.Writer) (int, error)
	ReadPacket(r io.Reader) (Packet, error)
}

func NewDefaultProtocol

func NewDefaultProtocol() Protocol

Jump to

Keyboard shortcuts

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