teslemetry-stream 0.2.2__tar.gz → 0.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {teslemetry_stream-0.2.2/teslemetry_stream.egg-info → teslemetry_stream-0.3.0}/PKG-INFO +1 -1
- {teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0}/setup.py +1 -1
- {teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0}/teslemetry_stream/__init__.py +13 -6
- {teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0/teslemetry_stream.egg-info}/PKG-INFO +1 -1
- {teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0}/LICENSE +0 -0
- {teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0}/README.md +0 -0
- {teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0}/setup.cfg +0 -0
- {teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0}/teslemetry_stream/const.py +0 -0
- {teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0}/teslemetry_stream.egg-info/SOURCES.txt +0 -0
- {teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0}/teslemetry_stream.egg-info/dependency_links.txt +0 -0
- {teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0}/teslemetry_stream.egg-info/requires.txt +0 -0
- {teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0}/teslemetry_stream.egg-info/top_level.txt +0 -0
|
@@ -8,7 +8,7 @@ from .const import TelemetryFields, TelemetryAlerts
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
LOGGER = logging.getLogger(__package__)
|
|
11
|
-
DELAY =
|
|
11
|
+
DELAY = 1
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
class TeslemetryStreamError(Exception):
|
|
@@ -32,11 +32,17 @@ class TeslemetryStreamVehicleNotConfigured(TeslemetryStreamError):
|
|
|
32
32
|
message = "This vehicle is not configured to connect to Teslemetry."
|
|
33
33
|
|
|
34
34
|
|
|
35
|
+
class TeslemetryStreamEnded(TeslemetryStreamError):
|
|
36
|
+
"""Teslemetry Stream Connection Error"""
|
|
37
|
+
|
|
38
|
+
message = "The stream was ended by the server."
|
|
39
|
+
|
|
40
|
+
|
|
35
41
|
class TeslemetryStream:
|
|
36
42
|
"""Teslemetry Stream Client"""
|
|
37
43
|
|
|
38
|
-
fields: dict[TelemetryFields, dict[str, int]]
|
|
39
|
-
alerts: list[TelemetryAlerts]
|
|
44
|
+
fields: dict[TelemetryFields, dict[str, int]] | None = None
|
|
45
|
+
alerts: list[TelemetryAlerts] | None = None
|
|
40
46
|
_response: aiohttp.ClientResponse | None = None
|
|
41
47
|
_listeners: dict[Callable, Callable] = {}
|
|
42
48
|
delay = DELAY
|
|
@@ -192,15 +198,16 @@ class TeslemetryStream:
|
|
|
192
198
|
.replace(tzinfo=timezone.utc)
|
|
193
199
|
.timestamp()
|
|
194
200
|
) * 1000 + int(ns[:3])
|
|
195
|
-
LOGGER.debug("event %s", json.dumps(data))
|
|
201
|
+
# LOGGER.debug("event %s", json.dumps(data))
|
|
196
202
|
self.delay = DELAY
|
|
197
203
|
return data
|
|
198
|
-
|
|
204
|
+
raise TeslemetryStreamEnded()
|
|
205
|
+
except (TeslemetryStreamEnded, aiohttp.ClientError) as error:
|
|
199
206
|
LOGGER.warning("Connection error: %s", error)
|
|
200
207
|
self.close()
|
|
201
208
|
LOGGER.debug("Reconnecting in %s seconds", self.delay)
|
|
202
209
|
await asyncio.sleep(self.delay)
|
|
203
|
-
self.delay +=
|
|
210
|
+
self.delay += self.delay
|
|
204
211
|
|
|
205
212
|
def async_add_listener(
|
|
206
213
|
self, callback: Callable, filters: dict | None = None
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0}/teslemetry_stream.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
{teslemetry_stream-0.2.2 → teslemetry_stream-0.3.0}/teslemetry_stream.egg-info/top_level.txt
RENAMED
|
File without changes
|