Если инфорация оказалась интересна и/или полезна, не побрезгуйте, оставьте комментарий ;)

четверг, 20 февраля 2020 г.

Дополнение YouTube для медиаплейера XBMC Kodi перестал работать

Обновлено 2021-03-31
 
Перестало работать дополнение YouTube для медиаплейера XBMC Kodi (у меня вариант OSMC).

Ошибка следующая:
Youtube: access Not configured
Project 294899064488 has been scheduled for deletion


Ответ найден на форуме поддержки Kodi
https://forum.kodi.tv/showthread.php?tid=348464&pid=2925054#pid2925054

Google что-то поменял в политиках авторизации. Разработчик дополнения был вынужде удалить свои ключи. Теперь каждый пользователь дополнения должен получить свой собственный ключ разработчика.

Как это сделано, написано тут
https://github.com/anxdpanic/plugin.video.youtube/wiki/Personal-API-Keys (новая ссылка)
Рекомендую начать с этого видео, так как со времени написания статьи прошло время, и, судя по вопросам в комментариях, некоторые шаги изменились.

 
Снимки экрана я взял с этого сайта, парочку заменил на свои (на русском языке. Когда сам проходил процедуру получения ключа, снимки экрана не далал, поэтому некоторые экраны уже повторить не могу.

Итак поехали.

1. Идем на сайт https://console.developers.google.com/ и заходим под своей учетной записью Гугл. На главном экране (Панель управления - Dashboard) нажимаем "Включить API и сервисы".

2. Проматываем вниз и выбираем "YouTube Data API v3"

3. Выбираем "Enable"


4. Происходит возврат на основной экран. На нем справа вверху выбираем "Создать учетные данные"

5. На следующем экране выбираем в выпадающем меню "YouTube Data API v3", в следующем "Other UI (e.g. Windows, CLI tool)". На русском это звучало "Другое, с интерфейсом пользователя, например CLI". Есть два похожих пункта, надо выбрать тот, где CLI. Далее "Данные пользователя" ("User Data"). Далее "Выбрать тип учетных данных".


6. В новом диалоге выбираем "Set up consent screen". Откроется новое окно в браузере.

7. Выбираем "Общее" (External). Нажимаем "Создать" (Create).

8. В следующем окне придумываем имя приложения. Я взял как на снимке экрана. Адрес электронной почты у меня подставился автоматически. Сохраняем кнопкой "Save"

9. Это окно больше не нужно. Возвращаемся в первое окно браузера. В нем вводим наше имя проекта из шага 7 и нажимаем "Create OAuth client ID"

10. С этого экрана можно скопироват Client ID. Он будет в формате "<много букв и цифр>.apps.googleusercontent.com". Нажимаем "Done"

11. На странице "Учетные данные" (Credentials) сверху выбираем "+ Создать учетные данные". В выпадающем списке "Ключ API"

12. В открывшемся диалоговом окне будет ваш ключ. Можно его скопировать

13. Всё. Ключи созданы. На странице "Учетные данные" будут два списка по одному значению в каждом. В первом списке наш "Ключ API". Во втором название нашего приложения

14. Выбираем "Ключ API", копируем его значение, если не сделали этого раньше

15. Заходим наше приложение в списке "Идентификаторы клиентов OAuth 2.0". Копируем идентификатор клиента и секретный ключ

16. Теперь надо наши ключи записать в настройки дополнения. На странице приведены несколько способов. Первый - вручную вбить идентификторы в настройках дополнения "Settings -> API". Но это долго.
Второй вариант - через веб-сервер дополнения. У меня веб-сервер не поднялся.

17. Самым простым для меня был третий вариант - отредактировать настройки через удаленный терминал. Заходим на приставку (если у вас Kodi стоит на медиаплейере, а не на компьютере) через SSH. В моем случае (дистрибутив OSMC) команда выглядит так:
$ ssh osmc@<osmc IP address>

Пароль по умолчанию - "osmc". Открываем с настройками на редактирование:
nano /home/osmc/.kodi/userdata/addon_data/plugin.video.youtube/api_keys.json

и вставляем ключи и идентификаторы. Для идентификатора клиента достаточно только самого ключа без суффиксов.

{
  "keys": {
    "developer": {},
    "personal": {
      "api_key": "AIXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOs",
      "client_id": "44YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYk2",
      "client_secret": "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"
    }
  }
}

18. Необязательный пункт. Если это ваши не первые ключи. То есть по какой-то причине вы сгенерировали новые (я это сделал, чтоб ответить на вопрос читателя), то помните, что ключи хранятся не только в файле api_keys.json, но и в файле settings.xml.

Поэтому надо вставить новые ключи в
/home/osmc/.kodi/userdata/addon_data/plugin.video.youtube/api_keys.json
как написано в пункте 17, а также в файле
/home/osmc/.kodi/userdata/addon_data/plugin.video.youtube/settings.xml

Надо очистить значения в следующих полях:
<setting id="youtube.api.id"></setting>
<setting id="youtube.api.key"></setting>
<setting id="youtube.api.secret"></setting>


19. Перезагружаем приставку. Проверяем. Должно работать.

P. S. Откорректировал текст в пунктах 4 и 5. Для этого удалил настройки своей учетной записи и повторил путь с пункта 3. Хочу отметить, что получить все экраны, как это было в первый раз, мне не удалось. То есть часть настроек в системе где-то осталось. Но это не помешало получить тот же конечный результат. Основная цель, к которой стремимся - создать "Ключ API" и "Идентификаторы клиентов OAuth 2.0". Точнее вначале OAuth, а затем Ключ API. Их можно создать последовательно выбрав пункты в выпадающем списке "Создать учетные данные" на странице, как это ни странно, "Учетные данные".

34 комментария:

Unknown комментирует...

после пункта 3 я не приступаю к шагу 4, поскольку вместо указанного на скриншоте окна у меня открывается вкладка "общая информация" с единственной кнопкой "создать учетные данные".

Евгений комментирует...

Внес изменения в текст и поменял снимки экрана. Надеюсь, это поможет. Удачи!

Unknown комментирует...

Да, молодец. Работает, респект и уважуха.

Vlad комментирует...

Супер,спасибо!

Анонимный комментирует...

Спасибо!!!

Анонимный комментирует...

Спасибо большое! Все работает!

Анонимный комментирует...

Огромное спасибо! Работает. В зависимости от устройства на котором работает Kodi возможно потребуется дать разрешение, путем ввода предлагаемого кода на google.com/device
После этого будет работать.

Евгений комментирует...

Спасибо за дополнение. Кому-то из читателей может помочь.

Евгений комментирует...

Большое спасибо! Сохранил в закладках, буду пробовать, как будет время.

Евгений комментирует...

Отлично. Всё должно получиться.

Unknown комментирует...

Спасибо, это сработало.

Unknown комментирует...

Спасибо тебе мил человек. Нонче немного изменилось в интерфейсе, но, интуитивно понятно. Все получилось и малинка показывает тытрубу.

Евгений комментирует...

Отлично!
Прогресс не стоит на месте. DevOps и Agile, так сказать. :)

