push

package
v0.0.0-...-2aa8555 Latest Latest
Warning

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

Go to latest
Published: Jan 6, 2021 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrNoSubscribers = errors.New("topis has not been subscribed")
)
View Source
var (
	ErrTopicInvalid = errors.New("TopicInvalid")
)

Functions

func OnOfflineRequest

func OnOfflineRequest(cid, topic string, subers []string, message, cookie []byte) *callback.OnOfflineRequest

func Service

func Service(appkey, key, service string) (string, error)

Service parse service name .if service can not exist, return default service name

Types

type Datum

type Datum struct {
	store.Storage
	// contains filtered or unexported fields
}

func NewDatum

func NewDatum(config *conf.Store, connd conncli.Connd) (*Datum, error)

type OfflineFunc

type OfflineFunc func(ctx context.Context, service string, request *callback.OnOfflineRequest) (*callback.OnOfflineReply, error)

type Publish

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

func NewPublish

func NewPublish(config *conf.Publish, store *Datum, offlineFunc OfflineFunc) *Publish

func (*Publish) DeleteQueue

func (ps *Publish) DeleteQueue(ctx context.Context, req *pb.DeleteQueueRequest) (*pb.DeleteQueueReply, error)

DeleteQueue is not used

func (*Publish) Deregister

func (ps *Publish) Deregister() error

func (*Publish) Publish

func (ps *Publish) Publish(ctx context.Context, req *pb.PublishRequest) (*pb.PublishReply, error)

Publish biz send messages

func (*Publish) Register

func (ps *Publish) Register(cc clientv3.Config, addr string) error

type Push

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

func NewPush

func NewPush(config *conf.Push, call callback.Callback, store *Datum) *Push

func (*Push) AddRoute

func (ph *Push) AddRoute(ctx context.Context, req *pb.AddRouteReq) (*pb.AddRouteResp, error)

Addroute add router to topic

func (*Push) Connect

func (ph *Push) Connect(ctx context.Context, req *pb.ConnectReq) (*pb.ConnectResp, error)

Connect Handle the client link request to notify the business client to login and handle the single concurrent connection problem.

func (*Push) DelUnack

func (ph *Push) DelUnack(ctx context.Context, req *pb.DelUnackReq) (*pb.DelUnackResp, error)

DelUnack server recv the ack of message that client send

func (*Push) Deregister

func (ph *Push) Deregister() error

func (*Push) Disconnect

func (ph *Push) Disconnect(ctx context.Context, req *pb.DisconnectReq) (*pb.DisconnectResp, error)

Disconnect connection disconnect

func (*Push) MQTTPublish

func (ph *Push) MQTTPublish(ctx context.Context, req *pb.PublishReq) (*pb.PublishResp, error)

MQTTPublish client publishs a message to topic

func (*Push) PostSubscribe

func (ph *Push) PostSubscribe(ctx context.Context, req *pb.PostSubscribeReq) (*pb.PostSubscribeResp, error)

PostSubscribe client has subscribed

func (*Push) Pubcomp

func (ph *Push) Pubcomp(ctx context.Context, req *pb.PubcompReq) (*pb.PubcompResp, error)

Pubcomp TODO qos 2

func (*Push) Pubrec

func (ph *Push) Pubrec(ctx context.Context, req *pb.PubrecReq) (*pb.PubrecResp, error)

Pubrec TODO qos 2

func (*Push) Pubrel

func (ph *Push) Pubrel(ctx context.Context, req *pb.PubrelReq) (*pb.PubrelResp, error)

Pubrel TODO qos 2

func (*Push) Pull

func (ph *Push) Pull(ctx context.Context, req *pb.PullReq) (*pb.PullResp, error)

Pull conn pull messages

func (*Push) PutUnack

func (ph *Push) PutUnack(ctx context.Context, req *pb.PutUnackReq) (*pb.PutUnackResp, error)

PutUnack record unack messages

func (*Push) RangeUnack

func (ph *Push) RangeUnack(ctx context.Context, req *pb.RangeUnackReq) (*pb.RangeUnackResp, error)

RangeUnack gets a message that does not reply to an ack

func (*Push) Register

func (ph *Push) Register(cc clientv3.Config, addr string) error

func (*Push) RemoveRoute

func (ph *Push) RemoveRoute(ctx context.Context, req *pb.RemoveRouteReq) (*pb.RemoveRouteResp, error)

func (*Push) Subscribe

func (ph *Push) Subscribe(ctx context.Context, req *pb.SubscribeReq) (*pb.SubscribeResp, error)

Subscribe client subscribe topics and qos

func (*Push) Unsubscribe

func (ph *Push) Unsubscribe(ctx context.Context, req *pb.UnsubscribeReq) (*pb.UnsubscribeResp, error)

Unsubscribe client unsubscribe topics

type Server

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

func NewServer

func NewServer(config *conf.Server) (*Server, error)

func (*Server) GracefulStop

func (srv *Server) GracefulStop() error

func (*Server) Serve

func (srv *Server) Serve(lis net.Listener) error

func (*Server) Stop

func (srv *Server) Stop() error

Directories

Path Synopsis
bin
Package message is a generated protocol buffer package.
Package message is a generated protocol buffer package.

Jump to

Keyboard shortcuts

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