e4eb12fa6d
LINT warning fixes
2022-01-23 14:25:00 +01:00
3bfc5b83ef
Moved to manifest files for describing plugins and backends and their dependencies
2021-09-16 17:53:40 +02:00
286bab7489
typo
2021-07-27 00:11:57 +02:00
af7977bcf7
Added music.spotify.connect backend
2021-06-25 22:47:40 +02:00
adb472da7f
Messages should always be posted to the Redis bus in valid JSON format - no need for ast.literal_eval fallback
2021-03-13 01:52:15 +01:00
090e7d6de8
Support for specifying the application Redis queue from the command line or service constructor
2021-03-06 19:22:13 +01:00
2800bac3fb
Make sure that all hanging threads, backends and services are stopped and their resources cleaned up when the application stops.
2021-02-23 23:09:26 +01:00
Fabio Manganiello
85f56cf98c
New media panel [WIP]
2021-01-14 00:15:35 +01:00
Fabio Manganiello
c269c62fe6
Refactored logging names
2020-09-27 01:33:38 +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
0dae03551f
Implemented interface for custom Python scripts, procedures and hooks [ closes #131 ]
2020-04-08 23:22:54 +02:00
Fabio Manganiello
277d6ec271
Added torrent support in new webplayer
2019-07-01 19:32:22 +02:00
Fabio Manganiello
d5c31d938b
Run each message handling logic on the bus on a separate thread to make sure that messages don't queue up too much
2019-02-23 23:58:43 +01:00
Fabio Manganiello
0e794cd1b0
Refactored HTTP server to split the routes on separate files and keep the main Flask app object in a separate file as well so it can be easily wrapped by a WSGI instance
2019-02-23 21:19:00 +01:00
Fabio Manganiello
68dcdf8ccd
Enforced cast to string for any object posted to the Redis bus
2018-11-20 14:14:59 +00:00
Fabio Manganiello
284e0638f8
Always define msg so the function doesn't fail on exception
...
Reverted the previous retry logic for backend - it didn't really work
This reverts commit 4e0e4863a0
.
This reverts commit 964c7b5cf0
.
This reverts commit 6ce348365f
.
2018-10-25 20:46:34 +02:00
Fabio Manganiello
0a7722d858
Wrap self.on_message in a try/except block
2018-10-23 14:20:29 +00:00
Fabio Manganiello
2eccd41420
Message skip message logged in debug mode to prevent log pollution
2018-10-16 10:26:15 +02:00
Fabio Manganiello
948f3dc37d
Implemented timestamp mark on messages to trigger message expiration logic in case something stays on the bus for longer than a minute
2018-10-08 10:35:59 +00:00
Fabio Manganiello
6449504e26
Switched the bus to a Redis bus
2018-09-20 10:49:57 +00:00
Fabio Manganiello
661563d1f1
Added Redis bus
2018-09-20 09:41:27 +02:00
Fabio Manganiello
4da74b1096
Refactored logging submodule
2018-06-06 20:09:23 +02:00
Fabio Manganiello
3dfcf0ec97
Added tests
2017-12-22 02:11:56 +01:00
Fabio Manganiello
bd5c80175f
- Major refactoring.
...
- More consistent naming for many methods, plus added a more extensive doc.
- Refactored the entry points for the daemon and the pusher into two
classes, easier to encapsulate and wrap into tests.
- Removed the local backend - managing the concurrency of two processes
reading and writing on the same socket at the same time was too much,
and its utility outside of the tests (which can have mock backends as
well) is quite modest.
- Managing stop events on the bus. Still some work to do tho.
- Fixed several bugs.
2017-12-20 20:25:08 +01:00
Fabio Manganiello
21381e7c0f
[ #23 ] Request/Response ID chaining fixes
...
[#17 ] Response wait and response timeout implementation on pusher side
2017-12-18 22:40:56 +01:00
Fabio Manganiello
18a5902ac4
Locking requests and responses with ids
2017-12-18 03:09:38 +01:00
Fabio Manganiello
4a04e51da7
Major refactoring #2
2017-12-18 01:10:51 +01:00