Wiki

Outils pour utilisateurs

Outils du site


xmltv-kazer

Utiliser le guide xmltv de KaZer.org avec MythTV

Cette page concerne MythTV 0.24.

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.

Le format xmltv étant utilisé par MythTV, nous pouvons utiliser ce guide.

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 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 à 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)
  • Renseigner manuellement le champ xmltv-id de chaque chaîne dans le setup de MythTV ou dans mythweb.

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.

mythfilldatabase ajoute les chaînes dont l'xmltv-id n'existe pas encore. L'ajout de l'option –update permet de supprimer ce comportement.

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.

Récupérer le guide xmltv et l'introduire dans MythTV

L'ensemble de ces manipulations sont à faire sur la machine qui possède votre backend.

Installez unzip (ubuntu). Cette outil permet d'extraire l'archive zip téléchargée sur le site http://kazer.org.

Créez un fichier tv_grab_kazer et ouvrez le

$ touch ~/tv_grab_kazer
$ xdg-open ~/tv_grab_kazer (ou utiliser votre éditeur préféré)

Collez ceci dedans

tv_grab_kazer
#!/bin/bash
#####################
# - Configuration - #
#####################
 
# Votre "userhash" est indiqué en haut de la page http://kazer.org/my-channels.html
USERHASH=
# L'id de la source
SOURCEID=0
 
### Fin de la configuration
 
cd /tmp
echo "Téléchargement du fichier xmltv sur kazer.org"
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

Entrez votre USERHASH et au besoin de modifiez la SOURCEID.

Donner les droits d'exécution suivant

$ chmod a+x tv_grab_kazer

et déplacer ce fichier dans /usr/local/bin/ (nécessite les droits administrateur)

# mv tv_grab_kazer /usr/bin/tv_grab_kazer

Lancer la commande tv_grab_kazer pour récupérer et mettre a jour vos programmes.

Comment ça fonctionne ?

A l'aide de votre USERHASH, le script télécharge un fichier xmltv qui contient les programmes TV de vos chaines.

Ces programmes TV sont ensuite introduits dans la base de données de MythTV à l'aide de la commande mythfilldatabase.

Problèmes avec les xmltv-id's

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 !

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

  1. supprimer toutes les chaînes de cette source
  2. refaire un scan
  3. relancer le script de renseignement des îcones et des 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.

Automatiser la mise à jour des programmes

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”.

$ crontab -e  

Complétez le avec ceci :

15 23  * * */3 /usr/local/bin/tv_grab_kazer  

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!.
  • 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.

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.
  • 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).

Problèmes et solutions

Ça ne fonctionne pas !

Dans l'ordre vérifiez :

1) Le fichier xmltv est-il bien téléchargé ?

cat /tmp/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”.

2) Le fichier xmltv est bien téléchargé mais le guide TV de mythtv est vide ?

  • 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)

J'ai plusieurs sources TV à mettre à jour (satellite + TNT par exemple)

Sur le site http://kazer.org, ajoutez à votre liste des chaînes, l'ensemble des chaines que vous recevez, toutes sources confondues.

Puis dans le script, remplacez

/usr/bin/mythfilldatabase --file $SOURCEID /tmp/tvguide.xml --update 

par

/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)
...

en remplacant 0, 1 par les différents id de vos sources et en ajoutant autant de lignes que nécessaire.

xmltv-kazer.txt · Dernière modification: 08/12/2013 par snouf