service

package
v0.0.0-...-9be9f3c Latest Latest
Warning

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

Go to latest
Published: Sep 17, 2019 License: MIT Imports: 22 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CmdEnter    uint32 = 10000 //登入
	CmdSendChat uint32 = 10017 //发聊天消息
)
View Source
const (
	InformPlayerSendChat uint32 = 20019 //通知玩家发聊天消息
)
View Source
const (
	ReportClientOffline uint32 = 40001
)

Variables

View Source
var (
	ErrorInvalidToken       = errors.New("invalid token")
	ErrorNotOnTable         = errors.New("not on table")
	ErrorBadRequest         = errors.New("seat not empty")
	ErrorBadFrame           = errors.New("bad frame")
	ErrorInvalidProtocol    = errors.New("invalid protocol")
	ErrorClientDisconnected = errors.New("client end disconnected")
)

Functions

func DecodeGRPCSendChatReq

func DecodeGRPCSendChatReq(_ context.Context, request interface{}) (interface{}, error)

sendChat

func EncodeGRPCSendChatRes

func EncodeGRPCSendChatRes(_ context.Context, response interface{}) (interface{}, error)

func EndpointInstrumentingMiddleware

func EndpointInstrumentingMiddleware(duration metrics.Histogram) endpoint.Middleware

func EndpointLoggingMiddleware

func EndpointLoggingMiddleware(logger log.Logger) endpoint.Middleware

EndpointLoggingMiddleware returns an endpoint middleware that logs the duration of each invocation, and the resulting error, if any.

func MakeGRPCHandler

func MakeGRPCHandler(endpoints Endpoints, tracer stdopentracing.Tracer, logger log.Logger) pb.GameServiceServer

func MakeSendChatEndpoint

func MakeSendChatEndpoint(s GameService) endpoint.Endpoint

func NewAirfone

func NewAirfone(stream pb.GameService_StreamServer, logger log.Logger) (af airfone)

func NewUserCenter

func NewUserCenter(serviceName string, etcdAddr []string, retryMax int, retryTimeout time.Duration, logger log.Logger) (uc *userCenter, err error)

Types

type Endpoints

type Endpoints struct {
	Logger           log.Logger
	SendChatEndpoint endpoint.Endpoint
}

type ErrCode

type ErrCode int32
var (
	//客户端错误
	BadRequest      ErrCode = 400
	Unauthorized    ErrCode = 401
	Forbidden       ErrCode = 403
	BadFrame        ErrCode = 460
	InvalidProtocol ErrCode = 461
	//服务器错误
	InternalServerError ErrCode = 500

	UnknowError ErrCode = 521
)

type GameService

type GameService interface {
	SendChat(ctx context.Context, id gamer.UserID, mid int32, msg string) (err error)
}

func NewGameService

func NewGameService(fir gamer.RoomOptions, uc *userCenter, logger log.Logger) GameService

type Middleware

type Middleware func(GameService) GameService

func ServiceInstrumentingMiddleware

func ServiceInstrumentingMiddleware(requestCount metrics.Counter, requestLatency metrics.Histogram) Middleware

func ServiceLoggingMiddleware

func ServiceLoggingMiddleware(logger log.Logger) Middleware

Jump to

Keyboard shortcuts

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