Changes after review

This commit is contained in:
Steven Looman 2018-09-03 21:16:45 +02:00
parent 85c40d29ee
commit f4a54e2483

View File

@ -51,7 +51,7 @@ CONFIG_SCHEMA = vol.Schema({
async def _async_create_igd_device(hass: HomeAssistantType, async def _async_create_igd_device(hass: HomeAssistantType,
ssdp_description: str): ssdp_description: str):
""".""" """Create IGD device."""
# build requester # build requester
from async_upnp_client.aiohttp import AiohttpSessionRequester from async_upnp_client.aiohttp import AiohttpSessionRequester
session = async_get_clientsession(hass) session = async_get_clientsession(hass)
@ -94,12 +94,14 @@ async def _async_add_port_mapping(hass: HomeAssistantType,
if local_ip == '127.0.0.1': if local_ip == '127.0.0.1':
_LOGGER.warning('Could not create port mapping, our IP is 127.0.0.1') _LOGGER.warning('Could not create port mapping, our IP is 127.0.0.1')
return False return
local_ip = IPv4Address(local_ip) local_ip = IPv4Address(local_ip)
# create port mapping # create port mapping
from async_upnp_client import UpnpError
port = hass.http.server_port port = hass.http.server_port
_LOGGER.debug('Creating port mapping %s:%s:%s (TCP)', port, local_ip, port) _LOGGER.debug('Creating port mapping %s:%s:%s (TCP)', port, local_ip, port)
try:
await igd_device.async_add_port_mapping(remote_host=None, await igd_device.async_add_port_mapping(remote_host=None,
external_port=port, external_port=port,
protocol='TCP', protocol='TCP',
@ -108,16 +110,20 @@ async def _async_add_port_mapping(hass: HomeAssistantType,
enabled=True, enabled=True,
description="Home Assistant", description="Home Assistant",
lease_duration=None) lease_duration=None)
except (asyncio.TimeoutError, aiohttp.ClientError, UpnpError):
return True _LOGGER.warning('Could not add port mapping')
async def _async_delete_port_mapping(hass: HomeAssistantType, igd_device): async def _async_delete_port_mapping(hass: HomeAssistantType, igd_device):
"""Remove a port mapping.""" """Remove a port mapping."""
from async_upnp_client import UpnpError
port = hass.http.server_port port = hass.http.server_port
try:
await igd_device.async_delete_port_mapping(remote_host=None, await igd_device.async_delete_port_mapping(remote_host=None,
external_port=port, external_port=port,
protocol='TCP') protocol='TCP')
except (asyncio.TimeoutError, aiohttp.ClientError, UpnpError):
_LOGGER.warning('Could not delete port mapping')
# config # config