diff --git a/homeassistant/components/sensor/sma.py b/homeassistant/components/sensor/sma.py index 2f3a29efbc0..3451789424b 100644 --- a/homeassistant/components/sensor/sma.py +++ b/homeassistant/components/sensor/sma.py @@ -12,13 +12,14 @@ import voluptuous as vol from homeassistant.components.sensor import PLATFORM_SCHEMA from homeassistant.const import ( - EVENT_HOMEASSISTANT_STOP, CONF_HOST, CONF_PASSWORD, CONF_SCAN_INTERVAL) + EVENT_HOMEASSISTANT_STOP, CONF_HOST, CONF_PASSWORD, CONF_SCAN_INTERVAL, + CONF_SSL) from homeassistant.helpers.event import async_track_time_interval from homeassistant.helpers.aiohttp_client import async_get_clientsession import homeassistant.helpers.config_validation as cv from homeassistant.helpers.entity import Entity -REQUIREMENTS = ['pysma==0.1.3'] +REQUIREMENTS = ['pysma==0.2'] _LOGGER = logging.getLogger(__name__) @@ -49,6 +50,7 @@ def _check_sensor_schema(conf): PLATFORM_SCHEMA = vol.All(PLATFORM_SCHEMA.extend({ vol.Required(CONF_HOST): str, + vol.Optional(CONF_SSL, default=False): cv.boolean, vol.Required(CONF_PASSWORD): str, vol.Optional(CONF_GROUP, default=GROUPS[0]): vol.In(GROUPS), vol.Required(CONF_SENSORS): vol.Schema({cv.slug: cv.ensure_list}), @@ -97,8 +99,11 @@ def async_setup_platform(hass, config, async_add_devices, discovery_info=None): session = async_get_clientsession(hass) grp = {GROUP_INSTALLER: pysma.GROUP_INSTALLER, GROUP_USER: pysma.GROUP_USER}[config[CONF_GROUP]] - sma = pysma.SMA(session, config[CONF_HOST], config[CONF_PASSWORD], - group=grp) + + url = "http{}://{}".format( + "s" if config[CONF_SSL] else "", config[CONF_HOST]) + + sma = pysma.SMA(session, url, config[CONF_PASSWORD], group=grp) # Ensure we logout on shutdown @asyncio.coroutine diff --git a/requirements_all.txt b/requirements_all.txt index 5793d539c02..cc1b1fd9d51 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -862,7 +862,7 @@ pysesame==0.1.0 pysher==0.2.0 # homeassistant.components.sensor.sma -pysma==0.1.3 +pysma==0.2 # homeassistant.components.device_tracker.snmp # homeassistant.components.sensor.snmp