Fabio Manganiello
43ff0d4e25
Added hooks on light.hue web panel tab to synchronize light statuses with LightStatusChangeEvent events
2019-01-09 15:08:16 +01:00
Fabio Manganiello
d50d92e99e
Added Philips Hue lights backend to monitor status changes to the lights
2019-01-09 09:21:48 +01:00
Fabio Manganiello
7c02c70663
Version bump 0.9.3 -> 0.9.4
2019-01-08 19:24:17 +01:00
Fabio Manganiello
9ba7a68578
Fixed modal height and positioning on screen
2019-01-08 19:23:06 +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
35292968ed
Made get_plugin lock reentrant
2019-01-08 16:33:57 +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
Fabio Manganiello
382866b1a4
Added content to Snapcast group modal
2019-01-08 10:13:13 +01:00
Fabio Manganiello
fd8c3bb846
Connected the wires between Snapcast backend and frontend
2019-01-08 01:47:16 +01:00
Fabio Manganiello
a346442246
Draft for Snapcast UI style
2019-01-07 16:50:51 +01:00
Fabio Manganiello
004868f526
Added skeleton UI for Snapcast plugin on web panel
2019-01-07 15:34:31 +01:00
Fabio Manganiello
7aefe4e520
More resilient logic in case actions in a procedure return null responses
2019-01-07 00:07:45 +01:00
Fabio Manganiello
bbc3a9e82a
Fixed Snapcast status method
2019-01-06 23:46:52 +01:00
Fabio Manganiello
461362f792
mset signature now compatible both with redis-py < 3.0 and >= 3.0
2019-01-06 23:46:18 +01:00
Fabio Manganiello
efad5a2bd7
Added Snapcast backend
2019-01-06 19:19:30 +01:00
Fabio Manganiello
2fba3109b3
Wrapped sample response in codeblock
2019-01-06 12:56:30 +01:00
Fabio Manganiello
e97ce5d676
Added Snapcast plugin
2019-01-06 02:19:56 +01:00
Fabio Manganiello
cb13098c4f
Moved initial print statement inside start method to make sure that it's properly caught by the logging configuration
2019-01-03 13:09:12 +00:00
Fabio Manganiello
240abb627d
Fix old Spotify playlists URI format
2019-01-03 10:37:16 +01:00
Fabio Manganiello
9328566235
Selecting the default light group tab on web panel load if configured
2019-01-02 21:24:07 +01:00
Fabio Manganiello
5a1169d8b8
Wrapped stdout and stderr under the same application logger
2019-01-02 11:38:21 +00:00
Fabio Manganiello
5b9c54748e
Do not propagate a null response message back to the bus to prevent backends from breaking
2019-01-02 09:29:27 +01:00
Fabio Manganiello
09c1598829
More flexible management for included config files paths
2018-12-30 20:18:55 +01:00
Fabio Manganiello
62045c2b5c
Support for multiple resource_dirs on the HTTP backend
...
It is now possible to map multiple static resource directories to the
Flask HTTP server
2018-12-30 18:40:03 +01:00
Fabio Manganiello
9e28379203
Prevent js errors upon null artist or album
2018-12-30 15:43:09 +01:00
Fabio Manganiello
699fa92c5e
Added HomeSeer plugin
2018-12-28 09:55:09 +01:00
Fabio Manganiello
f9f43964a2
Support for stream names
2018-12-28 00:30:25 +01:00
Fabio Manganiello
fae45d8ca3
Returning only the real part of the FFT
2018-12-27 22:47:44 +01:00
Fabio Manganiello
01006046e0
Don't try to push a Pushbullet note body to the bus if it's not a valid JSON
2018-12-27 22:45:31 +01:00
Fabio Manganiello
54c3381ae3
- Added frames throttling support on Leap Motion backend
...
- Moved the Leap listener to another process to prevent it from hanging the other backends
- Added support for sound and mix frequency analysis
2018-12-27 20:24:51 +01:00
Fabio Manganiello
2e82651dbf
Expressed triangular wave as a function of the associated sawtooth-shape wave
2018-12-27 17:33:05 +01:00
Fabio Manganiello
debf9a017b
Sound plugin moved back to __init__ for sake of better readthedocs generation
2018-12-27 17:26:16 +01:00
Fabio Manganiello
cff4563dae
Rewritten Pushbullet backend using pushbullet.py for better stability
2018-12-27 02:29:44 +01:00
Fabio Manganiello
56ff58d06b
Better sound release logic
2018-12-27 01:10:45 +01:00
Fabio Manganiello
c445763979
- Support for sound "release" (removal from active stream)
...
- Added `query_ports` method to MIDI plugin
2018-12-27 00:09:05 +01:00
Fabio Manganiello
f2d2315610
Extended Sound class docstring
2018-12-26 23:16:37 +01:00
Fabio Manganiello
3598d7fcd5
Support for multiple sound waves (triangular, square and sawtooth)
2018-12-26 23:14:52 +01:00
Fabio Manganiello
3b681bbf57
Added played files/notes in stream in query_streams
2018-12-26 16:58:41 +01:00
Fabio Manganiello
3554968468
Support for multiple sounds on the same stream
2018-12-26 16:10:14 +01:00
Fabio Manganiello
c2544524e1
Added missing docstring line
2018-12-25 19:26:59 +01:00
Fabio Manganiello
2fb5e5abc6
Support for mixes of multiple sounds
2018-12-25 19:26:08 +01:00
Fabio Manganiello
d89184358a
Support for playback control for individual sound streams
2018-12-25 17:31:20 +01:00
Fabio Manganiello
3baf0b1589
Initial support for playing multiple sounds to the same stream
2018-12-24 18:58:44 +01:00
Fabio Manganiello
3d2636b09c
Further split between sound and core modules
2018-12-24 17:15:29 +01:00
Fabio Manganiello
65465e3a18
- Refactored the class sound out of the plugin module
...
- More robust stream naming and index assignment logic
2018-12-24 17:12:11 +01:00
Fabio Manganiello
f53d1c06dc
No need to be verbose upon Pushbullet websocket temporary disconnections
2018-12-24 14:33:27 +01:00
Fabio Manganiello
ef241b3769
More robust Pushbullet reconnection logic
2018-12-24 12:31:38 +01:00
Fabio Manganiello
b911d46315
Create a new event loop in the Pushbullet backend
2018-12-24 11:37:18 +01:00
Fabio Manganiello
6a48a53c0d
Typo
2018-12-24 11:30:10 +01:00
Fabio Manganiello
755df6284a
Added missing reference to completed_callback_event
2018-12-23 23:43:12 +01:00
Fabio Manganiello
c2cf0b5f74
Support for polyphonic synthetic sounds in sound plugin
2018-12-23 23:29:52 +01:00
Fabio Manganiello
7a5657778e
Basic support for synth sounds in sound plugin
2018-12-22 01:47:52 +01:00
Fabio Manganiello
00dacc456c
A more robust logic for getting the default sound devices
2018-12-21 16:52:52 +01:00
Fabio Manganiello
e2f7213697
Don't fail hard if it was not possible to get the ical content
2018-12-20 16:47:07 +01:00
Fabio Manganiello
b3ffb29726
Don't extend calendar events will null values
2018-12-20 16:40:14 +01:00
Fabio Manganiello
8d497b0be7
Fixed reference to libtorrent dependency as the pip URL is broken
2018-12-20 01:04:50 +01:00
Fabio Manganiello
a1f640ce0a
Added support for config include files to Docker images too
2018-12-20 01:04:28 +01:00
Fabio Manganiello
725b3dd672
Included reference to the included files in Config
2018-12-19 23:39:41 +01:00
Fabio Manganiello
eec20ee109
Missed cast to str upon pidfile write
2018-12-19 21:24:39 +01:00
Fabio Manganiello
fb75dc323e
Added pidfile option to the main
2018-12-19 21:15:06 +01:00
Fabio Manganiello
44d24b42d1
Force python3 on the Dockerfile CMD
2018-12-18 22:31:24 +01:00
Fabio Manganiello
186ade8f18
Refactored Pushbullet backend to remove the dependency from websocket-client and rely only on websockets
2018-12-18 19:01:51 +01:00
Fabio Manganiello
6a9ddb9e53
Made config relative paths and include files expansion more robust
2018-12-19 09:19:58 +01:00
Fabio Manganiello
949d9cd619
Fixed platydock rm command
2018-12-19 02:22:10 +01:00
Fabio Manganiello
01f020c203
Version bump 0.9.2 -> 0.9.3
2018-12-19 02:08:57 +01:00
Fabio Manganiello
73d7441d26
Added platydock, a helper to manage Platypush instances as Docker containers
2018-12-19 02:08:13 +01:00
Fabio Manganiello
a226aad669
Added python-dateutil requirement
2018-12-19 00:09:21 +01:00
Fabio Manganiello
f9b23afbb6
Fixed typo on main.db
2018-12-18 22:20:33 +01:00
Fabio Manganiello
56b48a81b7
Reverted the new config file path expansion logic as it breaks include directives
2018-12-18 22:16:15 +01:00
Fabio Manganiello
12557702dd
- cfgfile should expand the home directory ~
...
- Don't fail hard if failed to create logs directory
2018-12-18 18:46:07 +01:00
Fabio Manganiello
c8f7eb30aa
Made Redis backend and plugin more robust.
...
- Redis arguments read either from the backend or the plugin
configuration as a fallback in case of partial conf
- send_message now falls back on the default Redis connection
configuration if *args and **kwargs are missing
2018-12-18 15:51:37 +01:00
Fabio Manganiello
8fe4d77e3d
Made requests parsing more robust against messages with target not set (e.g. messages received over HTTP API)
2018-12-18 14:59:10 +01:00
Fabio Manganiello
13463420d9
Made Redis bus/local bus choice more flexible
2018-12-18 12:21:55 +01:00
Fabio Manganiello
7586412ded
Serial plugin extended with a general purpose read() method - to communicate for e.g. Espruino and compatible devices
2018-12-16 23:14:34 +01:00
Fabio Manganiello
28223cab30
Only import sounddevice when needed
2018-12-16 17:29:45 +01:00
Fabio Manganiello
abd88d0a71
recplay default blocksize should be the configured/default output blocksize
2018-12-16 17:23:26 +01:00
Fabio Manganiello
c054d04f2d
Added configurable input and output device blocksize to sound device plugin
2018-12-16 17:11:05 +01:00
Fabio Manganiello
e049d5483e
Added blocksize to sound.record
2018-12-16 16:58:33 +01:00
Fabio Manganiello
be43c3ac21
Changed default sound device to index 0 as 'default' is not present on all the systems
2018-12-16 16:34:40 +01:00
Fabio Manganiello
20a779bd8f
Replaced if not
references with if <var> is not None
2018-12-16 16:24:45 +01:00
Fabio Manganiello
f7576dcb7f
Added support for audio pass-through to sound plugin
2018-12-16 16:15:45 +01:00
Fabio Manganiello
be98dcde6a
Added sound device plugin
2018-12-15 01:18:48 +01:00
BlackLight
e89046f12a
Added max_results to YouTube search
2018-12-12 23:03:17 +01:00
BlackLight
9b0a72269a
typo
2018-12-12 22:52:51 +01:00
BlackLight
b7603ba166
Mapping YouTube API responses to the internal simpler format recognized by OMXPlayer plugin
2018-12-12 22:46:32 +01:00
BlackLight
679cad53b5
Added YouTube plugin that leverages the YouTube API; Replaced OMXPlayer search references to the old HTML parser withe new YouTube plugin
2018-12-12 22:33:41 +01:00
Fabio Manganiello
eb439d227a
Wrapped HTTP requests loop in a try-except block to prevent it from breaking in case of temporary failures
2018-12-05 15:55:19 +00:00
Fabio Manganiello
791c36f5df
More tolerance on json.loads() in case the parsed value from the request context is not a string
2018-12-03 23:04:23 +01:00
Fabio Manganiello
4a148971b4
Allow non-string values to be passed through a request context as well
2018-12-03 22:52:25 +01:00
Fabio Manganiello
9421602e81
Removed duplicate log trace
2018-12-02 23:47:49 +01:00
Fabio Manganiello
7cd1efe2c6
Option to pair a specific device to the Wiimote backend
2018-12-02 23:44:17 +01:00
Fabio Manganiello
f6dcd00848
Version bump 0.9.1 -> 0.9.2
2018-12-01 19:44:41 +01:00
Fabio Manganiello
f677c79f54
Made inactivity timeout on Wiimote configurable
2018-12-01 19:38:43 +01:00
Fabio Manganiello
199e9fdba1
Better management of inactivity timeout on Wiimote
2018-12-01 19:22:10 +01:00
Fabio Manganiello
66b6f0bc8b
Added Wiimote support docs; Added Wiimote connection/disconnection events
2018-12-01 18:55:13 +01:00
Fabio Manganiello
383a075f39
Handling Wiimote timeout on Wiimote backend
2018-12-01 18:43:18 +01:00
Fabio Manganiello
2b03276159
#46 : Added Wiimote support
2018-12-01 17:56:31 +01:00
Fabio Manganiello
abbd8409ca
Run event hook actions in another thread
2018-11-28 01:01:16 +01:00