Как открыть приложение ютуб на яндекс станции
Перейти к содержимому

Как открыть приложение ютуб на яндекс станции

  • автор:

Дорабатываем Яндекс.Станцию для просмотра YouTube

На Яндекс.Станции неудобно смотреть YouTube. Нет рекомендаций, подписок и даже поиск нормально не работает. Поэтому я написал телеграмм бота для отправки на неё любого видео.

Под катом история, как я это сделал несмотря на то, что официального открытого API нет.

С чего все началось?

Я инженер. Постоянно изучаю, как работают разные технологии и вещи вокруг, а также делаю много интересных проектов сам. Когда друзья подарили мне Яндекс.Станцию, я зареверсил протокол активации и развил идею передачи данных, ориентированной на wow-эффект.

У меня глупый (не smart) телевизор, а в качестве основной медиа приставки я использую Станцию. Все отлично, да только YouTube смотреть на ней совсем неудобно. Нельзя войти в аккаунт Ютуба, а значит, никаких рекомендаций и подписок. Кроме того, поиск по видео в Станции, как я понял, осуществляется через Яндекс.Видео. К сожалению такая схема не очень хорошо работает. Иногда не находятся видео даже если дословно произнести название, а новые видео вообще нельзя посмотреть, пока поисковик Яндекса их не проиндексирует.

Я почти смирился с тем, что YouTube на Станции смотреть нельзя, но все изменилось пару недель назад.

Что же произошло?

В субботу утром я решил посмотреть последний сезон «Кремниевой долины». Зашел на «Кинопоиск» и увидел следующее:

После клика по кнопке видео улетело на Яндекс.Станцию и воспроизвелось дальше там. Прямо как ChromeCast или AirPlay. Восторг! Но я обрадовался не самому функционалу, а потенциальной возможности отправить любое видео на станцию.

Я и думать забыл про сериал — на все выходные ушел в реверс инжиниринг и разработку.

Давайте разбираться.

Открываем «Кинопоиск» или «Яндекс.Видео» в Хроме — там отличные инструменты для web разработки. Находим нужную кнопку, кликаем правой клавишей мыши, выбираем «Исследовать элемент».

Можно много, что там поизучать, но нас интересует, какой запрос выполняется при клике по этой кнопке. Переходим во вкладку «Network» инструментов разработчика и смотрим запросы.

Да, отлетает много статистики, но сразу видно 2 интересных запроса. Это devices_online_stats и station.

Получаем список устройств

devices_online_stats — запрос активных устройств пользователя. Простой GET запрос. Если вы авторизованы в Яндексе, то можете узнать о своих устройствах просто открыв в браузере ссылку:

Интересно и достаточно интуитивно. ID Станции в примере я заменил на звездочки на всякий случай, но именно он понадобится нам в дальнейшем.

Воспроизводим видео

Запрос на yandex.ru/video/station отправляется методом POST. Повторим его из консоли, получив команду следующим образом:

Запускаем в терминале и получаем ответ:

Через пару секунд видео запускается на станции. Успех!

Собираем

Я удалил все «лишние» поля из запроса так, чтобы он остался рабочим. Для отправки видео на Станцию в тело и заголовки POST запроса нужно положить всего 4 параметра:

  • SessionID — авторизация в Яндексе
  • x-csrf-token
  • provider_item_id — ссылка на видео (или идентификатор для некоторых сервисов)
  • device — Идентификатор устройства, который мы получили ранее

К этому моменту я уже стал оборачивать все в скрипт на Python. В итоге функция для отправки видео на станцию выглядит примерно так:

Вы могли заметить, что я добавляю поле player_id если прислана ссылка с Ютуба. Дело в том, что на Станции есть несколько плееров с кодами youtube, vh и ott. По умолчанию используется vh, но тогда ломается превью и название ролика. Кроме того, его состояние не сбрасывается при смене ролика, что часто вызывает ошибки (Возможно, не все поля в запросе были «лишними»). Плеер ott, как я понял, используется для стриминговых сервисов, а это значит, что в перспективе можно смотреть IPTV через станцию.

Что в итоге?

Сейчас у меня есть бот, через которого мы отправляем видео с Ютуба на Станцию. Просто нажимаем «Поделиться» в приложении YouTube и отправляем ссылку Боту. Кстати, я назвал его «Ящик» и сделал логотип).

Я не стал делать его публичным, чтобы не собирать логины и пароли. Но вы можете развернуть такого же для себя или доработать для OAuth авторизации или отправки видео с других сайтов. Все исходники доступны на GitHub.

Я хотел сделать расширение для браузера, чтобы работало совсем как AirPlay с любыми видео, но понял, что удобнее отправлять из приложения с телефона. А для такого сценария лучше подходит бот. Вот видео его работы:

