Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
b7dd8cd
Add unique id and show on map option in Tankerkoenig (#33400)
FlavorFx Apr 3, 2020
c8e0dae
Upgrade cryptography to 2.9 (#33571)
fabaff Apr 3, 2020
54dd77f
Add default delay to Harmony config entries (#33576)
bramkragten Apr 3, 2020
dd37c3f
Bump adguardhome to 0.4.2 (#33575)
frenck Apr 3, 2020
c0315e3
Fix source name (#33565)
bieniu Apr 3, 2020
912eb32
Add support for Mi AirPurifier 3 (#31729)
foxel Apr 3, 2020
066254a
Fix vertical/horizontal property mixup in melcloud (#33580)
Apr 3, 2020
a813847
Automatic: fix OAuth2 redirect (#33581)
pbeckcom Apr 3, 2020
4e6fd19
Improve MQTT test coverage and remove dead code (#33584)
emontnemery Apr 3, 2020
b8e9e3a
Add Abode entity available property (#32923)
shred86 Apr 3, 2020
3a74066
Small cleanup in async_process_ha_core_config (#33583)
emontnemery Apr 3, 2020
6f7bd67
Updated frontend to 20200403.0 (#33586)
bramkragten Apr 3, 2020
d1663f2
Perform some small Flu Near You cleanup (#33590)
bachya Apr 3, 2020
dc7127a
Data Coordinator to return unsub func (#33588)
balloob Apr 3, 2020
cd300f5
Add Home Coach to zeroconf detection (#33593)
cgtobi Apr 3, 2020
f1d3c0d
Remove unused manifest fields (#33595)
balloob Apr 3, 2020
851c171
Reduce log spam (#33592)
cgtobi Apr 3, 2020
8a8ee95
[ci skip] Translation update
homeassistant Apr 4, 2020
1041dbe
Hass.io integration do not warn safe mode (#33600)
balloob Apr 4, 2020
4235328
Debounce calls to Plex server (#33560)
jjlawren Apr 4, 2020
07ae3f9
Use IP addresses instead of mDNS names when IPP discovered (#33610)
ctalkington Apr 4, 2020
c6ba607
Use IP addresses instead of mDNS names when wled discovered (#33608)
balloob Apr 4, 2020
c628c2c
Identify more Sonos radio stations with poor titles (#33609)
amelchio Apr 4, 2020
b60527c
Change the method of getting the mac address in the braviatv i… (#33567)
bieniu Apr 4, 2020
0d05bd3
Fix uncaught exceptions in upnp (#33604)
ziv1234 Apr 4, 2020
4a9f4f5
Update pymelcloud to fix broken area device search (#33620)
Apr 4, 2020
05192b7
Support melcloud swing mode (#33008)
Danielhiversen Apr 4, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
70 changes: 49 additions & 21 deletions homeassistant/components/abode/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
CONF_USERNAME,
EVENT_HOMEASSISTANT_STOP,
)
from homeassistant.exceptions import ConfigEntryNotReady
from homeassistant.helpers import config_validation as cv
from homeassistant.helpers.dispatcher import dispatcher_send
from homeassistant.helpers.entity import Entity
Expand Down Expand Up @@ -119,7 +120,7 @@ async def async_setup_entry(hass, config_entry):

except (AbodeException, ConnectTimeout, HTTPError) as ex:
LOGGER.error("Unable to connect to Abode: %s", str(ex))
return False
raise ConfigEntryNotReady

for platform in ABODE_PLATFORMS:
hass.async_create_task(
Expand Down Expand Up @@ -271,36 +272,72 @@ def event_callback(event, event_json):
)


class AbodeDevice(Entity):
class AbodeEntity(Entity):
"""Representation of an Abode entity."""

def __init__(self, data):
"""Initialize Abode entity."""
self._data = data
self._available = True

@property
def available(self):
"""Return the available state."""
return self._available

@property
def should_poll(self):
"""Return the polling state."""
return self._data.polling

async def async_added_to_hass(self):
"""Subscribe to Abode connection status updates."""
self.hass.async_add_job(
self._data.abode.events.add_connection_status_callback,
self.unique_id,
self._update_connection_status,
)

self.hass.data[DOMAIN].entity_ids.add(self.entity_id)

async def async_will_remove_from_hass(self):
"""Unsubscribe from Abode connection status updates."""
self.hass.async_add_job(
self._data.abode.events.remove_connection_status_callback, self.unique_id,
)

def _update_connection_status(self):
"""Update the entity available property."""
self._available = self._data.abode.events.connected
self.schedule_update_ha_state()


class AbodeDevice(AbodeEntity):
"""Representation of an Abode device."""

def __init__(self, data, device):
"""Initialize Abode device."""
self._data = data
super().__init__(data)
self._device = device

async def async_added_to_hass(self):
"""Subscribe to device events."""
await super().async_added_to_hass()
self.hass.async_add_job(
self._data.abode.events.add_device_callback,
self._device.device_id,
self._update_callback,
)
self.hass.data[DOMAIN].entity_ids.add(self.entity_id)

async def async_will_remove_from_hass(self):
"""Unsubscribe from device events."""
await super().async_will_remove_from_hass()
self.hass.async_add_job(
self._data.abode.events.remove_all_device_callbacks, self._device.device_id
)

@property
def should_poll(self):
"""Return the polling state."""
return self._data.polling

def update(self):
"""Update device and automation states."""
"""Update device state."""
self._device.refresh()

@property
Expand Down Expand Up @@ -339,23 +376,14 @@ def _update_callback(self, device):
self.schedule_update_ha_state()


class AbodeAutomation(Entity):
class AbodeAutomation(AbodeEntity):
"""Representation of an Abode automation."""

def __init__(self, data, automation):
"""Initialize for Abode automation."""
self._data = data
super().__init__(data)
self._automation = automation

async def async_added_to_hass(self):
"""Set up automation entity."""
self.hass.data[DOMAIN].entity_ids.add(self.entity_id)

@property
def should_poll(self):
"""Return the polling state."""
return self._data.polling

def update(self):
"""Update automation state."""
self._automation.refresh()
Expand Down
3 changes: 1 addition & 2 deletions homeassistant/components/abode/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
"name": "Abode",
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/abode",
"requirements": ["abodepy==0.18.1"],
"dependencies": [],
"requirements": ["abodepy==0.19.0"],
"codeowners": ["@shred86"]
}
1 change: 0 additions & 1 deletion homeassistant/components/acer_projector/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "Acer Projector",
"documentation": "https://www.home-assistant.io/integrations/acer_projector",
"requirements": ["pyserial==3.1.1"],
"dependencies": [],
"codeowners": []
}
2 changes: 0 additions & 2 deletions homeassistant/components/actiontec/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,5 @@
"domain": "actiontec",
"name": "Actiontec",
"documentation": "https://www.home-assistant.io/integrations/actiontec",
"requirements": [],
"dependencies": [],
"codeowners": []
}
3 changes: 1 addition & 2 deletions homeassistant/components/adguard/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
"name": "AdGuard Home",
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/adguard",
"requirements": ["adguardhome==0.4.1"],
"dependencies": [],
"requirements": ["adguardhome==0.4.2"],
"codeowners": ["@frenck"]
}
1 change: 0 additions & 1 deletion homeassistant/components/ads/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "ADS",
"documentation": "https://www.home-assistant.io/integrations/ads",
"requirements": ["pyads==3.0.7"],
"dependencies": [],
"codeowners": []
}
1 change: 0 additions & 1 deletion homeassistant/components/aftership/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "AfterShip",
"documentation": "https://www.home-assistant.io/integrations/aftership",
"requirements": ["pyaftership==0.1.2"],
"dependencies": [],
"codeowners": []
}
2 changes: 0 additions & 2 deletions homeassistant/components/air_quality/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,5 @@
"domain": "air_quality",
"name": "Air Quality",
"documentation": "https://www.home-assistant.io/integrations/air_quality",
"requirements": [],
"dependencies": [],
"codeowners": []
}
1 change: 0 additions & 1 deletion homeassistant/components/airly/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
"domain": "airly",
"name": "Airly",
"documentation": "https://www.home-assistant.io/integrations/airly",
"dependencies": [],
"codeowners": ["@bieniu"],
"requirements": ["airly==0.0.2"],
"config_flow": true
Expand Down
7 changes: 6 additions & 1 deletion homeassistant/components/airvisual/.translations/lb.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,10 @@
"data": {
"api_key": "API Schl\u00ebssel",
"latitude": "Breedegrad",
"longitude": "L\u00e4ngegrad"
"longitude": "L\u00e4ngegrad",
"show_on_map": "Iwwerwaachte Geografie op der Kaart uweisen"
},
"description": "Loft Qualit\u00e9it an enger geografescher Lag iwwerwaachen.",
"title": "AirVisual konfigur\u00e9ieren"
}
},
Expand All @@ -21,6 +23,9 @@
"options": {
"step": {
"init": {
"data": {
"show_on_map": "Iwwerwaachte Geografie op der Kaart uweisen"
},
"description": "Verschidden Optioune fir d'AirVisual Integratioun d\u00e9fin\u00e9ieren.",
"title": "Airvisual ariichten"
}
Expand Down
1 change: 0 additions & 1 deletion homeassistant/components/airvisual/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,5 @@
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/airvisual",
"requirements": ["pyairvisual==3.0.1"],
"dependencies": [],
"codeowners": ["@bachya"]
}
1 change: 0 additions & 1 deletion homeassistant/components/aladdin_connect/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "Aladdin Connect",
"documentation": "https://www.home-assistant.io/integrations/aladdin_connect",
"requirements": ["aladdin_connect==0.3"],
"dependencies": [],
"codeowners": []
}
2 changes: 0 additions & 2 deletions homeassistant/components/alarm_control_panel/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
"domain": "alarm_control_panel",
"name": "Alarm Control Panel",
"documentation": "https://www.home-assistant.io/integrations/alarm_control_panel",
"requirements": [],
"dependencies": [],
"codeowners": [],
"quality_scale": "internal"
}
1 change: 0 additions & 1 deletion homeassistant/components/alarmdecoder/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "AlarmDecoder",
"documentation": "https://www.home-assistant.io/integrations/alarmdecoder",
"requirements": ["alarmdecoder==1.13.2"],
"dependencies": [],
"codeowners": ["@ajschmidt8"]
}
2 changes: 0 additions & 2 deletions homeassistant/components/alert/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
"domain": "alert",
"name": "Alert",
"documentation": "https://www.home-assistant.io/integrations/alert",
"requirements": [],
"dependencies": [],
"after_dependencies": ["notify"],
"codeowners": [],
"quality_scale": "internal"
Expand Down
1 change: 0 additions & 1 deletion homeassistant/components/alexa/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
"domain": "alexa",
"name": "Amazon Alexa",
"documentation": "https://www.home-assistant.io/integrations/alexa",
"requirements": [],
"dependencies": ["http"],
"after_dependencies": ["logbook", "camera"],
"codeowners": ["@home-assistant/cloud", "@ochlocracy"]
Expand Down
1 change: 0 additions & 1 deletion homeassistant/components/alpha_vantage/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "Alpha Vantage",
"documentation": "https://www.home-assistant.io/integrations/alpha_vantage",
"requirements": ["alpha_vantage==2.1.3"],
"dependencies": [],
"codeowners": ["@fabaff"]
}
1 change: 0 additions & 1 deletion homeassistant/components/amazon_polly/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "Amazon Polly",
"documentation": "https://www.home-assistant.io/integrations/amazon_polly",
"requirements": ["boto3==1.9.252"],
"dependencies": [],
"codeowners": ["@robbiet480"]
}
1 change: 0 additions & 1 deletion homeassistant/components/ambient_station/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,5 @@
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/ambient_station",
"requirements": ["aioambient==1.1.0"],
"dependencies": [],
"codeowners": ["@bachya"]
}
1 change: 0 additions & 1 deletion homeassistant/components/ampio/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "Ampio Smart Smog System",
"documentation": "https://www.home-assistant.io/integrations/ampio",
"requirements": ["asmog==0.0.6"],
"dependencies": [],
"codeowners": []
}
1 change: 0 additions & 1 deletion homeassistant/components/android_ip_webcam/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "Android IP Webcam",
"documentation": "https://www.home-assistant.io/integrations/android_ip_webcam",
"requirements": ["pydroid-ipcam==0.8"],
"dependencies": [],
"codeowners": []
}
1 change: 0 additions & 1 deletion homeassistant/components/androidtv/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,5 @@
"androidtv==0.0.39",
"pure-python-adb==0.2.2.dev0"
],
"dependencies": [],
"codeowners": ["@JeffLIrion"]
}
1 change: 0 additions & 1 deletion homeassistant/components/anel_pwrctrl/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "Anel NET-PwrCtrl",
"documentation": "https://www.home-assistant.io/integrations/anel_pwrctrl",
"requirements": ["anel_pwrctrl-homeassistant==0.0.1.dev2"],
"dependencies": [],
"codeowners": []
}
1 change: 0 additions & 1 deletion homeassistant/components/anthemav/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "Anthem A/V Receivers",
"documentation": "https://www.home-assistant.io/integrations/anthemav",
"requirements": ["anthemav==1.1.10"],
"dependencies": [],
"codeowners": []
}
1 change: 0 additions & 1 deletion homeassistant/components/apache_kafka/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "Apache Kafka",
"documentation": "https://www.home-assistant.io/integrations/apache_kafka",
"requirements": ["aiokafka==0.5.1"],
"dependencies": [],
"codeowners": ["@bachya"]
}
1 change: 0 additions & 1 deletion homeassistant/components/apcupsd/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "apcupsd",
"documentation": "https://www.home-assistant.io/integrations/apcupsd",
"requirements": ["apcaccess==0.0.13"],
"dependencies": [],
"codeowners": []
}
1 change: 0 additions & 1 deletion homeassistant/components/api/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
"domain": "api",
"name": "Home Assistant API",
"documentation": "https://www.home-assistant.io/integrations/api",
"requirements": [],
"dependencies": ["http"],
"codeowners": ["@home-assistant/core"],
"quality_scale": "internal"
Expand Down
1 change: 0 additions & 1 deletion homeassistant/components/apns/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
"name": "Apple Push Notification Service (APNS)",
"documentation": "https://www.home-assistant.io/integrations/apns",
"requirements": ["apns2==0.3.0"],
"dependencies": [],
"after_dependencies": ["device_tracker"],
"codeowners": []
}
1 change: 0 additions & 1 deletion homeassistant/components/apprise/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "Apprise",
"documentation": "https://www.home-assistant.io/integrations/apprise",
"requirements": ["apprise==0.8.5"],
"dependencies": [],
"codeowners": ["@caronc"]
}
1 change: 0 additions & 1 deletion homeassistant/components/aprs/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
"domain": "aprs",
"name": "APRS",
"documentation": "https://www.home-assistant.io/integrations/aprs",
"dependencies": [],
"codeowners": ["@PhilRW"],
"requirements": ["aprslib==0.6.46", "geopy==1.19.0"]
}
1 change: 0 additions & 1 deletion homeassistant/components/aqualogic/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "AquaLogic",
"documentation": "https://www.home-assistant.io/integrations/aqualogic",
"requirements": ["aqualogic==1.0"],
"dependencies": [],
"codeowners": []
}
1 change: 0 additions & 1 deletion homeassistant/components/aquostv/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "Sharp Aquos TV",
"documentation": "https://www.home-assistant.io/integrations/aquostv",
"requirements": ["sharp_aquos_rc==0.3.2"],
"dependencies": [],
"codeowners": []
}
1 change: 0 additions & 1 deletion homeassistant/components/arcam_fmj/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,5 @@
"config_flow": false,
"documentation": "https://www.home-assistant.io/integrations/arcam_fmj",
"requirements": ["arcam-fmj==0.4.3"],
"dependencies": [],
"codeowners": ["@elupus"]
}
1 change: 0 additions & 1 deletion homeassistant/components/arduino/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"name": "Arduino",
"documentation": "https://www.home-assistant.io/integrations/arduino",
"requirements": ["PyMata==2.20"],
"dependencies": [],
"codeowners": ["@fabaff"]
}
2 changes: 0 additions & 2 deletions homeassistant/components/arest/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,5 @@
"domain": "arest",
"name": "aREST",
"documentation": "https://www.home-assistant.io/integrations/arest",
"requirements": [],
"dependencies": [],
"codeowners": ["@fabaff"]
}
Loading