Commit Graph

390 Commits (aada66cc931fad3740c437874e6aaf8093f1f965)

Author SHA1 Message Date
jjlawren 30245f6874 Fix error on failed Plex setup () 2019-10-02 15:51:18 -07:00
Franck Nijhof c7da781efc Update documentation link URL for integrations in all manifests () 2019-10-02 09:25:44 -07:00
HomeAssistant Azure 2090d650c6 [ci skip] Translation update 2019-10-02 00:32:11 +00:00
jjlawren e033c46c91 Add missing http dependency () 2019-10-01 14:26:33 -07:00
jjlawren 571ab5a978 Plex external config flow ()
* Plex external auth config flow

* Update requirements_all

* Test dependency

* Bad await, delay variable

* Use hass aiohttp session, bump plexauth

* Bump requirements

* Bump library version again

* Use callback view instead of polling

* Update tests for callback view

* Reduce timeout with callback

* Review feedback

* F-string

* Wrap sync call

* Unused

* Revert unnecessary async wrap
2019-10-01 17:20:30 +02:00
HomeAssistant Azure 513d2652e4 [ci skip] Translation update 2019-10-01 00:32:19 +00:00
HomeAssistant Azure cdb469f711 [ci skip] Translation update 2019-09-30 00:32:17 +00:00
HomeAssistant Azure 560ac3df3a [ci skip] Translation update 2019-09-29 00:32:13 +00:00
HomeAssistant Azure 2af34b461a [ci skip] Translation update 2019-09-28 00:32:10 +00:00
HomeAssistant Azure b04a70995e [ci skip] Translation update 2019-09-27 00:32:12 +00:00
jjlawren 9b204ad162 Add Plex config options support ()
* Add config options support

* Actually copy dict

* Move media_player options to PlexServer class

* Handle updated config options

* Move callback out of server
2019-09-26 11:10:20 +02:00
HomeAssistant Azure ba92d781b4 [ci skip] Translation update 2019-09-26 00:32:13 +00:00
HomeAssistant Azure 24c8db0121 [ci skip] Translation update 2019-09-25 00:32:16 +00:00
HomeAssistant Azure 5d49d9c951 [ci skip] Translation update 2019-09-24 00:32:13 +00:00
HomeAssistant Azure d162e39ec9 [ci skip] Translation update 2019-09-23 00:32:13 +00:00
jjlawren 5914475fe5 Add manual step to Plex config flow ()
* Add manual config step

* Pass token to manual step

* Fix for no token

* Show error

* Specify key location

* Cast discovery port to int
2019-09-23 00:23:14 +02:00
jjlawren f82f30dc62 Unload Plex config entries ()
* Unload config entries

* Await coroutines

* Unnecessary ensure
2019-09-22 23:47:41 +02:00
HomeAssistant Azure 24cbae6ec3 [ci skip] Translation update 2019-09-21 00:32:16 +00:00
HomeAssistant Azure 20e61fb41b [ci skip] Translation update 2019-09-20 00:32:11 +00:00
jjlawren 2d12bac0e2 Add Plex config flow support ()
* Add config flow support

* Log error on failed connection

* Review comments

* Unused errors

* Move form to step

* Use instance var instead of passing argument

* Only share servers created by component

* Return errors early to avoid try:else

* Separate debug for validation vs setup

* Unnecessary

* Unnecessary checks

* Combine import flows, move logic to component

* Use config entry discovery handler

* Temporary lint fix

* Filter out servers already configured

* Remove manual config flow

* Skip discovery if a config exists

* Swap conditional to reduce indenting

* Only discover when no configs created or creating

* Un-nest function

* Proper async use

* Move legacy file import to discovery

* Fix, bad else

* Separate validate step

* Unused without manual setup step

* Async oops

* First attempt at tests

* Test cleanup

* Full test coverage for config_flow, enable tests

* Lint

* Fix lint vs black

* Add test init

* Add test package requirement

* Actually run script

* Use 'not None' convention

* Group exceptions by result

* Improve logic, add new error and test

* Test cleanup

* Add more asserts
2019-09-19 23:29:26 +02:00
jjlawren 6eeb01edc4 Remove default host for Plex config ()
* Remove default host, allow config with token(+server)

* Require one of host or token

* Oops

* Adjust schema

* Fix schema

* Add self as codeowner

* Update CODEOWNERS
2019-09-11 20:21:08 +02:00
jjlawren 30fb4ddc98 Move config and connections to Plex component ()
* Move config and connections to component

* Separate imports

* Set a unique_id on sensor

* Set a platforms const

* Add SERVERS dict, hardcode to single server

* Move to debug

* Return false

* More debug

* Import at top to fix lint

* Guard against legacy setup attempts

* Refactor to add setup callback

* Review comments

* Log levels