Заключение

Когда инженеру нехватает функционала, он доделывает его сам. Мы теперь действительно регулярно пользуемся этим ботом — очень удобно 🙂

Разработчики Яндекса, пожалуйста не ломайте этот запрос. Это не уязвимость. Работает только с аутентификацией. А если есть возможность — сделайте API устройств публичным — столько всего можно еще сделать!

Как транслировать и смотреть YouTube через Яндекс станцию

Умную колонку с Алисой можно не только слушать, но и использовать для управления телевизором.

Сегодня мы покажем вам как включить ютуб на яндекс станции…

Это довольно легко и быстро

⇓Но перед эти вам нужно знать ⇓

Введение – что нужно знать прежде

Виды колонок:

Яндекс станция выпускается в разных версиях:

  1. Стандартная
  2. Максимальная
  3. Мини и лайт

  • Стандарт и макс имеют hdmi выход. Это позволяет подключать их к любому телевизору с помощью кабеля. При этом даже не обязательно иметь смарт ТВ, даже «старички» могут показывать то, что вы попросите у колонки.
  • Мини и лайт нельзя подключить через провод, но вы можете подружить их со смарт телевизором, к этому мы еще вернемся.

Простой телевизор:

Часто пользователи, выбирая себе голосового помощника, интересуются, может ли яндекс станция включить ютуб, если нет умного телевизора? Для этого есть два способа:

1. Стандартная или Макс станция + провод HDMI.

2. Любая колонка с Алисой + модуль яндекс ТВ.

В первом случае необходимо просто отправить видео с ютуба на колонку, и она воспроизведет его на экране. Во втором, приобретая ТВ-модуль, вы получаете более функциональный проигрыватель, которым можно управлять как с пульта управления от модуля, так и с помощью голосовых команд.

Самый надежный и самый функциональный способ подключения, который подходит к любому телевизору, но не подходит для маленьких версий яндекс-станции. Вы просто подключаете умную колонку через провод к ТВ, после чего Алиса подскажет, как завершить настройку. Теперь вы можете подключить и смотреть ютуб через яндекс станцию, а также отправлять на нее любое видео с вашего смартфона.

Инструкция

  1. Убедитесь, что смартфон и станция с Алисой подключены к одному домашнему wifi.
  2. Убедитесь, что на смартфоне в приложении Яндекс осуществлен вход в тот же аккаунт, что и на умной колонке.
  3. Если это нужно, обновите яндекс-приложение до последней версии.
  4. На смартфоне откройте приложение youtube, откройте видеоролик.
  5. Под видео нажмите «Поделиться»
  6. После чего выберите вариант «Отправить на устройство».Возможно перед эти нужно будет кликнуть по кнопке “еще”
  7. В списке устройств найдите фиолетовый значок со значком «Я».

Готово ��

Мини и смарт тв

Для мини-колонок есть еще одна возможность подключения. Он подойдет для телевизоров самсунг начиная от 6 поколения.

Как транслировать ютуб на яндекс станцию в таком случае:

  1. Необходимо зарегистрировать самсунг-аккаунт и установить на смартфоне приложение Smart Things.
  2. В приложении авторизуемся и добавляем свое устройство (можно найти по модели телевизора).
  3. В приложении яндекс также авторизуемся и добавляем новое устройство. Нужно нажать на значок с кубиками снизу, затем выбрать Устройства – управление – другое – SmartThings – объединить аккаунты.
  4. Теперь можно отправить видео с ютуб на колонку, как описано выше.

На этом все, теперь ваш ТВ будет подчиняться голосовым командам, которые вы задаете колонке. Есть и недостатки. Во-первых, вы не сможете просить включить кино из кинопоиска. Во-вторых, будет отсутствовать синхронизация с ютуб аккаунтом. То есть у вас не будет истории просмотров, подписок и рекомендации, вы сможете только включать определенный ролик.

Как отправить видео YouTube на Станцию

На момент написания статьи на Яндекс.Станции и Яндекс.Модуле просмотр видео с Youtube очень урезан: нет входа в аккаунт, а значит — отсутствуют тренды, подписки, рекомендованные видео, поиск, трансляции, итд. Частично проблему решает навык Мой видеоплеер, но все же он не покрывает все пользовательские сценарии.

Для решения этой проблемы участник комьюнити @HeyAlyosha написал расширение для Яндекс.Браузера «YaStation Cast». После его установки становится возможным транслировать практически все видео и трансляции YouTube на Яндекс.Станцию или Модуль точно так же, как это официально реализовано в Яндекс.Видео. Если вы хотите отправить видео с Android смартфона, попробуйте приложение YCast.

