From e42b54197d88cd14cd2c27b4dd20523040bc7258 Mon Sep 17 00:00:00 2001 From: Alexey Khit Date: Thu, 31 Dec 2020 22:30:22 +0300 Subject: [PATCH] Add vk and ok video support --- custom_components/yandex_station/core/utils.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/custom_components/yandex_station/core/utils.py b/custom_components/yandex_station/core/utils.py index 88a351e..9de8aff 100644 --- a/custom_components/yandex_station/core/utils.py +++ b/custom_components/yandex_station/core/utils.py @@ -156,6 +156,9 @@ def play_video_by_descriptor(provider: str, item_id: str): 'music.yandex': re.compile( r'https://music\.yandex\.ru/.*(artist|track|album)/(\d+)'), 'kinopoisk.id': re.compile(r'https?://www\.kinopoisk\.ru/film/(\d+)/'), + 'yavideo': re.compile( + r'(https?://ok\.ru/video/\d+|https?://vk.com/video-?[0-9_]+)'), + 'vk': re.compile(r'https://vk\.com/.*(video-?[0-9_]+)'), } @@ -163,9 +166,13 @@ async def get_media_payload(text: str, session): for k, v in RE_MEDIA.items(): m = v.search(text) if m: - if k in ('youtube', 'kinopoisk', 'strm'): + if k in ('youtube', 'kinopoisk', 'strm', 'yavideo'): return play_video_by_descriptor(k, m[1]) + elif k == 'vk': + url = 'https://vk.com/' + m[1] + return play_video_by_descriptor('yavideo', url) + elif k == 'music.yandex.playlist': uid = await get_userid_v2(session, m[1]) if uid: