Teslemetry Streaming API library for Python
Project description
Teslemetry Stream Library
This is an asynchronous Python 3 library that connects to the Teslemetry Stream server and provides Tesla Fleet Telemetry using server side events.
Installation
pip install teslemetry-stream
Usage
The TeslemetryStream class requires:
- session: an aiohttp.ClientSession
- access_token: an access token from the Teslemetry console
- vin: your Tesla's Vehicle Identification Number
The TeslemetryStream instance can then be configured with:
add_field(field, interval)
remove_field(field)
add_alert(alert)
remove_alert(alert)
The full list of possible values are provided in TeslemetryStream.Fields
and TeslemetryStream.Alerts
To connect, either use async with
on the instance, call connect()
, or register an async callback on listen()
, which will connect automatically.
Using connect()
or listen()
will require you to close the session manually using close()
.
Example
The following example puts the listening loop in the background, then stopping after 20 seconds.
async def main():
async with aiohttp.ClientSession() as session:
stream = TeslemetryStream(
access_token="<token>",
vin="<vin>",
session=session,
)
await stream.connect()
async def callback(event):
print(event)
asyncio.create_task(stream.listen(callback))
await asyncio.sleep(20)
await stream.close()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for teslemetry_stream-0.0.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e331103363ad417ec74de489ced441aee442ccd437639389c694a50b5217d095 |
|
MD5 | 0b04be2f9b4dfb79ab928835336f105c |
|
BLAKE2b-256 | 4ea2ebe51c6d054f43b413a0e4d3daec198403ec3f3c3a0f5cb192eb511e12b9 |