Возможности расширения

  • Отправка практически любого видео YouTube на Яндекс.Станцию или Модуль.
  • Отправка трансляции (стрима) с YouTube на Яндекс.Станцию или Модуль.
  • Возможность быстро найти видео с Youtube на Я.Видео по его названию.
  • Быстрый импорт в расширение всех подключенных устройств.

Безопасно ли это? Какие данные передаются?

  • Процесс трансляции на Станцию или Модуль сделан точно теми же средствами, что и обычная трансляция из Я.Видео, так что процесс безопасен.
  • Все данные хранятся в памяти браузера и передаются только между Яндексом, YouTube и используемыми сервисами (Quasar, закрытое API Станции и Модуля).
  • При запросах расширение использует ваши cookie, что позволяет лучше работать с настройками и историей.

Мне нравится! Как начать пользоваться?

Инструкция зависит от устройства:

На ПК (настольные компьютеры, ноутбуки)

После установки расширения при заходе на YouTube в левом верхнем углу каждого видео появятся 2 значка. Разберём их различия:

2019-06-11 07-09-07.png

  1. Нажатие на эту иконку сразу отправляет видео на Станцию или Модуль.
  2. Нажатие на эту иконку открывает страницу Яндекс.Видео с поисковым запросом по названию этого видео (сделано на случай изменения существующего API трансляции).

При нажатии на первую кнопку появится окно с привязанными устройствами. Если никакие устройства не привязаны:

  • нажмите «Импортировать устройства»,
  • После появления списка устройств, нажмите на нужное для трансляции.

Теперь все устройства сохранены в памяти браузера.

При изменении аккаунта, ID у устройств, или привязки/изменения новых/старых устройств обязательно повторите импорт. Подробности на скриншоте справа.

На смартфонах (полностью поддерживается только на Андроид)

Появилось альтерантивное решение, это приложение YCast. Откройте YouTube видео в телефоне, выберите Поделиться и укажите приложение YCast.

Установка

  1. Если была установлена альфа версия расширения (0.0.1) через режим разработчика, то удаляем её на странице browser://extensions/ или chrome://extensions/ . Выключаем режим разработчика (ползунок в правом верхнем углу)
  2. Скачиваем и устанавливаем Яндекс.Браузер — browser.yandex.ru, для смартфонов — Мобильный Яндекс.браузер в Google Play
  3. Устаналиваем расширение Ya.Station Cast — Каталог Расширений Chrome
  4. После установки производим импорт устройств. Нужно быть авторизованным в Яндексе под аккаунтом, к которому привязаны Станция и Модуль.

Обновление расширения

Первый способ

  1. В браузере заходим на страницу browser://extensions/ или chrome://extensions/ . Выключаем режим разработчика (ползунок в правом верхнем углу)
  2. В верхней панели нажимаем «Обновить» или «Обновить всё»
  3. После сообщения об успешном обновлении, выключаем режим разработчика.

Второй способ

  1. Переустановить расширение (удалить/установить).

Третий способ

  1. Ничего не делать, расширение обновится автоматически (от 1 дня до 1 недели).

Возможные проблемы и методы решения

При импорте устройств ничего не происходит/вылезает ошибка «Ошибка при подключении к серверу Яндекса»

Данная ошибка встречается в Яндекс Браузер Бета и некоторых актуальных версиях Яндекс браузера. Решения на данный момент нет: Яндекс.Браузер блокирует запросы расширения. Сейчас общаюсь с поддержкой Яндекс.Браузера по этому поводу, как станет понятно с чем это связано — напишу. Единственный выход на данный момент — пользоваться Хромом или Оперой или попытаться полностью переустановить Я.Браузер (с удалением БРАУЗЕРА, всей истории и настроек, а затем повторной установкой браузера (не бетой)) .

Можно ли на Яндекс станции смотреть ютуб?

Из приложенияУбедитесь, что ваш смартфон или планшет подключен к той же сети Wi-Fi, что и Станция.Откройте приложение КиноПоиска и войдите в аккаунт на Яндексе, который вы используете для управления Станцией.В правом верхнем углу главного экрана нажмите значок .Выберите Станцию в списке устройств.

Как включить ютуб на Алисе?

Войдите в аккаунт на Яндексе, который вы используете для управления Станцией. Введите в поисковой строке название фильма или ролика, который хотите посмотреть. В результатах поиска нажмите значок или кнопку Отправить на устройство. Выберите Станцию в списке устройств.

Сколько стоит КиноПоиск?

Обычная подписка стоит 199 рублей в месяц. Семейная версия подписки Плюс Мульти на четырех человек — 299 рублей.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *