Fabio Manganiello
|
4c3cd2fcf2
|
The active-glow animation takes too much CPU on music.mpd
|
2019-07-08 00:58:02 +02:00 |
|
Fabio Manganiello
|
c19251c6a1
|
Always reset carousel image width to auto before re-adjusting the size
|
2019-07-08 00:16:43 +02:00 |
|
Fabio Manganiello
|
b2c31fcec6
|
Dashboard style improvements
|
2019-07-07 23:50:35 +02:00 |
|
Fabio Manganiello
|
42e5673192
|
Increased font size for widgets
|
2019-07-07 20:47:44 +02:00 |
|
Fabio Manganiello
|
09165ca0ff
|
Dashboard rewritten in vue.js
|
2019-07-07 20:11:32 +02:00 |
|
Fabio Manganiello
|
8006f3688c
|
Removed old gpio scripts
|
2019-07-02 16:27:13 +02:00 |
|
Fabio Manganiello
|
1e39d3a8d2
|
Return obj even when the metrics are undefined, or we will set this.metrics to undefined
|
2019-07-02 16:12:24 +02:00 |
|
Fabio Manganiello
|
75f7fbd67a
|
Don't perform reads on the serial plugin when refreshing
|
2019-07-02 16:04:06 +02:00 |
|
Fabio Manganiello
|
0dac122db5
|
Style for the new sensors web plugin
|
2019-07-02 15:38:09 +02:00 |
|
Fabio Manganiello
|
fb4af87967
|
Style for the new sensors web plugin
|
2019-07-02 15:23:41 +02:00 |
|
Fabio Manganiello
|
9c44d047ac
|
Vue.set to set metrics object, array assignment won't be picked up by Vue listeners
|
2019-07-02 15:08:32 +02:00 |
|
Fabio Manganiello
|
e82edc8338
|
Set metrics object through Vue.set
|
2019-07-02 15:02:44 +02:00 |
|
Fabio Manganiello
|
be79d15faf
|
Handle sensor event format correctly
|
2019-07-02 15:01:40 +02:00 |
|
Fabio Manganiello
|
23d106969f
|
Default timeout for API calls from 30 to 60 seconds
|
2019-07-02 14:56:43 +02:00 |
|
Fabio Manganiello
|
40fa640397
|
New sensors web panel WIP
|
2019-07-02 14:42:25 +02:00 |
|
Fabio Manganiello
|
54a3643605
|
Added name and value props to sensor component
|
2019-07-02 14:39:04 +02:00 |
|
Fabio Manganiello
|
43b01f7c0e
|
Fixed icon class
|
2019-07-02 14:34:05 +02:00 |
|
Fabio Manganiello
|
1eae45805d
|
Added new sensors plugin to webpanel
|
2019-07-02 14:04:25 +02:00 |
|
Fabio Manganiello
|
b932df1c12
|
Added switch tab to the new web panel
|
2019-07-02 12:02:28 +02:00 |
|
Fabio Manganiello
|
26ee3fc75c
|
Changed nav bar text to icons
|
2019-07-01 22:26:04 +02:00 |
|
Fabio Manganiello
|
277d6ec271
|
Added torrent support in new webplayer
|
2019-07-01 19:32:22 +02:00 |
|
Fabio Manganiello
|
c78789e644
|
Added Kodi support to new media webplayer
|
2019-06-29 00:06:03 +02:00 |
|
Fabio Manganiello
|
f86eeef549
|
New media webplugin WIP
|
2019-06-27 23:52:40 +02:00 |
|
Fabio Manganiello
|
70bba5fc96
|
Support for browser webplayer and subtitles in new webplugin
|
2019-06-26 11:05:16 +02:00 |
|
Fabio Manganiello
|
e55735f409
|
Added YouTube support to new media webplugin
|
2019-06-25 22:46:25 +02:00 |
|
Fabio Manganiello
|
cf23e2fc72
|
Support for subtitles in new media webplugin - WIP
|
2019-06-25 00:48:00 +02:00 |
|
Fabio Manganiello
|
9305f86d0c
|
New media webplugin WIP
|
2019-06-24 01:01:08 +02:00 |
|
Fabio Manganiello
|
ba800ef8e2
|
Normalized all local players so that they handle events and return statuses in the same format
|
2019-06-23 02:16:20 +02:00 |
|
Fabio Manganiello
|
1964f74f19
|
New media webplugin WIP
|
2019-06-22 19:05:17 +02:00 |
|
Fabio Manganiello
|
2da6d7d866
|
New media webplugin WIP
|
2019-06-22 14:41:42 +02:00 |
|
Fabio Manganiello
|
482f6f0765
|
New media webplugin WIP
|
2019-06-22 00:15:32 +02:00 |
|
Fabio Manganiello
|
4cd2e6949f
|
New media webplugin WIP
|
2019-06-21 02:13:14 +02:00 |
|
Fabio Manganiello
|
ecd41a1f41
|
New media webplugin WIP
|
2019-06-18 18:14:48 +02:00 |
|
Fabio Manganiello
|
32efebe405
|
Fixed typos and warnings in snapcast backend
|
2019-06-16 21:59:31 +02:00 |
|
Fabio Manganiello
|
e5d7334662
|
New media webplugin WIP
|
2019-06-16 21:45:21 +02:00 |
|
Fabio Manganiello
|
5e2b927267
|
Explicitly inherit the height of parent panels container
|
2019-06-15 13:02:09 +02:00 |
|
Fabio Manganiello
|
7015c0df11
|
Explicitly inherit the height of parent panels container
|
2019-06-15 13:00:41 +02:00 |
|
Fabio Manganiello
|
496e692860
|
calc mixin shit
|
2019-06-15 12:50:14 +02:00 |
|
Fabio Manganiello
|
a25565a80d
|
Fill window.config object before including other js code
|
2019-06-15 12:01:13 +02:00 |
|
Fabio Manganiello
|
3a3637d3d7
|
Fixed calc mixin and introduced media handlers for webpanel media plugin
|
2019-06-15 00:51:48 +02:00 |
|
Fabio Manganiello
|
fc5ea429d2
|
Using cross-browser mixin for calc
|
2019-06-14 19:15:57 +02:00 |
|
Fabio Manganiello
|
359e6703e4
|
new font-awesome commits
|
2019-06-14 01:01:51 +02:00 |
|
Fabio Manganiello
|
9d4511577f
|
- Refactored webpanel style to use flex and dynamic element heights
instead of ugly fixed/absolute positioning.
- New media webpanel plugin WIP
|
2019-06-14 00:54:20 +02:00 |
|
Fabio Manganiello
|
076d766745
|
New TTS webpanel plugins
|
2019-06-11 11:53:15 +02:00 |
|
Fabio Manganiello
|
205903bc40
|
Removed old music.snapcast.js
|
2019-06-10 23:26:26 +02:00 |
|
Fabio Manganiello
|
91ef6f3ce2
|
Finalized new Snapcast webpanel plugin
|
2019-06-10 15:11:24 +02:00 |
|
Fabio Manganiello
|
95a9c22618
|
Added new Snapcast webpanel plugin
|
2019-06-10 00:55:23 +02:00 |
|
Fabio Manganiello
|
33d55dcd93
|
Fixed Pushbullet backend
|
2019-06-08 22:37:19 +02:00 |
|
Fabio Manganiello
|
6019ba9db6
|
Wrote new Pushbullet handler for webpanel
|
2019-06-08 17:16:47 +02:00 |
|
Fabio Manganiello
|
46836374b0
|
Removed old application.js
|
2019-06-08 13:38:57 +02:00 |
|
Fabio Manganiello
|
4bfd6baab2
|
Removed old assistant google web plugin
|
2019-06-08 13:38:18 +02:00 |
|
Fabio Manganiello
|
bb4cc80262
|
Added assistant.google plugin in new webpanel
|
2019-06-08 13:25:40 +02:00 |
|
Fabio Manganiello
|
41d8ae48e1
|
Removed old jQuery music.mpd plugin
|
2019-06-07 23:13:07 +02:00 |
|
Fabio Manganiello
|
b7a625097d
|
Added playlist editor in music.mpd web panel
|
2019-06-07 23:07:36 +02:00 |
|
Fabio Manganiello
|
1ad72a2695
|
Implemented support for adding tracks to playlists
|
2019-06-07 17:17:58 +02:00 |
|
Fabio Manganiello
|
0b6b29f043
|
Improved support for multiple modals and added ability to search for albums and artists on the fly from tracks in music.mpd - vue.js refactoring WIP
|
2019-06-07 00:43:39 +02:00 |
|
Fabio Manganiello
|
7df0cec14e
|
Implemented support for modals and music.mpd search and item info
|
2019-06-06 02:08:36 +02:00 |
|
Fabio Manganiello
|
611a137ff6
|
music.mpd vue.js refactoring WIP: Implemented playlist track move feature
|
2019-06-04 15:59:07 +02:00 |
|
Fabio Manganiello
|
d3ecb7b871
|
music.mpd vue.js refactoring WIP
|
2019-06-03 23:53:37 +02:00 |
|
Fabio Manganiello
|
85bdd54f7e
|
music.mpd vue.js refactoring WIP
|
2019-06-03 23:37:19 +02:00 |
|
Fabio Manganiello
|
e1ddf7bb3b
|
music.mpd vue.js refactoring WIP
|
2019-06-02 00:54:49 +02:00 |
|
Fabio Manganiello
|
0f3987aaf2
|
Reverted scrollbar style override
|
2019-05-30 02:19:20 +02:00 |
|
Fabio Manganiello
|
7a74b83c76
|
music.mpd plugin vue.js refactoring - WIP
|
2019-05-30 02:07:28 +02:00 |
|
Fabio Manganiello
|
444fe6331d
|
New support for notifications in webpanel in vue.js
|
2019-05-28 19:16:55 +02:00 |
|
Fabio Manganiello
|
e1c3951456
|
Added events and websocket support in webpanel refactoring and removed old light.hue templates and scripts
|
2019-05-28 19:16:55 +02:00 |
|
Fabio Manganiello
|
197a5805be
|
Made nav header fixed
|
2019-05-28 19:16:55 +02:00 |
|
Fabio Manganiello
|
01b111f436
|
Webpanel refactoring in progress
|
2019-05-28 19:16:55 +02:00 |
|
Fabio Manganiello
|
897338399f
|
Synchronize all lights toggles when scenes are selected
|
2019-05-28 19:16:55 +02:00 |
|
Fabio Manganiello
|
e72d4de581
|
vue.js refactor part 1 - prepared webpanel logic and migrated light.hue plugin
|
2019-05-28 19:16:55 +02:00 |
|
Fabio Manganiello
|
8b478ede45
|
vue.js migration commit - WIP
|
2019-05-28 19:16:55 +02:00 |
|
Fabio Manganiello
|
1ad86428c8
|
Added support for custom webhooks
|
2019-05-17 14:55:29 +00:00 |
|
Fabio Manganiello
|
9fc243c93d
|
Use startTime instead of endTime as a time indicator to identify new records
|
2019-03-29 10:14:46 +00:00 |
|
Fabio Manganiello
|
24d395ce49
|
Use endTime
|
2019-03-28 14:37:26 +01:00 |
|
Fabio Manganiello
|
c84a6047ed
|
Using modifiedTime instead of startTime to track new data points
|
2019-03-28 14:17:43 +01:00 |
|
Fabio Manganiello
|
c3b2212972
|
Storing last processed timestamp per fit metric instead of a single timestamp for all the metrics to prevent new data points from being masked from newer ones from other metrics
|
2019-03-28 02:36:16 +01:00 |
|
Fabio Manganiello
|
68f985d2c6
|
Copy websockets list before iterating over it to prevent race conditions upon list changed upon iteration
|
2019-03-27 02:25:06 +01:00 |
|
Fabio Manganiello
|
387ed23e86
|
No need for snapcast-settings-btn class on snapcast-host-container
|
2019-03-27 00:49:53 +01:00 |
|
Fabio Manganiello
|
67fd88950a
|
Fixed modal madness in Snapcast frontend
|
2019-03-27 00:41:19 +01:00 |
|
Fabio Manganiello
|
31108b21e5
|
Don't define Snapcast modal open elements on the highest level, or modals will pop up even when clicking on other elements than the name
|
2019-03-21 18:30:32 +01:00 |
|
Fabio Manganiello
|
92f1f3eea7
|
Wrap Google Fit checks in try-catch block to prevent the backend from crashing with no reload
|
2019-03-20 10:48:07 +00:00 |
|
Fabio Manganiello
|
7072a19829
|
Print timestamps in human readable format
|
2019-03-19 11:32:06 +00:00 |
|
Fabio Manganiello
|
eb7b9c066c
|
Logging info about processed Fit entries to debug why we don't always get all the new events
|
2019-03-19 11:29:53 +00:00 |
|
Fabio Manganiello
|
af97f7b6a5
|
Tentative fix for Google Fit data points timestamp tracking
|
2019-03-18 11:58:40 +00:00 |
|
Fabio Manganiello
|
9d36688a61
|
Don't fail hard if it's not possible yet to retrieve the mopidy status in the backend constructor
|
2019-03-17 02:06:56 +01:00 |
|
Fabio Manganiello
|
a1c31a9fb9
|
Better handling for last_timestamp reads from Google Fit backend
|
2019-03-17 00:31:32 +01:00 |
|
Fabio Manganiello
|
9153b1e9c4
|
Added __init__.py init backend.google
|
2019-03-16 19:36:46 +01:00 |
|
Fabio Manganiello
|
f201f039e9
|
Extended and normalized key names in GoogleFitEvent type
|
2019-03-16 19:28:47 +01:00 |
|
Fabio Manganiello
|
87d63d7cb3
|
Added Google Fit backend
|
2019-03-16 01:22:42 +01:00 |
|
Fabio Manganiello
|
022262eb78
|
Handle MQTT listeners by host with lists of topics, so we only need one listener thread per host
|
2019-03-07 23:03:12 +01:00 |
|
Fabio Manganiello
|
84099b2ab7
|
Added support for multiple listeners on multiple servers and topics for general-purpose messaging on the MQTT backend
|
2019-03-07 22:52:02 +01:00 |
|
Fabio Manganiello
|
38ebe87220
|
Get the device_id after initializing/creating the device
|
2019-03-07 20:11:32 +01:00 |
|
Fabio Manganiello
|
9324ad3f9b
|
Create a device if it doesn't exist
|
2019-03-07 20:05:40 +01:00 |
|
Fabio Manganiello
|
fb93aec3ec
|
Added empty __init__.py to plugins to let importlib correctly find the submodules
|
2019-03-06 02:21:26 +01:00 |
|
Fabio Manganiello
|
0596d77403
|
Support for camera snapshot and stream endpoints and for disabling logging on response and event messages
|
2019-03-06 02:01:17 +01:00 |
|
Fabio Manganiello
|
619c750f3b
|
Don't fail hard if status is not available
|
2019-03-03 12:42:31 +01:00 |
|
Fabio Manganiello
|
a9fb6a38dd
|
New API for firing events and registering/unregistering event handlers
both for plugins and backends
|
2019-02-28 01:21:25 +01:00 |
|
Fabio Manganiello
|
811af1bf9d
|
Removed conflict leftovers
|
2019-02-26 23:55:00 +01:00 |
|
Fabio Manganiello
|
17367f5b3e
|
Added camera plugin over cv2
|
2019-02-26 23:50:48 +01:00 |
|
Fabio Manganiello
|
150d95d0dc
|
Support for launching uWSGI directly from the HTTP backend
|
2019-02-25 10:52:48 +01:00 |
|
Fabio Manganiello
|
0104037ada
|
Dashboard background image added to static/resources
|
2019-02-24 20:10:58 +01:00 |
|
Fabio Manganiello
|
2adab13d50
|
Added favicon
|
2019-02-24 19:59:08 +01:00 |
|
Fabio Manganiello
|
8ef3aafb52
|
Added missing doc line in backend.http
|
2019-02-24 15:53:01 +01:00 |
|
Fabio Manganiello
|
8153d8476f
|
Added uWSGI optional dependency for HTTP backend
|
2019-02-24 12:35:26 +01:00 |
|
Fabio Manganiello
|
e3fcebe4b6
|
Made a separate uWSGI startup script for the webapp
|
2019-02-24 00:17:31 +01:00 |
|
Fabio Manganiello
|
c74b939660
|
Renamed app->application for the main Flask webapp to make sure that the default uwsgi configuration can pick it up
|
2019-02-24 00:11:35 +01: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
|
73383ab80f
|
Panel and modal close bindings should refer the target element in the event, not $(this)
|
2019-02-21 20:13:31 +01:00 |
|
Fabio Manganiello
|
6e1b6686c2
|
Revert "Running Flask webserver in another thread instead than another process"
This reverts commit 0a5c42fdfd .
|
2019-02-21 16:15:06 +01:00 |
|
Fabio Manganiello
|
0a5c42fdfd
|
Running Flask webserver in another thread instead than another process
|
2019-02-21 14:33:41 +01:00 |
|
Fabio Manganiello
|
97e1dfacdf
|
Made VLC template symlink
|
2019-02-21 01:38:21 +01:00 |
|
Fabio Manganiello
|
fd18bd84ca
|
Don't download subtitles for magnet links (until the media file/metadata is ready at least)
|
2019-02-19 10:37:29 +01:00 |
|
Fabio Manganiello
|
151e2e56d9
|
typo
|
2019-02-19 01:05:44 +01:00 |
|
Fabio Manganiello
|
11af83f88f
|
Added symlink media.mpv.html -> media.html
|
2019-02-19 00:19:48 +01:00 |
|
Fabio Manganiello
|
a21a11d499
|
Only proceed with subtitles loading when the list of subs is not empty
|
2019-02-17 16:29:39 +01:00 |
|
Fabio Manganiello
|
7d1c9275f5
|
Make it 10 seconds when it comes to poll time
|
2019-02-16 20:21:04 +01:00 |
|
Fabio Manganiello
|
55f1a33d90
|
Keep a sleep between polls to the Snapcast servers
|
2019-02-16 20:17:15 +01:00 |
|
Fabio Manganiello
|
6ac62b0161
|
Reset the time-seek indicator also on the web panel
|
2019-02-13 18:01:56 +01:00 |
|
Fabio Manganiello
|
4503eb31ed
|
Clear track elapsed time display on stop event
|
2019-02-13 17:53:57 +01:00 |
|
Fabio Manganiello
|
a287a10bcc
|
Propagate a MusicStopEvent upon playback stop even when the context of the current track is not available
|
2019-02-13 17:38:58 +01:00 |
|
Fabio Manganiello
|
7c817ba0c6
|
Position is expressed in milliseconds on mopidy websocket, convert to seconds
|
2019-02-13 17:25:56 +01:00 |
|
Fabio Manganiello
|
0a81b43f1d
|
startStreaming should always return a map
|
2019-02-13 10:15:18 +01:00 |
|
Fabio Manganiello
|
09f5c92541
|
Passing url from the promise in the right way
|
2019-02-13 09:38:40 +01:00 |
|
Fabio Manganiello
|
34e2dffe99
|
Catching music stop events both on track_playback_ended and playback_state_changed
|
2019-02-13 00:58:40 +01:00 |
|
Fabio Manganiello
|
8a9c868f77
|
Bringing more consistency in music.mpd.js regardless of the backend
|
2019-02-13 00:50:58 +01:00 |
|
Fabio Manganiello
|
0697598a86
|
Fixed music.js widget as well for the new mopidy backend
|
2019-02-13 00:32:14 +01:00 |
|
Fabio Manganiello
|
3190d3c6c8
|
Fixing music.mpd.js both for mpd and mopidy backends
|
2019-02-13 00:27:36 +01:00 |
|
Fabio Manganiello
|
f0f6d43990
|
Using the right naming for length and elapsed variables
|
2019-02-12 23:59:13 +01:00 |
|
Fabio Manganiello
|
71c6ba2d34
|
More compatibility between TCP-based mpd and websocket-based mopidy backends when it comes to how the track time is reported
|
2019-02-12 23:48:18 +01:00 |
|
Fabio Manganiello
|
77a76370a5
|
Returning flat representation for artist and renamed 'name' attribute for consistency with the mpd backend
|
2019-02-12 23:24:16 +01:00 |
|
Fabio Manganiello
|
1c4edf93bf
|
Another typo
|
2019-02-12 23:19:36 +01:00 |
|
Fabio Manganiello
|
97855b1535
|
state might not always be provided in a music event
|
2019-02-12 23:11:37 +01:00 |
|
Fabio Manganiello
|
18d2c51b4e
|
Forgot an enumerate
|
2019-02-12 23:08:48 +01:00 |
|
Fabio Manganiello
|
e5c169a549
|
on_message requires two arguments
|
2019-02-12 23:00:16 +01:00 |
|
Fabio Manganiello
|
6024eddd2d
|
on_open requires ws as a parameter
|
2019-02-12 22:58:22 +01:00 |
|
Fabio Manganiello
|
c18515bd3c
|
Few more fixes on mopidy backend
|
2019-02-12 22:57:09 +01:00 |
|
Fabio Manganiello
|
ee3df8fe8c
|
Switched mopidy backend from websockets to websocket-client
|
2019-02-12 22:52:29 +01:00 |
|
Fabio Manganiello
|
b555777cc8
|
Use another event loop for the synchronous websocket communication method
|
2019-02-12 20:49:10 +01:00 |
|
Fabio Manganiello
|
73d7e9a3ef
|
Fixes on mopidy backend
|
2019-02-12 20:45:40 +01:00 |
|
Fabio Manganiello
|
148d25f1cb
|
Added mopidy backend functionalities
|
2019-02-12 20:34:17 +01:00 |
|
Fabio Manganiello
|
7b99842225
|
Added draft for mopidy backend over websocket
|
2019-02-12 17:29:24 +01:00 |
|
Fabio Manganiello
|
f68efc0d68
|
Attempt to support subtitles on Chromecast media too
|
2019-02-12 11:13:19 +01:00 |
|
Fabio Manganiello
|
5cbd0fdfe7
|
Added support for VTT subtitles and subtitles toggling both in local and browser media players
|
2019-02-12 01:30:55 +01:00 |
|
Fabio Manganiello
|
41c34b4bc5
|
Attempt to support subtitle tracks in web player
|
2019-02-11 18:46:25 +01:00 |
|
Fabio Manganiello
|
34f0264d5e
|
Subtitles support
- Added support for local and OpenSubtitles media subs
- Added management of media events in web panel
|
2019-02-11 00:55:20 +01:00 |
|
Fabio Manganiello
|
630850ee9a
|
Reset the connection to a Snapcast server if it starts failing
|
2019-02-10 11:08:04 +01:00 |
|
Fabio Manganiello
|
cd49f22d5c
|
Introduced floating panel with options on element click instead of the double-click-to-play logic on media elements
|
2019-02-09 01:53:17 +01:00 |
|
Fabio Manganiello
|
e2b0bf8462
|
More consistent management of media devices icons and added devices refresh button
|
2019-02-08 19:48:18 +01:00 |
|
Fabio Manganiello
|
b3f2974c4c
|
Support for streaming media to browser
|
2019-02-08 00:43:43 +01:00 |
|
Fabio Manganiello
|
9ec3365413
|
Support for media streaming over internal HTTP server
Dropped the additional node.js dependency of localstream and relied
instead on a built-in solution to stream files
|
2019-02-07 14:27:14 +01:00 |
|