Skip to content

Teka101/MyHomeEvents

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MyHomeEvents Build Status Code Quality Coverity Scan

work with Domoticz

License

MIT License

Before

Install and configure Domoticz.

Compilation

Install packages for Debian/Raspbian/Ubuntu:

  • libboost-date-time-dev
  • libboost-dev
  • libboost-filesystem-dev
  • libboost-iostreams-dev
  • libboost-program-options-dev
  • libboost-regex-dev
  • libboost-serialization-dev
  • libboost-system-dev
  • libboost-thread-dev
  • libcurl4-gnutls-dev
  • liblog4cplus-dev
  • libmicrohttpd-dev
  • libsqlite3-dev

Do:

make all

Configuration

You have to customize your 'config.ini' (a sample is available in 'config.ini.sample'). Some features are not visible in web pages, so you have to edit the SQLITE database (file 'params.db').

Run

./MyHomeEvents

Features

  • Web configuration - http://localhost:8080/
  • "virtual" devices (can connect to Domoticz or execute shell script)
  • create room to link devices (heat control => ambiant temperature => heater)
  • Android notification with FCM or GCM (check table "mobile_event" to register to events)
  • Send external notification to mobile (ex: when download is finished) - http://localhost:8080/notify/myevent/mytype/mymessage

Service REST/JSON:

  • /runningDevices : list declared device
  • /setDimmer/{device.id}/(level 0-100) : changer level on a device
  • /setStatus/{device.id}/(false|true) : turn on/off a device
  • /getSpecial/{device.id}/graph/(last24h|lastMonth|lastYear) : get graph data of a device (only supported for Domoticz)
  • /getSpecial/{device.id}/volume) : get volume of your device (only supported for TV)
  • /setSpecial/{device.id}/volume/{volume 0-100} : set volume of your device (only supported for TV)
  • /setChannel/{device.id}/{channel.id} : change channel of your TV
  • /mobile/{type}/{user}/{token} : declare new mobile to notify (only GCM - should activated device in table "mobile")
  • /notify/{event}/{type}/{message} : notify an event to registered mobile
  • /order/{message} : send an order to your server

Migration from previous version:

  • ALTER TABLE device ADD COLUMN hidden INTEGER NOT NULL DEFAULT 0
  • ALTER TABLE device ADD COLUMN cache_running INTEGER NOT NULL DEFAULT 0