SMA sensor add SSL and upgrade to pysma 0.2 (#12354)

This commit is contained in:
Johann Kellerman 2018-02-13 22:03:56 +02:00 committed by GitHub
parent 80d2c76e85
commit 5995c2f313
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 5 deletions

View File

@ -12,13 +12,14 @@ import voluptuous as vol
from homeassistant.components.sensor import PLATFORM_SCHEMA from homeassistant.components.sensor import PLATFORM_SCHEMA
from homeassistant.const import ( 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.event import async_track_time_interval
from homeassistant.helpers.aiohttp_client import async_get_clientsession from homeassistant.helpers.aiohttp_client import async_get_clientsession
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
REQUIREMENTS = ['pysma==0.1.3'] REQUIREMENTS = ['pysma==0.2']
_LOGGER = logging.getLogger(__name__) _LOGGER = logging.getLogger(__name__)
@ -49,6 +50,7 @@ def _check_sensor_schema(conf):
PLATFORM_SCHEMA = vol.All(PLATFORM_SCHEMA.extend({ PLATFORM_SCHEMA = vol.All(PLATFORM_SCHEMA.extend({
vol.Required(CONF_HOST): str, vol.Required(CONF_HOST): str,
vol.Optional(CONF_SSL, default=False): cv.boolean,
vol.Required(CONF_PASSWORD): str, vol.Required(CONF_PASSWORD): str,
vol.Optional(CONF_GROUP, default=GROUPS[0]): vol.In(GROUPS), vol.Optional(CONF_GROUP, default=GROUPS[0]): vol.In(GROUPS),
vol.Required(CONF_SENSORS): vol.Schema({cv.slug: cv.ensure_list}), 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) session = async_get_clientsession(hass)
grp = {GROUP_INSTALLER: pysma.GROUP_INSTALLER, grp = {GROUP_INSTALLER: pysma.GROUP_INSTALLER,
GROUP_USER: pysma.GROUP_USER}[config[CONF_GROUP]] 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 # Ensure we logout on shutdown
@asyncio.coroutine @asyncio.coroutine

View File

@ -862,7 +862,7 @@ pysesame==0.1.0
pysher==0.2.0 pysher==0.2.0
# homeassistant.components.sensor.sma # homeassistant.components.sensor.sma
pysma==0.1.3 pysma==0.2
# homeassistant.components.device_tracker.snmp # homeassistant.components.device_tracker.snmp
# homeassistant.components.sensor.snmp # homeassistant.components.sensor.snmp