Get real time Twitch/Youtube events through Streamlabs SocketIO API
Project description
A Python client for Streamlabs Socket API
For an outline of past/future changes refer to: CHANGELOG
Requirements
-
A Streamlabs Socket API key.
- You can acquire this by logging into your Streamlabs.com dashboard then
Settings->Api Settings->API Tokens
- You can acquire this by logging into your Streamlabs.com dashboard then
-
Python 3.8 or greater
How to install using pip
pip install streamlabsio
How to Use
You may store your api key in a config.toml
file, its contents should resemble:
[streamlabs]
token = "<apikey>"
Place it next to your __main__.py
file.
Otherwise:
You may pass it as a keyword argument.
Example __main__.py
:
import streamlabsio
def on_twitch_event(event, data):
print(f"{event}: {data.attrs()}")
def main():
with streamlabsio.connect(token="<apikey>") as client:
client.obs.on("streamlabs", on_twitch_event)
client.obs.on("twitch_account", on_twitch_event)
# run for 30 seconds then disconnect client from server
client.sio.sleep(30)
if __name__ == "__main__":
main()
note
From the SocketIO docs, client.sio.wait()
may be used if your application has nothing to do in the main thread.
Client class
streamlabsio.connect(token="<apikey>", raw=False)
The following keyword arguments may be passed:
token
: str Streamlabs SocketIO api token.raw
: boolean=False Receive raw data messages as json objects.
The following attribute is available:
raw
: boolean Toggle raw mode at runtime.
Attributes
For event data you may inspect the available attributes using attrs()
.
example:
def on_twitch_event(event, data):
print(f"{event}: {data.attrs()}")
Errors
SteamlabsSIOConnectionError
: Exception raised when connection errors occur
Logging
To view raw incoming event data set logging level to DEBUG. Check debug
example.
Official Documentation
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 streamlabsio-1.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ccbbf203021b2d249c0a9f3c65241c05604e2ded85f9630c95d8094ae2288c8b |
|
MD5 | f6390cda4d5cf532fb50e85b4bc457ad |
|
BLAKE2b-256 | fe1c2c459e600163dd541289bbdea18c8fe27a07fa77b158e93bd3f75ecdf698 |