Helper functions#
- async twitchAPI.helper.first(gen)#
Returns the first value of the given AsyncGenerator
Example:
user = await first(twitch.get_users())
- async twitchAPI.helper.limit(gen, num)#
Limits the number of entries from the given AsyncGenerator to up to num.
This example will give you the currently 5 most watched streams:
async for stream in limit(twitch.get_streams(), 5): print(stream.title)
- Parameters:
- Raises:
ValueError – if num is less than 1
- Return type:
AsyncGenerator
[TypeVar
(T
),None
]
- twitchAPI.helper.TWITCH_API_BASE_URL: str = 'https://api.twitch.tv/helix/'#
The base url to the Twitch API endpoints
- twitchAPI.helper.TWITCH_AUTH_BASE_URL: str = 'https://id.twitch.tv/oauth2/'#
The base url to the twitch authentication endpoints
- twitchAPI.helper.TWITCH_PUB_SUB_URL: str = 'wss://pubsub-edge.twitch.tv'#
The url to the Twitch PubSub websocket
- twitchAPI.helper.TWITCH_CHAT_URL: str = 'wss://irc-ws.chat.twitch.tv:443'#
The url to the Twitch Chat websocket
- twitchAPI.helper.TWITCH_EVENT_SUB_WEBSOCKET_URL: str = 'wss://eventsub.wss.twitch.tv/ws'#
The url to the Twitch EventSub websocket
- twitchAPI.helper.build_url(url, params, remove_none=False, split_lists=False, enum_value=True)#
Build a valid url string
- Parameters:
remove_none¶ (
bool
) – if set all params that have a None value get removedDefault:False
split_lists¶ (
bool
) – if set all params that are a list will be split over multiple url parameter with the same nameDefault:False
enum_value¶ (
bool
) – if true, automatically get value string from Enum valuesDefault:True
- Return type:
- Returns:
URL
- twitchAPI.helper.build_scope(scopes)#
Builds a valid scope string from list
- twitchAPI.helper.fields_to_enum(data, fields, _enum, default)#
Iterates a dict or list and tries to replace every dict entry with key in fields with the correct Enum value
- twitchAPI.helper.make_enum(data, _enum, default)#
Takes in a value and maps it to the given Enum. If the value is not valid it will take the default.
- twitchAPI.helper.enum_value_or_none(enum)#
Returns the value of the given Enum member or None
- twitchAPI.helper.datetime_to_str(dt)#
ISO-8601 formats the given datetime, returns None if datetime is None
- twitchAPI.helper.remove_none_values(d)#
Removes items where the value is None from the dict. This returns a new dict and does not manipulate the one given.
- enum twitchAPI.helper.ResultType(value)#
Bases:
Enum
An enumeration.
Valid values are as follows:
- RETURN_TYPE = <ResultType.RETURN_TYPE: 0>#
- STATUS_CODE = <ResultType.STATUS_CODE: 1>#
- TEXT = <ResultType.TEXT: 2>#
- class twitchAPI.helper.RateLimitBucket#
Bases:
object
Handler used for chat rate limiting
- __init__(bucket_length, bucket_size, scope, logger=None)#
- twitchAPI.helper.done_task_callback(logger, task)#
helper function used as a asyncio task done callback