🏡 Open source home automation that puts local control and privacy first.
Go to file
Alain Turbide b1a374062b Add Alexa.ChannelController functions for media players (#27671)
* Added missing Alexa.ChannelController functions. Specifically ChangeChannel
and SkipChannel commands. These functions will call the play_media function
 in a media_player app if it has the capability published and pass on the
  channel# or channel name. The selected media player can then use this to
   select the channel on the device it is associated to.
Modified the existing Alexa.StepSpeaker Setvolume function to actually do
a stepped volume change using the steps sent by Alexa. The Alexa default
 step of 10 for a simple volume up/down can be changed via an exposed
 media_player attribute called volume_step_default.
 The default is set to 1. Any other value then default will be sent
 as sequential volume up /down to the media_player.

* The test code has some weird behaviour with passed boolean values.  Had to surround them in quotes for the tests to pass properly.

* Reverted test_smart_home.py change. Issue was not the boolean value but the behavior in the handler. The test suite does not like multiple await calls in a loop. Will investigate further.  The handler code works though.

* Added ChannelController/SkipChannels test in test_smart_home.py
Added test for callSign payload attribute.

* Modified smart home test to allow more than one call to services

* Added more tests for ChannelChange functions for various payload options.
Removed name options from metadata payload section. not needed.

* Reverted assert call change in alexa test __init__.py back to ==1. Not sure if it was the cause of the pytest's failing on github

* Corrected a comment.  First commit after a rebase.

* Comment line change.  Also wanted to force a code check on github.

* Added a loop delay in StepSpeaker and SkipChannel functions for safety

* Removed uneeded sleep from for loops.  Let remote handle delays
Moved service type decision out of for loops in ChannelController and StepSpeaker
Used constants instead of numeric values for support options in test module

* Change media_player const import to be more specific in source

* Modifed test_smart_home to use media_play constants instead of hardcode valu

* Removed unecessary test volume_step_default attribute from test_smart_home

* Removed uneeded comment in StepSpeaker function.
Re-ordered constants in test_smart_home.py

* Modified call to media_player play_media service to use media_player constant instead of hard coded value.

* Changed constant use to be consistant with rest of function.

* Correct merge conflicts in handlers.py and capablities.py
2019-10-23 08:28:23 -07:00
.devcontainer Update devcontainer.json 2019-10-17 17:06:33 +02:00
.github Update documentation link URL for integrations (part2) (#27117) 2019-10-02 09:34:07 -07:00
.vscode Improve startup of devcontainer (#26572) 2019-09-11 11:20:21 +02:00
docs fixed minor typo in docs/source/api/helpers.rst (#27282) 2019-10-07 10:25:36 -07:00
homeassistant Add Alexa.ChannelController functions for media players (#27671) 2019-10-23 08:28:23 -07:00
script Fix bootstrap dev dependencies message (#28114) 2019-10-22 23:12:57 -07:00
tests Add Alexa.ChannelController functions for media players (#27671) 2019-10-23 08:28:23 -07:00
.codecov.yml Only comment with changed coverage on release PRs [skip-ci] (#23224) 2019-04-18 20:58:35 -07:00
.coveragerc New platform for Microsoft Teams (#27981) 2019-10-23 09:32:14 +02:00
.dockerignore Docker cleanup. (#8226) 2017-06-30 08:07:33 -07: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
.hound.yml Add .hound.yml 2016-11-13 11:34:09 -08:00
.ignore Include .ignore file for search utilities (#5290) 2017-01-16 22:52:53 -08:00
.pre-commit-config.yaml Use pre-commit in CI and tox (#27743) 2019-10-18 12:20:26 -07:00
.readthedocs.yml Rename readthedocs file (#17718) 2018-10-23 17:39:17 +02:00
.travis.yml Use pre-commit in CI and tox (#27743) 2019-10-18 12:20:26 -07: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
CODEOWNERS New platform for Microsoft Teams (#27981) 2019-10-23 09:32:14 +02:00
CODE_OF_CONDUCT.md Add organization docs 2017-01-22 16:21:20 -08:00
CONTRIBUTING.md Update developer doc links to developers.home-assistant.io (#16622) 2018-09-15 13:27:37 +02:00
Dockerfile.dev Improve startup of devcontainer (#26572) 2019-09-11 11:20:21 +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
README.rst Update documentation link URL for integrations (part2) (#27117) 2019-10-02 09:34:07 -07:00
azure-pipelines-ci.yml Run pylint parallel (#27919) 2019-10-19 13:42:49 +02:00
azure-pipelines-release.yml Update azure-pipelines-release.yml for Azure Pipelines 2019-09-30 14:49:08 +02:00
azure-pipelines-translation.yml Update azure-pipelines-translation.yml for Azure Pipelines 2019-09-05 12:09:21 +02:00
azure-pipelines-wheels.yml Update azure-pipelines-wheels.yml for Azure Pipelines 2019-10-14 14:30:08 +02:00
pylintrc Upgrade pylint (#27279) 2019-10-07 08:17:39 -07:00
pyproject.toml Add Black 2019-07-31 12:23:23 -07:00
requirements_all.txt Fix issues with new tile 2020 devices (#28133) 2019-10-23 07:49:47 -06:00
requirements_docs.txt Upgrade Sphinx to 2.1.2 (#24693) 2019-06-23 07:49:40 +02:00
requirements_test.txt Upgrade mypy to 0.740 (#27913) 2019-10-19 11:35:57 -07:00
requirements_test_all.txt Save client identifier from Plex auth for future use (#27951) 2019-10-22 23:32:57 -07:00
setup.cfg Run mypy in pre-commit (#27339) 2019-10-08 14:45:24 -07:00
setup.py cryptography + numpy for python 3.8 (#27861) 2019-10-18 16:11:40 +02:00
tox.ini Use pre-commit in CI and tox (#27743) 2019-10-18 12:20:26 -07:00

README.rst

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

Home Assistant is a home automation platform running on Python 3. It is able to track and control all devices at home and offer a platform for automating control.

To get started:

.. code:: bash

    python3 -m pip install homeassistant
    hass --open-ui

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/