Improve ifttt typing (#108308)

This commit is contained in:
Marc Mueller 2024-01-19 13:45:59 +01:00 committed by GitHub
parent 8c71abe421
commit 42154bd684
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 25 additions and 20 deletions

View File

@ -1,8 +1,11 @@
"""Support to trigger Maker IFTTT recipes."""
from __future__ import annotations
from http import HTTPStatus
import json
import logging
from aiohttp import web
import pyfttt
import requests
import voluptuous as vol
@ -91,7 +94,9 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
return True
async def handle_webhook(hass, webhook_id, request):
async def handle_webhook(
hass: HomeAssistant, webhook_id: str, request: web.Request
) -> None:
"""Handle webhook callback."""
body = await request.text()
try:

View File

@ -81,14 +81,14 @@ def setup_platform(
if DATA_IFTTT_ALARM not in hass.data:
hass.data[DATA_IFTTT_ALARM] = []
name = config.get(CONF_NAME)
code = config.get(CONF_CODE)
code_arm_required = config.get(CONF_CODE_ARM_REQUIRED)
event_away = config.get(CONF_EVENT_AWAY)
event_home = config.get(CONF_EVENT_HOME)
event_night = config.get(CONF_EVENT_NIGHT)
event_disarm = config.get(CONF_EVENT_DISARM)
optimistic = config.get(CONF_OPTIMISTIC)
name: str = config[CONF_NAME]
code: str | None = config.get(CONF_CODE)
code_arm_required: bool = config[CONF_CODE_ARM_REQUIRED]
event_away: str = config[CONF_EVENT_AWAY]
event_home: str = config[CONF_EVENT_HOME]
event_night: str = config[CONF_EVENT_NIGHT]
event_disarm: str = config[CONF_EVENT_DISARM]
optimistic: bool = config[CONF_OPTIMISTIC]
alarmpanel = IFTTTAlarmPanel(
name,
@ -135,15 +135,15 @@ class IFTTTAlarmPanel(AlarmControlPanelEntity):
def __init__(
self,
name,
code,
code_arm_required,
event_away,
event_home,
event_night,
event_disarm,
optimistic,
):
name: str,
code: str | None,
code_arm_required: bool,
event_away: str,
event_home: str,
event_night: str,
event_disarm: str,
optimistic: bool,
) -> None:
"""Initialize the alarm control panel."""
self._attr_name = name
self._code = code
@ -187,7 +187,7 @@ class IFTTTAlarmPanel(AlarmControlPanelEntity):
return
self.set_alarm_state(self._event_night, STATE_ALARM_ARMED_NIGHT)
def set_alarm_state(self, event, state):
def set_alarm_state(self, event: str, state: str) -> None:
"""Call the IFTTT trigger service to change the alarm state."""
data = {ATTR_EVENT: event}
@ -196,7 +196,7 @@ class IFTTTAlarmPanel(AlarmControlPanelEntity):
if self._optimistic:
self._attr_state = state
def push_alarm_state(self, value):
def push_alarm_state(self, value: str) -> None:
"""Push the alarm state to the given value."""
if value in ALLOWED_STATES:
_LOGGER.debug("Pushed the alarm state to %s", value)