ArtyHats комментирует...

Привет, все сделал, как в инструкции, ошибка пропала, спасибо за инфу! Но появилась следующая ошибка, открываю видео, оно грузится секунд 20, не открывается и появляется ошибка: воспроизведение плейлиста прервано, не удалось воспроизвести как минимум один файл, смотри журнал, чтобы получить больше информацию. В журнале пусто. Может знаешь, в чем может быть проблема? Спасибо.

Евгений комментирует...

Добрый день.
Нет, с такой ошибкой не сталкивался. И вы пишите про плейлисты, я ими не пользуюсь. Смотрю отлельные ролики через поиск. Или запускаю автовоспроизведение предложенных роликов.
Чтобы сделал я, при условии, что раньше это работало и единственное сделанное изменение - вставка собственного ключа:
1. Проверил, что правильно скопированы ключи, не потерялись символы.
2. Проверил, что учетная запись и проект приложения на Гугле активны.
3. Проверил, что в настройках дополнения выбрано использование собственного ключа
4. Удалил все настройки дополнения YouTube в Kodi, лучше вместе с самим дополнением. Поставил и настроил его заново.
5. Проверил, что другие приложения в Kodi работают корректно. Что это не общая проблема компьютера/медиацентра.
6. Посмотрел, что нет проблем с местом на диск
7. Проверил настройки роутера, может, какие порты закрыты
8. Проверил настройки дополнения и ОС (у меня это OSMC), сколько выделено на кэш, добавил бы ещё пространства.

