Update to Pyunifi2.0 (#6490)
* Updated pyUnifi * Missing comma * Security opt-out, not opt-in * Adjust minimal values * Update to pyUnifi 2.0pull/6509/head
parent
bdaae6f844
commit
24630b1ebe
|
@ -13,13 +13,15 @@ import homeassistant.loader as loader
|
||||||
from homeassistant.components.device_tracker import (
|
from homeassistant.components.device_tracker import (
|
||||||
DOMAIN, PLATFORM_SCHEMA, DeviceScanner)
|
DOMAIN, PLATFORM_SCHEMA, DeviceScanner)
|
||||||
from homeassistant.const import CONF_HOST, CONF_USERNAME, CONF_PASSWORD
|
from homeassistant.const import CONF_HOST, CONF_USERNAME, CONF_PASSWORD
|
||||||
|
from homeassistant.const import CONF_VERIFY_SSL
|
||||||
|
|
||||||
# Unifi package doesn't list urllib3 as a requirement
|
# Unifi package doesn't list urllib3 as a requirement
|
||||||
REQUIREMENTS = ['urllib3', 'pyunifi==1.3']
|
REQUIREMENTS = ['pyunifi==2.0']
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
CONF_PORT = 'port'
|
CONF_PORT = 'port'
|
||||||
CONF_SITE_ID = 'site_id'
|
CONF_SITE_ID = 'site_id'
|
||||||
|
DEFAULT_VERIFY_SSL = True
|
||||||
|
|
||||||
NOTIFICATION_ID = 'unifi_notification'
|
NOTIFICATION_ID = 'unifi_notification'
|
||||||
NOTIFICATION_TITLE = 'Unifi Device Tracker Setup'
|
NOTIFICATION_TITLE = 'Unifi Device Tracker Setup'
|
||||||
|
@ -29,7 +31,8 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
|
||||||
vol.Optional(CONF_SITE_ID, default='default'): cv.string,
|
vol.Optional(CONF_SITE_ID, default='default'): cv.string,
|
||||||
vol.Required(CONF_PASSWORD): cv.string,
|
vol.Required(CONF_PASSWORD): cv.string,
|
||||||
vol.Required(CONF_USERNAME): cv.string,
|
vol.Required(CONF_USERNAME): cv.string,
|
||||||
vol.Required(CONF_PORT, default=8443): cv.port
|
vol.Required(CONF_PORT, default=8443): cv.port,
|
||||||
|
vol.Optional(CONF_VERIFY_SSL, default=DEFAULT_VERIFY_SSL): cv.boolean,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
@ -42,10 +45,12 @@ def get_scanner(hass, config):
|
||||||
password = config[DOMAIN].get(CONF_PASSWORD)
|
password = config[DOMAIN].get(CONF_PASSWORD)
|
||||||
site_id = config[DOMAIN].get(CONF_SITE_ID)
|
site_id = config[DOMAIN].get(CONF_SITE_ID)
|
||||||
port = config[DOMAIN].get(CONF_PORT)
|
port = config[DOMAIN].get(CONF_PORT)
|
||||||
|
verify_ssl = config[DOMAIN].get(CONF_VERIFY_SSL)
|
||||||
|
|
||||||
persistent_notification = loader.get_component('persistent_notification')
|
persistent_notification = loader.get_component('persistent_notification')
|
||||||
try:
|
try:
|
||||||
ctrl = Controller(host, username, password, port, 'v4', site_id)
|
ctrl = Controller(host, username, password, port, version='v4',
|
||||||
|
site_id=site_id, ssl_verify=verify_ssl)
|
||||||
except urllib.error.HTTPError as ex:
|
except urllib.error.HTTPError as ex:
|
||||||
_LOGGER.error('Failed to connect to Unifi: %s', ex)
|
_LOGGER.error('Failed to connect to Unifi: %s', ex)
|
||||||
persistent_notification.create(
|
persistent_notification.create(
|
||||||
|
|
|
@ -624,7 +624,7 @@ python-wink==1.1.1
|
||||||
pytrackr==0.0.5
|
pytrackr==0.0.5
|
||||||
|
|
||||||
# homeassistant.components.device_tracker.unifi
|
# homeassistant.components.device_tracker.unifi
|
||||||
pyunifi==1.3
|
pyunifi==2.0
|
||||||
|
|
||||||
# homeassistant.components.keyboard
|
# homeassistant.components.keyboard
|
||||||
# pyuserinput==0.1.11
|
# pyuserinput==0.1.11
|
||||||
|
@ -737,9 +737,6 @@ uber_rides==0.2.7
|
||||||
# homeassistant.components.sensor.ups
|
# homeassistant.components.sensor.ups
|
||||||
upsmychoice==1.0.1
|
upsmychoice==1.0.1
|
||||||
|
|
||||||
# homeassistant.components.device_tracker.unifi
|
|
||||||
urllib3
|
|
||||||
|
|
||||||
# homeassistant.components.camera.uvc
|
# homeassistant.components.camera.uvc
|
||||||
uvcclient==0.10.0
|
uvcclient==0.10.0
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ import voluptuous as vol
|
||||||
from tests.common import get_test_home_assistant
|
from tests.common import get_test_home_assistant
|
||||||
from homeassistant.components.device_tracker import DOMAIN, unifi as unifi
|
from homeassistant.components.device_tracker import DOMAIN, unifi as unifi
|
||||||
from homeassistant.const import (CONF_HOST, CONF_USERNAME, CONF_PASSWORD,
|
from homeassistant.const import (CONF_HOST, CONF_USERNAME, CONF_PASSWORD,
|
||||||
CONF_PLATFORM)
|
CONF_PLATFORM, CONF_VERIFY_SSL)
|
||||||
|
|
||||||
|
|
||||||
class TestUnifiScanner(unittest.TestCase):
|
class TestUnifiScanner(unittest.TestCase):
|
||||||
|
@ -39,7 +39,8 @@ class TestUnifiScanner(unittest.TestCase):
|
||||||
self.assertEqual(mock_ctrl.call_count, 1)
|
self.assertEqual(mock_ctrl.call_count, 1)
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
mock_ctrl.call_args,
|
mock_ctrl.call_args,
|
||||||
mock.call('localhost', 'foo', 'password', 8443, 'v4', 'default')
|
mock.call('localhost', 'foo', 'password', 8443,
|
||||||
|
version='v4', site_id='default', ssl_verify=True)
|
||||||
)
|
)
|
||||||
self.assertEqual(mock_scanner.call_count, 1)
|
self.assertEqual(mock_scanner.call_count, 1)
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
|
@ -57,6 +58,7 @@ class TestUnifiScanner(unittest.TestCase):
|
||||||
CONF_USERNAME: 'foo',
|
CONF_USERNAME: 'foo',
|
||||||
CONF_PASSWORD: 'password',
|
CONF_PASSWORD: 'password',
|
||||||
CONF_HOST: 'myhost',
|
CONF_HOST: 'myhost',
|
||||||
|
CONF_VERIFY_SSL: False,
|
||||||
'port': 123,
|
'port': 123,
|
||||||
'site_id': 'abcdef01',
|
'site_id': 'abcdef01',
|
||||||
})
|
})
|
||||||
|
@ -66,7 +68,8 @@ class TestUnifiScanner(unittest.TestCase):
|
||||||
self.assertEqual(mock_ctrl.call_count, 1)
|
self.assertEqual(mock_ctrl.call_count, 1)
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
mock_ctrl.call_args,
|
mock_ctrl.call_args,
|
||||||
mock.call('myhost', 'foo', 'password', 123, 'v4', 'abcdef01')
|
mock.call('myhost', 'foo', 'password', 123,
|
||||||
|
version='v4', site_id='abcdef01', ssl_verify=False)
|
||||||
)
|
)
|
||||||
self.assertEqual(mock_scanner.call_count, 1)
|
self.assertEqual(mock_scanner.call_count, 1)
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
|
|
Loading…
Reference in New Issue