Wrapper for 7TV EventAPI.
Project description
7TV EventAPI Wrapper
This is a Python wrapper for the 7TV EventAPI, which provides async access to the websocket events on their Emote Platform.
Requirements
- Python 3.8 or higher
Installation
You can install the 7TV EventAPI Wrapper using pip. Open your terminal and run the following command:
pip install eventapi
Usage
Here's an simple example of how to use wrapper:
import asyncio
from eventapi.EventApi import EventApi
from eventapi.WebSocket import (
Dispatch,
EventType,
ResponseTypes,
SubscriptionCondition,
SubscriptionData,
)
async def callback(data: ResponseTypes):
if isinstance(data, Dispatch):
print(f"Event data type: {data.type}")
print(f"Event data body: {data.body}")
else:
print(f"Raw event data: {data.raw_data}")
async def main():
# create instance of EventApi with message callback
app = EventApi(callback=callback)
# connect to websocket
await app.connect()
# create subscription with specified condition
condition = SubscriptionCondition(object_id="6433b7cec07d26f890dd2d01")
subscription = SubscriptionData(
subscription_type=EventType.EMOTE_SET_ALL, condition=condition
)
await app.subscribe(subscription_data=subscription)
# run forever
await asyncio.Future()
asyncio.run(main())
Contributing
Contributions are welcome! If you encounter any issues or have suggestions for improvements, please open an issue or submit a pull request on the GitHub repository.
License
This project is licensed under the MIT License.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
eventapi-1.0.2.tar.gz
(6.5 kB
view hashes)