Enum sage_mqtt::ReasonCode[][src]

pub enum ReasonCode {
Show 43 variants Success, GrantedQoS1, GrantedQoS2, DisconnectWithWillMessage, NoMatchingSubscribers, NoSubscriptionExisted, ContinueAuthentication, ReAuthenticate, UnspecifiedError, MalformedPacket, ProtocolError, ImplementationSpecificError, UnsupportedProtocolVersion, ClientIdentifierNotValid, BadUserNameOrPassword, NotAuthorized, ServerUnavailable, ServerBusy, Banned, ServerShuttingDown, BadAuthenticationMethod, KeepAliveTimeout, SessionTakenOver, TopicFilterInvalid, TopicNameInvalid, PacketIdentifierInUse, PacketIdentifierNotFound, ReceiveMaximumExceeded, TopicAliasInvalid, PacketTooLarge, MessageRateTooHigh, QuotaExceeded, AdministrativeAction, PayloadFormatInvalid, RetainNotSupported, QoSNotSupported, UseAnotherServer, ServerMoved, SharedSubscriptionsNotSupported, ConnectionRateExceeded, MaximumConnectTime, SubscriptionIdentifiersNotSupported, WildcardSubscriptionsNotSupported,
}
Expand description

A ReasonCode is an identifier describing a response in any ackowledgement packet (such as Connack or SubAck)

Variants

Success

Generic success reason code indicating an operation performed well. According to the emmiting packet, the following meanings are applied:

  • Disconnect: Normal Disconnection
  • SubAck: Granted QoS 0

GrantedQoS1

The subscription is accepted and the maximum QoS sent will be QoS 1.

GrantedQoS2

The subscription is accepted and any received QoS will be sent..

DisconnectWithWillMessage

The client disconnects but want the last will to be sent anyways.

NoMatchingSubscribers

The message is accepted but there are no subscribers.

NoSubscriptionExisted

No matching topic filter is being used by the client

ContinueAuthentication

Continue de authentication with another step

ReAuthenticate

Initiate re-Authentication

UnspecifiedError

The server doesn’t want or cannot describe the error

MalformedPacket

The control packet cannot be parsed or is ill-formed

ProtocolError

The control packet is well formed but invalid according to specifications.

ImplementationSpecificError

The operation is valid but not accepted by, the server

UnsupportedProtocolVersion

The requested MQTT version is not supported

ClientIdentifierNotValid

The client identifier is not valid

BadUserNameOrPassword

The server does not accept the given user name or password

NotAuthorized

The operation is not permitted

ServerUnavailable

The server is not available

ServerBusy

The server is busy

Banned

The client is banned

ServerShuttingDown

The server is currently shutting down

BadAuthenticationMethod

The authentication method is not supported by the server

KeepAliveTimeout

The connection is closed because not packet has been received for 1.5 times the keep alive period.

SessionTakenOver

Another connection using the same client id has connected, causing this connection to be closed.

TopicFilterInvalid

The topic filter is correctly formed but not accepted by the server.

TopicNameInvalid

The topic name is correctly formed but not accepted by the server

PacketIdentifierInUse

The packet identifier is already in use. This might indicate a mismatch in the session state between the client and the server.

PacketIdentifierNotFound

The Packet Identifier is not known. This is not an error during recovery, but at other times indicates a mismatch between the Session State on the Client and Server.

ReceiveMaximumExceeded

The Client or Server has received more than receive maximum.

TopicAliasInvalid

The topic alias is invalid

PacketTooLarge

The packet size is greater than the maximum packet size fo rthis client or server.

MessageRateTooHigh

The received data is too high

QuotaExceeded

An implementation or administrative limite has been exceeded

AdministrativeAction

The connection is closed due to an administrative action

PayloadFormatInvalid

The payload format does not match the one indicated in the payload format indicator.

RetainNotSupported

The server does not support retain messages

QoSNotSupported

The client specified a QoS greater than the maximum indicated in the Connack packet.

UseAnotherServer

The client should temporarily change its server.

ServerMoved

The client should permanently change its server.

SharedSubscriptionsNotSupported

The server does not support shared subscriptions

ConnectionRateExceeded

The connection is closed because the connection rate is too high

MaximumConnectTime

The maximum connect time authorized for this connection has exceeded.

SubscriptionIdentifiersNotSupported

The server does no support subscription identifiers.

WildcardSubscriptionsNotSupported

The server does not support wildcard subcriptions.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Performs the conversion.

Performs the conversion.

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

The type returned in the event of a conversion error.

Performs the conversion.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.