* Return result of callback

* Store CONFIGURING in hass.data

* Set up discovery if no config data

* Use schema to set defaults

* Remove media_player options to remove entities

* Improve error handling
2019-09-09 23:28:20 +02:00
jjlawren 23fdc04554 Add plex server config options to media_player platform ()
* Add server config options to media_player platform

* Unnecessary else

* Default host

* No need to try for default values

* Use const
2019-09-05 22:20:58 +02:00
jjlawren 2cd845fb25 Standardize Plex server connections ()
* Common connection class

* Omit tests for new Plex files

* Oops

* Add missing properties

* Remove redundant log message

* Stopgap to avoid duplicate setups

* Cleaner check for server setup

Co-Authored-By: Martin Hjelmare <marhje52@kth.se>

* Cleaner check for server setup

Co-Authored-By: Martin Hjelmare <marhje52@kth.se>

* Not needed with previous setup check

* Remove username/password support

* Reduce log level

Co-Authored-By: Martin Hjelmare <marhje52@kth.se>

* Don't do setup in __init__

* Oops

* Committing too fast...

* Connect after init

* Catch update exceptions like media_player

* Pass in validated PlexServer instance

* Remove unnecessary check

* Counter should be unknown on init

* Remove servername config option
2019-09-05 19:50:26 +02:00
Franck Nijhof 1c5e0123c9 Use literal string interpolation in integrations N-Q (f-strings) () 2019-09-03 11:35:00 -07:00
Antonio Pérez ce0edf8360 Fix configuration field name () 2019-08-10 15:01:19 -07:00
Paulus Schoutsen 4de97abc3a Black 2019-07-31 12:25:30 -07:00
jjlawren 0ba54ee9b7 Use central polling to update entities ()
* Use central polling to update entities

* Fix for line length

* Remove unnecessary import

* Use interval

* Trigger entity refreshes after commands

* Lint
2019-05-26 21:39:50 -07:00
jjlawren 25505dc1d4 Remove custom entity_id naming ()
* Remove custom entity_id naming

* Set entity_ids with 'plex'

* Set name instead of entity_id

* Lint

* Use a name template
2019-05-26 12:28:29 +02:00
jjlawren 8d22479d24 Always update all Plex client types () 2019-05-23 14:00:41 +02:00
Richard Mitchell c216ac7260 Fix race condition. ()
If the updater is running at the same time, this can result in this dict changing size during iteration, which Python does not like.
2019-04-24 22:38:10 -07:00
Andrew Sayre e2ed2ecdc0 Return 0 instead of None () 2019-04-19 16:56:34 -07:00
cgtobi 2c07bfb9e0 Remove dependencies and requirements ()
* Remove dependencies and requirements

* Revert "Remove dependencies and requirements"

This reverts commit fe7171b4cd.

* Remove dependencies and requirements

* Revert "Remove dependencies and requirements"

This reverts commit 391355ee2c.

* Remove dependencies and requirements

* Fix flake8 complaints

* Fix more flake8 complaints

* Revert non-component removals
2019-04-12 10:13:30 -07:00
Paulus Schoutsen 57f17707c6
Specify configurator as dependency () 2019-04-11 20:11:56 -07:00
Paulus Schoutsen cfe4cf30ad
Add manifests ()
* Add manifests

* Update auto name

* Update codeowners

* Add requirements from platforms

* Minor cleanup

* Incorporate changes from awarecan PR
2019-04-03 21:14:45 -07:00
Tobias Sauerwein 048b100eea Clean up docstrings ()
* Clean up docstrings

* Fix long lines

* Fix more docstrings

* Fix more docstrings

* Fix more docstrings
2019-04-03 17:40:03 +02:00
Niccolò Maggioni 5ad3e75a4d Support for Plex sensor with enforced SSL () 2019-03-25 20:45:13 +01:00
jjlawren ce550206a4 Fix progress for Plex media_players ()
* Return current position and last updated timestamp needed by UI

* Add throttling to position updating

* Simplify logic, don't clear position when refreshing

* Use seconds

* Update homeassistant/components/plex/media_player.py

Co-Authored-By: jjlawren <jjlawren@users.noreply.github.com>

* Add throttling to position updating

* Simplify logic, don't clear position when refreshing
2019-03-22 14:00:12 -06:00
jjlawren 30d4a9f12c Plex: Avoid refreshing by both device and session methods ()
* Avoid refreshing by both device and session methods

* Fix indentation
2019-03-21 19:41:41 -07:00
Paulus Schoutsen f5076188ef
Consolidate all platforms that have no tests ()
* Consolidate

* Fix tests

* Update imports

* Fix import

* Use importlib because integration and package share name

* Fix more tests

* Update .coveragerc and CODEOWNERS
2019-03-16 20:44:05 -07:00