Добавлен get_user_emotes
This commit is contained in:
@ -940,3 +940,38 @@ class TwitchAPIClient(AioHTTPXClient):
|
||||
|
||||
case _:
|
||||
raise s.Error(req.status_code, 'Internal Server Error')
|
||||
|
||||
async def get_user_emotes(
|
||||
self,
|
||||
access_token: str,
|
||||
user_id: int | str,
|
||||
after: str | None = None,
|
||||
broadcaster_id: int | str | None = None,
|
||||
cache_time: int | None = None,
|
||||
):
|
||||
req = await self.get(
|
||||
'/chat/emotes/global',
|
||||
headers=self.clean_dict(
|
||||
{
|
||||
'Authorization': f'Bearer {access_token}',
|
||||
'X-Cache-TTL': cache_time,
|
||||
}
|
||||
),
|
||||
params=self.clean_dict(
|
||||
{
|
||||
'user_id': user_id,
|
||||
'after': after,
|
||||
'broadcaster_id': broadcaster_id,
|
||||
}
|
||||
),
|
||||
)
|
||||
|
||||
match req.status_code:
|
||||
case st.OK:
|
||||
return s.UserEmotes.model_validate(req.json())
|
||||
|
||||
case st.UNAUTHORIZED:
|
||||
raise s.Error(req.status_code, req.json()['message'])
|
||||
|
||||
case _:
|
||||
raise s.Error(req.status_code, 'Internal Server Error')
|
||||
|
||||
@ -492,7 +492,22 @@ class ChannelEmote(BaseModel):
|
||||
name: str
|
||||
images: ChannelEmoteImages
|
||||
tier: int
|
||||
emote_type: Literal['bitstier', 'follower', 'subscriptions']
|
||||
emote_type: Literal[
|
||||
'none',
|
||||
'bitstier',
|
||||
'follower',
|
||||
'subscriptions',
|
||||
'channelpoints',
|
||||
'rewards',
|
||||
'hypetrain',
|
||||
'prime',
|
||||
'turbo',
|
||||
'smilies',
|
||||
'globals',
|
||||
'owl2019',
|
||||
'twofactor',
|
||||
'limitedtime'
|
||||
]
|
||||
format: list[Literal['animated', 'static']]
|
||||
scale: list[Literal['1.0', '2.0', '3.0']]
|
||||
theme_mode: list[Literal['dark', 'light']]
|
||||
@ -585,3 +600,7 @@ class SharedChatSession(BaseModel):
|
||||
model_config = ConfigDict(extra='forbid')
|
||||
|
||||
data: list[SharedChatSessionData]
|
||||
|
||||
|
||||
class UserEmotes(ChannelEmotes):
|
||||
pagination: Pagination | dict[Any, Any] | None = None
|
||||
|
||||
Reference in New Issue
Block a user