hoom

package module
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Oct 1, 2022 License: GPL-3.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var TokenNotValid = errors.New("Token not valid")

Functions

func Logger added in v0.1.0

func Logger() logger.Logger

func RandUint64

func RandUint64() (v uint64)

func SetLogger added in v0.1.0

func SetLogger(l logger.Logger)

Types

type AuthedMember

type AuthedMember struct {
	Member
	// contains filtered or unexported fields
}

func LogMember

func LogMember(id uint32, name string) *AuthedMember

func (*AuthedMember) Dial

func (m *AuthedMember) Dial(server *net.TCPAddr) (c *Client, err error)

func (*AuthedMember) GetMem

func (m *AuthedMember) GetMem() *Member

func (*AuthedMember) NewServer

func (m *AuthedMember) NewServer(addr *net.TCPAddr) *Server

type CbindPkt

type CbindPkt struct {
	Mem *Member
	// contains filtered or unexported fields
}

func (*CbindPkt) Ask

func (p *CbindPkt) Ask() (res pio.PacketBase, err error)

func (*CbindPkt) ParseFrom

func (p *CbindPkt) ParseFrom(r encoding.Reader) (err error)

func (*CbindPkt) PktId

func (p *CbindPkt) PktId() uint32

func (*CbindPkt) WriteTo

func (p *CbindPkt) WriteTo(w encoding.Writer) (err error)

type CdialPkt

type CdialPkt struct {
	MemId uint32
	Token *RoomToken
	// contains filtered or unexported fields
}

func (*CdialPkt) Ask

func (p *CdialPkt) Ask() (res pio.PacketBase, err error)

func (*CdialPkt) ParseFrom

func (p *CdialPkt) ParseFrom(r encoding.Reader) (err error)

func (*CdialPkt) PktId

func (p *CdialPkt) PktId() uint32

func (*CdialPkt) WriteTo

func (p *CdialPkt) WriteTo(w encoding.Writer) (err error)

type CjoinPkt

type CjoinPkt struct {
	RoomId uint32
	// contains filtered or unexported fields
}

func (*CjoinPkt) Ask

func (p *CjoinPkt) Ask() (res pio.PacketBase, err error)

func (*CjoinPkt) ParseFrom

func (p *CjoinPkt) ParseFrom(r encoding.Reader) (err error)

func (*CjoinPkt) PktId

func (p *CjoinPkt) PktId() uint32

func (*CjoinPkt) WriteTo

func (p *CjoinPkt) WriteTo(w encoding.Writer) (err error)

type CleavePkt

type CleavePkt struct {
	RoomId uint32
	// contains filtered or unexported fields
}

func (*CleavePkt) Ask

func (p *CleavePkt) Ask() (res pio.PacketBase, err error)

func (*CleavePkt) ParseFrom

func (p *CleavePkt) ParseFrom(r encoding.Reader) (err error)

func (*CleavePkt) PktId

func (p *CleavePkt) PktId() uint32

func (*CleavePkt) WriteTo

func (p *CleavePkt) WriteTo(w encoding.Writer) (err error)

type Client

type Client struct {
	// contains filtered or unexported fields
}

func (*Client) Close

func (c *Client) Close() (err error)

func (*Client) Context

func (c *Client) Context() context.Context

func (*Client) Dial

func (c *Client) Dial(id uint32) (conn io.ReadWriteCloser, err error)

func (*Client) GetRoom

func (c *Client) GetRoom(id uint32) (r *Room)

func (*Client) Join

func (c *Client) Join(id uint32) (err error)

func (*Client) Ping

func (c *Client) Ping() (ping time.Duration, err error)

func (*Client) Rooms

func (c *Client) Rooms() (rooms []*Room)

type Desc added in v0.1.0

type Desc struct {
	Name  string
	Value string
}

type Member

type Member struct {
	// contains filtered or unexported fields
}

func NewMember

func NewMember(id uint32, name string) *Member

func (*Member) Id

func (m *Member) Id() uint32

func (*Member) Name

func (m *Member) Name() string

func (*Member) ParseFrom

func (m *Member) ParseFrom(r encoding.Reader) (err error)

func (*Member) WriteTo

func (m *Member) WriteTo(w encoding.Writer) (err error)

type Room

type Room struct {
	// contains filtered or unexported fields
}

func (*Room) AddDesc added in v0.1.0

func (r *Room) AddDesc(desc Desc)

func (*Room) Desc added in v0.1.0

func (r *Room) Desc() []Desc

func (*Room) GetMember

func (r *Room) GetMember(id uint32) (m *Member)

func (*Room) Id

func (r *Room) Id() uint32

func (*Room) Kick

func (r *Room) Kick(id uint32, reason string) (err error)

func (*Room) MemLen

func (r *Room) MemLen() int

func (*Room) Members