Если ничего не помогает, расплакался бы и ушел спать. Когда засыпаешь, всегда приходят в голову умные мысли и возможные варианты решения.

Unknown комментирует...

Спасибо за инструкцию! Очень помогло!
Скажите модно как то разрешение видеопотока до 1080 поднять?
У меня максимум 720 предлагается?

Евгений комментирует...

Добрый день!
Не смогу ничего ответить. Сейчас под рукой этой Малинки нет. Не помню, что у меня выбрано.

Unknown комментирует...

Вот спасибо!

Unknown комментирует...

Все открыл, API ключи вбил, их 3 раза все проверил, перегрузил, получил коды, подтвердил кодами из коди - получил ошибку на КОДИ - 401 - ошибка API client Все еще раз проверил - все верно вбил. Куда смотреть?

Евгений комментирует...

Готового ответа у меня нет. Посмотрите эту страницу

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

Еще рекомендуют удалять файл "access_manager.json" из директории "osmc\.kodi\userdata\addon_data\plugin.video.youtube\"

Если найдете решение, напишите в комментариях о нем.

Morger комментирует...

Спасибо! Самая доходчивая инструкция!
Работает все. Кроме поиска. Пишет что квота закончилась.
Ошибка появилась после переустановки системы.
Пробовал со старыми ключами, делал новые. Без разницы. Делал новый проект - тоже не помогло.
Kodi18.9 @ mint xfce 20.04

Евгений комментирует...

Так как у меня поломалась моя OSMC с медиацентром, то мне предстоит заново проходить настройку Youtube. Если добуду новые знания, добавлю их в статью.

Unknown комментирует...

Приветствую,подскажите,ошибка-превышена квота,решить можно самостоятельно или письмо в гугл писать? если письмо- как правильно заполнить,в графе компания и т.п.?

Евгений комментирует...

Вы уж больно лаконично описали проблему. Где ошибка, что делали? Что получили?
Поверхностно теория такая. Ютуб использует ключи (идентификаторы) для каждого клиента (не браузера). Если вы обращаетесь через программное API, вам нужен ключ. Каждый ключ имеет какой-то лимит использования в сутки. Раньше был набор из 5 ключей от разработчиков дополнения к Kodi. Так как дополнением пользуются тысячи людей, то некоторые ключи достигали суточных лимитов. Тогда появлялось ваше сообщение о квоте. Чтобы исправить ошибку, надо было выбрать другой из 5 ключей. Либо использовать свой собственный.

В какой-то момент (когда написана статья) перестали действовать все 5 ключей. Гугл сменил политику. Стало можно использовать только индивидуальные ключи.

Как получить такой ключ, написано в этой статье.

Писать в Гугл с большой вероятностью бесполезно. Во всяком случае, пока вы не попробуете получить ключ. Если вы получаете такую ошибку на свой индивидуальный ключ, попробуйте создать новый.

Анонимный комментирует...

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

Евгений комментирует...

такой вопрос, вы не написали, как вставляли ключи в настройках дополнения. Вы это сделали?
Настройка несколько изменилась с момента написания статьи. Авторы инструкции делят ее на 2 части:
1. Сделать, как на видео.
2. Сделать, как написано после видео тут. Метод3 соответствует тому, что я предлагаю в пунктах 17-19.

Пока у меня подозрение, что вы не ввели ключи в дополнение, а только авторизовали устройство. Поэтому дополнение по-прежнему пытается использовать старый ключ разработчиков.

Если я ошибаюсь, опишите подробнее ваши действия, после которых появляется ошибка. Если вы на этапе, входящем в видеоинструкцию, укажите временной интервал этапа из этого видеоролика. Если вы прошли дальше, то укажите, на каком этапе в тексте (моем или по ссылке выше) вы находитесь.

