* Add a group notify platform which allows sending a single notification to multiple platforms.
* Correctly sort group.py
* Clean up the payload logic
* Make name and entity id required in the schema
* Deep update the dictionary to fix a bug where data wasnt merging.
* Add notify.group tests.
* Improve docstrings.
* Change entities to services and entity_id to service
* Make service a slug without a default value
* Update tests for entities->services, entity_id->service
* vol.Any(cv.slug) -> cv.slug
* First pass on providing individual services for all possible targets that a notification platform supports.
* Add a quite hacky first version of notification groups
* Add a docstring for get_targets
* Register group service under notifygroup/ and safely check for notifygroups in config
* Remove notifygroups, because it belongs in its own PR
* Make @balloob requested changes
* get_targets()->targets
* Add tests for notify targets exposed as individual services
* If we dont have a platform name set in configuration, lets use the name of the platform instead of notify
* Fix test docstring.
* Dont use a dictionary for just one value
* No need to double slugify
* targets is now just a list of strings instead of a dict
* Retry sending the push for 1 day instead of failing instantly if the target is unavailable
* Add timestamp to push payload
* Correctly use the title and body fields for their intended purposes
* Add callback support
* Revert changes to frontend files.
* Add default URL which will open Home Assistant. Also put all the data into the data object of the payload so it is accessible in the browser. Without doing this, things like URL wouldnt be accessible.
* Flake8 and pylint fixes
* event->type
* Dont send the default url if actions exist
* flake8/pylint fixes again
* Update html5 tests
* Remove callbacks from this branch, will re-stage on a different branch
* Remove remnant of callbacks
* Add url to data dictionary if it exists instead of copying the entire data dictionary in
* flake8 fix
* Initial work to add Chrome Push Notification support
* Remove push.js from home-assistant since it is now in Polymer
* Chrome->HTML5, general cleanup/fixes
* Make html5 generic, move manifest.json into frontend so that we can dynamically add the gcm_sender_id
* Pylint, flake8, pydocstyle frontend init
* HTML5 push fixes
* Update polymer
* Remove crypto req
* Add notify default platform.
* Fix HTML5 push
* Registration fixes
* Linting fix
* pep257 fix
* Add tests
* pep257 fix
* Update frontend
* Added optional embedded image attachments to notify.smtp.
Also restructured a bit to minimize code duplication and add some tests.
* Fixed formatting errors.
* SMTP cleanups thanks to code review.
* Log error for services called without required attributes, in
media_player, notify and thermostat platforms.
* Add fan property and methods in thermostat demo component.
* Add tests for notify file and thermostat demo component.
* Increase coverage of tests for media_player, notify and thermostat
platforms.
* Fix some PEP issues, but not all. Tests still have old linting
errors.