Giter Club home page Giter Club logo

thinx-firmware-js's Introduction

THiNX Lib (JavaScript)

Codacy Badge

JavaScript client library for Remote Things Management using THiNX platform. Connects to WiFI and reports to main THiNX server; or through thinx-connect proxy, if found on your local network.

What's New

  • Example of Slack webhook as Status Transformer

Installation

QuickStart

  1. Fork the base repository.
  2. Edit configuration file in conf/config.json.
  3. Start with node test.js

Using NPM

  1. Install the node package: npm install thinx-firmware
  2. Create ./conf/config.json file and insert your THiNX API Key and Owner ID
  3. Run following code:
var thinx = require('thinx-firmware');
var defaults = require("./conf/config.json");
thinx.init(defaults.thinx.api_key, defaults.thinx.owner);

thinx.setCheckinCallback(function() {
  console.log("Checkin completed.");
});

Configurations Priority

  1. JavaScript version of the library expects device to be already configured for network connections.

  2. THiNXLib is built with null default values (mostly).

  3. THiNXLib is configured from thinx.json file.

  4. Additional data are saved into local storage, where saved Owner ID takes precedence before user value to support OTA device migration.

  5. On successful checkin, incoming data incl. UDID (unique device identifier) and Owner ID is stored for further use after reboot.

  6. Configuration Push can be used to inject custom Environment Variables over the network, without need to have them stored anywhere in the code on the device (e.g. WiFi credentials)

Finalize callback

When THiNX connects safely to network and connection is working, you'll get this callback.

thx.setCheckinCallback(function() {
  /* Called after library gets connected and registered */
});

Location Support

You can update your device's location acquired e.g. by GPS module using thx.setLocation(double lat, double lon).

Device will be forced to checked in when you change those values.

thinx-firmware-js's People

Contributors

suculent avatar qool avatar

Watchers

James Cloos 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.