@ditchoom/mqtt-base-models

1.0.37 • Public • Published

Contributors Forks Stargazers Issues MIT License LinkedIn


MQTT Base Models

A kotlin multiplatform library provides base functionality between MQTT 3, 4 and 5. The implementation of the particular MQTT spec (3,4,5) is out side the scope of this module.


Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Installation
  3. Usage
  4. Building Locally
  5. Getting Started
  6. Roadmap
  7. Contributing
  8. License

About The Project

Runtime Dependencies

Supported Platforms

Platform 🛠Builds🛠 + 🔬Tests🔬 Deployed Artifact Non Kotlin Sample
JVM 1.8 🚀 maven central 🔮 WIP
Node.js 🚀 npm 🔮 WIP
Browser (Chrome) 🚀 npm 🔮 WIP
Android 🚀 maven central 🔮 WIP
iOS 🚀 WIP cocoapods 🔮 WIP
WatchOS 🚀 WIP cocoapods 🔮 WIP
TvOS 🚀 WIP cocoapods 🔮 WIP
MacOS 🚀 WIP cocoapods 🔮 WIP
Linux X64 🚀 WIP apt/yum 🔮 WIP
Windows X64 🚀 WIP chocolatey 🔮 WIP

Installation

Gradle

NPM

Usage

Control Packet

A ControlPacket defines a message that can be serialized and deserialized over MQTT. More info can be found here

Serializing a Control Packet

ControlPacket.serialize provides a default way to serialize any control packet without knowing specific implementation details. This is useful when writing a generic client that doesn't care how the particular implementation serializes data

Deserializing a Control Packet

ControlPacketFactory provides a mechanism to provide an interface to allocate specific types of control packets regardless of the MQTT version. This allows for an easier upgrade path from MQTT 4 to 5.

Building Locally

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the Apache 2.0 License. See LICENSE for more information.

Readme

Keywords

none

Package Sidebar

Install

npm i @ditchoom/mqtt-base-models

Weekly Downloads

0

Version

1.0.37

License

none

Unpacked Size

618 kB

Total Files

10

Last publish

Collaborators

  • thebehera