🏡 Open source home automation that puts local control and privacy first.
Find a file
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
.devcontainer Fixes invalid JSON syntax in devcontainer (#29911) 2019-12-13 12:41:56 +01:00
.github Add yamllint (in pre-commit and CI) (#33676) 2020-04-05 10:33:45 +02:00
.vscode Recommend python & prettier vscode extensions (#33702) 2020-04-05 18:19:40 +02:00
docs Improve string formatting v5 (#33697) 2020-04-05 17:48:55 +02:00
homeassistant Add forked_daapd integration (#31953) 2020-05-13 09:13:41 -04:00
rootfs Temporary transition Docker init (#34135) 2020-04-13 12:37:57 +02:00
script Use config flow references for data (#35529) 2020-05-12 10:50:44 -07:00
tests Add forked_daapd integration (#31953) 2020-05-13 09:13:41 -04:00
.coveragerc Add wiffi integration (#30784) 2020-05-13 10:40:58 +02:00
.dockerignore Integrate dockerbuild (#33168) 2020-03-23 00:39:37 +01:00
.gitattributes Fix line endings [skipci] (#12333) 2018-02-11 23:07:28 -08:00
.gitignore Move imports in wake_on_lan component (#28100) 2019-10-22 23:14:52 -07:00
.hadolint.yaml Add hadolint to CI (#34758) 2020-04-27 12:09:31 +02:00
.ignore Include .ignore file for search utilities (#5290) 2017-01-16 22:52:53 -08:00
.pre-commit-config.yaml Upgrade pyupgrade to v2.3.0 (#35159) 2020-05-04 09:28:20 +02:00
.prettierignore Rename translations dir for integrations (#34494) 2020-04-21 16:11:05 -07:00
.readthedocs.yml Drop Python 3.6 support (#29978) 2019-12-16 07:29:19 +01:00
.travis.yml Use savoury1/ffmpeg4 PPA on Travis, PyAV 7 needs FFmpeg >= 4 (#35090) 2020-05-02 14:52:29 -07:00
.yamllint Add yamllint (in pre-commit and CI) (#33676) 2020-04-05 10:33:45 +02:00
azure-pipelines-ci.yml Fix pylint CI (#34836) 2020-04-28 20:35:04 -05:00
azure-pipelines-release.yml Integrate dockerbuild (#33168) 2020-03-23 00:39:37 +01:00
azure-pipelines-translation.yml Migrate translations upload (#33926) 2020-04-09 17:52:33 -07:00
azure-pipelines-wheels.yml Update azure-pipelines-wheels.yml for Azure Pipelines 2020-04-02 09:38:43 +02:00
build.json Fix CVE-2020-1967 (#34853) 2020-04-29 18:06:25 +02:00
CLA.md Update LICENSE.md and CLA.md to reflect the new Apache 2.0 license 2017-01-28 12:12:34 -08:00
CODE_OF_CONDUCT.md Add organization docs 2017-01-22 16:21:20 -08:00
codecov.yml Update Codecov.io configuration (#33783) 2020-04-07 09:01:01 -07:00
CODEOWNERS Add forked_daapd integration (#31953) 2020-05-13 09:13:41 -04:00
CONTRIBUTING.md Contributing: Add note about feature suggestions and bug tracking (#30225) 2019-12-30 17:54:16 +01:00
Dockerfile Fix shutdown timeout and make it upstream with Supervisor (#33973) 2020-04-10 22:04:50 +02:00
Dockerfile.dev Add hadolint to CI (#34758) 2020-04-27 12:09:31 +02:00
LICENSE.md Update license to official GitHub template (#16470) 2018-09-07 10:11:51 +02:00
MANIFEST.in Consolidate frontend (#9915) 2017-10-24 19:36:27 -07:00
pylintrc Pylint cleanups (#35409) 2020-05-09 14:08:40 +03:00
pyproject.toml Drop Python 3.6 support (#29978) 2019-12-16 07:29:19 +01:00
README.rst Adjusts repository README (#29805) 2019-12-10 09:22:37 +01:00
requirements_all.txt Add forked_daapd integration (#31953) 2020-05-13 09:13:41 -04:00
requirements_docs.txt Refactor API documentation (#33217) 2020-03-25 13:21:04 -07:00
requirements_test.txt Upgrade pre-commit to 2.4.0 (#35520) 2020-05-11 20:00:08 -04:00
requirements_test_all.txt Add forked_daapd integration (#31953) 2020-05-13 09:13:41 -04:00
requirements_test_pre_commit.txt Upgrade pyupgrade to v2.3.0 (#35159) 2020-05-04 09:28:20 +02:00
setup.cfg Upgrade mypy to 0.770, tighten config a bit (#32715) 2020-03-12 11:52:20 +01:00
setup.py Upgrade pytz to 2020.1 (#35174) 2020-05-04 15:16:37 +02:00
tox.ini Fix hassfest validate invocation in Tox (#34428) 2020-04-19 17:43:49 +02:00

Home Assistant |Chat Status|
=================================================================================

Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server.

Check out `home-assistant.io <https://home-assistant.io>`__ for `a
demo <https://home-assistant.io/demo/>`__, `installation instructions <https://home-assistant.io/getting-started/>`__,
`tutorials <https://home-assistant.io/getting-started/automation-2/>`__ and `documentation <https://home-assistant.io/docs/>`__.

|screenshot-states|

Featured integrations
---------------------

|screenshot-components|

The system is built using a modular approach so support for other devices or actions can be implemented easily. See also the `section on architecture <https://developers.home-assistant.io/docs/en/architecture_index.html>`__ and the `section on creating your own
components <https://developers.home-assistant.io/docs/en/creating_component_index.html>`__.

If you run into issues while using Home Assistant or during development
of a component, check the `Home Assistant help section <https://home-assistant.io/help/>`__ of our website for further help and information.

.. |Chat Status| image:: https://img.shields.io/discord/330944238910963714.svg
   :target: https://discord.gg/c5DvZ4e
.. |screenshot-states| image:: https://raw.github.com/home-assistant/home-assistant/master/docs/screenshots.png
   :target: https://home-assistant.io/demo/
.. |screenshot-components| image:: https://raw.github.com/home-assistant/home-assistant/dev/docs/screenshot-components.png
   :target: https://home-assistant.io/integrations/