func (r *Room) Members() (mems []*Member)

func (*Room) Name

func (r *Room) Name() string

func (*Room) Owner

func (r *Room) Owner() *Member

func (*Room) ParseFrom

func (r *Room) ParseFrom(rd encoding.Reader) (err error)

func (*Room) Server

func (r *Room) Server() *Server

func (*Room) SetDesc added in v0.1.0

func (r *Room) SetDesc(desc []Desc)

func (*Room) SetName

func (r *Room) SetName(name string)

func (*Room) Target

func (r *Room) Target() *net.TCPAddr

func (*Room) WriteTo

func (r *Room) WriteTo(w encoding.Writer) (err error)

type RoomToken

type RoomToken struct {
	RoomId uint32
	MemId  uint32
	Token  uint64
	Sign   []byte
}

func (*RoomToken) ParseFrom

func (t *RoomToken) ParseFrom(r encoding.Reader) (err error)

func (*RoomToken) WriteTo

func (t *RoomToken) WriteTo(w encoding.Writer) (err error)

type SerrorPkt

type SerrorPkt struct {
	Error string
}

func NewSerror

func NewSerror(err error) *SerrorPkt

func (*SerrorPkt) ParseFrom

func (p *SerrorPkt) ParseFrom(r encoding.Reader) (err error)

func (*SerrorPkt) PktId

func (p *SerrorPkt) PktId() uint32

func (*SerrorPkt) WriteTo

func (p *SerrorPkt) WriteTo(w encoding.Writer) (err error)

type Server

type Server struct {
	Addr     *net.TCPAddr
	Listener *net.TCPListener
	// contains filtered or unexported fields
}

func (*Server) GetRoom

func (s *Server) GetRoom(id uint32) (r *Room)

func (*Server) Kick

func (s *Server) Kick(rid uint32, mid uint32, reason string) (err error)

func (*Server) Listen

func (s *Server) Listen() (err error)

func (*Server) ListenAddr

func (s *Server) ListenAddr() *net.TCPAddr

func (*Server) ListenAndServe

func (s *Server) ListenAndServe() (err error)

func (*Server) NewRoom

func (s *Server) NewRoom(name string, target *net.TCPAddr) (r *Room)

func (*Server) PopConn

func (s *Server) PopConn(mid uint32) (ok bool)

func (*Server) PopRoom

func (s *Server) PopRoom(id uint32) (r *Room)

func (*Server) Rooms

func (s *Server) Rooms() (rooms []*Room)

func (*Server) Serve

func (s *Server) Serve() (err error)

func (*Server) Shutdown

func (s *Server) Shutdown() (err error)

type SjoinBPkt

type SjoinBPkt struct {
	RoomId uint32
	Mem    *Member
	// contains filtered or unexported fields
}

func (*SjoinBPkt) ParseFrom

func (p *SjoinBPkt) ParseFrom(r encoding.Reader) (err error)

func (*SjoinBPkt) PktId

func (p *SjoinBPkt) PktId() uint32

func (*SjoinBPkt) Trigger

func (p *SjoinBPkt) Trigger() (err error)

func (*SjoinBPkt) WriteTo

func (p *SjoinBPkt) WriteTo(w encoding.Writer) (err error)

type SjoinPkt

type SjoinPkt struct {
	Room  *Room
	Token *RoomToken
	// contains filtered or unexported fields
}

func (*SjoinPkt) ParseFrom

func (p *SjoinPkt) ParseFrom(r encoding.Reader) (err error)

func (*SjoinPkt) PktId

func (p *SjoinPkt) PktId() uint32

func (*SjoinPkt) WriteTo

func (p *SjoinPkt) WriteTo(w encoding.Writer) (err error)

type SleaveBPkt

type SleaveBPkt struct {
	RoomId uint32
	MemId  uint32
	// contains filtered or unexported fields
}

func (*SleaveBPkt) ParseFrom

func (p *SleaveBPkt) ParseFrom(r encoding.Reader) (err error)

func (*SleaveBPkt) PktId

func (p *SleaveBPkt) PktId() uint32

func (*SleaveBPkt) Trigger

func (p *SleaveBPkt) Trigger() (err error)

func (*SleaveBPkt) WriteTo

func (p *SleaveBPkt) WriteTo(w encoding.Writer) (err error)

type SleavePkt

type SleavePkt struct {
	RoomId uint32
	Reason string
	// contains filtered or unexported fields
}

func (*SleavePkt) ParseFrom

func (p *SleavePkt) ParseFrom(r encoding.Reader) (err error)

func (*SleavePkt) PktId

func (p *SleavePkt) PktId() uint32

func (*SleavePkt) WriteTo

func (p *SleavePkt) WriteTo(w encoding.Writer) (err error)

Directories

Path Synopsis
_example
cmds

Jump to

Keyboard shortcuts

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