electrocasa / dailyiot

dailyiot - open IoT platform powered by openfaas targeted easy adaptation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DailyIOT

open IoT platform powered by openfaas targeted easy adaptation

Overview of DailyIOT

IOT Made Simple

DailyIOT platform make use of OpenFaaS for its core
Gateway : Handle UI and API call
ALEXA : Handle Alexa Request
Metric : Compute Mrtrics and Handle Metrics Request
APPS : User Defined Apps as Function 

MINIO: Store Device Info, Skill Definiton 
PROMETHEUS: Store Metrics

DailyIOT platform Stack

Getting Started

Daily-iot platform runs completly on top of openfaas. To set up openfaas for the link: Openfaas Getting Started

Clone the repo

git clone https://github.com/dailyiot/dailyiot.git && cd dailyiot

Start the Registry (Consul)

Build locally (optional)

cd registry && ./build.sh

Deploy

cd registry && ./deploy.sh

Deploy the DIot Platform

./deploy.sh

After deployment go to http://127.0.0.1:8080/function/diot-gateway

Login Page (default: admin/admin)

login

Dummy Switching Device

Switching Device

TODO
  • API - Implement HTTP API [dailyiot-gateway]
  • Implement Alexa skill [dailyiot-alexa]
  • API - Authtoken validation [dailyiot-gateway]
  • UI - Implement Glitchfree Switch Page [dailyiot-gateway]
  • UI - Implement Login Page with Cookie [dailyiot-gateway]
  • UI - Enable and Disable all switches [dailyiot-gateway]
  • UI - Ajax request to update/monitor state [dailyiot-gateway]
  • Create METRIC Service and find a way to Generate useful metrics based on API Request, Like:
    - daily/weekly total active period,
    - daily/weekly average active period etc
  • Template and SDK for Writing different IOT APP to run on the Platform (gateway, metric & alexa)
  • Integrate with OpenFaaS-cloud
  • Change password and token to secrets
  • UI/API - provide UI and API support to get the metric [dailyiot-gateway]
  • Use minio as storage to keep device info [dailyiot-gateway]
  • Custom switch name [dailyiot-gateway]
  • UI - Multiple Device Layout [dailyiot-gateway]
  • Write Documentation [dailyiot-gateway]
  • Find a way to create Routine (without Alexa)

Contribution guide

A Contribution can be in any form of a Suggestion/Idea/PR (Implementation/Documentation)/Review
To open an suggestion, Idea or Issue please create an issue at:
https://github.com/dailyiot/dailyiot/issues
For a PR please create an issue detailing the Idea/Suggestion/Issue

About

dailyiot - open IoT platform powered by openfaas targeted easy adaptation


Languages

Language:JavaScript 34.2%Language:Go 24.4%Language:CSS 23.4%Language:Shell 7.1%Language:HTML 7.0%Language:Dockerfile 4.0%