Commit graph

381 commits

Author SHA1 Message Date
Fabio Manganiello ed4b7e1da9 mplayer step_property volume doesn't really work as intended 2019-02-02 16:36:47 +01:00
Fabio Manganiello 3a5d7c7cba MPlayer has a quite weird way of handling the volume 2019-02-02 16:28:55 +01:00
Fabio Manganiello 535c4bbc17 Added set_volume action to mplayer plugin 2019-02-02 16:11:31 +01:00
Fabio Manganiello d0a288b423 Don't start the mplayer pipe with shell=True 2019-02-02 16:06:56 +01:00
Fabio Manganiello 7068530eb0 Strip the file:// part out of the resource name 2019-02-02 15:58:18 +01:00
Fabio Manganiello 36725f7136 typo 2019-02-02 15:54:44 +01:00
Fabio Manganiello 1713c0c940 Propagate enviornment variables to the player executable 2019-02-02 15:51:12 +01:00
Fabio Manganiello 63b423cf75 Refactored mplayer and omxplayer under the same media player 2019-02-02 00:06:28 +01:00
Fabio Manganiello 56b6e6a899 More optimized check against supported extensions 2019-01-20 10:01:07 +01:00
Fabio Manganiello 297d1114e7 Implemented generic media plugin and made MPlayer extend it (TODO: omxplayer and vlc) 2019-01-20 08:50:05 +01:00
Fabio Manganiello d59044fa2d Added MPlayer plugin 2019-02-01 09:34:50 +01:00
Fabio Manganiello 05a1713b92 Make sure that extra arguments on the Spotify URI are discarded during the URI parse 2019-01-30 09:08:29 +01:00
Fabio Manganiello ee0040fba6 More robust Spotify URI parsing that discards optional arguments (e.g. si=) passed to the URL 2019-01-30 09:04:18 +01:00
Fabio Manganiello 947fc8f583 Better handling of Hue bridge first-time pairing 2019-01-27 17:26:15 +01:00
Fabio Manganiello 1f4efbb427 Better handling for the lights blink animation for groups 2019-01-20 00:42:07 +01:00
Fabio Manganiello d1b9fef740 Passing socket_timeout=transition_seconds attribute to _get_redis 2019-01-20 00:36:07 +01:00
Fabio Manganiello c7decd81f2 Lazy inizialitation for the Redis object in light.hue to prevent race conditions on start/stop animation 2019-01-20 00:29:58 +01:00
Fabio Manganiello 122978c6f0 Support for extra args/kwargs passed to light.hue actions 2019-01-19 23:23:58 +01:00
Fabio Manganiello 03bdf5c547 Implemented get_timeout/get_timeouts/get_interval/get_intervals util methods 2019-01-14 20:44:40 +01:00
Fabio Manganiello 0e6f8bbb0b typo 2019-01-14 19:54:59 +01:00
Fabio Manganiello ca24243449 As python-mpd2 doesn't seem to be quite thread-safe, the mpd plugin entry-point has now got a reentrant lock 2019-01-14 19:52:54 +01:00
Fabio Manganiello d96ffe4d9f typo 2019-01-13 23:47:35 +01:00
Fabio Manganiello f38b2db273 Fixed interaction with modal dialogs to prevent browser race conditions when touchscreen events are involved 2019-01-13 23:45:03 +01:00
Fabio Manganiello 740063c23b Clear the timeout handler from the map once the execution is terminated 2019-01-13 22:58:18 +01:00
Fabio Manganiello 2d8b2ba55a Removed pp- prefix from the name of the spawned processes and threads 2019-01-13 20:41:15 +01:00
Fabio Manganiello db4e68e247 Do exception logging at Request level and discard duplicate exception messages between retries 2019-01-13 20:09:25 +01:00
Fabio Manganiello 8ea0519954 Support for set/clear timeout/interval utils actions and error handling refactor
- Added set/cler timeout/interval actions in the utils plugin to
dynamically set or stop timed actions from your custom logic

