8000 0.43 by balloob · Pull Request #7197 · home-assistant/core · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

0.43 #7197

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 150 commits into from
Apr 22, 2017
Merged

0.43 #7197

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
150 commits
Select commit Hold shift + click to select a range
05bab8c
Exposed more attributes, enabled play_media tv show or season episodes
JesseWebDotCom Apr 1, 2017
564a01f
mend
JesseWebDotCom Apr 1, 2017
ae21fa9
Fixed setting username and content rating data
JesseWebDotCom Apr 1, 2017
b99dd19
Fixed log errors if session username or content rating is blank
JesseWebDotCom Apr 2, 2017
90a834c
String formatting, import order, type check fixes
JesseWebDotCom Apr 5, 2017
51dc8b7
Update kodi for aiohttp2 (#6967)
emlove Apr 6, 2017
2ce8c2f
Fix current_temperature is rounded (#6960)
aufano Apr 7, 2017
c20d48c
import order fix
JesseWebDotCom Apr 7, 2017
74ac160
Bugfix time and task coro (#6968)
pvizeli Apr 7, 2017
3e66df5
Initial import for HassIO (#6935)
pvizeli Apr 7, 2017
f96e06a
Preserve customize glob order. (#6963)
andrey-git Apr 7, 2017
9254e7e
Foscam Camera: Adding exception handling when fetching the camera ima…
viswa-swami Apr 7, 2017
d952a07
light.yeelight: catch i/o related exceptions from the backend lib (#6…
rytilahti Apr 7, 2017
216c268
Crime Reports sensor (#6966)
happyleavesaoc Apr 7, 2017
8cff98d
From Dusk till Dawn (#6857)
BillyNate Apr 7, 2017
df77529
Tests for zwave services (#6937)
emlove Apr 7, 2017
64174f5
Fix control+c quitting HASS (#6974)
balloob Apr 7, 2017
ad8ee13
Update Emby for aiohttp v2 (#6981)
mezz64 Apr 8, 2017
55077b9
switch.tplink: upgrade to the newest upstream release which adds supp…
rytilahti Apr 8, 2017
475ac52
switch.tplink: bump pyhs100 version requirement (#6986)
rytilahti Apr 8, 2017
31da54d
Add tests for ZWaveDeviceEntityValues helper (#6978)
emlove Apr 8, 2017
c5d8949
Bump Amcrest module to 1.1.8 (#6990)
tchellomello Apr 8, 2017
2277778
update gstreamer (#6987)
happyleavesaoc Apr 8, 2017
5d3fe83
Warn if start takes a long time. (#6975)
balloob Apr 8, 2017
eb0a986
Upgrade to aiohttp 2.0.6 (#6992)
balloob Apr 9, 2017
ba8488d
Make discovery not block start (#6991)
balloob Apr 9, 2017
c42293e
Downgrade aiohttp to 205 (#6994)
balloob Apr 9, 2017
ecfe077
Bump pywemo version. (#7004)
pavoni Apr 9, 2017
d5e3cd5
Fix Synology camera content type (#7010)
balloob Apr 10, 2017
90e73fd
Fix two more instances of JSON parsing synology (#7014)
balloob Apr 10, 2017
6cd3758
Bump pyalarmdotcom to support new version of aiohttp (#7021)
Apr 10, 2017
ab247b0
Fix US states check (fixes #7015) (#7017)
fabaff Apr 10, 2017
d081e5a
Remove deprecated remote classes (#7011)
balloob Apr 10, 2017
89e8e1a
Replace 'vendor_id' with 'arch' (fixes #7003) (#7023)
fabaff Apr 10, 2017
05eb73a
more tests for slugify (#7027)
micw Apr 10, 2017
ee988dc
Additional ZWave coverage (#7024)
emlove Apr 10, 2017
32da163
bump ups version (#7033)
happyleavesaoc Apr 11, 2017
aa91351
update usps version (#7035)
happyleavesaoc Apr 11, 2017
aa3ccf1
update fedex (#7034)
happyleavesaoc Apr 11, 2017
197db6b
Google TTS can't read percent sign (#6971) (#7030)
pezinek Apr 11, 2017
f76a4b2
Feature/min max improvements (#6786)
micw Apr 11, 2017
2748bc4
Upgrade psutil to 5.2.2 (#7037)
fabaff Apr 11, 2017
2cfdb44
Upgrade sendgrid to 4.0.0 (#7038)
fabaff Apr 11, 2017
8000
07bb648
Missing line name restriction added (fixes #7039) (#7040)
DavidMStraub Apr 11, 2017
f099aee
Plug file leak on LIFX unregister (#7031)
amelchio Apr 11, 2017
d7ca9e7
Make core to look avilable state of device on servicecall (#7045)
pvizeli Apr 11, 2017
cc459e2
Remove configuration sample (#7048)
fabaff Apr 11, 2017
b52cabf
Bugfix wait on start event (#7013)
pvizeli Apr 11, 2017
1112586
Bugfix slider (#7047)
pvizeli Apr 11, 2017
ed01201
Add MaryTTS platform (#6988)
Apr 11, 2017
4e38866
Fix mysensors callback (#7057)
MartinHjelmare Apr 12, 2017
4d9e681
Constrain chardet to 2.3 (#7063)
balloob Apr 12, 2017
3c35d5e
Fix/slugify with german umlaut ss (#7029)
micw Apr 12, 2017
72a01b8
Speed up aiohttp (#7064)
balloob Apr 12, 2017
edf500e
Upgrade netdisco to 1.0.0rc2 (#7008)
balloob Apr 12, 2017
7cb8f49
Telegram bot component (incl. webhook and polling platform) (#6913)
sander76 Apr 12, 2017
f06cff3
Upgrade paho-mqtt to 1.2.2 (#7066)
fabaff Apr 12, 2017
e026717
Fix handling with register callbacks on added_to_hass (#7067)
pvizeli Apr 12, 2017
9d20a17
Lutron. Bugfix callback registration. (#7042)
pvizeli Apr 12, 2017
f68542b
Adding AlarmDecoder platform (#6900)
hawk259 Apr 12, 2017
d63028e
Add communication data attributes to Zwave node_entity (#6813)
turbokongen Apr 12, 2017
5e18c99
Add product_name attribute to zwave nodes. (#7071)
andrey-git Apr 12, 2017
5ba4033
Merge pull request #6869 from JesseWebDotCom/dev
robbiet480 Apr 12, 2017
34cb021
Bump braviarc version to 0.3.7 (#7078)
robbiet480 Apr 13, 2017
9a9342e
Fix account balance in fido sensor (#7077)
titilambert Apr 13, 2017
fa65783
MQTT: Managing binary payloads (#6976)
MrMep Apr 13, 2017
01c7616
Bump qnapstats library version to 0.2.4 (#7085)
colinodell Apr 13, 2017
38ad571
Add support fo map data from Neato (#6939)
turbokongen Apr 13, 2017
c267326
Added initial support for IKEA Tradfri Gateway (#7074)
Apr 13, 2017
b6ee233
Better thread safety in zwave node_entity (#7087)
andrey-git Apr 13, 2017
e5756ba
Break product name up into manufacturer name and product name
robbiet480 Apr 14, 2017
7e3e742
Merge pull request #7094 from robbiet480/zwave-manufacturer-product-n…
robbiet480 Apr 14, 2017
46352f6
Uber version bump (#7100)
emlove Apr 14, 2017
0ca80cc
No product ids configured should fetch all ids (#7091)
emlove Apr 14, 2017
60f7a19
Allow extra keys in zone config
robbiet480 Apr 14, 2017
5ffda53
Upgrade aiohttp to 2.0.7 (#7106)
fabaff Apr 14, 2017
cce372f
Update file header, add const for defaults, and update log messages (…
fabaff Apr 14, 2017
b0ffc55
Upgrade speedtest-cli to 1.0.4 (#7105)
fabaff Apr 14, 2017
c43a3ef
Remove globally disabled pylint issue and update docstrings (#7111)
fabaff Apr 14, 2017
815422a
Merge pull request #7109 from home-assistant/allow-extra-in-zone-config
robbiet480 Apr 15, 2017
35de3a1
Use third-party lib aioautomatic for automatic (#7126)
emlove Apr 16, 2017
f7b6f8e
Upgrade chardet to 3.0.2 (#7112)
fabaff Apr 16, 2017
6cbe28a
Send stderr of ping tracker to devnull (#7096)
amelchio Apr 16, 2017
9249b6b
Upgraded Amcrest module to 1.1.9 to support new firmware versions: …
tchellomello Apr 16, 2017
7d76186
Mqtt camera (#7092)
MrMep Apr 16, 2017
3528705
Bump version to 0.43.0.dev0 (#7132)
MartinHjelmare Apr 16, 2017
a120826
Load zwave panel (#7127)
balloob Apr 16, 2017
75242e6
IKEA Tradfri Gateway: added support for RGB (#7115)
Apr 16, 2017
951af6c
Make Tradfri discoverable (#7128)
balloob Apr 16, 2017
58dfc1d
Make version number optional and a string to fix identify issue intro…
robbiet480 Apr 16, 2017
409fd62
Fix for zwave RGB setting (#7137)
emlove Apr 16, 2017
1ce2b63
Replace rollershutter with cover in demo (#7140)
robbiet480 Apr 16, 2017
37f959e
Add debug logging to automation initial state (#7068)
emlove Apr 16, 2017
5fa8037
Always return True/False from is_state and is_state_attr (#7138)
amelchio Apr 16, 2017
103377b
Add LIFX Cloud scene support (#7124)
amelchio Apr 16, 2017
d4b05a6
Fix LIFX lights with disappearing names (#7119)
amelchio Apr 17, 2017
9ed4ed2
lutron: fix typo that prevented callback registration (#7148)
thecynic Apr 17, 2017
cec3907
Fix HassIO timeout bug (#7155)
pvizeli Apr 17, 2017
919bb08
Fix iOS icon calculation to return mdi:battery for levels above 95
robbiet480 Apr 18, 2017
b714190
Change iOS sensor unique ID to use the device ID
robbiet480 Apr 18, 2017
9c0171e
Track device last identify time
robbiet480 Apr 18, 2017
43799b8
small fix for random effect in order to use the whole rgb range. So 2…
Mister-Espria Apr 18, 2017
226066e
exposed content_type in rest_command (#7101)
cmsimike Apr 18, 2017
1925748
Add vera power meter. (#7134)
pavoni Apr 18, 2017
15d8f8b
Add support for tradfri color temp (#7153)
MartinHjelmare Apr 18, 2017
5574686
Disable MQTT camera test (#7164)
balloob Apr 18, 2017
c7a1127
myStrom WiFi bulbs (#7161)
fabaff Apr 18, 2017
de71fee
Fix #7026 adding a new wol parameter (#7144)
titilambert Apr 18, 2017
bbad15f
Add subscription update for Wemo switches, fix bug in Insight switche…
pavoni Apr 18, 2017
d007269
Update neato.py (#7166)
michaelarnauts Apr 18, 2017
1e758ed
Keep track of already added players (#7149)
molobrakos Apr 18, 2017
e4bbbe2
Fix id zone mismatch (#7165)
gurumitts Apr 18, 2017
4becfb6
Upgrade pytradfri to 1.0 (#7163)
balloob Apr 19, 2017
e5feeec
Value of 0 should not be considered `unknown`. (#7139)
Apr 19, 2017
ce9bb0e
Upgrade netdisco (#7171)
balloob Apr 19, 2017
5179832
Added new services to platform kodi (#6426)
alexmogavero Apr 19, 2017
a41d0ac
Supress trackback and upgrade PyMata to 2.14 (#7176)
fabaff Apr 19, 2017
8ba4156
Disable invalid-sequence-index (#7177)
fabaff Apr 19, 2017
921760f
Upgrade mypy to 0.501 (was renamed from mypy-lang) (#7117)
fabaff Apr 19, 2017
2f4b2dd
Add condition for API failure (#7181)
sytone Apr 19, 2017
90baa2c
Add history to component priority list (#7173)
balloob Apr 19, 2017
1a635fe
Tweak Tradfri (#7172)
balloob Apr 19, 2017
9b43b39
Update frontend
balloob Apr 19, 2017
632256f
Mqtt camera test (#7175)
MrMep Apr 19, 2017
b985e4e
updated pylgtv module to fix problems with timeouts (#7184)
hmn Apr 19, 2017
76d2154
Fix wemo discovery (#7183)
balloob Apr 20, 2017
931fce8
Add Bose soundtouch discovery support and upgrade libsoundtouch libra…
CharlesBlonde Apr 20, 2017
ce51866
Update frontend
balloob Apr 20, 2017
e020d51
spotify media player (#6980)
happyleavesaoc Apr 20, 2017
f59b3da
JSON MQTT Device tracker (#7055)
MrMep Apr 20, 2017
1860b6c
opensky sensor (#7061)
happyleavesaoc Apr 20, 2017
b1621d4
Add ping binary sensor (#7052)
fabaff Apr 20, 2017
0c14c66
Added light.pwm component. (#7009)
soldag Apr 20, 2017
2d5ab52
Fix for errors on missing preview on LG webos TV (#6755)
masarliev Apr 20, 2017
2e11d49
Fix auto discovery for Apple TV (#7188)
postlund Apr 20, 2017
93820d5
Do not request artwork if not available (#7189)
postlund Apr 20, 2017
920d298
mvglive bug fixes and improvements (#6953)
mountainsandcode Apr 20, 2017
eb2e5e5
Upgrade py-cpuinfo to 3.2.0 (#7190)
fabaff Apr 20, 2017
bbeb64e
Add support of input registers while querying modbus sensor. (#7082)
LvivEchoes Apr 21, 2017
f641287
Add HassIO to discovery component (#7195)
pvizeli Apr 21, 2017
dbb0525
Merge branch 'master' into dev
balloob Apr 21, 2017
e3f682c
LIFX light effects (#7145)
amelchio Apr 21, 2017
5c737cf
HassIO API v2 (#7201)
pvizeli Apr 21, 2017
2d57c6a
Support xy_color with LIFX lights (#7208)
amelchio Apr 22, 2017
07fcf22
Update ios.py (#7160)
biacz Apr 22, 2017
b641f68
Fix arwn platform to update hass state when events are received (#7202)
sdague Apr 22, 2017
dafbdbd
Issue 6749 updated pylgtv to 0.1.6 to fix thread leak in asyncio loop…
hmn Apr 22, 2017
80e9e9b
tradfri: Improve color temp support detection (#7211)
balloob Apr 22, 2017
093c7f0
Fix tradfri lights (#7212)
MartinHjelmare Apr 22, 2017
477ebd9
Version bump to 0.43
balloob Apr 22, 2017
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 16 additions & 5 deletions .coveragerc
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ omit =
homeassistant/helpers/signal.py

# omit pieces of code that rely on external devices being present
homeassistant/components/alarmdecoder.py
homeassistant/components/*/alarmdecoder.py

homeassistant/components/apcupsd.py
homeassistant/components/*/apcupsd.py

Expand Down Expand Up @@ -94,6 +97,9 @@ omit =

homeassistant/components/*/thinkingcleaner.py

homeassistant/components/tradfri.py
homeassistant/components/*/tradfri.py

homeassistant/components/twilio.py
homeassistant/components/notify/twilio_sms.py
homeassistant/components/notify/twilio_call.py
Expand Down Expand Up @@ -159,6 +165,7 @@ omit =
homeassistant/components/binary_sensor/flic.py
homeassistant/components/binary_sensor/hikvision.py
homeassistant/components/binary_sensor/iss.py
homeassistant/components/binary_sensor/ping.py
homeassistant/components/binary_sensor/rest.py
homeassistant/components/browser.py
homeassistant/components/camera/amcrest.py
Expand All @@ -175,7 +182,6 @@ omit =
homeassistant/components/climate/oem.py
homeassistant/components/climate/proliphix.py
homeassistant/components/climate/radiotherm.py
homeassistant/components/config/zwave.py
homeassistant/components/cover/garadget.py
homeassistant/components/cover/homematic.py
homeassistant/components/cover/myq.py
Expand Down Expand Up @@ -225,15 +231,18 @@ omit =
homeassistant/components/light/flux_led.py
homeassistant/components/light/hue.py
homeassistant/components/light/hyperion.py
homeassistant/components/light/lifx.py
homeassistant/components/light/lifx/*.py
homeassistant/components/light/lifx_legacy.py
homeassistant/components/light/limitlessled.py
homeassistant/components/light/mystrom.py
homeassistant/components/light/osramlightify.py
homeassistant/components/light/rpi_gpio_pwm.py
homeassistant/components/light/piglow.py
homeassistant/components/light/tikteck.py
homeassistant/components/light/tradfri.py
homeassistant/components/light/x10.py
homeassistant/components/light/yeelight.py
homeassistant/components/light/yeelightsunflower.py
homeassistant/components/light/piglow.py
homeassistant/components/light/zengge.py
homeassistant/components/lirc.py
homeassistant/components/lock/nuki.py
Expand Down Expand Up @@ -274,6 +283,7 @@ omit =
homeassistant/components/media_player/samsungtv.py
homeassistant/components/media_player/snapcast.py
homeassistant/components/media_player/sonos.py
homeassistant/components/media_player/spotify.py
homeassistant/components/media_player/squeezebox.py
homeassistant/components/media_player/vlc.py
homeassistant/components/media_player/volumio.py
Expand Down Expand Up @@ -315,6 +325,7 @@ omit =
homeassistant/components/remote/harmony.py
homeassistant/components/remote/itach.py
homeassistant/components/scene/hunterdouglas_powerview.py
homeassistant/components/scene/lifx_cloud.py
homeassistant/components/sensor/amcrest.py
homeassistant/components/sensor/arest.py
homeassistant/components/sensor/arwn.py
Expand Down Expand Up @@ -375,6 +386,7 @@ omit =
homeassistant/components/sensor/onewire.py
homeassistant/components/sensor/openevse.py
homeassistant/components/sensor/openexchangerates.py
homeassistant/components/sensor/opensky.py
homeassistant/components/sensor/openweathermap.py
homeassistant/components/sensor/pi_hole.py
homeassistant/components/sensor/plex.py
Expand Down Expand Up @@ -432,7 +444,7 @@ omit =
homeassistant/components/switch/tplink.py
homeassistant/components/switch/transmission.py
homeassistant/components/switch/wake_on_lan.py
homeassistant/components/telegram_webhooks.py
homeassistant/components/telegram_bot/*
homeassistant/components/thingspeak.py
homeassistant/components/tts/amazon_polly.py
homeassistant/components/tts/picotts.py
Expand All @@ -442,7 +454,6 @@ omit =
homeassistant/components/weather/openweathermap.py
homeassistant/components/weather/zamg.py
homeassistant/components/zeroconf.py
homeassistant/components/zwave/__init__.py
homeassistant/components/zwave/util.py


Expand Down
3 changes: 2 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ MAINTAINER Paulus Schoutsen <Paulus@PaulusSchoutsen.nl>
#ENV INSTALL_OPENZWAVE no
#ENV INSTALL_LIBCEC no
#ENV INSTALL_PHANTOMJS no
#ENV INSTALL_COAP_CLIENT no

VOLUME /config

Expand All @@ -21,7 +22,7 @@ RUN virtualization/Docker/setup_docker_prereqs
# Install hass component dependencies
COPY requirements_all.txt requirements_all.txt
RUN pip3 install --no-cache-dir -r requirements_all.txt && \
pip3 install --no-cache-dir mysqlclient psycopg2 uvloop
pip3 install --no-cache-dir mysqlclient psycopg2 uvloop cchardet

# Copy source
COPY . .
Expand Down
3 changes: 2 additions & 1 deletion homeassistant/bootstrap.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@

ERROR_LOG_FILENAME = 'home-assistant.log'
FIRST_INIT_COMPONENT = set((
'recorder', 'mqtt', 'mqtt_eventstream', 'logger', 'introduction'))
'recorder', 'mqtt', 'mqtt_eventstream', 'logger', 'introduction',
'frontend', 'history'))


def from_config_dict(config: Dict[str, Any],
Expand Down
119 changes: 119 additions & 0 deletions homeassistant/components/alarm_control_panel/alarmdecoder.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
"""
Support for AlarmDecoder-based alarm control panels (Honeywell/DSC).

For more details about this platform, please refer to the documentation at
https://home-assistant.io/components/alarm_control_panel.alarmdecoder/
"""
import asyncio
import logging

from homeassistant.core import callback
from homeassistant.helpers.dispatcher import async_dispatcher_connect
import homeassistant.components.alarm_control_panel as alarm

from homeassistant.components.alarmdecoder import (DATA_AD,
SIGNAL_PANEL_MESSAGE)

from homeassistant.const import (
STATE_ALARM_ARMED_AWAY, STATE_ALARM_ARMED_HOME, STATE_ALARM_DISARMED,
STATE_UNKNOWN, STATE_ALARM_TRIGGERED)

_LOGGER = logging.getLogger(__name__)

DEPENDENCIES = ['alarmdecoder']


@asyncio.coroutine
def async_setup_platform(hass, config, async_add_devices, discovery_info=None):
"""Perform the setup for AlarmDecoder alarm panels."""
_LOGGER.debug("AlarmDecoderAlarmPanel: setup")

device = AlarmDecoderAlarmPanel("Alarm Panel", hass)

async_add_devices([device])

return True


class AlarmDecoderAlarmPanel(alarm.AlarmControlPanel):
"""Representation of an AlarmDecoder-based alarm panel."""

def __init__(self, name, hass):
"""Initialize the alarm panel."""
self._display = ""
self._name = name
self._state = STATE_UNKNOWN

_LOGGER.debug("AlarmDecoderAlarm: Setting up panel")

@asyncio.coroutine
def async_added_to_hass(self):
"""Register callbacks."""
async_dispatcher_connect(
self.hass, SIGNAL_PANEL_MESSAGE, self._message_callback)

@callback
def _message_callback(self, message):
if message.alarm_sounding or message.fire_alarm:
if self._state != STATE_ALARM_TRIGGERED:
self._state = STATE_ALARM_TRIGGERED
self.hass.async_add_job(self.async_update_ha_state())
elif message.armed_away:
if self._state != STATE_ALARM_ARMED_AWAY:
self._state = STATE_ALARM_ARMED_AWAY
self.hass.async_add_job(self.async_update_ha_state())
elif message.armed_home:
if self._state != STATE_ALARM_ARMED_HOME:
self._state = STATE_ALARM_ARMED_HOME
self.hass.async_add_job(self.async_update_ha_state())
else:
if self._state != STATE_ALARM_DISARMED:
self._state = STATE_ALARM_DISARMED
self.hass.async_add_job(self.async_update_ha_state())

@property
def name(self):
"""Return the name of the device."""
return self._name

@property
def should_poll(self):
"""No polling needed."""
return False

@property
def code_format(self):
"""Regex for code format or None if no code is required."""
return '^\\d{4,6}$'

@property
def state(self):
"""Return the state of the device."""
return self._state

@asyncio.coroutine
def async_alarm_disarm(self, code=None):
"""Send disarm command."""
_LOGGER.debug("AlarmDecoderAlarm::alarm_disarm: %s", code)
if code:
_LOGGER.debug("AlarmDecoderAlarm::alarm_disarm: sending %s1",
str(code))
self.hass.data[DATA_AD].send("{!s}1".format(code))

@asyncio.coroutine
def async_alarm_arm_away(self, code=None):
"""Send arm away command."""
_LOGGER.debug("AlarmDecoderAlarm::alarm_arm_away: %s", code)
if code:
_LOGGER.debug("AlarmDecoderAlarm::alarm_arm_away: sending %s2",
str(code))
self.hass.data[DATA_AD].send("{!s}2".format(code))

@asyncio.coroutine
def async_alarm_arm_home(self, code=None):
"""Send arm home command."""
_LOGGER.debug("AlarmDecoderAlarm::alarm_arm_home: %s", code)
if code:
_LOGGER.debug("AlarmDecoderAlarm::alarm_arm_home: sending %s3",
str(code))
self.hass.data[DATA_AD].send("{!s}3".format(code))
Loading
0