Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
xmltv-kazer [07/09/2010] Trim Ajout de tail après la commande d'essai afin d'éviter d'afficher une dizaine de mégas de textes en consoles |
xmltv-kazer [30/08/2018] (Version actuelle) SnouF Alert que la guide kazer est HS |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Utiliser le guide xmltv de KaZer.org avec mythtv ====== | + | ====== Utiliser le guide xmltv de KaZer.org avec MythTV ====== |
- | {{tag>xmltv tv_grab_fr kazer tutoriel}} | + | {{pour MythTV 0.24}} |
- | Le site http://www.kazer.org/ fournit un guide des programmes télé au format xmltv très détaillé, fiable et facile à mettre en oeuvre. | + | |
- | Il faut configurer la liste des chaines que vous souhaitez directement à partir du site. Ensuite vous téléchargez un fichier contenant tous les programmes des chaines demandées et enfin vous devez introduire ces programmes dans la base de données. | + | Le site http://www.kazer.org/ fournit un guide des programmes télé au format xmltv très détaillé, fiable, facile à mettre en œuvre et rapide à récupérer. |
- | Il est bien sûr nécessaire de renseigner les identifiants de chaque chaine (xmltv-id) dans la base de données. | + | Le format xmltv étant utilisé par MythTV, nous pouvons utiliser ce guide. |
- | + | ||
- | + | ||
+ | <WRAP center round alert 60%> | ||
+ | 30 août 2018 : Le guide kazer n'est plus maintenu depuis plusieurs mois, le guide qu'il fournit est vide cette page n'est donc plus d'actualitée | ||
+ | </WRAP> | ||
===== Créer un compte ===== | ===== Créer un compte ===== | ||
- | Rendez vous sur le site de http://www.kazer.org/ et suivez les instructions pour créer votre compte et choisir votre liste de chaines. | + | Rendez-vous sur le site de http://www.kazer.org/ et suivez les instructions pour créer votre compte et choisir votre liste de chaînes à télécharger. |
+ | ===== Introduire les xmltv-id's ===== | ||
+ | Pour que MythTV affiche les programmes, il faut renseigner pour chaque chaine de la liste des chaines, le champ xmltv-id. | ||
+ | Pour cela, vous avez 2 solutions: | ||
+ | * Utilisez le script de récupération des icônes tv et d'introduction des xmltv-id's grâce à [[telechargement_icone_tv|ce tutoriel]]. Ce script parcoure votre liste des chaines et récupère les icônes tv et les xmltv-id's des chaines. (solution recommandée) | ||
- | ===== Créer un script pour récupérer le guide xmltv ===== | ||
- | __**Pré requis**:__ | + | * Renseigner manuellement le champ xmltv-id de chaque chaîne dans le setup de MythTV ou dans mythweb. |
- | * Les commandes précédées d'un **$** sont à éxécuter en utilisateur standard | + | |
- | * Les commandes précédées d'un **#** sont à éxécuter en super utilisateur (root) | + | |
- | * L'éditeur de texte utilisé ici est nano (éditeur debian par défaut et peut-être le plus simple du monde...) | + | |
+ | Cette méthode est plus complexe. Créez le fichier "tv_grab_kazer" comme décrit ci-dessous, supprimez l'option "--update" dans la ligne de commande mythfilldatabase et lancez l'exécution de ce script. Dans la liste des chaînes, vous devriez avoir des chaînes en double pour la même source: | ||
+ | * les chaînes sans xmltv-id's qui sont issues du scan, | ||
+ | * les chaînes avec xmltv-id's qui sont créées par Mythfilldatabase. | ||
- | Créez un fichier nommé tv_grab_PERSO | + | ''mythfilldatabase'' ajoute les chaînes dont l'xmltv-id n'existe pas encore. L'ajout de l'option --update permet de supprimer ce comportement. |
- | ~$ nano tv_grab_PERSO | + | Recopiez les xmltv-id's dans les chaînes qui n'en ont pas et supprimez les chaînes créées par Mythfilldatabase. ATTENTION de supprimer les mauvaises chaines. Si vous avez fait une erreur, refaites un scan pour re-introduire les chaînes supprimées par erreur. |
- | Collez ceci dedans: | ||
- | #!/bin/bash | + | ===== Récupérer le guide xmltv et l'introduire dans MythTV ===== |
- | cd /home/VOTRELOGIN | + | |
- | rm tvguide.xml | + | |
- | wget -q "http://www.kazer.org/gen_xml.php?u=VOTRE-USERHASH&f=zip" -O tvguide.zip | + | |
- | unzip tvguide.zip | + | |
- | rm tvguide.zip | + | |
- | cat tvguide.xml | + | |
- | __**Note importante:**__ | + | L'ensemble de ces manipulations sont à faire sur la machine qui possède votre backend. |
- | Pour utiliser ce script, vous devez: | + | |
- | * Avoir installer "unzip" sur votre système | + | |
- | * Remplacer VOTRELOGIN par votre identifiant de connexion | + | |
- | * Remplacer VOTRE-USERHASH par le userhash que vous trouverez en haut de [[http://www.kazer.org/index.php?page=xmltv-grabber|votre page kazer]]. | + | |
+ | [[Installez|Installez]] ''unzip'' ([[apt>unzip|ubuntu]]). Cette outil permet d'extraire l'archive zip téléchargée sur le site http://kazer.org. | ||
- | Rendez le script exécutable | + | Créez un fichier ''tv_grab_kazer'' et ouvrez le |
+ | <code bash> | ||
+ | $ touch ~/tv_grab_kazer | ||
+ | $ xdg-open ~/tv_grab_kazer (ou utiliser votre éditeur préféré) | ||
+ | </code> | ||
- | ~$ chmod a+x tv_grab_PERSO | + | Collez ceci dedans |
+ | <code bash tv_grab_kazer> | ||
+ | #!/bin/bash | ||
+ | ##################### | ||
+ | # - Configuration - # | ||
+ | ##################### | ||
- | On teste la récupération des programmes tv | + | # Votre "userhash" est indiqué en haut de la page http://kazer.org/my-channels.html |
+ | USERHASH= | ||
+ | # L'id de la source | ||
+ | SOURCEID=0 | ||
- | ~$ ./tv_grab_PERSO | tail | + | ### Fin de la configuration |
- | Normalement, a ce stade, la console doit vous afficher l'aperçu de la fin((la commande "tail" executée après le tunnel "|" permet de vous affichez seulement les 10 dernières lignes de ce fichier qui pèse quand mêmes quelques mégas, c.f. le manuel de "tail")) du fichier tvguide.xml, s'il n'y a pas eu d'erreur. | + | cd /tmp |
- | Si c'est le cas, passez à l'étape suivante. | + | echo "Téléchargement du fichier xmltv sur kazer.org" |
- | Sinon, vérifier les étapes précédentes ou interroger le forum. | + | wget -q "http://www.kazer.org/tvguide.zip?u=$USERHASH" -O tvguide.zip |
+ | unzip -o tvguide.zip | ||
+ | rm tvguide.zip | ||
+ | echo "Mise à jour du programmes de MythTV" | ||
+ | /usr/bin/mythfilldatabase --file $SOURCEID /tmp/tvguide.xml --update | ||
+ | </code> | ||
- | Maintenant, nous allons déplacer notre script dans le répertoire /usr/bin/ afin de pouvoir le lancer comme toute autre application. | + | **Entrez votre ''USERHASH'' et au besoin de modifiez la ''SOURCEID''.** |
+ | * Votre ''USERHASH'' se trouve en haut de la page http://www.kazer.org/my-channels.html. Il permet de récupérer votre fichier xmltv sans mot de passe. | ||
+ | * le ''SOURCEID'' est l'identifiant de la source (0 pour la source 1, 1 pour la source 2, etc ...). Vous pouvez le trouver sur mythweb (''http://IP_BACKEND//mythweb/settings/tv/channels'') ou FIXME comment faire sans mythweb ? | ||
- | ~# mv tv_grab_PERSO /usr/bin/tv_grab_PERSO | + | Donner les droits d'exécution suivant |
+ | <code bash> | ||
+ | $ chmod a+x tv_grab_kazer | ||
+ | </code> | ||
+ | et déplacer ce fichier dans /usr/local/bin/ (nécessite les droits administrateur) | ||
+ | <code> | ||
+ | # mv tv_grab_kazer /usr/bin/tv_grab_kazer | ||
+ | </code> | ||
- | ===== Importer nos programmes TV dans la BDD de Mythtv ===== | + | Lancer la commande ''tv_grab_kazer'' pour récupérer et mettre a jour vos programmes. |
- | Mythtv fournit la commande mythfilldatabase pour cela. En combinaison avec tv_grab_fr, mythfilldatabase va récupérer les programmes sur internet et les importer dans la base de données de Mythtv. | + | ==== Comment ça fonctionne ? ==== |
- | Comme Kazer nous fournit les programmes sous forme de fichier, nous allons utiliser mythfilldatabase de la façon suivante | + | A l'aide de votre ''USERHASH'', le script télécharge un fichier [[wp>xmltv]] qui contient les programmes TV de vos chaines. |
- | ~$ mythfilldatabase --file 0 /home/VOTRELOGIN/tvguide.xml | + | Ces programmes TV sont ensuite introduits dans la base de données de MythTV à l'aide de la commande mythfilldatabase. |
- | Explications: | ||
- | L'option file permet de spécifier un fichier xml à importer. | + | ===== Problèmes avec les xmltv-id's ===== |
- | 0 correspond à la source que vous utilisez. | + | Si vous avez utilisé le script de la méthode de [[#Introduire les xmltv-id's]] vous n'aurez certainement aucune manipulation à faire. Si ce n'est pas la cas, prévenez-nous sur le forum pour que nous corrigions cela ! |
- | L'option no-delete permet de ne pas supprimer les anciens programmes télé. Seuls les programmes antérieurs à 7 jours seront supprimés. | + | Via de setup de mythtv ou mythweb (''http://IP_BACKEND/mythweb/settings/tv/channels'') regardez si certaines de vos chaines sont en double pour une même source (si vous avez plusieurs sources, vous avez des doublons de chaînes mais c'est normal). Si c'est le cas |
+ | - supprimer toutes les chaînes de cette source | ||
+ | - refaire un scan | ||
+ | - relancer le script de renseignement des îcones et des xmltv-id's | ||
- | ===== Introduire les xmltv-id's ===== | + | Si vous avez plusieurs sources, vérifier que les mêmes chaînes de chaque source possède le même nom, le même signal d'appel et le même numéro. A partir de cet instant, les chaînes seront équivalentes et vu comme une seule dans le guide des programmes de Mythtv. |
- | Pour que Mythtv affiche les programmes, il faut renseigner pour chaque chaine de la liste des chaines, le champ xmltv-id. | ||
- | Pour cela, vous avez 2 solutions: | ||
- | * renseigner manuellement ce champ dans le setup de MythTV ou dans mythweb | + | ===== Automatiser la mise à jour des programmes ===== |
- | * utiliser le script de récupération des icones tv et d'introduction des xmltv-id's disponible sur [[telechargement_icone_tv|ce tutoriel]]. Ce script parcoure votre liste des chaines et récupère les icônes tv et les xmltv-id's des chaines. | + | Une fois que tout ce qui est définit plus haut, fonctionne, il est tout de même plus pratique de faire la mise à jour automatiquement que de devoir lancer le script à la main. Pour cela nous allons créer une tâche "cron". |
- | ===== Automatiser tout ça ===== | + | <code bash> |
+ | $ crontab -e | ||
+ | </code> | ||
- | Comme mythfilldatabase ne peut pas lancer tout seul tv_grab_PERSO, l'idéal est que la mythbox l'exécute toute seul chaque jour. | + | Complétez le avec ceci : |
- | C'est parti: | + | |
- | ~$ crontab -e | + | <code> |
+ | 15 23 * * */3 /usr/local/bin/tv_grab_kazer | ||
+ | </code> | ||
- | Complétez le avec ça: | + | **Explications:** |
- | + | * les deux premiers champs ''15'' et ''23'' définissent l'heure d'exécution du script. Il est important de noter que les heures et les minutes sont inversés. C'est à dire que le script s'exécutera à 23h15!. | |
- | 15 23 * * */3 /usr/bin/tv_grab_PERSO | + | * Le 5e champs correspond au jour de la semaine. 1=lundi, etc |
- | + | * */3 mettra le guide à jour tous les 3 jours, vu que le guide de kazer fourni plus de 7 jours de données, cela devrait être suffisant. | |
- | Explications: les deux premiers champs "15" et "23" définissent l'heure d'exécution du programme "mythfilldatabase" qui se trouve dans "/usr/bin" | + | |
- | Il est important de noter que les heures et les minutes sont inversés. C'est à dire que mythfilldatabase s'exécutera à 23h15! | + | |
- | + | ||
- | Le 5e champs correspond au jour de la semaine. 1=lundi, etc | + | |
- | */3 mettra le guide à jour tous les 3 jours, vu que le guide fourni 14 jours de données cela devrait être suffisant. | + | |
<note warning> | <note warning> | ||
**Attention :** | **Attention :** | ||
- | * Afin d'éviter que tout le monde mette à jour son guide en même temps, il est conseillé de prendre une heure aléatoire. | + | * **Afin d'éviter que tout le monde mette à jour son guide en même temps, il est conseillé de prendre une heure aléatoire.** |
- | * Si votre machine est allumée 24/24h planifiez de préférence cette tâche entre 0h et 6h de matin. | + | * Si votre machine est allumée 24/24h, planifiez de préférence cette tâche entre 0h et 6h de matin. |
- | * Si l'ordinateur n'est pas allumé au moment de la tâche le guide ne serra pas mis à jour (utilisez anacron si votre ordinateur n'est pas allumé à heure fixe). | + | * Si l'ordinateur n'est pas allumé au moment de la tâche, le guide ne serra pas mis à jour (utilisez anacron si votre ordinateur n'est pas allumé à heure fixe). |
</note> | </note> | ||
- | Maintenant, il faut activer l'exécution automatique de mythfilldatabase. | ||
- | |||
- | **Methode 1:** | ||
- | Utiliser l'interface mythbackend pour lancer mythfilldatabase, dans: | ||
- | Générale (13ème écran) | + | ===== Problèmes et solutions ===== |
- | Cochez la case: | + | ==== Ça ne fonctionne pas ! ==== |
- | exécuter automatiquement mythfilldatabase | + | Dans l'ordre vérifiez : |
- | Puis à la ligne arguments: | + | **1) Le fichier xmltv est-il bien téléchargé ?** |
+ | <code bash> | ||
+ | cat /tmp/tvguide.xml | ||
+ | </code> | ||
- | |--file 1 /home/VOTRELOGIN/tvguide.xml | + | Cela devrait vous retourner un long fichier xml. Si ce n'est pas le cas, c'est le téléchargement qui ne fonctionne pas. Vérifiez votre "userhash" et lancez dans une console, la commande "wget ...." du fichier "tv_grab_kazer". |
- | (le premier argument de --file (ici 1) indique la source vidéo des chaînes concernées. Vérifiez ça dans la table videosource de la base mythconverg, c'est peut-être différent de 1) | + | |
- | **Methode 2:** | + | **2) Le fichier xmltv est bien téléchargé mais le guide TV de mythtv est vide ?** |
- | Ou alors ajouter une deuxième ligne à votre crontab! | + | * Vérifiez votre SOURCEID |
+ | * Vérifiez que toutes vos chaînes possèdent un xmltv-id | ||
+ | * Vérifiez que vous n'avez pas de doublons pour la même source (voir [[#Problèmes avec les xmltv-id's]]) | ||
- | 20 23 * * * /usr/bin/mythfilldatabase --file 1 /home/VOTRELOGIN/tvguide.xml | ||
+ | ==== J'ai plusieurs sources TV à mettre à jour (satellite + TNT par exemple) ==== | ||
- | ===== Conclusion ===== | ||
- | Cette méthode est une alternative comme une autre pour recevoir les programmes tv. Elle à l'avantage d'avoir des programmes très détaillés <del>mais que sur 4 jours.</del> sur 14 jours maintenant! | ||
- | De plus, une fois paramétré vous pouvez l'oublier <del>et ne jamais vous préoccuper si télépoche a changé!</del> | ||
- | ====== | + | Sur le site http://kazer.org, ajoutez à votre liste des chaînes, l'ensemble des chaines que vous recevez, toutes sources confondues. |
- | //Rédacteurs : | + | Puis dans le script, remplacez |
- | [[utilisateur:jeff-net52]] (26/03/2008)- (22/12/2009 : ajout videosource l-garcia), [[utilisateur:SnouF]] (2009/09/03 : MAJ) - (ajout de introduction des xmltv-id's et quelque corrections mineures , Gilles74 le 07/2010) | + | <code bash> |
+ | /usr/bin/mythfilldatabase --file $SOURCEID /tmp/tvguide.xml --update | ||
+ | </code> | ||
+ | par | ||
+ | <code bash> | ||
+ | /usr/bin/mythfilldatabase --file 0 /tmp/tvguide.xml --update #(pour la source 0) | ||
+ | /usr/bin/mythfilldatabase --file 1 /tmp/tvguide.xml --update #(pour la source 1) | ||
+ | ... | ||
+ | </code> | ||
+ | en remplacant ''0'', ''1'' par les différents id de vos sources et en ajoutant autant de lignes que nécessaire. |