Сессии радио
- class yandex_music._client.rotor_sessions.RotorSessionsMixin
Сессии радио.
Миксин для методов, связанных с сессиями радио (rotor session) и комбинированными сессиями (треки и клипы).
Note
Сессия является актуальным способом слушать радио: она создаётся по сидам, выдаёт партии треков и принимает обратную связь о прослушивании.
- rotor_session_new(seeds, queue=None, track_to_start_from=None, include_tracks_in_response=None, include_wave_model=None, interactive=None, incognito=None, child=None, allow_explicit=None, **kwargs)
Создание новой сессии радио.
Note
Пример seeds: user:onyourwave, genre:rock, track:12345, artist:12345. В качестве сидов можно передавать и настройки волны, например, settingDiversity:discover (см.
yandex_music.Value.serialized_seed).Треки (track_to_start_from, queue) передаются как id или id:album_id.
- Parameters:
seeds (
str|listизstr) – Сиды сессии.queue (
listизstr, optional) – Уже проигранные треки, чтобы не получить их повторно.track_to_start_from (
str, optional) – Трек, с которого начать сессию.include_tracks_in_response (
bool, optional) – Возвращать ли треки в ответе. По умолчанию на стороне API да.include_wave_model (
bool, optional) – Возвращать ли модель волны (RotorSession.wave).interactive (
bool, optional) – Интерактивная ли сессия.incognito (
bool, optional) – Не учитывать прослушивания в рекомендациях.child (
bool, optional) – Детский режим.allow_explicit (
bool, optional) – Разрешить ли контент с ненормативной лексикой.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Сессия радио или
None.- Return type:
yandex_music.RotorSession|None- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.
- rotor_session_clone(radio_session_id, queue=None, track_to_start_from=None, include_tracks_in_response=None, include_wave_model=None, interactive=None, incognito=None, child=None, allow_explicit=None, **kwargs)
Создание новой сессии радио на основе существующей (с теми же сидами).
- Parameters:
radio_session_id (
str) – Уникальный идентификатор исходной сессии.queue (
listизstr, optional) – Уже проигранные треки, чтобы не получить их повторно.track_to_start_from (
str, optional) – Трек, с которого начать сессию.include_tracks_in_response (
bool, optional) – Возвращать ли треки в ответе.include_wave_model (
bool, optional) – Возвращать ли модель волны.interactive (
bool, optional) – Интерактивная ли сессия.incognito (
bool, optional) – Не учитывать прослушивания в рекомендациях.child (
bool, optional) – Детский режим.allow_explicit (
bool, optional) – Разрешить ли контент с ненормативной лексикой.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Новая сессия радио или
None.- Return type:
yandex_music.RotorSession|None- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.
- rotor_session_tracks(radio_session_id, queue=None, feedbacks=None, **kwargs)
Получение следующей партии треков сессии радио.
Note
Для несуществующей сессии API не возвращает ошибку, а выставляет
yandex_music.RotorSessionTracks.unknown_session.- Parameters:
radio_session_id (
str) – Уникальный идентификатор сессии.queue (
listизstr, optional) – Уже полученные треки (id или id:album_id), чтобы не получить их повторно.feedbacks (
listизyandex_music.SessionFeedback, optional) – Обратная связь, отправляемая вместе с запросом.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Партия треков или
None.- Return type:
- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.
- rotor_session_feedback(radio_session_id, event, batch_id=None, from_=None, **kwargs)
Отправка обратной связи сессии радио.
Note
Обязательные поля события зависят от его типа, см.
yandex_music.SessionEvent.Для частых событий есть отдельные методы:
rotor_session_feedback_radio_started(),rotor_session_feedback_track_started(),rotor_session_feedback_track_finished(),rotor_session_feedback_skip().- Parameters:
radio_session_id (
str) – Уникальный идентификатор сессии.event (
yandex_music.SessionEvent) – Событие.batch_id (
str, optional) – Уникальный идентификатор партии треков.from (
str, optional) – Откуда начато воспроизведение.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Trueпри успешном выполнении запроса, иначеFalse.- Return type:
bool- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.
- rotor_session_feedback_radio_started(radio_session_id, batch_id=None, from_=None, timestamp=None, **kwargs)
Отправка обратной связи сессии радио: начало прослушивания радио.
- Parameters:
radio_session_id (
str) – Уникальный идентификатор сессии.batch_id (
str, optional) – Уникальный идентификатор партии треков.from (
str, optional) – Откуда начато воспроизведение.timestamp (
str|float|int, optional) – Время события в формате ISO 8601. По умолчанию текущее.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Trueпри успешном выполнении запроса, иначеFalse.- Return type:
bool- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.
- rotor_session_feedback_track_started(radio_session_id, track_id, batch_id=None, timestamp=None, **kwargs)
Отправка обратной связи сессии радио: начало воспроизведения трека.
- Parameters:
radio_session_id (
str) – Уникальный идентификатор сессии.track_id (
str|int) – Уникальный идентификатор трека (id или id:album_id).batch_id (
str, optional) – Уникальный идентификатор партии треков.timestamp (
str|float|int, optional) – Время события в формате ISO 8601. По умолчанию текущее.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Trueпри успешном выполнении запроса, иначеFalse.- Return type:
bool- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.
- rotor_session_feedback_track_finished(radio_session_id, track_id, total_played_seconds, batch_id=None, timestamp=None, **kwargs)
Отправка обратной связи сессии радио: окончание воспроизведения трека.
- Parameters:
radio_session_id (
str) – Уникальный идентификатор сессии.track_id (
str|int) – Уникальный идентификатор трека (id или id:album_id).total_played_seconds (
int|float) – Сколько секунд трека было проиграно.batch_id (
str, optional) – Уникальный идентификатор партии треков.timestamp (
str|float|int, optional) – Время события в формате ISO 8601. По умолчанию текущее.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Trueпри успешном выполнении запроса, иначеFalse.- Return type:
bool- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.
- rotor_session_feedback_skip(radio_session_id, track_id, total_played_seconds, batch_id=None, timestamp=None, **kwargs)
Отправка обратной связи сессии радио: пропуск трека.
- Parameters:
radio_session_id (
str) – Уникальный идентификатор сессии.track_id (
str|int) – Уникальный идентификатор трека (id или id:album_id).total_played_seconds (
int|float) – Сколько секунд трека было проиграно до пропуска.batch_id (
str, optional) – Уникальный идентификатор партии треков.timestamp (
str|float|int, optional) – Время события в формате ISO 8601. По умолчанию текущее.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Trueпри успешном выполнении запроса, иначеFalse.- Return type:
bool- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.
- rotor_session_feedbacks(radio_session_id, feedbacks, **kwargs)
Отправка нескольких событий обратной связи сессии радио одним запросом.
- Parameters:
radio_session_id (
str) – Уникальный идентификатор сессии.feedbacks (
listизyandex_music.SessionFeedback) – Обратная связь.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Trueпри успешном выполнении запроса, иначеFalse.- Return type:
bool- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.
- rotor_sessions_feedbacks(sessions, **kwargs)
Отправка обратной связи сразу по нескольким сессиям радио.
- Parameters:
sessions (
listизyandex_music.SessionFeedbacks) – Обратная связь по сессиям.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Trueпри успешном выполнении запроса, иначеFalse.- Return type:
bool- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.
- rotor_combined_session_new(supported_types=None, queue=None, child=None, allow_explicit=None, **kwargs)
Создание комбинированной сессии радио (треки и клипы).
Note
Известные значения supported_types: CLIP, TRACK.
- Parameters:
supported_types (
listизstr, optional) – Типы элементов, которые поддерживает клиент.queue (
listизyandex_music.CombinedSessionQueueItem, optional) – Уже полученные элементы.child (
bool, optional) – Детский режим.allow_explicit (
bool, optional) – Разрешить ли контент с ненормативной лексикой.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Комбинированная сессия или
None.- Return type:
yandex_music.CombinedSession|None- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.
- rotor_combined_session_next(session_id, queue=None, **kwargs)
Получение следующих элементов комбинированной сессии радио.
- Parameters:
session_id (
str) – Уникальный идентификатор комбинированной сессии.queue (
listизyandex_music.CombinedSessionQueueItem, optional) – Уже полученные элементы.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Следующие элементы сессии или
None.- Return type:
yandex_music.CombinedSession|None- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.
- rotor_combined_session_landing(supported_types=None, child=None, allow_explicit=None, **kwargs)
Получение витрины комбинированной сессии радио (например, «Время клипов»).
Note
Известные значения supported_types: CLIP, TRACK.
- Parameters:
supported_types (
listизstr, optional) – Типы элементов, которые поддерживает клиент.child (
bool, optional) – Детский режим.allow_explicit (
bool, optional) – Разрешить ли контент с ненормативной лексикой.**kwargs – Произвольные именованные аргументы (будут переданы в запрос).
- Returns:
Витрина или
None.- Return type:
- Raises:
yandex_music.exceptions.YandexMusicError – Базовое исключение библиотеки.