ffb7a3e5a3
Extended and updated pieces of documentation on the HTTP server, Zigbee2mqtt and mpd. Also added example dashboard template and event hook script.
2021-02-22 01:20:01 +01:00
10eb0c12aa
Don't fail hard if the web app is initialized without access to a configuration file (e.g. from a ReadTheDocs build environment)
2021-02-21 23:30:05 +01:00
53fb254c57
js dependencies updated
2021-02-21 18:47:26 +01:00
727094467d
Fixed some UI elements for Chrome on mobile
2021-02-21 18:10:22 +01:00
Fabio Manganiello
6f9428487f
Higher priority to gstreamer plugin over omxplayer for tts
2021-02-21 02:44:26 +01:00
3e777bd19f
Media buttons should have no background by default
2021-02-21 02:15:27 +01:00
7922ae4801
Removed old templates/ and static/ web directories
2021-02-21 00:41:40 +01:00
94c35e210e
Migrated /plugin/<pluginName> route
2021-02-21 00:39:06 +01:00
34892e227a
The webapp dist/ folder should actually be under the webapp dir
2021-02-20 23:26:25 +01:00
856eb720b0
Migrated execute panel
2021-02-20 23:12:54 +01:00
94ad14f23f
Migrated Samsung TV web panel
2021-02-20 01:18:05 +01:00
c8fa61cc4f
Fixed navigator scrolling and style
2021-02-19 22:55:31 +01:00
8ab72e8f94
Upgraded axios and bulma
2021-02-19 21:06:58 +01:00
6b5b50d186
Migrated switches plugin
2021-02-19 20:47:29 +01:00
56f8d85feb
Migrated switches web panel and refactored switch plugins to expose a more consistent interface
2021-02-19 02:54:12 +01:00
51de11da25
Finalized migration of camera and sound plugins
2021-02-17 01:02:57 +01:00
ca2fd60950
Migrated camera.android.ipcam UI
2021-02-16 23:56:43 +01:00
e508d453ba
Set better default scaling for camera.ir.mlx90640 UI
2021-02-16 22:57:09 +01:00
12e1c60f6c
Fixed camera.ir.mlx90640 UI panel reference and RSS widget font
2021-02-16 22:42:43 +01:00
8c3ba9f367
Migrated camera.pi and camera.ir.mlx90640 UI panels
2021-02-16 20:14:20 +01:00
41acb02eb0
Migrated camera.cv/camera.ffmpeg/camera.gstreamer UI panels
2021-02-16 01:51:37 +01:00
748609c6f4
Migrated settings panel and logout button
2021-02-15 23:09:27 +01:00
201bb5986f
Don't create an MQTT client connection if there are no topics to subscribe.
...
If we open multiple connections from multiple MQTT-based backends to the
same host, with some of them having no topics subscribed, Paho-MQTT can
mess up which client is supposed to receive which message and we may end
up with lost messages on the platypush_bus_mqt/<host> topic.
2021-02-15 22:02:58 +01:00
51e6d95205
Fixed valueId lookup in Z-Wave filtered values
2021-02-14 22:02:17 +01:00
c78420749b
More Z-Wave UI fixes [WIP]
2021-02-14 21:43:11 +01:00
adbde5a681
Z-Wave UI style fixes [WIP]
2021-02-14 21:08:29 +01:00
80aa9b968d
More Z-Wave UI fixes [WIP]
2021-02-14 19:16:21 +01:00
b922f29bb8
Moar Z-Wave UI style fixes [WIP]
2021-02-14 18:53:59 +01:00
4dd5ea71d6
Style fixes for Z-Wave UI migration [WIP]
2021-02-14 18:07:40 +01:00
297c18e176
Fixed glitches in new Z-Wave panel [WIP]
2021-02-14 16:28:34 +01:00
a1e2bf9b3a
Fixed font size and ratio on new dashboard
2021-02-14 15:31:24 +01:00
c2784c400f
Added dist files for z-wave panel migration
2021-02-14 14:46:02 +01:00
b49865181b
Z-Wave plugin UI migration [WIP]
2021-02-14 02:29:39 +01:00
add1bd05cb
Keep track of the last state of the Zigbee controller so that new messages on the bridge/state
topic won't trigger new events unless the state has actually changed [see #183 ]
2021-02-13 15:54:21 +01:00
8168cd3ab3
Don't default on logging.INFO level if another level is set in the configuration, and apply the same logging level also to the web server [ closes #162 ]
2021-02-13 15:13:07 +01:00
b3c28f6773
Added support for JWT token-based authentication
2021-02-12 22:43:34 +01:00
06ca5be54b
Still support default host/port fallback on mqtt.publish
2021-02-12 02:19:36 +01:00
30d5cdcb00
Generated new dist files for the web app
2021-02-11 23:58:36 +01:00
2427cceb5e
Migration completed for the zigbee.mqtt web panel
2021-02-11 23:53:05 +01:00
3cf91a3f27
Fixed backend.zigbee.mqtt to work with the new zigbee2mqtt API
2021-02-11 23:50:28 +01:00
f9598977db
Refactored backend.mqtt to reuse connections whenever possible, as well as programmatically subscribe/unsubscribe topics at runtime
2021-02-10 22:31:33 +01:00
1a70c6ea0b
Fixed remaining Zigbee groups and binding methods to work with the new zigbee2mqtt API [see #163 ]
2021-02-10 02:00:52 +01:00
db80240209
zigbee2mqtt web panel migration [WIP]
2021-02-09 02:33:56 +01:00
1eedcaf2be
Moved more zigbee2mqtt methods to the new API
2021-02-09 02:33:43 +01:00
86e6ffd18d
Zigbee web panel migration [WIP]
2021-02-08 02:04:59 +01:00
b8979040da
Fixed device_get and device_rename to use the new zigbee2mqtt API
2021-02-08 01:45:21 +01:00
816492d3b2
Fixed MQTT over SSL default version spec in case the parameter is not a string
2021-02-08 01:44:26 +01:00
0bddbb0bca
Merge branch 'master' into vuejs
2021-02-06 14:46:08 +01:00
314c01ef97
Refactored Zigbee backend and remove unused logic for keeping devices up-to-date
2021-02-06 14:45:50 +01:00
4c5a52417e
Support for new zigbee2mqtt API and protocol (see #163 )
2021-02-06 02:19:15 +01:00
23a5cd519a
Merge branch 'master' into vuejs
2021-02-05 23:18:31 +01:00
b57a241f52
Changed base URL to platypush.tech
2021-02-05 23:18:18 +01:00
2abfb2964c
Merge branch 'master' into vuejs
2021-02-04 01:57:36 +01:00
4858dbc060
Back/forward seek changed from 60 to 30
2021-02-04 01:56:28 +01:00
Fabio Manganiello
2834ed2a7c
Refactored and fixed many bugs on the media.omxplayer plugin
2021-02-04 01:44:21 +01:00
Fabio Manganiello
165f85f8dc
Added support for background shell commands
2021-02-04 01:43:51 +01:00
Fabio Manganiello
7f24b82281
Removed deprecated media.ctrl plugin
2021-02-03 22:13:10 +01:00
7e1d232942
Another fix bites the dust
2021-02-03 17:47:33 +01:00
31a7ecee03
Quick fix
2021-02-03 17:46:05 +01:00
346bd9602d
The whole get_plugin/.status() block should be under try/except
2021-02-03 17:44:40 +01:00
673351db51
Don't fail if a media plugin can't be imported
2021-02-03 17:43:26 +01:00
86ebc4fae9
Get the plugin name, not the object
2021-02-03 17:42:20 +01:00
118540db8c
Fixed unreferenced var
2021-02-03 17:41:06 +01:00
a1d6c4fbe4
Added missing Config import
2021-02-03 17:39:55 +01:00
2bb07ae191
Fixed base class name
2021-02-03 17:39:16 +01:00
1920bd80a3
First search among the configured media plugins in media.ctrl plugin
2021-02-03 17:34:33 +01:00
ef63c3769e
Cast request headers to dict before adding them to the event
2021-01-31 00:16:44 +01:00
fddf2006e4
Added headers argument to webhook event
2021-01-31 00:01:58 +01:00
a0bf227573
Fixed trailing column in wss: protocol
2021-01-30 23:21:52 +01:00
8e2d590e62
Merge branch 'master' into vuejs
2021-01-23 15:06:14 +01:00
Fabio Manganiello
31b110a06c
FIX: zigbee2mqtt applies different logic to /<device_name> and /<device_name>/get
2021-01-22 16:24:43 +01:00
Fabio Manganiello
717ad5d88c
Revert "FIX: zigbee2mqtt /get calls require a property field specified on the message"
...
This reverts commit 7ff08a9587
.
2021-01-22 16:13:18 +01:00
Fabio Manganiello
cc839620cf
FIX: zigbee2mqtt /get calls require a property field specified on the message
2021-01-22 01:03:52 +01:00
Fabio Manganiello
cebd79079b
Merge branch 'master' into vuejs
2021-01-22 01:01:22 +01:00
Fabio Manganiello
7a7e00bea2
Migrated music.snapcast UI
2021-01-22 01:00:49 +01:00
Fabio Manganiello
7ff08a9587
FIX: zigbee2mqtt /get calls require a property field specified on the message
2021-01-22 00:45:52 +01:00
Fabio Manganiello
370a7d4c15
Added frontend support for Plex
2021-01-18 01:28:10 +01:00
Fabio Manganiello
85f56cf98c
New media panel [WIP]
2021-01-14 00:15:35 +01:00
Fabio Manganiello
6ae76f1f38
Migrating media plugins [WIP]
2021-01-05 00:50:24 +01:00
Fabio Manganiello
67d3b40772
Finalized new music.mpd web interface
2021-01-02 14:33:01 +01:00
Fabio Manganiello
d2887b7454
Implemented search in music.mpd
2021-01-01 15:58:56 +01:00
d10649e1f1
Support for token over Authorization: Bearer header
2020-12-31 15:36:48 +01:00
Fabio Manganiello
e127f2597c
music.mpd refactor WIP
2020-12-31 01:36:02 +01:00
Fabio Manganiello
1777ebb051
Retry logic in case of Pushbullet listener error
2020-12-30 19:44:30 +01:00
Fabio Manganiello
3eb7f01d38
Updated dist files
2020-12-26 17:43:00 +01:00
Fabio Manganiello
57304e8d7e
Music buttons should have no background
2020-12-26 17:41:12 +01:00
Fabio Manganiello
b4fc734a15
music.mpd panel migration - WIP
2020-12-26 15:03:12 +01:00
Fabio Manganiello
bc3e0b8634
Support for plugin panels embedded into dashboards
2020-12-17 02:09:23 +01:00
Fabio Manganiello
1726cbd96a
Optimized panel size for tablet
2020-12-16 22:31:04 +01:00
Fabio Manganiello
e5c8adfc1b
Fixed and expanded integration tests to deal with HTTP user authentication
2020-12-16 02:10:37 +01:00
Fabio Manganiello
049a48e156
Fixed modified property Vue warning
2020-12-15 21:32:39 +01:00
Fabio Manganiello
5d4f4b0378
Support for subscribe-once/unsubscribe frontend events mechanisms
2020-12-15 00:01:28 +01:00
Fabio Manganiello
0db997c6a0
transitiontime is not supported on hue/sat/bri change
2020-12-14 16:31:24 +01:00
Fabio Manganiello
5e7c6c26c9
Migrating lights panel WIP
2020-12-14 02:13:55 +01:00
Fabio Manganiello
2de1e3ebe6
Lights panel migration - WIP
2020-12-09 21:16:07 +01:00
Fabio Manganiello
79179746a7
Fixed websocket reconnection logic
2020-12-09 20:40:22 +01:00
Fabio Manganiello
fc718c907a
Migrating light.hue panel WIP
2020-12-03 00:59:35 +01:00
Fabio Manganiello
0cd120f492
New template for index panel
2020-11-30 20:57:00 +01:00
Fabio Manganiello
c3f01c198f
Keep track of the user authentication state
2020-11-28 15:32:07 +01:00
Fabio Manganiello
229b2de566
The /execute endpoint should require authentication as well
2020-11-28 15:28:09 +01:00
Fabio Manganiello
dea547a491
Migrated Pushbullet component
2020-11-28 01:12:54 +01:00
Fabio Manganiello
1036358b28
Use a $watch-based system to register subscribe handlers when the events component is not yet ready instead of relying on setTimeout hacks
2020-11-28 00:29:22 +01:00
Fabio Manganiello
8f477fa335
Migrated voice assistant component
2020-11-27 23:12:10 +01:00
Fabio Manganiello
3c6f3c5a21
Migrated login and register components
2020-11-26 23:43:16 +01:00
Fabio Manganiello
0902099855
Migrated RSS news widget
2020-11-26 17:11:03 +01:00
Fabio Manganiello
3c9a633907
Fixed carousel style
2020-11-26 12:53:34 +01:00
Fabio Manganiello
1e193f8346
Added new static files
2020-11-26 12:41:56 +01:00
Fabio Manganiello
9af02ba886
Carousel default font increased
2020-11-26 12:27:42 +01:00
Fabio Manganiello
221bcc058b
Need static/js and static/css as well
2020-11-26 12:02:41 +01:00
Fabio Manganiello
04cb2324aa
Removed dashboard configuration from HttpBackend, removed old HTTP
...
static files and replaced them with Vue app target dist/ directory.
2020-11-26 11:54:28 +01:00
Fabio Manganiello
887a0e5e88
Webapp dist files
2020-11-26 11:44:08 +01:00
Fabio Manganiello
cc3e52c69d
Migrated ImageCarousel widget
2020-11-26 00:26:10 +01:00
Fabio Manganiello
243e56b194
Added support for rows on dashboard and music widget
2020-11-23 00:44:31 +01:00
Fabio Manganiello
ecf6a844dd
Added support for refreshSeconds on dashboard level
2020-11-22 14:26:25 +01:00
Fabio Manganiello
62b651789a
Migrated DateTimeWeather and Calendar widgets
2020-11-22 12:57:28 +01:00
Fabio Manganiello
ba8e5ef6a0
Fixed croniter timezone offset logic mismatch
2020-11-21 01:38:07 +01:00
Fabio Manganiello
9dacd2d3c9
Fixed croniter timezone offset logic mismatch
2020-11-21 01:36:37 +01:00
Fabio Manganiello
39abdfe40a
New Vue.js template for dashbord WIP
2020-11-21 01:12:08 +01:00
Fabio Manganiello
0c0e7411f7
Bump version: 0.13.8 → 0.13.9
2020-11-11 22:31:47 +01:00
Fabio Manganiello
9179f35a82
Support for row height for dashboard widgets
2020-11-11 22:28:43 +01:00
Fabio Manganiello
470bd62af7
Parse actions in cron also from list
2020-11-11 17:09:36 +01:00
Fabio Manganiello
c7711d75a1
New pychromecast has replaced host/port with uri
2020-11-11 03:07:42 +01:00
Fabio Manganiello
711ea543bb
Use youtube-dl to extract the video URL instead of streaming its content to a local sock file
2020-11-11 03:07:23 +01:00
Fabio Manganiello
43f71ed47b
Bump version: 0.13.7 → 0.13.8
2020-11-10 22:55:03 +01:00
Fabio Manganiello
a07cb6ec3d
Explicit cast of possible dict_keys element to list() before copy()
2020-11-10 22:53:12 +01:00
Fabio Manganiello
45d998130b
Event import fixed
2020-10-28 23:29:34 +01:00
Fabio Manganiello
cc36325ca6
Added support for custom user events
2020-10-28 23:28:41 +01:00
Fabio Manganiello
c5dc9333f0
Extended light plugin status method signature
2020-10-28 23:19:16 +01:00
Fabio Manganiello
8a7f783032
Support for list args type in requests
2020-10-28 23:18:55 +01:00
Fabio Manganiello
77530b4a06
Use a threading Event to synchronize with the Hue animation thread instead of relying on the Redis backend
2020-10-14 00:18:23 +02:00
Fabio Manganiello
8279f22940
Bump version: 0.13.6 → 0.13.7
2020-10-13 23:26:13 +02:00
Fabio Manganiello
1c84659e34
Support for Python cronjobs in scripts folder - closes #156
2020-10-13 23:25:27 +02:00
Fabio Manganiello
37e006d86e
Refined Tensorflow train methods
2020-10-12 01:06:32 +02:00
Fabio Manganiello
8d7e790eda
More descriptive attribute names for the Tensorflow predict response.
...
Using `outputs` instead of `values` and `predictions` instead of `labels`.
2020-10-02 01:17:34 +02:00
Fabio Manganiello
daaa0050d1
Squeeze the extra dimensions in a grayscale image and pass the model name to the response objects
2020-10-01 18:50:36 +02:00
Fabio Manganiello
287b6303ae
More flexible module loading and better lock management for models in Tensorflow plugin
2020-10-01 17:41:12 +02:00
Fabio Manganiello
9b23ab7015
Only stop the loop if it is set
2020-09-30 13:53:32 +02:00
Fabio Manganiello
7947c1031d
More robust frontend reaction in case of race conditions on player state events
2020-09-29 15:58:23 +02:00
Fabio Manganiello
9e6c40d393
media.gstreamer added to the list of compatible media plugins
2020-09-29 15:37:46 +02:00
Fabio Manganiello
f3a9dc4ef5
Added navigator icon for media.gstreamer plugin
2020-09-29 15:35:29 +02:00
Fabio Manganiello
05b0a7f14d
Added GStreamer media plugin [ closes #151 ]
2020-09-29 15:32:40 +02:00
Fabio Manganiello
6ad5397a25
Removed unused import
2020-09-28 22:13:42 +02:00
Fabio Manganiello
0a9c4fc3a7
Added GStreamer camera plugin [relates to #151 ]
2020-09-28 22:10:56 +02:00
Fabio Manganiello
e9d9ef252f
Frames directory should be created in 0o755 mode
2020-09-28 02:33:27 +02:00
Fabio Manganiello
f2a654bdec
Reset camera.android.ipcam stylesheet
2020-09-27 19:47:21 +02:00
Fabio Manganiello
d92e630314
Bump version: 0.13.5 → 0.13.6
2020-09-27 17:20:51 +02:00
Fabio Manganiello
07336d3272
Fixed login redirect page [ closes #154 ]
2020-09-27 17:20:14 +02:00
Fabio Manganiello
959cc8b75b
Added navigator icon for ffmpeg camera
2020-09-27 17:09:52 +02:00
Fabio Manganiello
df1e03f0af
Added FFmpeg camera plugin [relates to #150 ]
2020-09-27 12:52:07 +02:00
Fabio Manganiello
b21193dc74
Added camera.ffmpeg plugin web panel
2020-09-27 03:09:14 +02:00
Fabio Manganiello
9ad6188b5d
New js file for camera.pi plugin
2020-09-27 02:52:20 +02:00
Fabio Manganiello
31f2c5152c
New template file for camera.pi
2020-09-27 02:47:38 +02:00
Fabio Manganiello
c269c62fe6
Refactored logging names
2020-09-27 01:33:38 +02:00
Fabio Manganiello
6e6092e4b2
Do proper decapsulation for PiCamera wrapped object when reinitialized
2020-09-25 18:25:33 +02:00
Fabio Manganiello
ac42f7eba4
Make sure that the PiCamera session is properly closed and re-opened on each stream request
2020-09-25 18:06:27 +02:00
Fabio Manganiello
258a9b57ce
release_device should not fail hard if stop_recording or close fail on ConnectionError
2020-09-25 17:42:21 +02:00
Fabio Manganiello
28409b8688
The device should be released after each streaming session
2020-09-25 17:34:53 +02:00
Fabio Manganiello
c12e7bab90
The streaming thread shouldn't fail and exit if it fails closing a client socket
2020-09-25 17:28:25 +02:00
Fabio Manganiello
09f9e974b1
Camera plugins refactor
2020-09-25 17:19:43 +02:00
Fabio Manganiello
c0f7cc0782
Added NextCloud integration [ closes #149 ]
2020-09-10 11:10:26 +02:00
Fabio Manganiello
0af326fa11
Refactored inotify backend
2020-09-09 02:16:13 +02:00
Fabio Manganiello
beeb7dca7c
Removed unneeded import
2020-09-09 02:15:52 +02:00
Fabio Manganiello
1e972ded99
More robust logic on the bus in case the message failed to parse (prevents the application from crashing)
2020-09-09 02:15:35 +02:00
Fabio Manganiello
a650840429
Refactored variable plugin
2020-09-09 02:14:59 +02:00
Fabio Manganiello
4d0d467292
PIL JPEG format name typo fix
2020-09-08 18:14:49 +02:00
Fabio Manganiello
83122becdb
Applied degrees -> PIL rotation ID conversion to the output image
2020-09-08 18:03:18 +02:00
Fabio Manganiello
9623752e19
Fixed module name typo
2020-09-08 17:57:18 +02:00
Fabio Manganiello
53ddbad7ce
Refactored MLX90640 plugin and HTTP route to work with direct BytesIO - it improves performance over using temporary files or base64-encoded responses
2020-09-08 17:51:46 +02:00
Fabio Manganiello
ac02becba8
Switched RSS HTML digests style to inline CSS for better client cross-compatibility and added docstring to RssUpdates
2020-09-05 16:54:08 +02:00
Fabio Manganiello
13642cc42e
Possibility to customize the CSS in the generated RSS digests
2020-09-05 01:48:28 +02:00
Fabio Manganiello
d6f653d834
Using named arguments for formatting the parsed content of a feed
2020-09-05 01:43:33 +02:00
Fabio Manganiello
dc254d6474
Also include the link in an RSS feed digest
2020-09-05 01:39:16 +02:00
Fabio Manganiello
8a1f49a906
Open the source file in read non-binary mode in case of MIMEText
2020-09-05 01:29:43 +02:00
Fabio Manganiello
6dce4c59f6
(Forgot to pass the new arguments to the MIME constructor)
2020-09-05 01:27:08 +02:00
Fabio Manganiello
ce42f5aada
MIMEText doesn't accept the Name parameter
2020-09-05 01:25:12 +02:00
Fabio Manganiello
e9d4ed3911
Added more source fields to the RSS NewFeedEvent
2020-09-05 00:50:04 +02:00
Fabio Manganiello
2ceb3511b3
More robust websocket retry handler for Todoist
2020-09-04 22:59:23 +02:00
Fabio Manganiello
d27b23ec5a
Bump version: 0.13.4 → 0.13.5
2020-09-03 17:17:47 +02:00
Fabio Manganiello
9402e4f65f
Removed trailing column
2020-09-03 17:16:35 +02:00
Fabio Manganiello
a4c6028dc4
Fixed wrong code-block syntax
2020-09-03 14:32:51 +02:00
Fabio Manganiello
907bc0f75b
Added rtorrent integration [ closes #120 ]
2020-09-03 13:08:42 +02:00
Fabio Manganiello
d7806757c5
Polished mail integration
2020-09-02 01:34:18 +02:00
Fabio Manganiello
ca168828de
Added events on IMAP flagged/starred messages and extended IMAP plugin with remaining methods [ closes #146 ]
2020-09-02 00:07:08 +02:00
Fabio Manganiello
6c24783df7
Log full exceptions in case of failures in a procedure
2020-09-01 10:33:56 +02:00
Fabio Manganiello
681e9f1703
Added SMTP plugin [links to #146 ]
2020-09-01 01:52:22 +02:00
Fabio Manganiello
737c135996
More robust logic to pass procedures to the index.html template
2020-08-31 21:32:00 +02:00
Fabio Manganiello
edd2235cbc
Removed old reference to __plugins__ in kodi.js - using inspect.get_config
endpoint instead.
2020-08-31 18:31:15 +02:00
Fabio Manganiello
dc1b54961f
Added inspect.get_config()
method to get the configuration programmatically
2020-08-31 18:26:08 +02:00
Fabio Manganiello
3c3ee09d90
Fixed auto-generated docs indentation and code blocks
2020-08-31 17:39:42 +02:00
Fabio Manganiello
1681f80728
Added IMAP plugin and generic mail check backend [links to #146 ]
2020-08-31 15:33:03 +02:00
Fabio Manganiello
f1ab923bfe
Option to reuse the MQTT configuration of the plugin if not provided on the backend
2020-08-27 17:39:22 +02:00
Fabio Manganiello
d7c3ad64f5
Use default MQTT settings for MQTT listeners if not provided
2020-08-27 17:16:33 +02:00
Fabio Manganiello
ca0c4e3089
Don't overwrite the client variable within the same scope
2020-08-27 16:59:35 +02:00
Fabio Manganiello
beceb39b0c
Added client_id in MQTT integrations
2020-08-27 16:41:51 +02:00
Fabio Manganiello
9f1128e2c0
typo fix
2020-08-27 16:30:18 +02:00
Fabio Manganiello
e77e5bb3d8
Only expand paths if set
2020-08-27 16:29:21 +02:00
Fabio Manganiello
0d182820e8
expanduser for TLS files in MQTT listeners
2020-08-27 16:25:52 +02:00
Fabio Manganiello
f7df1d2f6e
typo fix
2020-08-27 16:01:51 +02:00
Fabio Manganiello
cd8732dc8f
Added tls_insecure flag to MQTT
2020-08-27 15:56:43 +02:00
Fabio Manganiello
b8917de52f
TLS version in MQTT configuration parsed from string
2020-08-27 12:44:00 +02:00
Fabio Manganiello
aa631deb88
Fixed docs typo
2020-08-24 01:24:24 +02:00
Fabio Manganiello
2e6388f6f4
ReadTheDocs fixes
2020-08-24 01:14:40 +02:00
Fabio Manganiello
5d2e74eb97
LINT fixes for LCD plugins
2020-08-24 00:42:34 +02:00
Fabio Manganiello
af614480b8
Added LCD display integration ( closes #145 )
2020-08-23 20:00:08 +01:00
Fabio Manganiello
7a7c065754
Added missing docs
2020-08-23 00:49:51 +02:00
Fabio Manganiello
6bed284e8b
Added DHT temperature/humidity sensor integration [ closes #113 ]
2020-08-22 23:46:21 +01:00
Fabio Manganiello
289eebd6a0
Moved definition of workdir inside the constructor, otherwise readthedocs will fail for missing configuration file
2020-08-22 15:33:44 +02:00
Fabio Manganiello
43ef4bccdf
LINT fixes
2020-08-22 14:31:00 +02:00
Fabio Manganiello
fa0a5805be
LINT fixes
2020-08-22 14:25:31 +02:00
Fabio Manganiello
bf92d66be1
Bump version: 0.13.3 → 0.13.4
2020-08-22 14:08:14 +02:00
Fabio Manganiello
a9509fc959
Pass the repo reference to the Github event
2020-08-22 12:25:55 +02:00
Fabio Manganiello
2dc8fe9437
Added Github backend [ closes #95 ]
2020-08-22 12:09:24 +02:00
Fabio Manganiello
a0d97c0f18
service_type and service_name are actually needed even if empty
2020-08-20 00:48:01 +02:00
Fabio Manganiello
d8f7b15111
Post ZeroconfServiceRemovedEvent also if the zeroconf_info object has already been deallocated
2020-08-20 00:40:02 +02:00
Fabio Manganiello
ddedcd647c
The Zeroconf object might already be closed after unregister_service
2020-08-20 00:37:39 +02:00
Fabio Manganiello
63ad4bfdce
Doc fixes
2020-08-20 00:35:06 +02:00
Fabio Manganiello
019bcbf90a
Replaced values.unset in Twilio methods signature with None for JSON compatibility
2020-08-20 00:08:10 +02:00
Fabio Manganiello
403076e6ab
Fixed method name
2020-08-19 23:56:23 +02:00
Fabio Manganiello
988601b10e
Added Twilio integration [ closes #132 ]
2020-08-19 23:30:26 +02:00
Fabio Manganiello
cbae8132ed
Python 3.5 compatibility
2020-08-19 22:20:00 +02:00
Fabio Manganiello
5302d3143e
Better reconnection logic for mopidy backend
2020-08-19 20:23:33 +02:00
Fabio Manganiello
4b86b8ef54
Fixed ndef submodules import
2020-08-17 17:16:53 +02:00
Fabio Manganiello
62e5d03931
Matching new ndef naming conventions
2020-08-17 17:10:28 +02:00
Fabio Manganiello
9c52d96c08
Bump version: 0.13.2 → 0.13.3
2020-08-16 02:01:41 +02:00
Fabio Manganiello
0659996c48
Added DBus integration [ closes #141 ]
2020-08-16 01:57:30 +02:00
Fabio Manganiello
af2dbf899d
Importing Zeroconf inside of the method to prevent Travic-CI from breaking because of module not found
2020-08-14 20:53:20 +02:00
Fabio Manganiello
20b095232d
Support for extended information in zeroconf.discover_service
2020-08-14 15:52:24 +02:00
Fabio Manganiello
f35bacaae5
Bump version: 0.13.1 → 0.13.2
2020-08-14 02:02:29 +02:00
Fabio Manganiello
c057cd13fd
python-zeroconf has introduced too many breaking changes - giving up.
2020-08-14 02:01:31 +02:00
Fabio Manganiello
b79fd4e25d
Bump version: 0.13.0 → 0.13.1
2020-08-14 00:37:39 +02:00
Fabio Manganiello
7e8bef40cd
Added Zeroconf integration [ closes #105 ]
2020-08-14 00:36:39 +02:00
Fabio Manganiello
dc5afebd27
Bump version: 0.12.10 → 0.13.0
2020-08-12 00:59:04 +02:00
Fabio Manganiello
6b43a5e592
Added luma.oled display support
2020-08-11 14:48:14 +02:00
Fabio Manganiello
d3e52ba944
Backends should be started with daemon=True
2020-08-01 17:20:46 +02:00
Fabio Manganiello
65bac0ccc5
Fix for pychromecast.get_chromecasts new return type.
...
On newer versions of pychromecast get_chromecasts returns
a tuple (devices, browser_service) instead of a list. The
software should be robust enough with both older and newer
versions of pychromecast.
2020-07-25 01:35:06 +02:00
Fabio Manganiello
20e67ffc93
Bump version: 0.12.9 → 0.12.10
2020-07-20 00:20:19 +02:00
Fabio Manganiello
a6730d5252
Added generated CSS folder (prevents pyScss dependencies for binary builds)
2020-07-19 22:41:37 +02:00
Fabio Manganiello
590d416682
Google Translate API supports a maximum of 2000 characters per API call.
...
Therefore it's a good idea to split the input text/html.
2020-07-05 21:04:54 +02:00
Fabio Manganiello
adc94349c7
Missing commas
2020-07-04 00:31:24 +02:00
Fabio Manganiello
b716b1a0c1
More robust URL query for YouTube
2020-07-04 00:25:49 +02:00
Fabio Manganiello
93ac6c8af9
Regex format fix
2020-07-04 00:18:45 +02:00
Fabio Manganiello
03dc524f80
Fixed response type
2020-07-04 00:15:44 +02:00
Fabio Manganiello
c943acb9c2
Smarter logic for parsing YouTube URLs in Kodi
2020-07-04 00:12:16 +02:00
Fabio Manganiello
a4824a4e95
Google Cloud Translate API works through GOOGLE_APPLICATION_CREDENTIALS env variable
2020-07-02 02:24:54 +02:00
Fabio Manganiello
46515020cf
Added Google Translate plugin
2020-07-02 02:07:57 +02:00
Fabio Manganiello
1e15bb5606
Changed favicon
2020-07-01 01:08:31 +02:00
Fabio Manganiello
b32232b46e
Prevent a tight loop in HttpPoll if one of the requests fails
2020-07-01 00:53:23 +02:00
Fabio Manganiello
3174db5776
Always convert content to string before writing it to a file
2020-06-30 11:41:38 +02:00
Fabio Manganiello
11709641d7
Extended file plugin with more util methods
2020-06-29 23:53:11 +02:00
Fabio Manganiello
d560823887
Replaced deprecated options in PiCamera module
2020-06-27 13:55:18 +02:00
Fabio Manganiello
96716dc872
Support for pre-fetched HTML/Markdown content.
...
HTML output can be too large for the process called over the command
line. HTML data exchange now happens through an intermediate temporary
file.
2020-06-25 01:37:59 +02:00
Fabio Manganiello
f50ad767e0
Support for more arguments passed to the Mercury parser
2020-06-23 01:54:35 +02:00
Fabio Manganiello
a1c20a52da
Defined get_procedures() method on inspect plugin
2020-06-17 22:31:07 +02:00
Fabio Manganiello
fb58c89911
More robust node_to_dict code in case of race conditions where some of the attributes required to generate id_on_network are not available
2020-06-11 14:50:41 +02:00
Fabio Manganiello
a18002dea0
The command class of a Z-Wave value can also be null: prevent the plugin from breaking in such case
2020-06-09 16:14:02 +02:00
Fabio Manganiello
9d6375f381
More robust logic in case of Tplink device not available
2020-06-08 19:43:08 +02:00
Fabio Manganiello
526bca847b
Bump version: 0.12.8 → 0.12.9
2020-06-08 00:38:04 +02:00
Fabio Manganiello
0ced46058a
Always set check_same_thread=False in case of SQLite engines.
...
Platypush is heavily multi-threaded, and it can happen that some
transactions are handled in different threads - and consistency
is managed by the application itself.
2020-06-08 00:27:41 +02:00
Fabio Manganiello
6ba92e7fdd
Added missing doc line
2020-05-23 23:12:45 +02:00
Fabio Manganiello
82a9aa1232
Added clipboard backend
2020-05-23 23:11:42 +02:00
Fabio Manganiello
b5f0e2b4df
Bump version: 0.12.7 → 0.12.8
2020-05-23 21:39:26 +02:00
Fabio Manganiello
3cdd9e8474
Added SSH plugin [ closes #136 ]
2020-05-23 21:38:22 +02:00
Fabio Manganiello
f20cb4df5b
No need to override background-color in main for dashboard
2020-05-23 12:26:45 +02:00
Fabio Manganiello
97343e97de
background-image for dashboard CSS
2020-05-23 12:22:56 +02:00
Fabio Manganiello
1b47615100
More robust attribute checking before conversion, as the object can actually be either a ZWaveNode or a ZWaveController
2020-05-22 12:08:17 +02:00
Fabio Manganiello
98ced4b4e4
Don't push a ZwaveNetworkStoppedEvent directly to the event_queue - the object type is incompatible
2020-05-22 11:54:19 +02:00
Fabio Manganiello
d6b509e98a
Replaced fullscreen auto logic with button toggle
2020-05-20 16:15:08 +02:00
Fabio Manganiello
82162c3c5e
Apply fullscreen to document.documentElement instead of getting the body
2020-05-20 15:58:28 +02:00
Fabio Manganiello
7e0a91d839
Portable implementation of fullscreen JS methods
2020-05-20 15:47:17 +02:00
Fabio Manganiello
e44dfbc169
Added fullscreen support in webpanel and dashboard
2020-05-20 15:29:49 +02:00
Fabio Manganiello
d595688d55
Use the /total/country/<cc> endpoint instead of /total/dayone/country/<cc>
2020-05-17 16:52:37 +02:00
Fabio Manganiello
0c10825d2e
Bump version: 0.12.6 → 0.12.7
2020-05-17 12:56:36 +02:00
Fabio Manganiello
51f99026ac
The network object isn't always available on a ZWave event
2020-05-17 12:56:01 +02:00
Fabio Manganiello
aa66b81b7b
Fixed webhook event management
2020-05-09 01:47:12 +02:00
Fabio Manganiello
80d5a6ad19
Support for multiple torrent sessions
2020-05-07 23:34:56 +02:00
Fabio Manganiello
26f6feebb7
Implemented retry+sleep mechanism in Switchbot plugin in case of errors
...
This should prevent race conditions in case of command timeout+quick
disconnection and retry that can result in race conditions and double
free corruptions.
2020-05-06 00:25:19 +02:00
Fabio Manganiello
99fee9ce20
Parse countries from the official country list
2020-05-04 13:15:17 +00:00
Fabio Manganiello
07299e49e7
Bump version: 0.12.5 → 0.12.6
2020-05-03 18:10:25 +02:00
Fabio Manganiello
d0ccd65214
Added Samsung smart TV web plugin
2020-05-03 17:21:16 +02:00
Fabio Manganiello
2f57ccf412
Added Samsung smart TV plugin
2020-05-03 00:57:13 +02:00
Fabio Manganiello
1cf93199d0
Adaptive dashboard widget height
2020-05-01 15:03:13 +02:00
Fabio Manganiello
1d24c878e6
Use both country and country_code on the event
2020-05-01 00:03:55 +02:00
Fabio Manganiello
a387b84623
Don't swallow the exception if something goes wrong in a Python hook
2020-04-30 23:55:28 +02:00
Fabio Manganiello
9d0f43707a
Support for list of countries
2020-04-30 22:45:04 +02:00
Fabio Manganiello
77e302cd4b
Using session.merge instead of session.add to handle insert/update logic
2020-04-30 00:59:33 +02:00
Fabio Manganiello
3bb4c4434c
Added Covid-19 country stats plugin and backend/monitor
2020-04-30 00:44:34 +02:00
Fabio Manganiello
3c209a800b
New popcorn time API URLs
2020-04-28 13:49:31 +02:00
Fabio Manganiello
42d29ca1f6
LINT fixes
2020-04-23 18:33:57 +02:00
Fabio Manganiello
8440320031
Don't swallow the stack trace in backend.http.request if a request fails
2020-04-22 23:46:05 +00:00
Fabio Manganiello
01ce9284a1
Bump version: 0.12.4 → 0.12.5
2020-04-12 22:56:33 +02:00
Fabio Manganiello
f7d644c32d
get_procedures() can now return Python function objects as well.
...
This means that the JSON encoder must act accordingly and parse
the function object into an encodable string.
2020-04-12 22:56:12 +02:00
Fabio Manganiello
124269776d
Support for procedure imports from scripts base module
2020-04-10 20:59:32 +02:00
Fabio Manganiello
25ea0ea77c
Included scripts_dir parent dir on sys.path so scripts can import members through the "scripts" package
2020-04-10 00:40:46 +02:00
Fabio Manganiello
0cd28f7499
If the response contains errors in run() then raise a RuntimeError, otherwise return the output instead of the Response object
2020-04-10 00:06:36 +02:00
Fabio Manganiello
7b79e4b669
Support for multiple positional arguments on utils.run()
2020-04-09 23:50:08 +02:00
Fabio Manganiello
ca718d0748
Bump version: 0.12.3 → 0.12.4
2020-04-09 00:15:08 +02:00
Fabio Manganiello
d46385687f
Support for event filter on functional hook
2020-04-09 00:09:36 +02:00
Fabio Manganiello
0dae03551f
Implemented interface for custom Python scripts, procedures and hooks [ closes #131 ]
2020-04-08 23:22:54 +02:00
Fabio Manganiello
b490344632
Fixed missing static_folder issue on settings page and JS document race condition
2020-03-29 13:47:22 +02:00
Fabio Manganiello
13c25f94d5
Better fix for the calendar widget font size
2020-03-24 17:23:48 +01:00
Fabio Manganiello
9e32f1fb42
Tweaked font-size for upcoming event and other events in calendar widget
2020-03-24 17:14:13 +01:00
Fabio Manganiello
a388e8dd83
Reduced font-size for calendar events to prevent overflow on smaller screens
2020-03-24 17:06:14 +01:00
Fabio Manganiello
03968928e7
Don't do QRcode plugin base imports, or the web app may fail if the dependencies are not installed
2020-03-24 10:29:22 +01:00
Fabio Manganiello
7ce5efaf2e
Removed numpy and PIL top-level imports that could break the HTTP server if not installed on the system
2020-03-24 10:25:25 +01:00
Fabio Manganiello
4ece49bfe7
Added missing string format parameter
2020-03-24 09:11:07 +01:00
Fabio Manganiello
7af8fb581b
A more robust logic to check whether the first dimension of the input tensor is None
2020-03-23 23:54:18 +01:00
Fabio Manganiello
30a5f7b297
Fixed docs typo
2020-03-23 01:25:35 +01:00
Fabio Manganiello
41ccf3e5dc
Bump version: 0.12.2 → 0.12.3
2020-03-23 01:19:49 +01:00
Fabio Manganiello
0f099158cc
Bump version: 0.12.1 → 0.12.2
2020-03-23 01:15:54 +01:00
Fabio Manganiello
375a8376dc
Don't use Config.get on __init__, or docs build will fail because of missing config.yaml
2020-03-23 01:14:44 +01:00
Fabio Manganiello
f4dcf688f0
Set default values for metrics for regression and networks
2020-03-23 01:10:59 +01:00
Fabio Manganiello
50e372be36
Implemented extensive support for neural networks, images and directories [ closes #121 ]
2020-03-23 01:00:25 +01:00
Fabio Manganiello
1f1fefca9d
Tensorflow plugin implementation WIP [ #121 ]
...
TODO: Extend neural network implementation to work
also with e.g. input from images, sounds or binary
2020-03-21 19:50:59 +01:00
Fabio Manganiello
d938017bf8
Added support for extra mplayer arguments for TTS plugins
2020-03-16 18:40:17 +01:00
Fabio Manganiello
f2b3000922
Handle numpy types in the JSON message encoder
2020-03-14 18:35:45 +01:00
Fabio Manganiello
e7084b5d6f
Added CSV plugin
2020-03-13 01:29:43 +01:00
Fabio Manganiello
a130edb74f
Made QR-code scan work also on picamera
2020-03-11 01:06:07 +01:00
Fabio Manganiello
2992d5f726
List of dependencies for qrcode plugin should also include numpy
2020-03-10 22:50:33 +01:00
Fabio Manganiello
141275ecdf
Support for scanning QR-codes and barcodes through a camera plugin
2020-03-10 22:35:50 +01:00
Fabio Manganiello
c9db887505
Added QR code/barcode integration [ closes #119 ]
2020-03-10 00:07:21 +01:00
Fabio Manganiello
c26d456109
Added Linode integration [ closes #116 ]
2020-03-09 21:34:06 +01:00
Fabio Manganiello
096f84c865
Added OTP integration [ closes #118 ]
2020-03-09 01:11:23 +01:00
Fabio Manganiello
fc7982378a
The bluetooth BLE plugin must also implement get_measurement to work with the scanner backend
2020-03-08 23:50:23 +01:00
Fabio Manganiello
59e3f81202
Added bluetooth scanner backends [ closes #112 ]
2020-03-08 23:37:57 +01:00
Fabio Manganiello
535b2ec083
Changed mpd filter to dict on the frontend as well
2020-03-08 13:07:35 +01:00
Fabio Manganiello
42c5bbe0e4
Fixed LINT warnings and changed MPD filter format (from list to dict)
2020-03-08 13:04:00 +01:00
Fabio Manganiello
ed02505dce
Bump version: 0.12.0 → 0.12.1
2020-03-07 20:37:41 +01:00
Fabio Manganiello
642d5117a1
Added note about the license for PicoVoice Cheetah
2020-03-07 20:28:42 +01:00
Fabio Manganiello
ce0f3227ec
Implemented PicoVoice speech-to-text integration [ closes #130 ]
2020-03-07 20:21:32 +01:00
Fabio Manganiello
a5c08ed3e4
Added PicoVoice plugin with support for hotwords [see #130 ]
2020-03-07 02:00:35 +01:00
Fabio Manganiello
e04c6fb921
Extracted common logic for speech-to-text integrations into abstract STT plugin
2020-03-06 23:11:19 +01:00
Fabio Manganiello
7ed847b646
Removed __future__ annotations (it breaks readthedocs build)
2020-03-06 00:53:24 +01:00
Fabio Manganiello
b0339754b2
Implemented Mozilla DeepSpeech speech-to-text integration [ closes #126 ]
2020-03-06 00:38:24 +01:00
Fabio Manganiello
fc949ed9f1
Skip base Response type
2020-03-05 23:19:26 +01:00
Fabio Manganiello
27f847eac6
Support for is_muted/toggle_muted on Google assistant
2020-03-05 18:13:44 +01:00
Fabio Manganiello
124d2e356d
Support for mic muted/unmuted event in Google assistant
2020-03-05 18:03:05 +01:00
Fabio Manganiello
e66c02f3de
Added documentation for response objects as well
2020-03-05 17:41:26 +01:00
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
cb0dd900ab
Don't overwrite the original byte read from serial
2020-02-26 11:22:52 +01:00
Fabio Manganiello
a9cb834499
Be more robust in case we receive non-Unicode characters on the serial port
2020-02-26 11:19:59 +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
40a29a8214
fire_event could also be called by an external web server or service with no access to the bus. Therefore don't fail hard if the bus is not available
2020-02-24 17:17:36 +01:00
Fabio Manganiello
ce66e0c855
Bump version: 0.11.5 → 0.12.0
2020-02-23 23:33:32 +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