Use call_soon_threadsafe in token updater of Ring (#106984)
Use call_soon_threadsafe in token update of Ring
This commit is contained in:
parent
4f213f6df3
commit
0183affc7c
1 changed files with 5 additions and 10 deletions
|
@ -4,7 +4,6 @@ from __future__ import annotations
|
||||||
import asyncio
|
import asyncio
|
||||||
from collections.abc import Callable
|
from collections.abc import Callable
|
||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
from functools import partial
|
|
||||||
import logging
|
import logging
|
||||||
from typing import Any
|
from typing import Any
|
||||||
|
|
||||||
|
@ -16,7 +15,6 @@ from homeassistant.core import HomeAssistant, ServiceCall, callback
|
||||||
from homeassistant.exceptions import ConfigEntryAuthFailed
|
from homeassistant.exceptions import ConfigEntryAuthFailed
|
||||||
from homeassistant.helpers import device_registry as dr
|
from homeassistant.helpers import device_registry as dr
|
||||||
from homeassistant.helpers.event import async_track_time_interval
|
from homeassistant.helpers.event import async_track_time_interval
|
||||||
from homeassistant.util.async_ import run_callback_threadsafe
|
|
||||||
|
|
||||||
from .const import (
|
from .const import (
|
||||||
DEVICES_SCAN_INTERVAL,
|
DEVICES_SCAN_INTERVAL,
|
||||||
|
@ -41,14 +39,11 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
|
||||||
|
|
||||||
def token_updater(token):
|
def token_updater(token):
|
||||||
"""Handle from sync context when token is updated."""
|
"""Handle from sync context when token is updated."""
|
||||||
run_callback_threadsafe(
|
hass.loop.call_soon_threadsafe(
|
||||||
hass.loop,
|
hass.config_entries.async_update_entry,
|
||||||
partial(
|
entry,
|
||||||
hass.config_entries.async_update_entry,
|
data={**entry.data, CONF_TOKEN: token},
|
||||||
entry,
|
)
|
||||||
data={**entry.data, CONF_TOKEN: token},
|
|
||||||
),
|
|
||||||
).result()
|
|
||||||
|
|
||||||
auth = ring_doorbell.Auth(
|
auth = ring_doorbell.Auth(
|
||||||
f"{APPLICATION_NAME}/{__version__}", entry.data[CONF_TOKEN], token_updater
|
f"{APPLICATION_NAME}/{__version__}", entry.data[CONF_TOKEN], token_updater
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue