mqtt

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Apr 8, 2020 License: GPL-3.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

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

Client ...

func NewClient

func NewClient(mqtt *Mqtt, name string) *Client

NewClient ...

func (*Client) OnMsgArrived added in v0.2.0

func (m *Client) OnMsgArrived(ctx context.Context, client gmqtt.Client, msg packets.Message)

OnMsgArrived ...

func (*Client) Publish

func (m *Client) Publish(topic string, payload []byte) (err error)

Publish ...

func (*Client) Subscribe

func (m *Client) Subscribe(topic string, handler MessageHandler) (err error)

Subscribe ...

func (*Client) Unsubscribe added in v0.2.0

func (m *Client) Unsubscribe(topic string)

Unsubscribe ...

func (*Client) UnsubscribeAll added in v0.2.0

func (m *Client) UnsubscribeAll()

UnsubscribeAll ...

type IMQTT added in v0.1.0

type IMQTT interface {
	Run()
	Stop(ctx context.Context) error
	// SubscriptionStore returns the subscription.Store.
	SubscriptionStore() subscription.Store
	// RetainedStore returns the retained.Store.
	RetainedStore() retained.Store
	// PublishService returns the PublishService
	PublishService() gmqtt.PublishService
	// Client return the client specified by clientID.
	Client(clientID string) gmqtt.Client
	// GetConfig returns the config of the server
	GetConfig() gmqtt.Config
	// GetStatsManager returns StatsManager
	GetStatsManager() gmqtt.StatsManager
}

IMQTT ...

type IManagement added in v0.0.20

type IManagement interface {
	GetClients(limit, offset int) (list []*management.ClientInfo, total int, err error)
	GetClient(clientId string) (client *management.ClientInfo, err error)
	GetSessions(limit, offset int) (list []*management.SessionInfo, total int, err error)
	GetSession(clientId string) (session *management.SessionInfo, err error)
	GetSubscriptions(clientId string, limit, offset int) (list []*management.SubscriptionInfo, total int, err error)
	Subscribe(clientId, topic string, qos int) (err error)
	Unsubscribe(clientId, topic string) (err error)
	Publish(topic string, qos int, payload []byte, retain bool) (err error)
	CloseClient(clientId string) (err error)
	SearchTopic(query string) (result []*management.SubscriptionInfo, err error)
}

IManagement ...

type Message added in v0.2.0

type Message struct {
	Dup      bool
	Qos      uint8
	Retained bool
	Topic    string
	PacketID uint16
	Payload  []byte
}

Message ...

type MessageHandler added in v0.2.0

type MessageHandler func(*Client, Message)

MessageHandler ...

type Mqtt

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

Mqtt ...

func NewMqtt

func NewMqtt(cfg *MqttConfig,
	graceful *graceful_service.GracefulService,
	authenticator *mqtt_authenticator.Authenticator,
	scriptService *scripts.ScriptService,
	metric *metrics.MetricManager) (mqtt *Mqtt)

NewMqtt ...

func (*Mqtt) Management added in v0.0.20

func (m *Mqtt) Management() IManagement

Management ...

func (*Mqtt) NewClient

func (m *Mqtt) NewClient(name string) (client *Client)

NewClient ...

func (*Mqtt) OnConnect added in v0.0.19

func (m *Mqtt) OnConnect(ctx context.Context, client gmqtt.Client) (code uint8)

OnConnect ...

func (*Mqtt) OnMsgArrived added in v0.2.0

func (m *Mqtt) OnMsgArrived(ctx context.Context, client gmqtt.Client, msg packets.Message) (valid bool)

OnMsgArrived ...

func (*Mqtt) Publish added in v0.0.25

func (m *Mqtt) Publish(topic string, payload []byte, qos uint8, retain bool) (err error)

Publish ...

func (*Mqtt) Shutdown

func (m *Mqtt) Shutdown()

Shutdown ...

type MqttBind added in v0.0.19

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

Javascript Binding

Mqtt

.Publish

func NewMqttBind added in v0.0.19

func NewMqttBind(mqtt *Mqtt) *MqttBind

NewMqttBind ...

func (MqttBind) Publish added in v0.0.19

func (m MqttBind) Publish(topic string, payload []byte, qos uint8, retain bool)

Publish ...

type MqttConfig

type MqttConfig struct {
	Port                       int
	RetryInterval              time.Duration
	RetryCheckInterval         time.Duration
	SessionExpiryInterval      time.Duration
	SessionExpireCheckInterval time.Duration
	QueueQos0Messages          bool
	MaxInflight                int
	MaxAwaitRel                int
	MaxMsgQueue                int
	Logging                    bool
	DebugMode                  config.RunMode
}

MqttConfig ...

func NewMqttConfig

func NewMqttConfig(cfg *config.AppConfig) *MqttConfig

NewMqttConfig ...

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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