Git Product home page Git Product logo

springboot-mqtt-demo's Introduction

Build Status

MQTT stands for MQ Telemetry Transport. It is a publish/subscribe, extremely simple and lightweight messaging protocol, designed for constrained devices and low-bandwidth, high-latency or unreliable networks. The design principles are to minimise network bandwidth and device resource requirements whilst also attempting to ensure reliability and some degree of assurance of delivery. These principles also turn out to make the protocol ideal of the emerging “machine-to-machine” (M2M) or “Internet of Things” world of connected devices, and for mobile applications where bandwidth and battery power are at a premium.

OwnTracks allows you to keep track of your own location. You can build your private location diary or share it with your family and friends. OwnTracks is open-source and uses open protocols for communication so you can be sure your data stays secure and private.

This project demonstrates the use of MQTT as a lightweight message protocol to track gps information and visualize it on a Google map.

screen-shot-1

Build Instructions

  1. git clone https://github.com/frensley/springboot-mqtt-demo.git
  2. cd springboot-mqtt-demo
  3. ./gradlew build
  4. ./gradlew bootRun
  5. Use your browser to open http://localhost:8080

Owntracks Client Instructions

  1. Download OwnTracks for your mobile device
  2. Access settings menu
  3. Deactivate TLS
  4. Deactivate Auth
  5. Enter the IP address or Host name of the machine in the Host field
  6. Enter a unique name in the DeviceID field

To publish Owntracks location use Location Monitoring Mode Menu (second icon from left on top of OwnTracks tab). Location publish can be done using the "Publish Now" or "Move Mode" selections.

To-do:

  • More unit testing
  • Documentation
  • Better UI experience
  • Better broker/messaging solution (ActiveMQ)

springboot-mqtt-demo's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.