Public | Automated Build

Last pushed: 7 months ago
Short Description
Continuous Integration for i1820
Full Description

<p align="center">
<img alt="I1820 Logo" src="http://aolab.github.io/I1820/logo/logo-md.png">
</p>

<p align="center"><strong>Good Days Good Things</strong></p>

<p align="center">
<img alt="Automated Badge" src="https://img.shields.io/docker/automated/aolab/i1820.svg">
<img alt="Pulls Badge" src="https://img.shields.io/docker/pulls/aolab/i1820.svg">
<img alt="Build Status" src="https://travis-ci.org/AoLab/I1820.svg?branch=master">
<a href="https://waffle.io/AoLab/I1820"><img alt="Stories in Ready" src="https://badge.waffle.io/AoLab/I1820.png?label=in%20progress&title=In%20Progress"></a>
</p>

I1820, The IoT Platform

Introduction

Next Generation of IoT Platforms

<p align="center"><img alt="I1820 in AoLab IoT Architecture" src="http://aolab.github.io/documentation/architecture/I1820.jpg"></p>

Middleware connects different, often complex and already existing
programs that were not originally designed to be connected.

I1820 is a improved version of 18.20, it provides you a full featured package
that can do all you need from IoT middleware (Platform) consist of create notification,
collect logs and discover and manage your things.

In I1820 literature you have things and nodes, things are your actuators and
sensors and nodes are any device that can connect to the I1820 server,
they only requirement is being able to make MQTT requests. An examples of such
devices are NodeMCU and RPi.

Why another platform?

The benefits we can point out about I1820 are:

  • SDK pain is over, you don't need sdk's anymore!
  • Minimalistic dependencies, you're node only should be able to make MQTT
    requests
  • Dead simple sample codes
  • You can deploy it over your personal PaaS for mission-critical security or high-availability purposes

I1820 Main Components

I1820 provides following components of IoT Application Enablement Platform:

  • Connectivity & normalization
  • Device management
  • Database
  • Processing & action management
  • Data visualization

<p align="center"><img alt="I1820 Main Components" src="http://aolab.github.io/I1820/documentation/I1820-Components.jpg"></p>

Do you love us ?

Let's learn more about I1820 here.

Up and Running

in Ubuntu

Start Kapacitor

sudo systemctl start kapacitor

Verify that Kapacitor is Running

kapacitor list tasks

Download and Install Telegraf

wget https://dl.influxdata.com/telegraf/releases/telegraf_1.1.1_amd64.deb
sudo dpkg -i telegraf_1.1.1_amd64.deb

Start Telegraf

sudo systemctl start telegraf

Download and Install Chronograf

wget https://dl.influxdata.com/chronograf/nightlies/chronograf_nightly_amd64.deb
sudo dpkg -i chronograf_nightly_amd64.deb

Start Chronograf

sudo systemctl start chronograf

Let's have fun with influx on http://localhost:8888


- **Step 1** Install and Setup MongoDB

   ```sh
   sudo apt-get install mongodb
  • Step 2 Install and Setup eMQTT [eMQTT installation]

    ```sh
    unzip emqttd-ubuntu64-2.0-beta1-20160830.zip && cd emqttd

start console

./bin/emqttd console

start as daemon

./bin/emqttd start

check status

./bin/emqttd_ctl status

stop

./bin/emqttd stop


- **Step 3 (Optional)** Install and Setup Redis \[[Resdis installation](https://www.digitalocean.com/community/tutorials/how-to-install-and-use-redis)]


- **Step 4** Install python dependencies

   ```sh
sudo pip3 install -r requirements.txt
  • Step 5 Provide I1820 configuration in INI.

    cp I1820/conf/1820.example.ini I1820/conf/1820.ini
    
  • Step 6 Run :D

    ./18.20-serve.py
    
  • Step 7 API documentation avaiable here.

Components

Thanks to following technologies:

  • InfluxDB: Time-Series Data Storage
  • eMQTT: The Massively Scalable MQTT Broker for IoT and Mobile Applications
  • redis: open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker.

Releases

  • Orange 1.0.dev1
  • Pink 1.0
  • Purple 2.0
  • Green 3.0
  • Black 4.0: master

ToDo

Core

  • [x] OSGi Service Model [based on iPOPO]
  • [x] Socket.io based user level notification
  • [ ] Distributed I1820

Database

  • [x] MongoDB Support
  • [ ] MySQLDB Support

Comminucation

  • [ ] CoAP Proxy
  • [ ] HTTP Proxy

Low Level

  • [ ] I1820 C Library
  • [ ] I1820 TinyOS
  • [ ] I1820 RIOT
Docker Pull Command
Owner
aolab
Source Repository

Comments (0)