- Actions error handling refactoring. If a Response is processed with
some errors, then just log the error and return it to the caller,
without raising an exception. If instead the action execution raised an
uncaught exception, then handle the retries properly and return errors
as a list with the output from all the retries, without being too
verbose with the returning and logging the whole stack trace multiple
times.
2019-01-13 19:29:08 +01:00
Fabio Manganiello bb8a21ed13 Revert "Sort Adafruit IO received data by timestamp"
This reverts commit 2739dda266.
2019-01-12 02:08:04 +01:00
Fabio Manganiello 2739dda266 Sort Adafruit IO received data by timestamp 2019-01-12 02:06:38 +01:00
Fabio Manganiello 78d44364cf Casting data to number whenever possible on FeedUpdateEvent as well 2019-01-12 01:58:35 +01:00
Fabio Manganiello d63ad91b2a Implemented receive_next and receive_previous wrappers in Adafruit IO and rationalized returned types 2019-01-12 01:52:39 +01:00
Fabio Manganiello ca855fce5d Improved Adafruit IO data handling 2019-01-12 01:38:17 +01:00
Fabio Manganiello 1087dae197 Added Adafruit IO backend 2019-01-12 01:07:38 +01:00
Fabio Manganiello 212cfb63c4 Lazy initialization of WeMo environment 2019-01-11 19:58:43 +01:00
Fabio Manganiello 33fd226fa1 Don't throw the exception if a certain Snapcast host is not reachable 2019-01-11 11:50:37 +01:00
Fabio Manganiello 29be2945cc Log trace before attempting a Snapcast connection 2019-01-11 11:46:13 +01:00
Fabio Manganiello fbf3600e91 Setting thread and process names properly through prctl 2019-01-10 23:45:13 +01:00
Fabio Manganiello 56c7258c74 Setting names for threads 2019-01-10 23:08:29 +01:00
Fabio Manganiello a190184b0c Using an auxiliary map to keep track of the playing hosts to prevent errors when the items are removed by the worker threads while iterating them 2019-01-10 18:14:41 +01:00
Fabio Manganiello 2c8099e7ae Apply stream name filtering logic also to HTTP streams 2019-01-10 18:01:24 +01:00
Fabio Manganiello f156e9c199 Refactored plugin so that errors are properly returned up the stack, client connections are lazy and re-initialized upon error 2019-01-10 17:51:33 +01:00
Fabio Manganiello 8759dafa0e Let plugin fail if unable to retrieve the status, so it can rely on the automatic reload mechanism instead of swallowing the error 2019-01-10 17:28:49 +01:00
Fabio Manganiello abe80db47e Changed default for exclude_local from True to False 2019-01-10 17:25:25 +01:00
Fabio Manganiello c619d89fa4 Added method to programmatically get the list of active Snapcast connections 2019-01-10 17:22:52 +01:00
Fabio Manganiello a349b45ba4 Removed get_plugin utils method from web server, it messes up with also with the reentrant locks as it runs in another process. Refactored Snapcast frontend to get the backend hosts asynchronously through a plugin method 2019-01-10 11:52:39 +01:00
Fabio Manganiello 544979e7ff - Added position argument to music.mpd.add
- Added RSS feed parser plugin
2019-01-09 18:43:13 +01:00
Fabio Manganiello 3c385a601f Exposing backend hosts and ports as both lists and JSON on Snapcast plugin 2019-01-08 18:24:59 +01:00
Fabio Manganiello 80bd5b684c Added support for setting/changing group streams on Snapcast 2019-01-08 17:43:20 +01:00
Fabio Manganiello 19eab381ae Weird Jinja bug broke the web panel load when using JSON parse, had to refactor it a bit to fix it 2019-01-08 13:53:21 +01:00
Fabio Manganiello d91e494940 Added group and host modals and settings to Snapcast UI 2019-01-08 12:54:33 +01:00