Fix MQTT logs Int or String expected Python 3 (#898)

Fixes https://github.com/esphome/issues/issues/850
This commit is contained in:
Otto Winter 2019-12-04 15:58:58 +01:00 committed by GitHub
parent b7dff4bbab
commit 73f80a8ea1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -67,7 +67,9 @@ def initialize(config, subscriptions, on_message, username, password, client_id)
tls_version=tls_version, ciphers=None)
try:
client.connect(str(config[CONF_MQTT][CONF_BROKER]), config[CONF_MQTT][CONF_PORT])
host = str(config[CONF_MQTT][CONF_BROKER])
port = int(config[CONF_MQTT][CONF_PORT])
client.connect(host, port)
except socket.error as err:
raise EsphomeError("Cannot connect to MQTT broker: {}".format(err))
@ -127,7 +129,7 @@ def clear_topic(config, topic, username=None, password=None, client_id=None):
# From marvinroger/async-mqtt-client -> scripts/get-fingerprint/get-fingerprint.py
def get_fingerprint(config):
addr = str(config[CONF_MQTT][CONF_BROKER]), config[CONF_MQTT][CONF_PORT]
addr = str(config[CONF_MQTT][CONF_BROKER]), int(config[CONF_MQTT][CONF_PORT])
_LOGGER.info("Getting fingerprint from %s:%s", addr[0], addr[1])
try:
cert_pem = ssl.get_server_certificate(addr)