class LavinMQ::MQTT::Client

Included Modules

Defined in:

lavinmq/mqtt/client.cr

Constant Summary

Log = LavinMQ::Log.for("mqtt.client")

Constructors

Instance Method Summary

Instance methods inherited from module LavinMQ::SortableJSON

details_tuple details_tuple, search_match?(value : String)
search_match?(value : Regex)
search_match?
, to_json(json : JSON::Builder) to_json

Macros inherited from module LavinMQ::Stats

rate_stats(stats_keys, log_keys = [] of ::String) rate_stats

Instance methods inherited from module LavinMQ::SortableJSON

details_tuple details_tuple, search_match?(value : String)
search_match?(value : Regex)
search_match?
, to_json(json : JSON::Builder) to_json

Constructor Detail

def self.new(socket : ::IO, connection_info : ConnectionInfo, user : User, broker : MQTT::Broker, client_id : String, clean_session : Bool = false, keepalive : UInt16 = 30, will : MQTT::Will | Nil = nil) #

[View source]

Instance Method Detail

def channels : Hash(UInt16, LavinMQ::Client::Channel) #

[View source]
def clean_session? : Bool #

[View source]
def client_id : String #

[View source]
def client_name #

[View source]
def close(reason = "") #

should only be used when server needs to froce close client


[View source]
def connection_info : LavinMQ::ConnectionInfo #

[View source]
def current_stats_details #

Like stats_details but without log


[View source]
def details_tuple #

[View source]
def force_close #

[View source]
def log : LavinMQ::Logger #

[View source]
def name : String #

[View source]
def read_and_handle_packet #

[View source]
def receive_pingreq(packet : MQTT::PingReq) #

[View source]
def recieve_puback(packet : MQTT::PubAck) #

[View source]
def recieve_publish(packet : MQTT::Publish) #

[View source]
def recieve_subscribe(packet : MQTT::Subscribe) #

[View source]
def recieve_unsubscribe(packet : MQTT::Unsubscribe) #

[View source]
def recv_oct_count #

[View source]
def search_match?(value : String) : Bool #

[View source]
def search_match?(value : Regex) : Bool #

[View source]
def send(packet) #

[View source]
def send_oct_count #

[View source]
def socket : IO #

[View source]
def state #

[View source]
def stats_details #

[View source]
def update_rates : Nil #

[View source]
def user : LavinMQ::User #

[View source]
def vhost #

[View source]