Retrouver l'accès à Youtube sur son Raspberry Pi – créer ses clés API
Grosse galère un matin de février 2020 : au moment d'accéder à Youtube sous LibreElec, au lieu d'avoir la liste des vidéos comme d'habitude, j'aperçois un fugace message d'erreur en haut à droit « Loginexception [401] the Oauth client was deleted » et voilà l'écran de paramétrage du plugin qui s'affiche… Si j'essaie d'en sortir, il se rouvre automatiquement. A devenir fou !
Ni le redémarrage du Raspberry Pi, ni la désinstallation et réinstallation du plugin Youtube (option pas facile à trouver sous LibreElec, d'ailleurs : c'est clic-droit sur l'icône de l'extension > Informations > désinstaller) n'ont résolu le problème.
Pourquoi cette erreur ? Jusqu'ici, on tournait avec les clés API du développeur du plugin. Or Google impose désormais des quotas d'utilisation de ses services. Nous sommes désormais trop nombreux à utiliser le plugin et ça sature ! Désormais, il va falloir créer ses propres clés (pas moins de 3) et les utiliser. Et croyez-moi, c'est tout sauf simple !
Ce topic Reddit m'a a mise sur la voie, mais il comportait de nombreuses imprécisions. J'ai trouvé plus de réponses sur cette page Github du projet de l'extension Youtube. Mais j'ai galéré longtemps avant de finalement parvenir à entrevoir une solution. En attendant, j'ai dû télécharger sur PC les vidéos que je voulais jouer via youtube-dl pour ensuite les transférer via FTP sur le Raspberry Pi… Bien compliqué !
Créer un nouveau projet
Aller sur la console Google pour les développeurs (et éventuellement connectez-vous-y)
Création du projet
Cliquer sur le déroulant des projets dans la barre du haut.
Ce qui ouvre un popup listant tous vos actuels projets (si vous en avez). Cliquer sur Nouveau projet en haut à droite du popup
Choisir un nom pour le nouveau projet, éventuellement personnaliser l'ID du projet (ce n'est pas obligatoire) qui, lui, doit être unique. Valider en cliquant sur Créer.
Si la création a réussi, une notification dans la partie droite de l'écran vous en informe.
Passer sur le nouveau projet via le déroulant des projets
Ajout de l'API Youtube
Cliquer sur Activer des API et des services à droite de « API et Services »
Ajouter l'API Youtube à partir de la bibliothèque en cliquant sur YouTube Data API v3
Et activer cette bibliothèque en cliquant sur le bouton bleu Activer.
Voilà , c'est activé, et vous arrivez sur une présentation de l'API
Création des 3 clés
Clé API
Rester sous YouTube data API v3. Normalement, vous avez un message qui vous invite à créer des identifiants. Cliquer sur le bouton Créer des identifiants
La 1e étape de la création d'identifiants vous demande de choisir le type d'identifiants dont on a besoin (comme si on le savait…). Ne pas s'occuper du déroulant, mais cliquer sur le lien clé API dans la phrase « Nous allons vous aider à configurer vos identifiants.
Si vous le souhaitez, vous pouvez ignorer cette étape et créer une clé API, un ID client ou un compte de service. »
Ce qui nous emmène à l'écran Clé API dans lequel on va laisser toutes les options par défaut, et cliquer sur le bouton Créer.
Et voilà , notre clé API est créée.
C'est pas fini ! Il faut maintenant créer un couple de clés ID client OAuth.
Paramétrage de l'écran d'autorisation OAuth
L'écran d'autorisation OAuth est requis afin d'ajouter une sécurité supplémentaire.
Cette fois-ci, on passe par le déroulant Créer des identifiants (mais je pense qu'on aurait pu tout aussi bien cliquer sur le bouton Configurer l'écran d'autorisation de la notification).
Cliquer sur Créer des identifiants, un menu se déroule, y choisir ID client OAuth.
Dans l'écran suivant, cliquer sur le bouton Configurer l'écran d'autorisation
Choisir externe et cliquer sur le bouton Créer
Remplir Nom de l'application. Le champ adresse email de support est déjà pré-rempli avec la vôtre. Scroller tout en bas de ce looooong écran dans rien changer d'autre, et cliquer sur Enregistrer.
Une notification en bas à gauche confirme l'enregistrement
Et voici les détails de votre écran d'autorisation OAuth.
C'est toujours pas fini ! On a seulement paramétré l'écran d'OAuth, pas encore créé ce fameux ID client OAuth… Allez, courage…
Génération de l'identifiant Client OAuth
Allez hop, retour dans Identifiants, clic sur Créer des Identifiants > ID Client OAuth
Dans l'écran Créer un ID client OAuth, un déroulant obligatoire : le type d'application
Dans ce déroulant, choisir Périphérique d'entrée TV et limitée (pas terrible, la traduction de « TVs and Limited input devices »)
Ce qui démasque un nouveau champ nom. Ne pas y toucher, cliquer sur le bouton Créer
Le popup confirme la création et nous donne les deux autres clés : ID client et code secret client
Copier les deux clés, cliquer sur OK pour valider et fermer le popup.
Ouf, voilà , on a désormais nos 3 clés. Direction le Raspberry Pi pour saisir tout ça dans les champs qui vont bien… L'article suivant vous expliquera comment et où saisir ces clés dans la distribution Kodi
Sources
Project 294899064488 has been scheduled for deletion and cannot be used for API calls
Wiki de l'extension – Personal API Keys