Intégrer XBMC dans votre réseau xPL

J’ai récemment découvert un plugin XBMC permettant d’intégrer ce dernier dans un réseau xPL. XBMC devient alors en partie pilotable en xPL, renvoie des informations et répond aux demandes d’informations sur son état. Le plugin permet aussi d’afficher des notifications XBMC.

Installation

L’installation est simple et prend deux minutes. A noter qu’il faut la dernière version d’XBMC (11.0 “Eden”)

  1. Téléchargez la dernière version ici
  2. Allez dans XBMC: Settings -> Add-ons -> Install from zip file
  3. Allez dans le répertoire où vous avez téléchargé l’archive zip, et sélectionnez la
  4. Redémarrer XBMC
  5. Voila, maintenant XBMC envoie des messages xPL sur le réseau et peut y répondre.

Je l’ai testé sur la version Linux et sur un appleTV2 avec succès.

[adsGrandRectangleTexte]

Les schémas xPL supportés

osd.basic

Le plugin gère une partie des propriétés du schéma osd.basic.
Il permet d’afficher une notification XBMC à la réception d’un message xPL osd.basic. Il lui manque principalement la gestion du délai d’affichage et des retours à la ligne.

Ci-dessous, un exemple de message osd.basic et du résultat lors de la lecture d’un film :

xpl-cmnd
{
hop=1
source=bnz-sender.SA3
target=*
}
osd.basic
{
command=write
text=Test OSD
}

media.*

On peut utiliser des messages de type media.basic pour controler XBMC. C’est assez rudimentaire mais le plugin supporte les commandes play, pause, stop et skip.
Il renvoie aussi son état via un message de ce type après chaque commande:

xpl-stat
{
hop=1
source=parasit-xbmc.SA3
target=*
}
media.mptrnspt
{
mp=xbmc
command=pause
kind=audio
}

Il envoie aussi le media en cours de lecture au démarrage de la lecture d’un nouveau media ou sur demande:

xpl-stat
{
hop=1
source=parasit-xbmc.SA3
target=*
}
media.mpmedia
{
mp=xbmc
kind=audio
title=I'm a lady
album=The Geeks & The Jerkin Socks
artist=Shaka Ponk
duration=284.0
format=mp3
state=play
}

et répond aux demandes d’informations sur le media en cours de lecture ou le statut du player via des message media.request.

Conclusion

Un petit plugin fort sympathique qui permet d’intégrer simplement XBMC à votre réseau xPL.
Espérons que le développeur l’enrichisse de nouvelles fonctionnalités.

Il devient très facile de faire réagir les modules d’un système domotique en fonction de l’état d’XBMC. Par exemple, éteindre les lumières et fermer les volets sur Play, rallumer à 50% sur Pause, ouvrir les volets (si on est en journée) sur Stop, etc.

Si xPL vous intéresse, jetez un oeil sur la librairie xPL.Arduino.

Vous aimerez aussi...

17 réponses

  1. Fritz dit :

    Salut, est-ce qu’il faut avoir un hub xPL déjà présent sur le media center ?
    En tout cas c’est intéressant (et un truc de moins dans ma TODO list au passage)!

  2. Olivier Lebrun dit :

    Salut Fritz,
    En fait, de ce que j’ai vu il écoute directement le port 3865 donc pas de problème si la machine ne sert que de media center (genre mon appleTV2) mais si tu as d’autres programmes dessus qui écoute les messages xPL ça va être gênant, il faudrait modifier le fonctionnement.

    J’ai vu plusieurs de tes posts à propos d’xPL et XBMC. Ici il ne récupère pas non plus la liste des média dispo (ta problématique de l’époque). Ça reste assez basic.

    • Fritz dit :

      Au passage, je n’ai pas pu l’installer sur un XBMC Eden sur une ubuntu 12.04… Le message d’erreur est troqué à l’écran et je ne trouve rien dans les logs 🙁

      Son plugin est déjà une bonne base de départ même si il est incomplet et ne nécessite (sig) pas de hub. A voir comment ça va évoluer, quitte à lui donner un coup de patte 🙂

  3. Fritz dit :

    Pour être précis, ça dit « Add on doesn’t have the correct structure »

    • Fritz dit :

      En fait, je n’installais pas le bon…

      • Olivier Lebrun dit :

        Il est partit d’un autre plugin, c’est celui ci que tu as installé ?

        • Fritz dit :

          Possible. La fonction OSD marche, par contre impossible de voir passer le xpl émis au lancement d’une chanson. Je n’ai pas creusé plus que ça d’ailleurs.

          • Olivier Lebrun dit :

            Je ne sais pas si c’est ça mais il envoie en broadcast sur 255.255.255.255. Si tu utilise xpl-perl, le hub ecoute sur l’adresse broadcast du reseau (192.168.1.255 chez moi), il faut le lancer avec « –define broadcast=0.0.0.0 » pour qu’il recoive tous les paquets.

  4. Fritz dit :

    Trouvé…
    Mon hub (un proto python) me donne ça dans les messages invalides :
    192.168.1.103_49146 ; 1341342643.36 ; xpl-stat\n{\nhop=1\nsource=parasit-xbmc.ubuntu-VirtualBo\ntarget=*\n}\nhbeat.app\n{\ninterval=1\nport=3865\nremote-ip=192.168.1.103\nversion=1.0\n}\n

    C’est le nom d’hôte mon souci.

  5. Fritz dit :

    Bon, j’ai matté un peu son code, c’est simple à comprendre une fois que l’on a l’exemple… Il y a trop d’imbrications de code et ça mériterait plus de fonction, mais bon…
    Par contre, impossible de trouver comment faire un ticket ou contacter l’auteur par mail pour lui remonter 2/3 trucs…

  6. MasterBOX dit :

    Intéressant tout ça !

    Au passage j’en profite pour linker ton blog sur le mien 🙂

  7. youri dit :

    Bonjour,
    bravo et merci pour tout le boulot fait. J’ai décidé de me lancer dans l’aventure Domogik/Xbmc mais je n’arrive pas a les faire communiquer. J’ai installé le addon ( plugin.xpl-0.2 ) sur xmbc et domogick 0.2.0.

    je tente d’envoyer des messages xpl via la console ( pour l’instant ) mais ça ne fonctionnne pas.

    Voila la commande que j’envoie par exemple:
    ./send.py -t "*" xpl-cmnd osd.basic "command=write,text=HELLO"

    Il est fort possible que ma commande ne soit pas bonne mais y a t-il un moyen de vérifier sur xbmc que l’addon écoute sur le bon port ( netstat ? ).

    • youri dit :

      Finalement le port 3865 est bien en écoute par xbmc. Il doit donc s’agir de la manière dont j’envoie les messages.

      Dans Domogik , que doit-on choisir lors de le configuration du device dans lezs champs « Feature » et « Usage » pour ce plug-in ?

      Merci

  8. youri dit :

    Merci pour la réponse , je vais creuser de ce coté la.

  1. 2 juillet 2012

    […] vous parlez d’un addon xPL pour XBMC. Ne l’ayant pas encore testé, je vous invite à regarder ici pour avoir plus d’informations. Médias, […]

  2. 25 janvier 2014

    […] http://dev.argosoft.fr/connectingstuff/integrer-xbmc-dans-reseau-xpl/ c’est l’article qui m’a fait découvrir la base que j’ai utilisée pour mon plugin xPL au sein de XBMC. […]

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *