2.2.6 • Published 4 years ago

gigaset-elements-proxy v2.2.6

Weekly downloads
1
License
ISC
Repository
github
Last release
4 years ago

gigaset-elements-proxy v2.2.6

Is a very simple gateway to gigaset-elements API:

  • periodic re-authentication
  • local proxy to the gigaset-elements APIs
  • gigaset-elements events are periodically fetched and pushed to a MQTT broker

As gigaset-elements does not provide local network APIs, I use it to access my equipement from https://home-assistant.io

Known Vulnerabilities

raw Gigaset APIs

These are the API that are published on Gigaset Cloud, gigaset-elements-proxy only re-expose them locally without authentication. Note that if you're reading this page on github, theses links does not work: you have to install the project.

convenience APIs

These extra APIs are based on raw Gigaset APIs and apply light treatment in order to make them easier to use in a 3rd party application. Note that if you're reading this page on github, theses links does not work: you have to install the project.

MQTT events

  • pushes event to queue gigaset/<sensor_friendly_name> with true or false payload
  • motions events (movement detector and camera) automatically generate a delayed false event
  • smoke detector test events automatically generate a delayed default event
gigaset sensor typegigaset event typemqtt topicmqtt value
ds02 door sensoropengigaset/<sensor name>true
ds02 door sensorclosegigaset/<sensor name>false
ws02 window sensoropengigaset/<sensor name>true
ws02 window sensortiltgigaset/<sensor name>true
ws02 window sensorclosegigaset/<sensor name>false
ps02 motion sensormovementgigaset/<sensor name>true
ps02 motion sensordelayed after movementgigaset/<sensor name>false
ycam motion sensoryc01.motiongigaset/<sensor name>true
ycam motion sensordelayed after yc01.motiongigaset/<sensor name>false
sp01 sirenongigaset/<sensor name>true
sp01 sirenoffgigaset/<sensor name>false
sd01 smoke detectorsmoke_detectedgigaset/<sensor name>alarm
sd01 smoke detectortestgigaset/<sensor name>test
sd01 smoke detectordelayed after testgigaset/<sensor name>default
sd01 smoke detectorsmoke_no_longer_detectedgigaset/<sensor name>default
sd01 smoke detectorend_sd01_smoke_detectedgigaset/<sensor name>default
sd01 smoke detectorend_sd01_testignored
um01 universal sensoropengigaset/<sensor name>true
um01 universal sensortiltgigaset/<sensor name>true
um01 universal sensorclosegigaset/<sensor name>false
basestation: alarm mode changedisl01.bs01.intrusion_mode_loadedgigaset/<base name><new alarm mode>
any sensorbattery_criticalgigaset/<sensor name>_batterybattery_critical
allow_unknown_events is trueany other eventgigaset/<sensor name><gigaset event type>

installation

option 1 - as a Hassio addon

point to this custom repository

https://github.com/ycardon/hassio-addons

option 2 - from git

  • (recommended if you have to customize the application to your needs)
  • nodejs is required
> git clone https://github.com/ycardon/gigaset-elements-proxy
> cd gigaset-elements-proxy
> npm install
> vim config/default.yaml
> node app.js

option 3 - from npm

install
> [sudo] npm install gigaset-elements-proxy -g

locate then edit config/default.yaml with
> npm list gigaset-elements-proxy

run
> ge-proxy

then

Have a look on the examples directory for instructions on creating a service or configure the sensors inside home-assistant

You can get extra help on this home-assistant community topic or in the issue section

You can also check https://github.com/lorenwest/node-config/wiki/Configuration-Files

restrictions

  • only read events and states from the Gigaset Cloud API, no writes (eg. cannot change the status of the alarm system)
  • track ds02 (door sensors) ws02(window sensors) and yc01 / ps02(movement and camera movement sensors) event types
  • since v1.4, track sp01 (siren command event)
  • since v1.5, track sd01 (smoke detector event)

improvements

v1.3.2 Halloween (1 november 2018)

  • when the server starts, send the actual status of the sensors and the alarm mode
  • added the /force-refresh API to send again the actual status of the sensors and the alarm mode
  • added examples directory
  • added ws02 window sensors type
  • added /intrusion_settings API to monitor selected alarm mode
  • added handling of basestation events (selected alarm mode)
  • added more options to configue MQTT broker connections
  • fixed CVE in dependency
  • logging server version

v1.3.5 Armistice (11 november 2018)

  • logging mqtt connection errors
  • basestation event now returns the mode of the alarm mode instead of true for home

v1.4.6 Happy new year (24 february 2019)

  • fire an mqtt event when an alarm is trigered (true) or acknowledged (false)
  • better handling of parsing errors when gigaset API returns unexpected message (try to re-authorize)
  • added sensor type in the /sensors API

v1.5.5 Spring (5 april 2019)

  • added sd01 smoke detector sensors
  • added a new configuration parameter to allow or not the propagation of unknown gigaset events
  • added low battery in the form of topic: gigaset/<sensor name>_battery value: low_battery
  • added an gigaset events to MQTT events table in the documentation (thanks to @sracing)

v2.0.0 Typescript (11 april 2019)

  • heavy code reorganization (moved to typescript, introduced modules)
  • no functionnality added

v2.1.5 Labour Day (1 may 2019)

  • added a new API: sensors/<sensor-friendly-name> to ease treatment from home-assistant
  • now return initial state of smoke detectors (cf. this issue)
  • API sensors/ no longer returns a array of objects but a plain object indexed with the sensor's friendly name
  • now using a proper build system for the project
  • filtering out the Philips Hue devices in the sensors/ API

v2.2.0 Hassio (24 sept 2019)

  • can now be installed as an Hassio Addon
  • breaking change REST API port is now 8094 (and not 3000 as it used to be), can be changed in config/default.yaml

v2.2.1 Universal (18 oct 2019)

  • added um01 universal sensor

v2.2.6 Confinement (14 avril 2020)

  • merged @ginkel fix for intrusion events: now using basestation id instead of friendly name (no more present in the event), discussion here

credits

building the project

  • run
    > git clone https://github.com/ycardon/gigaset-elements-proxy
    > npm install
  • code new stuff
  • update version in ./package.json
  • run either
    > npm run build
    > npm run dev
    > npm publish
2.2.5

4 years ago

2.2.6

4 years ago

2.2.4

4 years ago

2.2.3

4 years ago

2.2.2

4 years ago

2.2.1

4 years ago

2.2.0

5 years ago

2.1.7

5 years ago

2.1.5

5 years ago

2.1.3

5 years ago

2.1.2

5 years ago

2.1.1

5 years ago

2.1.0

5 years ago

2.0.0

5 years ago

1.5.3

5 years ago

1.5.2

5 years ago

1.5.1

5 years ago

1.5.0

5 years ago

1.4.7

5 years ago

1.4.6

5 years ago

1.4.5

5 years ago

1.4.4

5 years ago

1.4.3

5 years ago

1.4.2

5 years ago

1.4.1

5 years ago

1.4.0

5 years ago

1.3.5

5 years ago

1.3.2

5 years ago

1.3.1

5 years ago

1.3.0

5 years ago

1.2.2

5 years ago

1.2.1

5 years ago

1.2.0

5 years ago

1.1.0

7 years ago

1.0.0

7 years ago

0.1.0

7 years ago