Rename CONF_ATTRIBUTION to ATTRIBUTION (#21069)
* Rename CONF_ATTRIBUTION to ATTRIBUTION * Update homeassistant/components/sensor/irish_rail_transport.py Co-Authored-By: fabaff <mail@fabian-affolter.ch>
This commit is contained in:
parent
03ec3ac16e
commit
cdc4dc3f11
66 changed files with 232 additions and 239 deletions
|
@ -17,7 +17,8 @@ REQUIREMENTS = ['abodepy==0.15.0']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by goabode.com"
|
||||
ATTRIBUTION = "Data provided by goabode.com"
|
||||
|
||||
CONF_POLLING = 'polling'
|
||||
|
||||
DOMAIN = 'abode'
|
||||
|
@ -280,7 +281,7 @@ class AbodeDevice(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
'device_id': self._device.device_id,
|
||||
'battery_low': self._device.battery_low,
|
||||
'no_response': self._device.no_response,
|
||||
|
@ -327,7 +328,7 @@ class AbodeAutomation(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
'automation_id': self._automation.automation_id,
|
||||
'type': self._automation.type,
|
||||
'sub_type': self._automation.sub_type
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
import logging
|
||||
|
||||
import homeassistant.components.alarm_control_panel as alarm
|
||||
from homeassistant.components.abode import CONF_ATTRIBUTION, AbodeDevice
|
||||
from homeassistant.components.abode import ATTRIBUTION, AbodeDevice
|
||||
from homeassistant.components.abode import DOMAIN as ABODE_DOMAIN
|
||||
from homeassistant.const import (
|
||||
ATTR_ATTRIBUTION, STATE_ALARM_ARMED_AWAY, STATE_ALARM_ARMED_HOME,
|
||||
|
@ -73,7 +73,7 @@ class AbodeAlarm(AbodeDevice, alarm.AlarmControlPanel):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
'device_id': self._device.device_id,
|
||||
'battery_backup': self._device.battery,
|
||||
'cellular_backup': self._device.is_cellular,
|
||||
|
|
|
@ -15,7 +15,7 @@ REQUIREMENTS = ['pyarlo==0.2.3']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by arlo.netgear.com"
|
||||
ATTRIBUTION = "Data provided by arlo.netgear.com"
|
||||
|
||||
DATA_ARLO = 'data_arlo'
|
||||
DEFAULT_BRAND = 'Netgear Arlo'
|
||||
|
|
|
@ -9,7 +9,7 @@ from homeassistant.helpers.dispatcher import async_dispatcher_connect
|
|||
from homeassistant.components.alarm_control_panel import (
|
||||
AlarmControlPanel, PLATFORM_SCHEMA)
|
||||
from homeassistant.components.arlo import (
|
||||
DATA_ARLO, CONF_ATTRIBUTION, SIGNAL_UPDATE_ARLO)
|
||||
DATA_ARLO, ATTRIBUTION, SIGNAL_UPDATE_ARLO)
|
||||
from homeassistant.const import (
|
||||
ATTR_ATTRIBUTION, STATE_ALARM_ARMED_AWAY, STATE_ALARM_ARMED_HOME,
|
||||
STATE_ALARM_DISARMED, STATE_ALARM_ARMED_NIGHT)
|
||||
|
@ -117,7 +117,7 @@ class ArloBaseStation(AlarmControlPanel):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
'device_id': self._base_station.device_id
|
||||
}
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ import voluptuous as vol
|
|||
from homeassistant.core import callback
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.components.arlo import (
|
||||
CONF_ATTRIBUTION, DEFAULT_BRAND, DATA_ARLO, SIGNAL_UPDATE_ARLO)
|
||||
ATTRIBUTION, DEFAULT_BRAND, DATA_ARLO, SIGNAL_UPDATE_ARLO)
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
ATTR_ATTRIBUTION, CONF_MONITORED_CONDITIONS, TEMP_CELSIUS,
|
||||
|
@ -177,7 +177,7 @@ class ArloSensor(Entity):
|
|||
"""Return the device state attributes."""
|
||||
attrs = {}
|
||||
|
||||
attrs[ATTR_ATTRIBUTION] = CONF_ATTRIBUTION
|
||||
attrs[ATTR_ATTRIBUTION] = ATTRIBUTION
|
||||
attrs['brand'] = DEFAULT_BRAND
|
||||
|
||||
if self._sensor_type != 'total_cameras':
|
||||
|
|
|
@ -19,7 +19,7 @@ from homeassistant.util import Throttle
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by the National Oceanic and Atmospheric" \
|
||||
ATTRIBUTION = "Data provided by the National Oceanic and Atmospheric " \
|
||||
"Administration"
|
||||
CONF_THRESHOLD = 'forecast_threshold'
|
||||
|
||||
|
@ -91,7 +91,7 @@ class AuroraSensor(BinarySensorDevice):
|
|||
if self.aurora_data:
|
||||
attrs['visibility_level'] = self.aurora_data.visibility_level
|
||||
attrs['message'] = self.aurora_data.is_visible_text
|
||||
attrs[ATTR_ATTRIBUTION] = CONF_ATTRIBUTION
|
||||
attrs[ATTR_ATTRIBUTION] = ATTRIBUTION
|
||||
return attrs
|
||||
|
||||
def update(self):
|
||||
|
|
|
@ -11,7 +11,7 @@ import voluptuous as vol
|
|||
import homeassistant.helpers.config_validation as cv
|
||||
|
||||
from homeassistant.components.ring import (
|
||||
CONF_ATTRIBUTION, DEFAULT_ENTITY_NAMESPACE, DATA_RING)
|
||||
ATTRIBUTION, DEFAULT_ENTITY_NAMESPACE, DATA_RING)
|
||||
|
||||
from homeassistant.const import (
|
||||
ATTR_ATTRIBUTION, CONF_ENTITY_NAMESPACE, CONF_MONITORED_CONDITIONS)
|
||||
|
@ -47,18 +47,14 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
|
|||
for device in ring.doorbells: # ring.doorbells is doing I/O
|
||||
for sensor_type in config[CONF_MONITORED_CONDITIONS]:
|
||||
if 'doorbell' in SENSOR_TYPES[sensor_type][1]:
|
||||
sensors.append(RingBinarySensor(hass,
|
||||
device,
|
||||
sensor_type))
|
||||
sensors.append(RingBinarySensor(hass, device, sensor_type))
|
||||
|
||||
for device in ring.stickup_cams: # ring.stickup_cams is doing I/O
|
||||
for sensor_type in config[CONF_MONITORED_CONDITIONS]:
|
||||
if 'stickup_cams' in SENSOR_TYPES[sensor_type][1]:
|
||||
sensors.append(RingBinarySensor(hass,
|
||||
device,
|
||||
sensor_type))
|
||||
sensors.append(RingBinarySensor(hass, device, sensor_type))
|
||||
|
||||
add_entities(sensors, True)
|
||||
return True
|
||||
|
||||
|
||||
class RingBinarySensor(BinarySensorDevice):
|
||||
|
@ -69,8 +65,8 @@ class RingBinarySensor(BinarySensorDevice):
|
|||
super(RingBinarySensor, self).__init__()
|
||||
self._sensor_type = sensor_type
|
||||
self._data = data
|
||||
self._name = "{0} {1}".format(self._data.name,
|
||||
SENSOR_TYPES.get(self._sensor_type)[0])
|
||||
self._name = "{0} {1}".format(
|
||||
self._data.name, SENSOR_TYPES.get(self._sensor_type)[0])
|
||||
self._device_class = SENSOR_TYPES.get(self._sensor_type)[2]
|
||||
self._state = None
|
||||
self._unique_id = '{}-{}'.format(self._data.id, self._sensor_type)
|
||||
|
@ -99,7 +95,7 @@ class RingBinarySensor(BinarySensorDevice):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
attrs = {}
|
||||
attrs[ATTR_ATTRIBUTION] = CONF_ATTRIBUTION
|
||||
attrs[ATTR_ATTRIBUTION] = ATTRIBUTION
|
||||
|
||||
attrs['device_id'] = self._data.id
|
||||
attrs['firmware'] = self._data.firmware
|
||||
|
|
|
@ -19,7 +19,7 @@ _LOGGER = logging.getLogger(__name__)
|
|||
|
||||
ATTR_TARGET = 'target'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by Uptime Robot"
|
||||
ATTRIBUTION = "Data provided by Uptime Robot"
|
||||
|
||||
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
|
||||
vol.Required(CONF_API_KEY): cv.string,
|
||||
|
@ -78,7 +78,7 @@ class UptimeRobotBinarySensor(BinarySensorDevice):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the binary sensor."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_TARGET: self._target,
|
||||
}
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ import voluptuous as vol
|
|||
|
||||
from homeassistant.helpers import config_validation as cv
|
||||
from homeassistant.components.ring import (
|
||||
DATA_RING, CONF_ATTRIBUTION, NOTIFICATION_ID)
|
||||
DATA_RING, ATTRIBUTION, NOTIFICATION_ID)
|
||||
from homeassistant.components.camera import Camera, PLATFORM_SCHEMA
|
||||
from homeassistant.components.ffmpeg import DATA_FFMPEG
|
||||
from homeassistant.const import ATTR_ATTRIBUTION, CONF_SCAN_INTERVAL
|
||||
|
@ -34,8 +34,7 @@ SCAN_INTERVAL = timedelta(seconds=90)
|
|||
|
||||
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
|
||||
vol.Optional(CONF_FFMPEG_ARGUMENTS): cv.string,
|
||||
vol.Optional(CONF_SCAN_INTERVAL, default=SCAN_INTERVAL):
|
||||
cv.time_period,
|
||||
vol.Optional(CONF_SCAN_INTERVAL, default=SCAN_INTERVAL): cv.time_period,
|
||||
})
|
||||
|
||||
|
||||
|
@ -106,7 +105,7 @@ class RingCam(Camera):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
'device_id': self._camera.id,
|
||||
'firmware': self._camera.firmware,
|
||||
'kind': self._camera.kind,
|
||||
|
|
|
@ -22,7 +22,8 @@ ATTR_MEMORY = 'memory'
|
|||
ATTR_REGION = 'region'
|
||||
ATTR_VCPUS = 'vcpus'
|
||||
|
||||
CONF_ATTRIBUTION = 'Data provided by Digital Ocean'
|
||||
ATTRIBUTION = 'Data provided by Digital Ocean'
|
||||
|
||||
CONF_DROPLETS = 'droplets'
|
||||
|
||||
DATA_DIGITAL_OCEAN = 'data_do'
|
||||
|
|
|
@ -9,7 +9,7 @@ from homeassistant.components.binary_sensor import (
|
|||
from homeassistant.components.digital_ocean import (
|
||||
CONF_DROPLETS, ATTR_CREATED_AT, ATTR_DROPLET_ID, ATTR_DROPLET_NAME,
|
||||
ATTR_FEATURES, ATTR_IPV4_ADDRESS, ATTR_IPV6_ADDRESS, ATTR_MEMORY,
|
||||
ATTR_REGION, ATTR_VCPUS, CONF_ATTRIBUTION, DATA_DIGITAL_OCEAN)
|
||||
ATTR_REGION, ATTR_VCPUS, ATTRIBUTION, DATA_DIGITAL_OCEAN)
|
||||
from homeassistant.const import ATTR_ATTRIBUTION
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
@ -71,7 +71,7 @@ class DigitalOceanBinarySensor(BinarySensorDevice):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the Digital Ocean droplet."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_CREATED_AT: self.data.created_at,
|
||||
ATTR_DROPLET_ID: self.data.id,
|
||||
ATTR_DROPLET_NAME: self.data.name,
|
||||
|
|
|
@ -8,7 +8,7 @@ from homeassistant.components.switch import (SwitchDevice, PLATFORM_SCHEMA)
|
|||
from homeassistant.components.digital_ocean import (
|
||||
CONF_DROPLETS, ATTR_CREATED_AT, ATTR_DROPLET_ID, ATTR_DROPLET_NAME,
|
||||
ATTR_FEATURES, ATTR_IPV4_ADDRESS, ATTR_IPV6_ADDRESS, ATTR_MEMORY,
|
||||
ATTR_REGION, ATTR_VCPUS, CONF_ATTRIBUTION, DATA_DIGITAL_OCEAN)
|
||||
ATTR_REGION, ATTR_VCPUS, ATTRIBUTION, DATA_DIGITAL_OCEAN)
|
||||
from homeassistant.const import ATTR_ATTRIBUTION
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
@ -65,7 +65,7 @@ class DigitalOceanSwitch(SwitchDevice):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the Digital Ocean droplet."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_CREATED_AT: self.data.created_at,
|
||||
ATTR_DROPLET_ID: self.data.id,
|
||||
ATTR_DROPLET_NAME: self.data.name,
|
||||
|
|
|
@ -20,7 +20,8 @@ _LOGGER = logging.getLogger(__name__)
|
|||
|
||||
ALLOWED_WATERING_TIME = [5, 10, 15, 30, 45, 60]
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by hydrawise.com"
|
||||
ATTRIBUTION = "Data provided by hydrawise.com"
|
||||
|
||||
CONF_WATERING_TIME = 'watering_minutes'
|
||||
|
||||
NOTIFICATION_ID = 'hydrawise_notification'
|
||||
|
@ -141,6 +142,6 @@ class HydrawiseEntity(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
'identifier': self.data.get('relay'),
|
||||
}
|
||||
|
|
|
@ -1,19 +1,19 @@
|
|||
"""Support for Logi Circle devices."""
|
||||
import logging
|
||||
import asyncio
|
||||
import logging
|
||||
|
||||
import voluptuous as vol
|
||||
import async_timeout
|
||||
import voluptuous as vol
|
||||
|
||||
from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.const import CONF_USERNAME, CONF_PASSWORD
|
||||
|
||||
REQUIREMENTS = ['logi_circle==0.1.7']
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
_TIMEOUT = 15 # seconds
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by circle.logi.com"
|
||||
ATTRIBUTION = "Data provided by circle.logi.com"
|
||||
|
||||
NOTIFICATION_ID = 'logi_notification'
|
||||
NOTIFICATION_TITLE = 'Logi Circle Setup'
|
||||
|
|
|
@ -7,7 +7,7 @@ import voluptuous as vol
|
|||
|
||||
from homeassistant.helpers import config_validation as cv
|
||||
from homeassistant.components.logi_circle import (
|
||||
DOMAIN as LOGI_CIRCLE_DOMAIN, CONF_ATTRIBUTION)
|
||||
DOMAIN as LOGI_CIRCLE_DOMAIN, ATTRIBUTION)
|
||||
from homeassistant.components.camera import (
|
||||
Camera, PLATFORM_SCHEMA, CAMERA_SERVICE_SCHEMA, SUPPORT_ON_OFF,
|
||||
ATTR_ENTITY_ID, ATTR_FILENAME, DOMAIN)
|
||||
|
@ -128,7 +128,7 @@ class LogiCam(Camera):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
state = {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
'battery_saving_mode': (
|
||||
STATE_ON if self._camera.battery_saving else STATE_OFF),
|
||||
'ip_address': self._camera.ip_address,
|
||||
|
|
|
@ -5,7 +5,7 @@ import voluptuous as vol
|
|||
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.components.logi_circle import (
|
||||
CONF_ATTRIBUTION, DEFAULT_ENTITY_NAMESPACE, DOMAIN as LOGI_CIRCLE_DOMAIN)
|
||||
ATTRIBUTION, DEFAULT_ENTITY_NAMESPACE, DOMAIN as LOGI_CIRCLE_DOMAIN)
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
ATTR_ATTRIBUTION, ATTR_BATTERY_CHARGING,
|
||||
|
@ -86,7 +86,7 @@ class LogiSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
state = {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
'battery_saving_mode': (
|
||||
STATE_ON if self._camera.battery_saving else STATE_OFF),
|
||||
'ip_address': self._camera.ip_address,
|
||||
|
|
|
@ -24,7 +24,8 @@ _LOGGER = logging.getLogger(__name__)
|
|||
|
||||
ALLOWED_WATERING_TIME = [5, 10, 15, 30, 45, 60]
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by Melnor Aquatimer.com"
|
||||
ATTRIBUTION = "Data provided by Melnor Aquatimer.com"
|
||||
|
||||
CONF_WATERING_TIME = 'watering_minutes'
|
||||
|
||||
NOTIFICATION_ID = 'raincloud_notification'
|
||||
|
@ -165,7 +166,7 @@ class RainCloudEntity(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
'identifier': self.data.serial,
|
||||
}
|
||||
|
||||
|
|
|
@ -1,16 +1,11 @@
|
|||
"""
|
||||
Support for Melnor RainCloud sprinkler water timer.
|
||||
|
||||
For more details about this platform, please refer to the documentation at
|
||||
https://home-assistant.io/components/switch.raincloud/
|
||||
"""
|
||||
"""Support for Melnor RainCloud sprinkler water timer."""
|
||||
import logging
|
||||
|
||||
import voluptuous as vol
|
||||
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.components.raincloud import (
|
||||
ALLOWED_WATERING_TIME, CONF_ATTRIBUTION, CONF_WATERING_TIME,
|
||||
ALLOWED_WATERING_TIME, ATTRIBUTION, CONF_WATERING_TIME,
|
||||
DATA_RAINCLOUD, DEFAULT_WATERING_TIME, RainCloudEntity, SWITCHES)
|
||||
from homeassistant.components.switch import SwitchDevice, PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
|
@ -38,12 +33,9 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
|
|||
# create a sensor for each zone managed by faucet
|
||||
for zone in raincloud.controller.faucet.zones:
|
||||
sensors.append(
|
||||
RainCloudSwitch(default_watering_timer,
|
||||
zone,
|
||||
sensor_type))
|
||||
RainCloudSwitch(default_watering_timer, zone, sensor_type))
|
||||
|
||||
add_entities(sensors, True)
|
||||
return True
|
||||
|
||||
|
||||
class RainCloudSwitch(RainCloudEntity, SwitchDevice):
|
||||
|
@ -87,7 +79,7 @@ class RainCloudSwitch(RainCloudEntity, SwitchDevice):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
'default_manual_timer': self._default_watering_timer,
|
||||
'identifier': self.data.serial
|
||||
}
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
"""Support for Ring Doorbell/Chimes."""
|
||||
import logging
|
||||
from requests.exceptions import HTTPError, ConnectTimeout
|
||||
|
||||
from requests.exceptions import ConnectTimeout, HTTPError
|
||||
import voluptuous as vol
|
||||
|
||||
from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.const import CONF_USERNAME, CONF_PASSWORD
|
||||
|
||||
REQUIREMENTS = ['ring_doorbell==0.2.2']
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by Ring.com"
|
||||
ATTRIBUTION = "Data provided by Ring.com"
|
||||
|
||||
NOTIFICATION_ID = 'ring_notification'
|
||||
NOTIFICATION_TITLE = 'Ring Setup'
|
||||
|
|
|
@ -23,7 +23,8 @@ ATTR_CLOSE = 'close'
|
|||
ATTR_HIGH = 'high'
|
||||
ATTR_LOW = 'low'
|
||||
|
||||
CONF_ATTRIBUTION = "Stock market information provided by Alpha Vantage"
|
||||
ATTRIBUTION = "Stock market information provided by Alpha Vantage"
|
||||
|
||||
CONF_FOREIGN_EXCHANGE = 'foreign_exchange'
|
||||
CONF_FROM = 'from'
|
||||
CONF_SYMBOL = 'symbol'
|
||||
|
@ -143,7 +144,7 @@ class AlphaVantageSensor(Entity):
|
|||
"""Return the state attributes."""
|
||||
if self.values is not None:
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_CLOSE: self.values['4. close'],
|
||||
ATTR_HIGH: self.values['2. high'],
|
||||
ATTR_LOW: self.values['3. low'],
|
||||
|
@ -203,7 +204,7 @@ class AlphaVantageForeignExchange(Entity):
|
|||
"""Return the state attributes."""
|
||||
if self.values is not None:
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
CONF_FROM: self._from_currency,
|
||||
CONF_TO: self._to_currency,
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ REQUIREMENTS = ['blockchain==1.4.4']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by blockchain.info"
|
||||
ATTRIBUTION = "Data provided by blockchain.info"
|
||||
|
||||
DEFAULT_CURRENCY = 'USD'
|
||||
|
||||
|
@ -112,7 +112,7 @@ class BitcoinSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the sensor."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
}
|
||||
|
||||
def update(self):
|
||||
|
|
|
@ -18,8 +18,9 @@ REQUIREMENTS = ['python-blockchain-api==0.0.2']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
ATTRIBUTION = "Data provided by blockchain.info"
|
||||
|
||||
CONF_ADDRESSES = 'addresses'
|
||||
CONF_ATTRIBUTION = "Data provided by blockchain.info"
|
||||
|
||||
DEFAULT_NAME = 'Bitcoin Balance'
|
||||
|
||||
|
@ -82,7 +83,7 @@ class BlockchainSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the sensor."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
}
|
||||
|
||||
def update(self):
|
||||
|
|
|
@ -34,7 +34,8 @@ ATTR_STATION_ID = 'station_id'
|
|||
ATTR_STATION_NAME = 'station_name'
|
||||
ATTR_ZONE_ID = 'zone_id'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by the Australian Bureau of Meteorology"
|
||||
ATTRIBUTION = "Data provided by the Australian Bureau of Meteorology"
|
||||
|
||||
CONF_STATION = 'station'
|
||||
CONF_ZONE_ID = 'zone_id'
|
||||
CONF_WMO_ID = 'wmo_id'
|
||||
|
@ -158,7 +159,7 @@ class BOMCurrentSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the device."""
|
||||
attr = {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_LAST_UPDATE: self.bom_data.last_updated,
|
||||
ATTR_SENSOR_ID: self._condition,
|
||||
ATTR_STATION_ID: self.bom_data.latest_data['wmo'],
|
||||
|
|
|
@ -16,9 +16,10 @@ CURRENCY_ICONS = {
|
|||
'LTC': 'mdi:litecoin',
|
||||
'USD': 'mdi:currency-usd'
|
||||
}
|
||||
|
||||
DEFAULT_COIN_ICON = 'mdi:coin'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by coinbase.com"
|
||||
ATTRIBUTION = "Data provided by coinbase.com"
|
||||
|
||||
DATA_COINBASE = 'coinbase_cache'
|
||||
DEPENDENCIES = ['coinbase']
|
||||
|
@ -77,7 +78,7 @@ class AccountSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the sensor."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_NATIVE_BALANCE: "{} {}".format(
|
||||
self._native_balance, self._native_currency),
|
||||
}
|
||||
|
@ -127,7 +128,7 @@ class ExchangeRateSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the sensor."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION
|
||||
}
|
||||
|
||||
def update(self):
|
||||
|
|
|
@ -32,7 +32,8 @@ ATTR_RANK = 'rank'
|
|||
ATTR_SYMBOL = 'symbol'
|
||||
ATTR_TOTAL_SUPPLY = 'total_supply'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by CoinMarketCap"
|
||||
ATTRIBUTION = "Data provided by CoinMarketCap"
|
||||
|
||||
CONF_CURRENCY_ID = 'currency_id'
|
||||
CONF_DISPLAY_CURRENCY_DECIMALS = 'display_currency_decimals'
|
||||
|
||||
|
@ -115,7 +116,7 @@ class CoinMarketCapSensor(Entity):
|
|||
ATTR_VOLUME_24H:
|
||||
self._ticker.get('quotes').get(self.data.display_currency)
|
||||
.get('volume_24h'),
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_CIRCULATING_SUPPLY: self._ticker.get('circulating_supply'),
|
||||
ATTR_MARKET_CAP:
|
||||
self._ticker.get('quotes').get(self.data.display_currency)
|
||||
|
|
|
@ -25,7 +25,8 @@ _RESOURCE = 'https://hourlypricing.comed.com/api'
|
|||
|
||||
SCAN_INTERVAL = timedelta(minutes=5)
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by ComEd Hourly Pricing service"
|
||||
ATTRIBUTION = "Data provided by ComEd Hourly Pricing service"
|
||||
|
||||
CONF_CURRENT_HOUR_AVERAGE = 'current_hour_average'
|
||||
CONF_FIVE_MINUTE = 'five_minute'
|
||||
CONF_MONITORED_FEEDS = 'monitored_feeds'
|
||||
|
@ -97,8 +98,7 @@ class ComedHourlyPricingSensor(Entity):
|
|||
@property
|
||||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
attrs = {ATTR_ATTRIBUTION: CONF_ATTRIBUTION}
|
||||
return attrs
|
||||
return {ATTR_ATTRIBUTION: ATTRIBUTION}
|
||||
|
||||
async def async_update(self):
|
||||
"""Get the ComEd Hourly Pricing data from the web service."""
|
||||
|
|
|
@ -19,7 +19,7 @@ from homeassistant.helpers.entity import Entity
|
|||
_LOGGER = logging.getLogger(__name__)
|
||||
_RESOURCE = 'http://apilayer.net/api/live'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by currencylayer.com"
|
||||
ATTRIBUTION = "Data provided by currencylayer.com"
|
||||
|
||||
DEFAULT_BASE = 'USD'
|
||||
DEFAULT_NAME = 'CurrencyLayer Sensor'
|
||||
|
@ -91,7 +91,7 @@ class CurrencylayerSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the sensor."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
}
|
||||
|
||||
def update(self):
|
||||
|
|
|
@ -21,7 +21,7 @@ _LOGGER = logging.getLogger(__name__)
|
|||
|
||||
ATTR_IDENTITY = 'identity'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by Discogs"
|
||||
ATTRIBUTION = "Data provided by Discogs"
|
||||
|
||||
DEFAULT_NAME = 'Discogs'
|
||||
|
||||
|
@ -86,7 +86,7 @@ class DiscogsSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the sensor."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_IDENTITY: self._identity.name,
|
||||
}
|
||||
|
||||
|
|
|
@ -28,7 +28,8 @@ ATTR_DUE_IN = 'Due in'
|
|||
ATTR_DUE_AT = 'Due at'
|
||||
ATTR_NEXT_UP = 'Later Bus'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by data.dublinked.ie"
|
||||
ATTRIBUTION = "Data provided by data.dublinked.ie"
|
||||
|
||||
CONF_STOP_ID = 'stopid'
|
||||
CONF_ROUTE = 'route'
|
||||
|
||||
|
@ -101,7 +102,7 @@ class DublinPublicTransportSensor(Entity):
|
|||
ATTR_DUE_AT: self._times[0][ATTR_DUE_AT],
|
||||
ATTR_STOP_ID: self._stop,
|
||||
ATTR_ROUTE: self._times[0][ATTR_ROUTE],
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_NEXT_UP: next_up
|
||||
}
|
||||
|
||||
|
|
|
@ -26,7 +26,8 @@ ATTR_NEXT_UP_IN = 'next_due_in'
|
|||
|
||||
API_CLIENT_NAME = 'homeassistant-homeassistant'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by entur.org under NLOD."
|
||||
ATTRIBUTION = "Data provided by entur.org under NLOD"
|
||||
|
||||
CONF_STOP_IDS = 'stop_ids'
|
||||
CONF_EXPAND_PLATFORMS = 'expand_platforms'
|
||||
CONF_WHITELIST_LINES = 'line_whitelist'
|
||||
|
@ -140,7 +141,7 @@ class EnturPublicTransportSensor(Entity):
|
|||
self._state = None
|
||||
self._icon = ICONS[DEFAULT_ICON_KEY]
|
||||
self._attributes = {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_STOP_ID: self._stop,
|
||||
}
|
||||
|
||||
|
|
|
@ -15,10 +15,11 @@ from homeassistant.helpers.entity import Entity
|
|||
|
||||
REQUIREMENTS = ['python-etherscan-api==0.0.3']
|
||||
|
||||
ATTRIBUTION = "Data provided by etherscan.io"
|
||||
|
||||
CONF_ADDRESS = 'address'
|
||||
CONF_TOKEN = 'token'
|
||||
CONF_TOKEN_ADDRESS = 'token_address'
|
||||
CONF_ATTRIBUTION = "Data provided by etherscan.io"
|
||||
|
||||
SCAN_INTERVAL = timedelta(minutes=5)
|
||||
|
||||
|
@ -77,9 +78,7 @@ class EtherscanSensor(Entity):
|
|||
@property
|
||||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the sensor."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
}
|
||||
return {ATTR_ATTRIBUTION: ATTRIBUTION}
|
||||
|
||||
def update(self):
|
||||
"""Get the latest state of the sensor."""
|
||||
|
|
|
@ -35,7 +35,7 @@ ATTR_LAST_SAVED_AT = 'last_saved_at'
|
|||
|
||||
CONF_MONITORED_RESOURCES = 'monitored_resources'
|
||||
CONF_CLOCK_FORMAT = 'clock_format'
|
||||
CONF_ATTRIBUTION = 'Data provided by Fitbit.com'
|
||||
ATTRIBUTION = 'Data provided by Fitbit.com'
|
||||
|
||||
DEPENDENCIES = ['http']
|
||||
|
||||
|
@ -423,8 +423,8 @@ class FitbitSensor(Entity):
|
|||
"""Icon to use in the frontend, if any."""
|
||||
if self.resource_type == 'devices/battery' and self.extra:
|
||||
battery_level = BATTERY_LEVELS[self.extra.get('battery')]
|
||||
return icon_for_battery_level(battery_level=battery_level,
|
||||
charging=None)
|
||||
return icon_for_battery_level(
|
||||
battery_level=battery_level, charging=None)
|
||||
return 'mdi:{}'.format(FITBIT_RESOURCES_LIST[self.resource_type][2])
|
||||
|
||||
@property
|
||||
|
@ -432,7 +432,7 @@ class FitbitSensor(Entity):
|
|||
"""Return the state attributes."""
|
||||
attrs = {}
|
||||
|
||||
attrs[ATTR_ATTRIBUTION] = CONF_ATTRIBUTION
|
||||
attrs[ATTR_ATTRIBUTION] = ATTRIBUTION
|
||||
|
||||
if self.extra:
|
||||
attrs['model'] = self.extra.get('deviceVersion')
|
||||
|
|
|
@ -20,8 +20,8 @@ _LOGGER = logging.getLogger(__name__)
|
|||
|
||||
ATTR_EXCHANGE_RATE = 'Exchange rate'
|
||||
ATTR_TARGET = 'Target currency'
|
||||
ATTRIBUTION = "Data provided by the European Central Bank (ECB)"
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by the European Central Bank (ECB)"
|
||||
CONF_TARGET = 'target'
|
||||
|
||||
DEFAULT_BASE = 'USD'
|
||||
|
@ -86,7 +86,7 @@ class ExchangeRateSensor(Entity):
|
|||
"""Return the state attributes."""
|
||||
if self.data.rate is not None:
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_EXCHANGE_RATE: self.data.rate['rates'][self._target],
|
||||
ATTR_TARGET: self._target,
|
||||
}
|
||||
|
|
|
@ -28,8 +28,8 @@ ATTR_BUILD_FINISHED = 'build_finished'
|
|||
ATTR_BUILD_ID = 'build id'
|
||||
ATTR_BUILD_STARTED = 'build_started'
|
||||
ATTR_BUILD_STATUS = 'build_status'
|
||||
ATTRIBUTION = "Information provided by https://gitlab.com/"
|
||||
|
||||
CONF_ATTRIBUTION = "Information provided by https://gitlab.com/"
|
||||
CONF_GITLAB_ID = 'gitlab_id'
|
||||
|
||||
DEFAULT_NAME = 'GitLab CI Status'
|
||||
|
@ -101,7 +101,7 @@ class GitLabSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_BUILD_STATUS: self._state,
|
||||
ATTR_BUILD_STARTED: self._started_at,
|
||||
ATTR_BUILD_FINISHED: self._finished_at,
|
||||
|
|
|
@ -12,7 +12,7 @@ import requests
|
|||
import voluptuous as vol
|
||||
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import CONF_EMAIL
|
||||
from homeassistant.const import CONF_EMAIL, ATTR_ATTRIBUTION
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.helpers.event import track_point_in_time
|
||||
|
@ -21,6 +21,8 @@ import homeassistant.util.dt as dt_util
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
ATTRIBUTION = "Data provided by Have I Been Pwned (HIBP)"
|
||||
|
||||
DATE_STR_FORMAT = "%Y-%m-%d %H:%M:%S"
|
||||
|
||||
HA_USER_AGENT = "Home Assistant HaveIBeenPwned Sensor Component"
|
||||
|
@ -75,7 +77,7 @@ class HaveIBeenPwnedSensor(Entity):
|
|||
@property
|
||||
def device_state_attributes(self):
|
||||
"""Return the attributes of the sensor."""
|
||||
val = {}
|
||||
val = {ATTR_ATTRIBUTION: ATTRIBUTION}
|
||||
if self._email not in self._data.data:
|
||||
return val
|
||||
|
||||
|
|
|
@ -25,7 +25,8 @@ ATTR_REMOTE_HOST = 'Remote Server'
|
|||
ATTR_REMOTE_PORT = 'Remote Port'
|
||||
ATTR_VERSION = 'Version'
|
||||
|
||||
CONF_ATTRIBUTION = 'Data retrieved using Iperf3'
|
||||
ATTRIBUTION = 'Data retrieved using Iperf3'
|
||||
|
||||
CONF_DURATION = 'duration'
|
||||
CONF_PARALLEL = 'parallel'
|
||||
|
||||
|
@ -106,11 +107,10 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
|
|||
class Iperf3Sensor(Entity):
|
||||
"""A Iperf3 sensor implementation."""
|
||||
|
||||
def __init__(self, server, port, duration, streams,
|
||||
protocol, sensor_type):
|
||||
def __init__(self, server, port, duration, streams, protocol, sensor_type):
|
||||
"""Initialize the sensor."""
|
||||
self._attrs = {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_PROTOCOL: protocol,
|
||||
}
|
||||
self._name = \
|
||||
|
@ -144,7 +144,7 @@ class Iperf3Sensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
if self.result is not None:
|
||||
self._attrs[ATTR_ATTRIBUTION] = CONF_ATTRIBUTION
|
||||
self._attrs[ATTR_ATTRIBUTION] = ATTRIBUTION
|
||||
self._attrs[ATTR_REMOTE_HOST] = self.result.remote_host
|
||||
self._attrs[ATTR_REMOTE_PORT] = self.result.remote_port
|
||||
self._attrs[ATTR_VERSION] = self.result.version
|
||||
|
|
|
@ -1,9 +1,4 @@
|
|||
"""
|
||||
Support for Irish Rail RTPI information.
|
||||
|
||||
For more details about this platform, please refer to the documentation at
|
||||
https://home-assistant.io/components/sensor.irish_rail_transport/
|
||||
"""
|
||||
"""Support for Irish Rail RTPI information."""
|
||||
import logging
|
||||
from datetime import timedelta
|
||||
|
||||
|
@ -11,7 +6,7 @@ import voluptuous as vol
|
|||
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import CONF_NAME
|
||||
from homeassistant.const import CONF_NAME, ATTR_ATTRIBUTION
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
||||
REQUIREMENTS = ['pyirishrail==0.0.2']
|
||||
|
@ -28,6 +23,7 @@ ATTR_DUE_AT = "Due at"
|
|||
ATTR_EXPECT_AT = "Expected at"
|
||||
ATTR_NEXT_UP = "Later Train"
|
||||
ATTR_TRAIN_TYPE = "Train type"
|
||||
ATTRIBUTION = "Data provided by Irish Rail"
|
||||
|
||||
CONF_STATION = 'station'
|
||||
CONF_DESTINATION = 'destination'
|
||||
|
@ -100,6 +96,7 @@ class IrishRailTransportSensor(Entity):
|
|||
next_up += self._times[1][ATTR_DUE_IN]
|
||||
|
||||
return {
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_STATION: self._station,
|
||||
ATTR_ORIGIN: self._times[0][ATTR_ORIGIN],
|
||||
ATTR_DESTINATION: self._times[0][ATTR_DESTINATION],
|
||||
|
@ -109,7 +106,7 @@ class IrishRailTransportSensor(Entity):
|
|||
ATTR_DIRECTION: self._times[0][ATTR_DIRECTION],
|
||||
ATTR_STOPS_AT: self._times[0][ATTR_STOPS_AT],
|
||||
ATTR_NEXT_UP: next_up,
|
||||
ATTR_TRAIN_TYPE: self._times[0][ATTR_TRAIN_TYPE]
|
||||
ATTR_TRAIN_TYPE: self._times[0][ATTR_TRAIN_TYPE],
|
||||
}
|
||||
|
||||
@property
|
||||
|
@ -146,14 +143,14 @@ class IrishRailTransportData:
|
|||
|
||||
def update(self):
|
||||
"""Get the latest data from irishrail."""
|
||||
trains = self._ir_api.get_station_by_name(self.station,
|
||||
direction=self.direction,
|
||||
destination=self.destination,
|
||||
stops_at=self.stops_at)
|
||||
trains = self._ir_api.get_station_by_name(
|
||||
self.station, direction=self.direction,
|
||||
destination=self.destination, stops_at=self.stops_at)
|
||||
stops_at = self.stops_at if self.stops_at else ''
|
||||
self.info = []
|
||||
for train in trains:
|
||||
train_data = {ATTR_STATION: self.station,
|
||||
train_data = {
|
||||
ATTR_STATION: self.station,
|
||||
ATTR_ORIGIN: train.get('origin'),
|
||||
ATTR_DESTINATION: train.get('destination'),
|
||||
ATTR_DUE_IN: train.get('due_in_mins'),
|
||||
|
@ -161,7 +158,8 @@ class IrishRailTransportData:
|
|||
ATTR_EXPECT_AT: train.get('expected_departure_time'),
|
||||
ATTR_DIRECTION: train.get('direction'),
|
||||
ATTR_STOPS_AT: stops_at,
|
||||
ATTR_TRAIN_TYPE: train.get('type')}
|
||||
ATTR_TRAIN_TYPE: train.get('type'),
|
||||
}
|
||||
self.info.append(train_data)
|
||||
|
||||
if not self.info:
|
||||
|
@ -180,4 +178,5 @@ class IrishRailTransportData:
|
|||
ATTR_EXPECT_AT: 'n/a',
|
||||
ATTR_DIRECTION: direction,
|
||||
ATTR_STOPS_AT: stops_at,
|
||||
ATTR_TRAIN_TYPE: ''}]
|
||||
ATTR_TRAIN_TYPE: '',
|
||||
}]
|
||||
|
|
|
@ -1,16 +1,11 @@
|
|||
"""
|
||||
Sensor for Last.fm account status.
|
||||
|
||||
For more details about this platform, please refer to the documentation at
|
||||
https://home-assistant.io/components/sensor.lastfm/
|
||||
"""
|
||||
"""Sensor for Last.fm account status."""
|
||||
import logging
|
||||
import re
|
||||
|
||||
import voluptuous as vol
|
||||
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import CONF_API_KEY
|
||||
from homeassistant.const import CONF_API_KEY, ATTR_ATTRIBUTION
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
||||
|
@ -21,6 +16,7 @@ _LOGGER = logging.getLogger(__name__)
|
|||
ATTR_LAST_PLAYED = 'last_played'
|
||||
ATTR_PLAY_COUNT = 'play_count'
|
||||
ATTR_TOP_PLAYED = 'top_played'
|
||||
ATTRIBUTION = "Data provided by Last.fm"
|
||||
|
||||
CONF_USERS = 'users'
|
||||
|
||||
|
@ -105,6 +101,7 @@ class LastfmSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_LAST_PLAYED: self._lastplayed,
|
||||
ATTR_PLAY_COUNT: self._playcount,
|
||||
ATTR_TOP_PLAYED: self._topplayed,
|
||||
|
|
|
@ -18,8 +18,11 @@ REQUIREMENTS = ['london-tube-status==0.2']
|
|||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
ATTRIBUTION = "Powered by TfL Open Data"
|
||||
|
||||
CONF_LINE = 'line'
|
||||
|
||||
SCAN_INTERVAL = timedelta(seconds=30)
|
||||
|
||||
TUBE_LINES = [
|
||||
'Bakerloo',
|
||||
'Central',
|
||||
|
@ -34,7 +37,8 @@ TUBE_LINES = [
|
|||
'Piccadilly',
|
||||
'TfL Rail',
|
||||
'Victoria',
|
||||
'Waterloo & City']
|
||||
'Waterloo & City',
|
||||
]
|
||||
|
||||
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
|
||||
vol.Required(CONF_LINE):
|
||||
|
|
|
@ -26,7 +26,7 @@ ATTR_SENSOR_ID = 'sensor_id'
|
|||
ATTR_SITE_ID = 'site_id'
|
||||
ATTR_SITE_NAME = 'site_name'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by the Met Office"
|
||||
ATTRIBUTION = "Data provided by the Met Office"
|
||||
|
||||
CONDITION_CLASSES = {
|
||||
'cloudy': ['7', '8'],
|
||||
|
@ -162,7 +162,7 @@ class MetOfficeCurrentSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the device."""
|
||||
attr = {}
|
||||
attr[ATTR_ATTRIBUTION] = CONF_ATTRIBUTION
|
||||
attr[ATTR_ATTRIBUTION] = ATTRIBUTION
|
||||
attr[ATTR_LAST_UPDATE] = self.data.data.date
|
||||
attr[ATTR_SENSOR_ID] = self._condition
|
||||
attr[ATTR_SITE_ID] = self.site.id
|
||||
|
|
|
@ -21,7 +21,8 @@ REQUIREMENTS = ['nsapi==2.7.4']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by NS"
|
||||
ATTRIBUTION = "Data provided by NS"
|
||||
|
||||
CONF_ROUTES = 'routes'
|
||||
CONF_FROM = 'from'
|
||||
CONF_TO = 'to'
|
||||
|
@ -155,7 +156,7 @@ class NSDepartureSensor(Entity):
|
|||
'transfers': self._trips[0].nr_transfers,
|
||||
'route': route,
|
||||
'remarks': [r.message for r in self._trips[0].trip_remarks],
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
}
|
||||
|
||||
@Throttle(MIN_TIME_BETWEEN_UPDATES)
|
||||
|
|
|
@ -28,7 +28,8 @@ CONF_FUEL_TYPES = 'fuel_types'
|
|||
CONF_ALLOWED_FUEL_TYPES = ["E10", "U91", "E85", "P95", "P98", "DL",
|
||||
"PDL", "B20", "LPG", "CNG", "EV"]
|
||||
CONF_DEFAULT_FUEL_TYPES = ["E10", "U91"]
|
||||
CONF_ATTRIBUTION = "Data provided by NSW Government FuelCheck"
|
||||
|
||||
ATTRIBUTION = "Data provided by NSW Government FuelCheck"
|
||||
|
||||
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
|
||||
vol.Required(CONF_STATION_ID): cv.positive_int,
|
||||
|
@ -161,7 +162,7 @@ class StationPriceSensor(Entity):
|
|||
return {
|
||||
ATTR_STATION_ID: self._station_data.station_id,
|
||||
ATTR_STATION_NAME: self._station_data.get_station_name(),
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION
|
||||
}
|
||||
|
||||
@property
|
||||
|
|
|
@ -20,7 +20,7 @@ from homeassistant.util import Throttle
|
|||
_LOGGER = logging.getLogger(__name__)
|
||||
_RESOURCE = 'https://openexchangerates.org/api/latest.json'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by openexchangerates.org"
|
||||
ATTRIBUTION = "Data provided by openexchangerates.org"
|
||||
|
||||
DEFAULT_BASE = 'USD'
|
||||
DEFAULT_NAME = 'Exchange Rate Sensor'
|
||||
|
@ -82,7 +82,7 @@ class OpenexchangeratesSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return other attributes of the sensor."""
|
||||
attr = self.rest.data
|
||||
attr[ATTR_ATTRIBUTION] = CONF_ATTRIBUTION
|
||||
attr[ATTR_ATTRIBUTION] = ATTRIBUTION
|
||||
|
||||
return attr
|
||||
|
||||
|
|
|
@ -21,7 +21,8 @@ REQUIREMENTS = ['pyowm==2.10.0']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by OpenWeatherMap"
|
||||
ATTRIBUTION = "Data provided by OpenWeatherMap"
|
||||
|
||||
CONF_FORECAST = 'forecast'
|
||||
CONF_LANGUAGE = 'language'
|
||||
|
||||
|
@ -121,7 +122,7 @@ class OpenWeatherMapSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
}
|
||||
|
||||
def update(self):
|
||||
|
|
|
@ -31,7 +31,8 @@ ATTR_DUE_IN = 'Due in'
|
|||
ATTR_DUE_AT = 'Due at'
|
||||
ATTR_NEXT_UP = 'Later departure'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by rejseplanen.dk"
|
||||
ATTRIBUTION = "Data provided by rejseplanen.dk"
|
||||
|
||||
CONF_STOP_ID = 'stop_id'
|
||||
CONF_ROUTE = 'route'
|
||||
CONF_DIRECTION = 'direction'
|
||||
|
@ -50,8 +51,8 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
|
|||
vol.Optional(CONF_DIRECTION, default=[]):
|
||||
vol.All(cv.ensure_list, [cv.string]),
|
||||
vol.Optional(CONF_DEPARTURE_TYPE, default=[]):
|
||||
vol.All(cv.ensure_list, [vol.In(list(['BUS', 'EXB', 'M',
|
||||
'S', 'REG']))])
|
||||
vol.All(cv.ensure_list,
|
||||
[vol.In(list(['BUS', 'EXB', 'M', 'S', 'REG']))])
|
||||
})
|
||||
|
||||
|
||||
|
@ -75,12 +76,8 @@ def setup_platform(hass, config, add_devices, discovery_info=None):
|
|||
departure_type = config[CONF_DEPARTURE_TYPE]
|
||||
|
||||
data = PublicTransportData(stop_id, route, direction, departure_type)
|
||||
add_devices([RejseplanenTransportSensor(data,
|
||||
stop_id,
|
||||
route,
|
||||
direction,
|
||||
name)],
|
||||
True)
|
||||
add_devices([RejseplanenTransportSensor(
|
||||
data, stop_id, route, direction, name)], True)
|
||||
|
||||
|
||||
class RejseplanenTransportSensor(Entity):
|
||||
|
@ -111,10 +108,8 @@ class RejseplanenTransportSensor(Entity):
|
|||
if self._times is not None:
|
||||
next_up = None
|
||||
if len(self._times) > 1:
|
||||
next_up = ('{} towards '
|
||||
'{} in '
|
||||
'{} from '
|
||||
'{}'.format(self._times[1][ATTR_ROUTE],
|
||||
next_up = ('{} towards {} in {} from {}'.format(
|
||||
self._times[1][ATTR_ROUTE],
|
||||
self._times[1][ATTR_DIRECTION],
|
||||
str(self._times[1][ATTR_DUE_IN]),
|
||||
self._times[1][ATTR_STOP_NAME]))
|
||||
|
@ -126,7 +121,7 @@ class RejseplanenTransportSensor(Entity):
|
|||
ATTR_DIRECTION: self._times[0][ATTR_DIRECTION],
|
||||
ATTR_STOP_NAME: self._times[0][ATTR_STOP_NAME],
|
||||
ATTR_STOP_ID: self._stop_id,
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_NEXT_UP: next_up
|
||||
}
|
||||
return {k: v for k, v in params.items() if v}
|
||||
|
|
|
@ -11,7 +11,7 @@ import voluptuous as vol
|
|||
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.components.ring import (
|
||||
CONF_ATTRIBUTION, DEFAULT_ENTITY_NAMESPACE, DATA_RING)
|
||||
ATTRIBUTION, DEFAULT_ENTITY_NAMESPACE, DATA_RING)
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
CONF_ENTITY_NAMESPACE, CONF_MONITORED_CONDITIONS,
|
||||
|
@ -122,7 +122,7 @@ class RingSensor(Entity):
|
|||
"""Return the state attributes."""
|
||||
attrs = {}
|
||||
|
||||
attrs[ATTR_ATTRIBUTION] = CONF_ATTRIBUTION
|
||||
attrs[ATTR_ATTRIBUTION] = ATTRIBUTION
|
||||
attrs['device_id'] = self._data.id
|
||||
attrs['firmware'] = self._data.firmware
|
||||
attrs['kind'] = self._data.kind
|
||||
|
|
|
@ -16,7 +16,7 @@ from homeassistant.helpers.entity import Entity
|
|||
REQUIREMENTS = ['python-ripple-api==0.0.3']
|
||||
|
||||
CONF_ADDRESS = 'address'
|
||||
CONF_ATTRIBUTION = "Data provided by ripple.com"
|
||||
ATTRIBUTION = "Data provided by ripple.com"
|
||||
|
||||
DEFAULT_NAME = 'Ripple Balance'
|
||||
|
||||
|
@ -65,7 +65,7 @@ class RippleSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the sensor."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
}
|
||||
|
||||
def update(self):
|
||||
|
|
|
@ -19,9 +19,10 @@ REQUIREMENTS = ['python-sochain-api==0.0.2']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
ATTRIBUTION = "Data provided by chain.so"
|
||||
|
||||
CONF_ADDRESS = 'address'
|
||||
CONF_NETWORK = 'network'
|
||||
CONF_ATTRIBUTION = "Data provided by chain.so"
|
||||
|
||||
DEFAULT_NAME = 'Crypto Balance'
|
||||
|
||||
|
@ -34,8 +35,8 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
|
|||
})
|
||||
|
||||
|
||||
async def async_setup_platform(hass, config, async_add_entities,
|
||||
discovery_info=None):
|
||||
async def async_setup_platform(
|
||||
hass, config, async_add_entities, discovery_info=None):
|
||||
"""Set up the sochain sensors."""
|
||||
from pysochain import ChainSo
|
||||
address = config.get(CONF_ADDRESS)
|
||||
|
@ -77,7 +78,7 @@ class SochainSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes of the sensor."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
}
|
||||
|
||||
async def async_update(self):
|
||||
|
|
|
@ -30,7 +30,8 @@ ATTR_TARGET = 'destination'
|
|||
ATTR_TRAIN_NUMBER = 'train_number'
|
||||
ATTR_TRANSFERS = 'transfers'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by transport.opendata.ch"
|
||||
ATTRIBUTION = "Data provided by transport.opendata.ch"
|
||||
|
||||
CONF_DESTINATION = 'to'
|
||||
CONF_START = 'from'
|
||||
|
||||
|
@ -113,7 +114,7 @@ class SwissPublicTransportSensor(Entity):
|
|||
ATTR_START: self._opendata.from_name,
|
||||
ATTR_TARGET: self._opendata.to_name,
|
||||
ATTR_REMAINING_TIME: '{}'.format(self._remaining_time),
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
}
|
||||
return attr
|
||||
|
||||
|
|
|
@ -1,9 +1,4 @@
|
|||
"""
|
||||
Support for Synology NAS Sensors.
|
||||
|
||||
For more details about this platform, please refer to the documentation at
|
||||
https://home-assistant.io/components/sensor.synologydsm/
|
||||
"""
|
||||
"""Support for Synology NAS Sensors."""
|
||||
import logging
|
||||
from datetime import timedelta
|
||||
|
||||
|
@ -22,7 +17,8 @@ REQUIREMENTS = ['python-synology==0.2.0']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = 'Data provided by Synology'
|
||||
ATTRIBUTION = 'Data provided by Synology'
|
||||
|
||||
CONF_VOLUMES = 'volumes'
|
||||
DEFAULT_NAME = 'Synology DSM'
|
||||
DEFAULT_PORT = 5001
|
||||
|
@ -194,7 +190,7 @@ class SynoNasSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -24,8 +24,7 @@ _LOGGER = logging.getLogger(__name__)
|
|||
|
||||
URL = 'http://www.sytadin.fr/sys/barometres_de_la_circulation.jsp.html'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by Direction des routes Île-de-France" \
|
||||
"(DiRIF)"
|
||||
ATTRIBUTION = "Data provided by Direction des routes Île-de-France (DiRIF)"
|
||||
|
||||
DEFAULT_NAME = 'Sytadin'
|
||||
REGEX = r'(\d*\.\d+|\d+)'
|
||||
|
@ -95,7 +94,7 @@ class SytadinSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
}
|
||||
|
||||
def update(self):
|
||||
|
|
|
@ -24,12 +24,13 @@ REQUIREMENTS = ['pytrafikverket==0.1.5.8']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
SCAN_INTERVAL = timedelta(seconds=300)
|
||||
MIN_TIME_BETWEEN_UPDATES = timedelta(minutes=10)
|
||||
ATTRIBUTION = "Data provided by Trafikverket API"
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by Trafikverket API"
|
||||
CONF_STATION = 'station'
|
||||
|
||||
MIN_TIME_BETWEEN_UPDATES = timedelta(minutes=10)
|
||||
|
||||
SCAN_INTERVAL = timedelta(seconds=300)
|
||||
|
||||
SENSOR_TYPES = {
|
||||
'air_temp': ['Air temperature', '°C', 'air_temp'],
|
||||
|
@ -50,8 +51,8 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
|
|||
})
|
||||
|
||||
|
||||
async def async_setup_platform(hass, config, async_add_entities,
|
||||
discovery_info=None):
|
||||
async def async_setup_platform(
|
||||
hass, config, async_add_entities, discovery_info=None):
|
||||
"""Set up the Trafikverket sensor platform."""
|
||||
from pytrafikverket.trafikverket_weather import TrafikverketWeather
|
||||
|
||||
|
@ -85,7 +86,7 @@ class TrafikverketWeatherStation(Entity):
|
|||
self._station = sensor_station
|
||||
self._weather_api = weather_api
|
||||
self._attributes = {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
}
|
||||
self._weather = None
|
||||
|
||||
|
|
|
@ -1,9 +1,4 @@
|
|||
"""
|
||||
Transport NSW (AU) sensor to query next leave event for a specified stop.
|
||||
|
||||
For more details about this platform, please refer to the documentation at
|
||||
https://home-assistant.io/components/sensor.transport_nsw/
|
||||
"""
|
||||
"""Support for Transport NSW (AU) to query next leave event."""
|
||||
from datetime import timedelta
|
||||
import logging
|
||||
|
||||
|
@ -26,7 +21,8 @@ ATTR_REAL_TIME = 'real_time'
|
|||
ATTR_DESTINATION = 'destination'
|
||||
ATTR_MODE = 'mode'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by Transport NSW"
|
||||
ATTRIBUTION = "Data provided by Transport NSW"
|
||||
|
||||
CONF_STOP_ID = 'stop_id'
|
||||
CONF_ROUTE = 'route'
|
||||
CONF_DESTINATION = 'destination'
|
||||
|
@ -40,7 +36,7 @@ ICONS = {
|
|||
'Ferry': 'mdi:ferry',
|
||||
'Schoolbus': 'mdi:bus',
|
||||
'n/a': 'mdi:clock',
|
||||
None: 'mdi:clock'
|
||||
None: 'mdi:clock',
|
||||
}
|
||||
|
||||
SCAN_INTERVAL = timedelta(seconds=60)
|
||||
|
@ -99,7 +95,7 @@ class TransportNSWSensor(Entity):
|
|||
ATTR_REAL_TIME: self._times[ATTR_REAL_TIME],
|
||||
ATTR_DESTINATION: self._times[ATTR_DESTINATION],
|
||||
ATTR_MODE: self._times[ATTR_MODE],
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION
|
||||
}
|
||||
|
||||
@property
|
||||
|
|
|
@ -20,7 +20,8 @@ REQUIREMENTS = ['TravisPy==0.3.5']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Information provided by https://travis-ci.org/"
|
||||
ATTRIBUTION = "Information provided by https://travis-ci.org/"
|
||||
|
||||
CONF_BRANCH = 'branch'
|
||||
CONF_REPOSITORY = 'repository'
|
||||
|
||||
|
@ -130,7 +131,7 @@ class TravisCISensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
attrs = {}
|
||||
attrs[ATTR_ATTRIBUTION] = CONF_ATTRIBUTION
|
||||
attrs[ATTR_ATTRIBUTION] = ATTRIBUTION
|
||||
|
||||
if self._build and self._state is not None:
|
||||
if self._user and self._sensor_type == 'state':
|
||||
|
|
|
@ -24,8 +24,8 @@ ATTR_ACCESSIBILITY = 'accessibility'
|
|||
ATTR_DIRECTION = 'direction'
|
||||
ATTR_LINE = 'line'
|
||||
ATTR_TRACK = 'track'
|
||||
ATTRIBUTION = "Data provided by Västtrafik"
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by Västtrafik"
|
||||
CONF_DELAY = 'delay'
|
||||
CONF_DEPARTURES = 'departures'
|
||||
CONF_FROM = 'from'
|
||||
|
@ -137,7 +137,7 @@ class VasttrafikDepartureSensor(Entity):
|
|||
|
||||
params = {
|
||||
ATTR_ACCESSIBILITY: departure.get('accessibility'),
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
ATTR_DIRECTION: departure.get('direction'),
|
||||
ATTR_LINE: departure.get('sname'),
|
||||
ATTR_TRACK: departure.get('track'),
|
||||
|
|
|
@ -18,7 +18,8 @@ from homeassistant.helpers.entity import Entity
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Powered by ViaggiaTreno Data"
|
||||
ATTRIBUTION = "Powered by ViaggiaTreno Data"
|
||||
|
||||
VIAGGIATRENO_ENDPOINT = ("http://www.viaggiatreno.it/viaggiatrenonew/"
|
||||
"resteasy/viaggiatreno/andamentoTreno/"
|
||||
"{station_id}/{train_id}")
|
||||
|
@ -121,7 +122,7 @@ class ViaggiaTrenoSensor(Entity):
|
|||
@property
|
||||
def device_state_attributes(self):
|
||||
"""Return extra attributes."""
|
||||
self._attributes[ATTR_ATTRIBUTION] = CONF_ATTRIBUTION
|
||||
self._attributes[ATTR_ATTRIBUTION] = ATTRIBUTION
|
||||
return self._attributes
|
||||
|
||||
@staticmethod
|
||||
|
|
|
@ -26,7 +26,8 @@ ATTR_DURATION = 'duration'
|
|||
ATTR_DISTANCE = 'distance'
|
||||
ATTR_ROUTE = 'route'
|
||||
|
||||
CONF_ATTRIBUTION = "Powered by Waze"
|
||||
ATTRIBUTION = "Powered by Waze"
|
||||
|
||||
CONF_DESTINATION = 'destination'
|
||||
CONF_ORIGIN = 'origin'
|
||||
CONF_INCL_FILTER = 'incl_filter'
|
||||
|
@ -138,7 +139,7 @@ class WazeTravelTime(Entity):
|
|||
if self._state is None:
|
||||
return None
|
||||
|
||||
res = {ATTR_ATTRIBUTION: CONF_ATTRIBUTION}
|
||||
res = {ATTR_ATTRIBUTION: ATTRIBUTION}
|
||||
if 'duration' in self._state:
|
||||
res[ATTR_DURATION] = self._state['duration']
|
||||
if 'distance' in self._state:
|
||||
|
|
|
@ -19,7 +19,7 @@ from homeassistant.helpers.entity import Entity
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by WorldTides"
|
||||
ATTRIBUTION = "Data provided by WorldTides"
|
||||
|
||||
DEFAULT_NAME = 'WorldTidesInfo'
|
||||
|
||||
|
@ -72,7 +72,7 @@ class WorldTidesInfoSensor(Entity):
|
|||
@property
|
||||
def device_state_attributes(self):
|
||||
"""Return the state attributes of this device."""
|
||||
attr = {ATTR_ATTRIBUTION: CONF_ATTRIBUTION}
|
||||
attr = {ATTR_ATTRIBUTION: ATTRIBUTION}
|
||||
|
||||
if 'High' in str(self.data['extremes'][0]['type']):
|
||||
attr['high_tide_time_utc'] = self.data['extremes'][0]['date']
|
||||
|
|
|
@ -26,7 +26,7 @@ ATTR_DESCRIPTION = 'Description'
|
|||
ATTR_TIME_UPDATED = 'TimeUpdated'
|
||||
ATTR_TRAVEL_TIME_ID = 'TravelTimeID'
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by WSDOT"
|
||||
ATTRIBUTION = "Data provided by WSDOT"
|
||||
|
||||
CONF_TRAVEL_TIMES = 'travel_time'
|
||||
|
||||
|
@ -115,7 +115,7 @@ class WashingtonStateTravelTimeSensor(WashingtonStateTransportSensor):
|
|||
def device_state_attributes(self):
|
||||
"""Return other details about the sensor state."""
|
||||
if self._data is not None:
|
||||
attrs = {ATTR_ATTRIBUTION: CONF_ATTRIBUTION}
|
||||
attrs = {ATTR_ATTRIBUTION: ATTRIBUTION}
|
||||
for key in [ATTR_AVG_TIME, ATTR_NAME, ATTR_DESCRIPTION,
|
||||
ATTR_TRAVEL_TIME_ID]:
|
||||
attrs[key] = self._data.get(key)
|
||||
|
|
|
@ -29,7 +29,8 @@ import homeassistant.helpers.config_validation as cv
|
|||
_RESOURCE = 'http://api.wunderground.com/api/{}/{}/{}/q/'
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by the WUnderground weather service"
|
||||
ATTRIBUTION = "Data provided by the WUnderground weather service"
|
||||
|
||||
CONF_PWS_ID = 'pws_id'
|
||||
CONF_LANG = 'lang'
|
||||
|
||||
|
@ -679,9 +680,7 @@ class WUndergroundSensor(Entity):
|
|||
self.rest = rest
|
||||
self._condition = condition
|
||||
self._state = None
|
||||
self._attributes = {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
}
|
||||
self._attributes = {ATTR_ATTRIBUTION: ATTRIBUTION}
|
||||
self._icon = None
|
||||
self._entity_picture = None
|
||||
self._unit_of_measurement = self._cfg_expand("unit_of_measurement")
|
||||
|
|
|
@ -29,8 +29,8 @@ REQUIREMENTS = ['xmltodict==0.11.0']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Weather forecast from met.no, delivered " \
|
||||
"by the Norwegian Meteorological Institute."
|
||||
ATTRIBUTION = "Weather forecast from met.no, delivered by the Norwegian " \
|
||||
"Meteorological Institute."
|
||||
# https://api.met.no/license_data.html
|
||||
|
||||
SENSOR_TYPES = {
|
||||
|
@ -134,7 +134,7 @@ class YrSensor(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
}
|
||||
|
||||
@property
|
||||
|
|
|
@ -21,7 +21,8 @@ REQUIREMENTS = ['yahooweather==0.10']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Weather details provided by Yahoo! Inc."
|
||||
ATTRIBUTION = "Weather details provided by Yahoo! Inc."
|
||||
|
||||
CONF_FORECAST = 'forecast'
|
||||
CONF_WOEID = 'woeid'
|
||||
|
||||
|
@ -131,7 +132,7 @@ class YahooWeatherSensor(Entity):
|
|||
@property
|
||||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
attrs = {ATTR_ATTRIBUTION: CONF_ATTRIBUTION}
|
||||
attrs = {ATTR_ATTRIBUTION: ATTRIBUTION}
|
||||
|
||||
if self._code is not None and "weather" in self._type:
|
||||
attrs['condition_code'] = self._code
|
||||
|
|
|
@ -22,8 +22,9 @@ REQUIREMENTS = ['xmltodict==0.11.0']
|
|||
_LOGGER = logging.getLogger(__name__)
|
||||
_RESOURCE = 'http://www.zillow.com/webservice/GetZestimate.htm'
|
||||
|
||||
ATTRIBUTION = "Data provided by Zillow.com"
|
||||
|
||||
CONF_ZPID = 'zpid'
|
||||
CONF_ATTRIBUTION = "Data provided by Zillow.com"
|
||||
|
||||
DEFAULT_NAME = 'Zestimate'
|
||||
NAME = 'zestimate'
|
||||
|
@ -93,7 +94,7 @@ class ZestimateDataSensor(Entity):
|
|||
if self.data is not None:
|
||||
attributes = self.data
|
||||
attributes['address'] = self.address
|
||||
attributes[ATTR_ATTRIBUTION] = CONF_ATTRIBUTION
|
||||
attributes[ATTR_ATTRIBUTION] = ATTRIBUTION
|
||||
return attributes
|
||||
|
||||
@property
|
||||
|
|
|
@ -13,7 +13,7 @@ REQUIREMENTS = ['skybellpy==0.3.0']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Data provided by Skybell.com"
|
||||
ATTRIBUTION = "Data provided by Skybell.com"
|
||||
|
||||
NOTIFICATION_ID = 'skybell_notification'
|
||||
NOTIFICATION_TITLE = 'Skybell Sensor Setup'
|
||||
|
@ -76,7 +76,7 @@ class SkybellDevice(Entity):
|
|||
def device_state_attributes(self):
|
||||
"""Return the state attributes."""
|
||||
return {
|
||||
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
|
||||
ATTR_ATTRIBUTION: ATTRIBUTION,
|
||||
'device_id': self._device.device_id,
|
||||
'status': self._device.status,
|
||||
'location': self._device.location,
|
||||
|
|
|
@ -17,8 +17,8 @@ REQUIREMENTS = ['pyMetno==0.4.5']
|
|||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
|
||||
CONF_ATTRIBUTION = "Weather forecast from met.no, delivered " \
|
||||
"by the Norwegian Meteorological Institute."
|
||||
ATTRIBUTION = "Weather forecast from met.no, delivered by the Norwegian " \
|
||||
"Meteorological Institute."
|
||||
DEFAULT_NAME = "Met.no"
|
||||
|
||||
URL = 'https://aa015h6buqvih86i1.api.met.no/weatherapi/locationforecast/1.9/'
|
||||
|
@ -50,8 +50,8 @@ async def async_setup_platform(hass, config, async_add_entities,
|
|||
'msl': str(elevation),
|
||||
}
|
||||
|
||||
async_add_entities([MetWeather(name, coordinates,
|
||||
async_get_clientsession(hass))])
|
||||
async_add_entities([MetWeather(
|
||||
name, coordinates, async_get_clientsession(hass))])
|
||||
|
||||
|
||||
class MetWeather(WeatherEntity):
|
||||
|
@ -61,18 +61,16 @@ class MetWeather(WeatherEntity):
|
|||
"""Initialise the platform with a data instance and site."""
|
||||
import metno
|
||||
self._name = name
|
||||
self._weather_data = metno.MetWeatherData(coordinates,
|
||||
clientsession,
|
||||
URL
|
||||
)
|
||||
self._weather_data = metno.MetWeatherData(
|
||||
coordinates, clientsession, URL)
|
||||
self._current_weather_data = {}
|
||||
self._forecast_data = None
|
||||
|
||||
async def async_added_to_hass(self):
|
||||
"""Start fetching data."""
|
||||
await self._fetch_data()
|
||||
async_track_utc_time_change(self.hass, self._update,
|
||||
minute=31, second=0)
|
||||
async_track_utc_time_change(
|
||||
self.hass, self._update, minute=31, second=0)
|
||||
|
||||
async def _fetch_data(self, *_):
|
||||
"""Get the latest data from met.no."""
|
||||
|
@ -141,7 +139,7 @@ class MetWeather(WeatherEntity):
|
|||
@property
|
||||
def attribution(self):
|
||||
"""Return the attribution."""
|
||||
return CONF_ATTRIBUTION
|
||||
return ATTRIBUTION
|
||||
|
||||
@property
|
||||
def forecast(self):
|
||||
|
|
|
@ -4,7 +4,7 @@ import logging
|
|||
import voluptuous as vol
|
||||
|
||||
from homeassistant.components.sensor.metoffice import (
|
||||
CONDITION_CLASSES, CONF_ATTRIBUTION, MetOfficeCurrentData)
|
||||
CONDITION_CLASSES, ATTRIBUTION, MetOfficeCurrentData)
|
||||
from homeassistant.components.weather import PLATFORM_SCHEMA, WeatherEntity
|
||||
from homeassistant.const import (
|
||||
CONF_API_KEY, CONF_LATITUDE, CONF_LONGITUDE, CONF_NAME, TEMP_CELSIUS)
|
||||
|
@ -118,4 +118,4 @@ class MetOfficeWeather(WeatherEntity):
|
|||
@property
|
||||
def attribution(self):
|
||||
"""Return the attribution."""
|
||||
return CONF_ATTRIBUTION
|
||||
return ATTRIBUTION
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue