Commit Graph

29 Commits (e43802eb0769fb8850f9533de873d94b260bc1e2)

Author SHA1 Message Date
uvjustin 5381f9f92f
Fix owntone websocket reconnection (#82680) 2022-11-25 16:16:16 +01:00
uvjustin fcfc0e64d5
Fix mime type in forked_daapd test (#82660) 2022-11-24 22:41:26 +01:00
uvjustin 2688e5b2d4
Mask spotify content in owntone library (#79247) 2022-09-29 21:07:26 -04:00
uvjustin 79713d637a
Use Owntone name for forked-daapd (#79214)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-09-28 22:46:27 -04:00
uvjustin 1a9bcafbd2
Clean up Add spotify support to forked-daapd (#79213) 2022-09-28 21:54:12 -04:00
uvjustin a561b608bf
Add spotify support to forked-daapd (#79136) 2022-09-27 14:32:05 -04:00
uvjustin b043a6ba88
Cleanup add browse media forked daapd #79009 (#79157) 2022-09-27 14:07:19 -04:00
uvjustin 499c3410d1
Add browse media to forked-daapd (#79009)
* Add browse media to forked-daapd

* Use elif in async_browse_image

* Add tests

* Add tests

* Add test

* Fix test
2022-09-26 20:40:23 -04:00
uvjustin 420285f7ef
Support announce and enqueue in forked-daapd (#77744) 2022-09-21 14:08:28 -04:00
epenet 41d2ac3943
Cleanup MediaClass and MediaType in tests (#78817)
Cleanup MediaClass/MediaType in tests
2022-09-20 17:55:13 +02:00
Franck Nijhof 7cd68381f1
Search/replace RESULT_TYPE_* by FlowResultType enum (#74642) 2022-07-07 19:57:36 +03:00
Paulus Schoutsen 929df2bc29
Improve error handling process_play_media_url (#68322) 2022-03-20 20:25:15 -07:00
Joshua Roys 9134e5c844
Get discovered zeroconf IPv6 addresses (#65462) 2022-02-11 16:46:17 -06:00
epenet 1d3fbc93a0
Update ZeroconfServiceInfo in tests (a-f) (#60212)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 09:32:58 -06:00
epenet e23cc3ecbf
Optimise use of ZeroconfServiceInfo (#59966)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 12:17:49 +01:00
epenet 3c42ea1a26
Use zeroconf attributes in forked-daapd (#58966)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-15 20:16:30 +01:00
Paulus Schoutsen ee2c950716
Merge system options into pref properties (#51347)
* Make system options future proof

* Update tests

* Add types
2021-06-01 22:34:31 +02:00
Franck Nijhof c68b259bd3
Cleanup of unused connection_class logic (#49865)
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2021-04-29 23:12:58 +02:00
Paulus Schoutsen 9e07910ab0
Mark entities as unavailable when they are removed but are still registered (#45528)
* Mark entities as unavailable when they are removed but are still registered

* Add sync_entity_lifecycle to collection helper

* Remove debug print

* Lint

* Fix tests

* Fix tests

* Update zha

* Update zone

* Fix tests

* Update hyperion

* Update rfxtrx

* Fix tests

* Pass force_remove=True from integrations

Co-authored-by: Erik <erik@montnemery.com>
2021-02-08 10:45:46 +01:00
Franck Nijhof 65cf2fcb6f
Drop asynctest (#44746) 2021-01-01 22:31:56 +01:00
Ville Skyttä 271ffac4a9
Fix static/class async mocks on Python 3.8.0 and .1 (#40147)
* forked_daapd

* shelly

* simplipy
2020-09-17 08:20:00 +03:00
Franck Nijhof 1c2ebdf307
Upgrade black to 20.8b1 (#39287) 2020-08-27 13:56:20 +02:00
uvjustin 8d69a4968f
Handle unexpected versions in forked_daapd zeroconf (#37053) 2020-06-24 14:19:08 +02:00
uvjustin 660265fe50
Swap title and album name for streams in forked_daapd (#36381) 2020-06-03 09:51:15 -06:00
uvjustin b3459d9190
Handle None received from pyforked-daapd (#35830)
* Handle None received from API in forked-daapd

* Bump pyforked-daapd version in requirements

* Add test
2020-05-20 21:06:51 +02:00
uvjustin 8c8feb95a9
Change version check in forked-daapd zeroconf step (#35796) 2020-05-19 15:17:02 +02:00
uvjustin 47801e7350
Abort forked-daapd zeroconf flow if version < 27 (#35709)
* Change MediaPlayerDevice to MediaPlayerEntity

* Abort zeroconf if mtd-version < 27.0
2020-05-17 09:23:44 -04:00
uvjustin 9fd6db4b5f
Clean up forked_daapd volume saving/setting in async_play_media (#35584)
* Clean up volume saving/setting in async_play_media

* Set source to pipe when queued externally

* Add server version requirement to error string
2020-05-14 19:42:00 +02:00
uvjustin c41fb2a21f
Add forked_daapd integration (#31953)
* New forked_daapd component

* Bunch of changes

Add config flow and zeroconf
Add zones on callback when added by server
Add password auth
Add async_play_media for TTS
Add media_image_url
Add support for pipe control/input from librespot-java
Improve update callbacks

* Refactor as per code review suggestions

Move config_flow connection testing to pypi library (v0.1.4)
Remove use of ForkedDaapdData class
Decouple Master and Zone data and functions
Add updater class to manage websocket and entity updates

* More changes as per code review

Avoid direct access to entities in tests
Bump pypi version
Mark entities unavailable when websocket disconnected
Move config tests to test_config_flow
Move full url creation from media_image_url to library
Move updater entity from master to hass.data
Remove default unmute volume option
Remove name from config_flow
Remove storage of entities in hass.data
Use async_write_ha_state
Use signal to trigger update_options
Use unittest.mock instead of asynctest.mock

* Yet more changes as per code review

Add more assertions in tests
Avoid patching asyncio
Make off state require player state stopped
Only send update to existing zones
Split up some tests
Use events instead of async_block_till_done
Use sets instead of lists where applicable
Wait for pause callback before continuing TTS

* Remove unnecessary use of Future()

* Add pipes and playlists as sources

* Add support for multiple servers

Change config options to add max_playlists+remove use_pipe_control
Create Machine ID in test_connection and also get from zeroconf
Modify hass.data storage
Update host for known configurations
Use Machine ID in unique_ids, entity names, config title, signals

* Use entry_id as basis for multiple entries

* Use f-strings and str.format, abort for same host

* Clean up check for same host
2020-05-13 09:13:41 -04:00