arsing / mqtt Goto Github PK
View Code? Open in Web Editor NEWAn MQTT v3.1.1 Client implementation in Rust
An MQTT v3.1.1 Client implementation in Rust
Currently all encoding errors are fatal client errors, so packets that can't be encoded because their payloads are too large, etc will kill the Client
.
For publish requests, the payload might be too large, so use the ack sender to send back a PublishError::PayloadTooLarge
error. The other EncodeError
errors can't happen.
For (un)subscription requests, the topic filter string can be too large, so send back a SubscriptionError::TopicFilterTooLarge
error. The other EncodeError
errors can't happen.
For (un)subscription packets in general, the payload can be too large if there are a lot of subscriptions or long subscriptions. The Client
should split them up into multiple packets in this case. The other EncodeError
errors shouldn't happen.
For CONNECT packets, the username / password / will might be too large, or the keep-alive time could be too high. Return an error from the Client::new
constructor.
Currently the Client
uses a Framed
to encode the packet. Detecting and handling these errors probably means the packets have to be encoded proactively by the inner clients (client::publish
, client::subscriptions
) so that they can send back an error / split the packets. So it probably can't continue using a Framed
.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.