Skip to content

Commit

Permalink
Add Transmission component 'scan_interval' option (#20575)
Browse files Browse the repository at this point in the history
* Transmission component fix 'scan_interval' option

* Fix dict[key] comments

* Fix latest mess
  • Loading branch information
jonudewux authored and balloob committed Feb 10, 2019
1 parent b5e4066 commit 21583d2
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 8 deletions.
6 changes: 5 additions & 1 deletion homeassistant/components/sensor/transmission.py
Expand Up @@ -4,10 +4,12 @@
For more details about this platform, please refer to the documentation at
https://home-assistant.io/components/sensor.transmission/
"""
from datetime import timedelta

import logging

from homeassistant.components.transmission import (
DATA_TRANSMISSION, SENSOR_TYPES, SCAN_INTERVAL)
DATA_TRANSMISSION, SENSOR_TYPES)
from homeassistant.const import STATE_IDLE
from homeassistant.helpers.entity import Entity
from homeassistant.util import Throttle
Expand All @@ -18,6 +20,8 @@

DEFAULT_NAME = 'Transmission'

SCAN_INTERVAL = timedelta(seconds=120)


def setup_platform(hass, config, add_entities, discovery_info=None):
"""Set up the Transmission sensors."""
Expand Down
6 changes: 5 additions & 1 deletion homeassistant/components/switch/transmission.py
Expand Up @@ -4,10 +4,12 @@
For more details about this platform, please refer to the documentation at
https://home-assistant.io/components/switch.transmission/
"""
from datetime import timedelta

import logging

from homeassistant.components.transmission import (
DATA_TRANSMISSION, SCAN_INTERVAL)
DATA_TRANSMISSION)
from homeassistant.const import (
STATE_OFF, STATE_ON)
from homeassistant.helpers.entity import ToggleEntity
Expand All @@ -19,6 +21,8 @@

DEFAULT_NAME = 'Transmission Turtle Mode'

SCAN_INTERVAL = timedelta(seconds=120)


def setup_platform(hass, config, add_entities, discovery_info=None):
"""Set up the Transmission switch."""
Expand Down
16 changes: 10 additions & 6 deletions homeassistant/components/transmission.py
Expand Up @@ -15,7 +15,8 @@
CONF_NAME,
CONF_PASSWORD,
CONF_PORT,
CONF_USERNAME
CONF_USERNAME,
CONF_SCAN_INTERVAL
)
from homeassistant.helpers import discovery, config_validation as cv
from homeassistant.helpers.event import track_time_interval
Expand All @@ -42,6 +43,8 @@
'started_torrents': ['Started Torrents', None],
}

DEFAULT_SCAN_INTERVAL = timedelta(seconds=120)

CONFIG_SCHEMA = vol.Schema({
DOMAIN: vol.Schema({
vol.Required(CONF_HOST): cv.string,
Expand All @@ -50,20 +53,21 @@
vol.Optional(CONF_PORT, default=DEFAULT_PORT): cv.port,
vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string,
vol.Optional(TURTLE_MODE, default=False): cv.boolean,
vol.Optional(CONF_SCAN_INTERVAL, default=DEFAULT_SCAN_INTERVAL):
cv.time_period,
vol.Optional(CONF_MONITORED_CONDITIONS, default=['current_status']):
vol.All(cv.ensure_list, [vol.In(SENSOR_TYPES)]),
})
}, extra=vol.ALLOW_EXTRA)

SCAN_INTERVAL = timedelta(minutes=2)


def setup(hass, config):
"""Set up the Transmission Component."""
host = config[DOMAIN][CONF_HOST]
username = config[DOMAIN][CONF_USERNAME]
password = config[DOMAIN][CONF_PASSWORD]
username = config[DOMAIN].get(CONF_USERNAME)
password = config[DOMAIN].get(CONF_PASSWORD)
port = config[DOMAIN][CONF_PORT]
scan_interval = config[DOMAIN][CONF_SCAN_INTERVAL]

import transmissionrpc
from transmissionrpc.error import TransmissionError
Expand All @@ -85,7 +89,7 @@ def refresh(event_time):
"""Get the latest data from Transmission."""
tm_data.update()

track_time_interval(hass, refresh, SCAN_INTERVAL)
track_time_interval(hass, refresh, scan_interval)

sensorconfig = {
'sensors': config[DOMAIN][CONF_MONITORED_CONDITIONS],
Expand Down

0 comments on commit 21583d2

Please sign in to comment.