Mqtt - A Proof of Concept MQTT Shared Library
This project implements a Proof of Concept shared library (libMqtt.so) for BlackBerry 10 that provides an API to some of the main aspects of the MQTT (Message Queuing Telemetry Transport) protocol stack as defined by OASIS.
MQTT provides a lightweight publish/subscribe reliable messaging transport protocol suitable for communication in M2M/IoT (Machine to Machine/Internet of Things) contexts where a small code footprint is required and/or network bandwidth is at a premium.
The sample code for this library is Open Source under the Apache 2.0 License.
- V1.0.0 - Initial release
- Minimal requirement for BlackBerry 10 Device Software is 10.2.0
- Minimal requirement for BlackBerry 10 Native SDK is 10.2.0
How to Build Mqtt
Simply import the project into a workspace in your NDK. Since this is a shared library building it will create a file called libMqtt.so in either the "Device-Debug" or "Device-Release" sub-folders in the project.
But I don't want to build it myself!
If you don't want to build this library application yourself we've included a pre-built version. You can find it in the folder "prebuilt-files" as follows:
- libMqtt.so -- Shared library for Version 1.0 (V1.0) of the library (requires BlackBerry 10 Software 10.2 or later).
How to Use Mqtt
To use the MQTT shared library APIs in your own project you need to add two things to your project:
- The header files in the "/public" folder of this project contain the public declarations of the API and need to be accessible in the include search path of your project.
- The shared library, libMqtt.so, needs to be accessible to your project at build time to resolve external references, and also at run time on the device you're installing to.
To contribute code to this repository you must be signed up as an official contributor.
Please see the README of the Cascades-Community-Samples repository for instructions on how to add new Samples or make modifications to existing Samples.
Bug Reporting and Feature Requests
If you find a bug in a Sample, or have an enhancement request, simply file an Issue for the Sample and send a message (via github messages) to the Sample Author(s) to let them know that you have filed an Issue. If you have a solution to an issue you can contribute your fix and issue a Pull Request to have it reviewed and integrated into the main repo.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.