model

package
v0.0.0-...-6f4ec31 Latest Latest
Warning

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

Go to latest
Published: Sep 3, 2019 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const PUSH_QUEUE_TIMEOUT = 300

Variables

This section is empty.

Functions

func AddClient

func AddClient(client *Client)

func IsUserOnline

func IsUserOnline(appid, uid int64) bool

func NewRoute

func NewRoute(appid int64) model.RouteBase

func RemoveClient

func RemoveClient(client *Client)

Types

type Client

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

func NewClient

func NewClient(conn *net.TCPConn) *Client

func (*Client) ContainAppRoomID

func (client *Client) ContainAppRoomID(id *model.AppRoomID) bool

func (*Client) ContainAppUserID

func (client *Client) ContainAppUserID(id *model.AppUserID) bool

func (*Client) GetAppRoute

func (client *Client) GetAppRoute() *model.AppRoute

func (*Client) HandleMessage

func (client *Client) HandleMessage(msg *model.Message)

func (*Client) HandlePublish

func (client *Client) HandlePublish(amsg *model.AppMessage)

func (*Client) HandlePublishGroup

func (client *Client) HandlePublishGroup(amsg *model.AppMessage)

群聊消息广播

func (*Client) HandlePublishRoom

func (client *Client) HandlePublishRoom(amsg *model.AppMessage)

func (*Client) HandleSubscribe

func (client *Client) HandleSubscribe(id *model.SubscribeMessage)

在线请求

func (*Client) HandleSubscribeRoom

func (client *Client) HandleSubscribeRoom(id *model.AppRoomID)

func (*Client) HandleUnsubscribe

func (client *Client) HandleUnsubscribe(id *model.AppUserID)

离线请求

func (*Client) HandleUnsubscribeRoom

func (client *Client) HandleUnsubscribeRoom(id *model.AppRoomID)

func (*Client) IsAppUserOnline

func (client *Client) IsAppUserOnline(id *model.AppUserID) bool

func (*Client) IsROMApp

func (client *Client) IsROMApp(appid int64) bool

func (*Client) PublishCustomerMessage

func (client *Client) PublishCustomerMessage(appid, receiver int64, cs *model.CustomerMessage, cmd int)

func (*Client) PublishGroupMessage

func (client *Client) PublishGroupMessage(appid int64, receivers []int64, im *model.IMMessage)

func (*Client) PublishPeerMessage

func (client *Client) PublishPeerMessage(appid int64, im *model.IMMessage)

离线消息入apns队列

func (*Client) PublishSystemMessage

func (client *Client) PublishSystemMessage(appid, receiver int64, content string)

func (*Client) Push

func (client *Client) Push()

func (*Client) PushChan

func (client *Client) PushChan(queue_name string, b []byte)

func (*Client) PushQueue

func (client *Client) PushQueue(ps []*Push)

func (*Client) Read

func (client *Client) Read()

func (*Client) Run

func (client *Client) Run()

func (*Client) Write

func (client *Client) Write()

type ClientSet

type ClientSet map[*Client]struct{}

func FindClientSet

func FindClientSet(id *model.AppUserID) ClientSet

func FindRoomClientSet

func FindRoomClientSet(id *model.AppRoomID) ClientSet

func GetClientSet

func GetClientSet() ClientSet

clone clients

func NewClientSet

func NewClientSet() ClientSet

func (ClientSet) Add

func (set ClientSet) Add(c *Client)

func (ClientSet) Clone

func (set ClientSet) Clone() ClientSet

func (ClientSet) Count

func (set ClientSet) Count() int

func (ClientSet) IsMember

func (set ClientSet) IsMember(c *Client) bool

func (ClientSet) Remove

func (set ClientSet) Remove(c *Client)

type Push

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

type Route

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

路由本身有routemanger管理

func (*Route) AddRoomID

func (route *Route) AddRoomID(room_id int64)

将当前房间加入本路由

func (*Route) AddUserID

func (route *Route) AddUserID(uid int64, online bool)

将用户加入该路由

func (*Route) ContainRoomID

func (route *Route) ContainRoomID(room_id int64) bool

判断该路由下是否包含该房间

func (*Route) ContainUserID

func (route *Route) ContainUserID(uid int64) bool

判断用户是否在该路由下

func (*Route) GetAppID

func (route *Route) GetAppID() int64

func (*Route) GetUserIDs

func (route *Route) GetUserIDs() model.IntSet

获取该路由下所有用户

func (*Route) IsUserOnline

func (route *Route) IsUserOnline(uid int64) bool

判断用户是否在线

func (*Route) RemoveRoomID

func (route *Route) RemoveRoomID(room_id int64)

将当前房间移除本路由

func (*Route) RemoveUserID

func (route *Route) RemoveUserID(uid int64)

Jump to

Keyboard shortcuts

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