Lancer un script par Plex Server sous condition

Bonjour à tous,

 

Je cherche un projet qui ajoute la fonction au serveur Plex d'exécuter un script au lancement d'un film par exemple.

 

Il y a le projet plexWatch qui permet de recevoir des notifications (push, email , ...) au lancement d'une vidéo par exemple, mais il ne sait pas générer des requêtes http ou lancer un script. Son fonctionnement est basé sur l'interrogation du serveur Plex toutes les 30s par exemple et envoie une alerte sur la lecture d'une video.

 

Je cherche à savoir s'il existe un projet de ce style avant de me lancer dans des modifications de code du projet plexWatch.

À  ce niveau, on est assez limité par rapport aux possibilités de XBMC. Dès qu'il faut interfacer Plex à un système domotique, c'est la galère par rapport à XBMC. Les API sur le serveur Plex existent. Mais il y a de fonctions pour informer une application externe qu'il a lancée une action.

 

Dites-moi si vous avez une solution.

 

Merci.

 

Rien à ma connaissance, mais effectivement c'est un manque.

Il serait peux être interessant de monitorer le traffic entre Plex Media Serveur et le Web Media Manager car j'ai remarqué que lorsque le serveur s'arrête, le Media Manager en est aussitôt informé (dans la seconde même). Il y a aussi maintenant la partie "Activité" du Media Manager qui réagit instantanément à ce qui est en cours de lecture...mon impression est qu'il y a de nouvelles API non documentée proposant exactement ce qui est recherché dans ce post.

Vu que cela m'interesse également, je vais y jeter un coup d'oeil un de ces soirs.

Post qui tombe à pic.

Je teste actuellement pas mal de choses afin d'intégrer ma eedomus avec plex. Et voici mon retour :

- PlexNotify : application en plein développement avec bcq de nouveautés annoncées dont l'intégration des mails, des réseaux sociaux et des notifications sur l'ajout de nouveaux médias.

Cela fonctionne sous windows. J'ai donc mis en place growl. J'ai également ajouté la fonctionnalité twitter via growl. J'ai ensuite paramétré PlexNotify pour les nofications et ajout de hashtags en fonction de l'utilisateur qui lance le média.
Cela me push un tweet via growl. Ensuite sous IFTT j'ai mis en place une config à partir d'un wordpress installé afin de lancer une commande http ...
Ca fonctionne mais bonjour le temps de latence ... Bref je suis allé jusqu'au bout mais c'est pas viable.
J'ai demandé au développeur l'ajout de la fonctionnalité avec appels http. Il n'est pas contre. Le coté positif est que PlexNotify peut scruter les lancements de média à quelques secondes prêt.

- PlexWatch + PlexWatchWeb : installés dans une vm linux, fonctionne pas mal et est très séduisant avec le front web. Par contre un crontab sous linux ne peut se lancer que toute les 1 minute minimum.
Il faut ensuite trouver une astuce pour envoyer une requete http. Je vais experimenter l'installation sur mon mac car dans ce cas on peut baisser la fréquence à quelques secondes également.
Ensuite un script via une règle dans mail permettrait de récupérer l'info et de lancer directement une requete http.

Voila pour mes essais ...

@Fredje__B
 
Je pense aussi qu'il doit avoir des API internes pour relier les deux.

@Alilou

J'ai également une box domotique (HC2) que je voudrais bien interfacer avec Plex.

Pour l'instant, on me propose d'utiliser le plugin PlexBMC avec XBMC mais pas question d'installer XBMC.

J'utilise PlexWatch sous Mac avec une interrogation toutes les 30s. Ce n'est pas immédiat mais c'est acceptable. Je pourrais descende à 15s.

Je vais essayer de modifier le script de PlexWatch pour lancer un autre script à chaque évènement. Ce sera un début.

Eemodus est une box qui bouge beaucoup en ce moment avec notamment les plugins: karotz (openKarotz), Balance Withings, Station Netatmo, ...

Pour avoir testé pas mal de box dont la HC2, je peux te dire que l'eedomus est une box qui marche vraiment bien !

Je vais voir pour l'installation sur mac :)

On m'a parlé aussi d'interfacer Eventghost sur un autre fil ... il faut que je teste. Je pense qu'on est pas loin et avec les approches plexwatch et plexnotify on va bien finir par trouver une solution :)

Proposition d'une autre approche : ne serait il pas possible de scruter les logs du PMS pour detecter certains evenements ? Cela permettrait de ne pas trop solliciter le serveur Web avec des requetes HTTP 

Ça peut être une idée mais je n’ai pas les compétences :frowning:


Une idée ?

Moi j'ai de mon coté approffondi le fonctionnement du Media Manager. En fait ce dernier est basé sur un certain nombre de modules javascript dont entre autre Backbone.Babysitter.

Ce module permet de faire de l'échange de données avec le serveur sur base de connexion fixe du type Restful. Des que les données DOM de la connexion changent, elles sont automatiquement répercutées dans le Media Manager, c'est ce qui permet à ce dernier d'afficher instantanément les events qui se produise sur le serveur.

Voila pour le concept...maintenant il ne reste plus qu'a reproduire ces échanges dans une petite application qui ne traiterait que les events qui nous interesses....enfin quand je dis "il ne reste plus que à", c'est loin d'être simple a faire...mes connaissances Javascript sont nulles, je ne connais qu'un tout petit peu le python (et dans un tres loin passé du C, C++, Turbo Pascal et même Cobol)...hors ca ne semble pas simple à faire une implementation Restful en python...je creuse encore le sujet et vous tiens au courant.

Globalement, je pense qu'on tiens le bon bout...

Après quelques heures d’acharnement et une mise sur une piste via un membre anglophone du forum j’y suis arrivé !


Les pré requis sont un pms sous Windows + plexnotify + growl + eventghost.


Plexnotify envoie un push à growl qui le transmet à eventghost et qui elle même via un script python envoie une requête http vers mon eedomus.


La cascade met 5 secondes max. Content je suis :slight_smile:

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.