Commit Graph

658 Commits

Author SHA1 Message Date
Fabio Manganiello 5504048c22 Don't iterate on data if data is None 2020-02-26 11:33:50 +01:00
Fabio Manganiello 6e93c03438 Set success=True when we're able to retrieve data from the sensor 2020-02-26 11:27:34 +01:00
Fabio Manganiello 52a13f0511 Implemented retry mechanism in sensor backend 2020-02-26 11:12:46 +01:00
Fabio Manganiello 76800e00b1 Use the right handlers for Zigbee network online/offline events 2020-02-25 18:38:44 +01:00
Fabio Manganiello f74c44c7fb There can be many Zigbee property set events; don't trigger a full refresh on all of them and only update the impacted devices instead 2020-02-25 18:13:11 +01:00
Fabio Manganiello 87a51b391c Support for custom TTS engine for rendering assistant response (see #86) 2020-02-24 20:23:22 +01:00
Fabio Manganiello fb17aafe53 Support for custom audio volume for alarms 2020-02-23 23:09:40 +01:00
Fabio Manganiello 2d3c61173d Added Zigbee web panel (closes #123) 2020-02-23 22:54:50 +01:00
Fabio Manganiello 0643b7fade Support for intervals in seconds on alarm add/set 2020-02-22 16:18:56 +01:00
Fabio Manganiello f8f3d2e310 Show default node number instead of empty string if name is not set 2020-02-22 01:10:36 +01:00
Fabio Manganiello 424077fdbc Completed ZWave web panel (see #123) 2020-02-22 01:00:52 +01:00
Fabio Manganiello 98727c4f31 Added support for values in Z-Wave web panel (see #123) 2020-02-20 02:34:35 +01:00
Fabio Manganiello a0ceb560b4 Implemented alarm/timer plugin (closes #111) 2020-02-17 19:37:22 +01:00
Fabio Manganiello 9b2e4f9d0c Added count parameter to the ping backend 2020-02-17 13:39:40 +01:00
Fabio Manganiello 30e51ee299 Network initialization for the Pushbullet backend should be done in the run method.
Network errors in the constructor cause the whole application to fail.
Better to do the initialization in the run method with retries.
2020-02-17 00:46:33 +01:00
Fabio Manganiello fcef7af6a4 Adding Z-Wave web panel (#123) [WIP] 2020-02-10 00:39:32 +01:00
Fabio Manganiello c5adc141ea More robust mechanism for websocket message send section locking 2020-02-06 19:30:40 +01:00
Fabio Manganiello ca030c9b25 Websocket notifications delivery should be thread-safe.
If multiple threads process events and notify the websocket
clients at the same time then we may end up with inconsistent
messages delivered on the websocket (and websockets is not
designed to handle such cases). Protecting the send call with
a per-socket lock makes sure that we only write one message
at the time for a certain client.
2020-02-06 01:04:36 +01:00
Fabio Manganiello 02246a48ae Added Z-Wave integration (closes #76) 2020-02-05 22:26:52 +01:00
Fabio Manganiello 8caa170676 Don't consider the trailing / in pre-select tab mode 2020-02-01 00:17:11 +01:00
Fabio Manganiello b02b30656c Using /#[plugin.name] as a URL hint for selecting a tab on load.
Closes #83
2020-01-31 20:29:47 +01:00
Fabio Manganiello eff21c0720 Added /plugin/<plugin_name> route for single plugin view (see #83) 2020-01-23 00:27:36 +01:00
Fabio Manganiello 8255f9af28 Added zigbee2mqtt integration (see #76) 2020-01-22 18:34:28 +01:00
Fabio Manganiello f3b50d0de1 Using the Github link for the flag-icon.css instead of cloning the whole submodule 2020-01-20 22:38:13 +01:00
Fabio Manganiello 6c797b0ad9 Implemented support for assistant pause/resume conversation (closes #109) 2020-01-19 16:21:29 +01:00
Fabio Manganiello 89ae86492f If the latest build is still running then we should wait and not process events 2020-01-19 15:43:39 +01:00
Fabio Manganiello db862d1d96 Datetime conversion should also support cases where the input is a float timestamp represented as a string 2020-01-19 15:39:57 +01:00
Fabio Manganiello 42eabcf661 More robust ISO date to timestamp conversion 2020-01-19 15:37:55 +01:00
Fabio Manganiello bbb52ba191 Always convert datetime to UNIX timestamp in Travis-Ci backend.
Python can't perform comparisons between offset-aware and
offset-naive dateime objects. Instead, convert them to UTC
timestamps before comparisons.
2020-01-19 15:35:13 +01:00
Fabio Manganiello c44de5e2d7 Grouped common CSS and JS includes into separate templates 2020-01-19 14:47:51 +01:00
Fabio Manganiello 4e45c1d0bc Removed font-awesome full submodule clone. Use the CDN-provided all.css file instead.
It won't work if the webapp runs on a device not connected to the internet,
but it saves a lot of installation space.
2020-01-18 19:59:02 +01:00
Fabio Manganiello 02607bae97 Dumb Python won't convert perfectly finely formatted ISO dates unless I do some manual conversion 2020-01-12 14:05:58 +01:00
Fabio Manganiello b920927dab Added Travis-Ci integration (closes #104) 2020-01-12 13:53:46 +01:00
Fabio Manganiello 1e342cc8a5 New interface for implementing backends.
Backends that simply poll for changes and wait some time
between checks can just implement a `loop()` method and,
optionally, `__enter__` and `__exit__` methods, so they
can perform initialization/cleanup logic within a context
manager.
2020-01-11 18:13:25 +01:00
Fabio Manganiello a7ca779870 Argument of int() can't be nullable 2020-01-11 16:24:35 +01:00
Fabio Manganiello 3b2ca4d70c Added Foursquare backend 2020-01-11 16:11:35 +01:00
Fabio Manganiello 3daf39e3e0 Stop polluting Pushbullet messages with StopEvent JSON whenever the backend stops. 2020-01-11 12:31:32 +01:00
Fabio Manganiello 4c3140c9b5 Fixed docs 2020-01-09 23:40:59 +01:00
Fabio Manganiello 35cefcc9f5 Improved consistency and robustness of sensors backend 2020-01-08 22:58:24 +01:00
Fabio Manganiello 9d592fe370 Added battery sensor backend 2020-01-08 14:55:58 +01:00
Fabio Manganiello 3e2a9c0401 Skip torrent status responses with no url. 2020-01-07 09:59:45 +01:00
Fabio Manganiello 9134a231b3 success=true will always be in the response: deal with it 2020-01-07 09:46:26 +01:00
Fabio Manganiello d8a7c9c6e0 Added Arduino over Firmata integration - closes #92 2020-01-05 00:46:46 +01:00
Fabio Manganiello 8aadd5569e Added Trello backend: closes #90 2020-01-03 16:28:49 +01:00
Fabio Manganiello 1de3296c85 Support for group events and lists of authorized chat_ids 2020-01-01 23:28:21 +01:00
Fabio Manganiello 846d5ff2eb Support for underscores and minuses in Telegram command names 2020-01-01 22:33:57 +01:00
Fabio Manganiello 135cfc606c Added the right handler for location events 2020-01-01 21:06:51 +01:00
Fabio Manganiello de429a5b7d Extended Telegram integration 2020-01-01 20:59:22 +01:00
Fabio Manganiello fd5abc748f Added missing docs 2020-01-01 17:55:19 +01:00
Fabio Manganiello 753694a865 Added Telegram integration 2020-01-01 15:40:42 +01:00