Анонимный комментирует...

По поводу видео,я дошел до 4.36,ввел ключи и у меня только одна авторизация,не две,может в этом дело,раньше то же только одна была. Почему у меня одна,где копать,подскажите.

Евгений комментирует...

Смотрите. Я не могу полностью смоделировать вашу ситуацию. Устройство у меня уже частично авторизовано. Когда подхожу к шагу в ролике 4:14 (нажимаю "Авторизация"), то мне сразу выводится трехсекционный код (в ролике вначале двухсекционный). Я ввел этот трехсекционный код на странице youtube.com/activate, прошел через несколько страниц подтверждения, что я принимаю риск и хочу добавить небезопасное устройство. После этого на экране Дополнения "Youtube" я уже был в главном меню, где есть "Выход", но исчезла "Авторизация" (то есть я зашел под своей учетной записью).

Но, что важно. Всё время до этого я работал с Дополнением без авторизации. То есть она не обязательна. Возможно, обязательная первая часть с двухсекционным кодом. Я вышел из учетной записи, поиск и проигрывание по прежнему работают. На странице учетной записи Гугла (https://myaccount.google.com/permissions) в списке приложений с доступом к сервисам Гугл ("Сторонние приложения с доступом к аккаунту") моей приставки или ее ОС нет.

Чтобы я сделал на вашем месте:
1. Пройти ту часть авторизации, что вам доступна, как показано в ролике.
2. Выполнить пункты 17-19 моей инструкции.
3. Если не работает, то идти дальше:
   - Удалить Дополнение Youtube
   - на устройстве удалить директорию /home/osmc/.kodi/userdata/addon_data/plugin.video.youtube.
   - перезагрузить устройство
   - установить Дополнение заново, заново провести его авторизацию и выполнить пункты 17-19.
4. Если пункт 3 не помог, спросить в 4PDA :).

Вы даете очень краткое описание проблемы, без снимков экрана, логов, деталей. Я пытаюсь угадывать, какая у вас ошибка. Могу и не угадать. Опишите проблему подробно, лучше всего сделайте снимки экрана, ту часть, что делаете на телевизоре можно сфотографировать на телефон. Положите эти снимки на Яндекс.Диск или куда-нибудь еще. Это упростит диагностику. Почитайте соответствующую ветку форума 4PDA, если не найдете ответов, отправьте вопрос и ссылку на снимки экрана.
Удачи

Unknown комментирует...

у меня после ввода кода на странице youtube.com/activate или google.com/device
и выбора гуглового аккаунта получается следующее

Ошибка 403: access_denied
The developer hasn’t given you access to this app. It’s currently being tested and it hasn’t been verified by Google. If you think you should have access, contact the developer (мой-гугл-аккаунт@gmail.com).

Евгений комментирует...

Посмотрите видео, всё ли вы делаете, как там указано, особенно начиная с момента на 1:16

vadim комментирует...

Unknown
Теперь приложение создается в тестовом режиме. Нужно его запустить для всех. Это где-то на странице OAuth consent screen.
После этого эта ошибка исчезнет

Unknown комментирует...

Гребаное нижнее подчёркивание!!! В коди его нет в клавиатуре. 10 раз ключи создавал и всегда оно там есть. Как побороть?

Евгений комментирует...

Не сталкивался с этим. Но самая простая идея - подключить внешнюю клавиатуру. Сами клавиатурные раскладки поддерживают все символы. У меня Kodi (OSMC) стоит на Малинке. Чтобы не пользоваться полноценной громоздкой клавиатурой заказал на Алиэкспресс компактную. Что-то типа этого (не моя модель, ссылка чисто для примера)

TetyanaS комментирует...

==Но самая простая идея - подключить внешнюю клавиатуру.==
Есть еще вариант вписывать ключи через веб-морду .
https://yadi.sk/i/jHNM38mhd4o0Dw

Поставить галку в разрешениях править API с внешнего соединения

https://yadi.sk/i/gASZg-td7NOZyw