Skip to content

Commit 963e27d

Browse files
authored
Send snapshot analytics for device database in dev (#155717)
1 parent b8e3d57 commit 963e27d

File tree

5 files changed

+621
-65
lines changed

5 files changed

+621
-65
lines changed

homeassistant/components/analytics/__init__.py

Lines changed: 5 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,8 @@
66

77
from homeassistant.components import websocket_api
88
from homeassistant.const import EVENT_HOMEASSISTANT_STARTED
9-
from homeassistant.core import Event, HassJob, HomeAssistant, callback
9+
from homeassistant.core import Event, HomeAssistant, callback
1010
from homeassistant.helpers import config_validation as cv
11-
from homeassistant.helpers.event import async_call_later, async_track_time_interval
1211
from homeassistant.helpers.typing import ConfigType
1312
from homeassistant.util.hass_dict import HassKey
1413

@@ -20,7 +19,7 @@
2019
EntityAnalyticsModifications,
2120
async_devices_payload,
2221
)
23-
from .const import ATTR_ONBOARDED, ATTR_PREFERENCES, DOMAIN, INTERVAL, PREFERENCE_SCHEMA
22+
from .const import ATTR_ONBOARDED, ATTR_PREFERENCES, DOMAIN, PREFERENCE_SCHEMA
2423
from .http import AnalyticsDevicesView
2524

2625
__all__ = [
@@ -43,28 +42,9 @@ async def async_setup(hass: HomeAssistant, _: ConfigType) -> bool:
4342
# Load stored data
4443
await analytics.load()
4544

46-
@callback
47-
def start_schedule(_event: Event) -> None:
45+
async def start_schedule(_event: Event) -> None:
4846
"""Start the send schedule after the started event."""
49-
# Wait 15 min after started
50-
async_call_later(
51-
hass,
52-
900,
53-
HassJob(
54-
analytics.send_analytics,
55-
name="analytics schedule",
56-
cancel_on_shutdown=True,
57-
),
58-
)
59-
60-
# Send every day
61-
async_track_time_interval(
62-
hass,
63-
analytics.send_analytics,
64-
INTERVAL,
65-
name="analytics daily",
66-
cancel_on_shutdown=True,
67-
)
47+
await analytics.async_schedule()
6848

6949
hass.bus.async_listen_once(EVENT_HOMEASSISTANT_STARTED, start_schedule)
7050

@@ -111,7 +91,7 @@ async def websocket_analytics_preferences(
11191
analytics = hass.data[DATA_COMPONENT]
11292

11393
await analytics.save_preferences(preferences)
114-
await analytics.send_analytics()
94+
await analytics.async_schedule()
11595

11696
connection.send_result(
11797
msg["id"],

0 commit comments

Comments
 (0)