Forum eedomus
http://forum.eedomus.fr/

[Résolu] Action sur actionneur HTTP en erreur
http://forum.eedomus.fr/viewtopic.php?f=18&t=7168
Page 1 sur 1
Auteur:  ElYoM [ 20 Juin 2018 10:56 ]
Sujet du message:  [Résolu] Action sur actionneur HTTP en erreur

Bonjour à tou(te)s,

J'ai cherché un peu partout sur ma box eedomus et n'ayant rien trouvé, je fais appel à vos lumières (même si je pense que ce n'est pas possible, il se peut que je sois passé à côté de la solution ou d'une solution).

Ma question est donc de savoir si il existe un mécanisme sur eedomus pour déclencher une action sur une règle en erreur ?

Merci d'avance pour vos réponses. ;)
Auteur:  marcal [ 20 Juin 2018 11:40 ]
Sujet du message:  Re: Action sur règle en erreur

Hello,
Pas à ma connaissance...
Mais à propos... qu'est-ce que tu appelles une "règle en erreur"?
Un périph en erreur je vois bien... et là tu as une notification dans certains cas (http par exemple)
Auteur:  ElYoM [ 20 Juin 2018 12:24 ]
Sujet du message:  Re: Action sur règle en erreur

marcal a écrit:Hello,
Pas à ma connaissance...
Mais à propos... qu'est-ce que tu appelles une "règle en erreur"?
Un périph en erreur je vois bien... et là tu as une notification dans certains cas (http par exemple)

Ok, merci pour la réponse, je m'en doutais un peu puisque n'ayant rien trouvé à ce sujet dans la documentation. C'est effectivement une règle qui déclenche un actionneur HTTP et ce dernier se retrouve en erreur (Imperihome qui passe sur la tablette en arrière-plan au lieu du premier plan et ne répond donc plus aux commandes HTTP, je souhaiterai alors automatiquement envoyer un ordre via Tasker pour indiquer à la tablette de relancer l'application, c'est à priori possible en rootant la tablette mais si l'eedomus ne peut gérer d'actions sur une règle en erreur, je me vois dans l'obligation d'oublier ça...).
Auteur:  merguez07 [ 20 Juin 2018 17:38 ]
Sujet du message:  Re: Action sur règle en erreur

bonjour,
l'histoire de la règle en erreur je vois pas trop, car en fait, ta règle fait ce qu'on lui demande, il n'y a pas d'erreur.

L'erreur se trouve dans l'ordre http qui ne passe pas et c'est donc là qu'il faut faire un autre régle qui dit que si il y a une erreur sur l'actionneur alors il faut faire ça....
Auteur:  ElYoM [ 20 Juin 2018 17:43 ]
Sujet du message:  Re: Action sur règle en erreur

Oui, désolé, je me suis mal exprimé, c'est effectivement cela que je veux faire. Du coup, sais-tu comment faire pour avoir une règle se déclenchant sur erreur de l'actionneur en question ? Merci d'avance. ;)
Auteur:  merguez07 [ 20 Juin 2018 17:48 ]
Sujet du message:  Re: Action sur règle en erreur

ElYoM a écrit: sais-tu comment faire pour avoir une règle se déclenchant sur erreur de l'actionneur en question ?


peux tu m'en dire plus sur l'ordre http que tu veux envoyer, après on regardera comment piéger le fait que l'ordre ne passe pas
Auteur:  ElYoM [ 21 Juin 2018 02:13 ]
Sujet du message:  Re: Action sur règle en erreur

Ok, merci pour ton aide.

Du coup, j'ai une règle qui déclenche un actionneur HTTP lorsqu'un mouvement est détecté dans le garage. Les URL appelées par l'actionneur HTTP permettent d'afficher la caméra du garage en plein écran sur la tablette lorsqu'il y a un mouvement puis de repasser Imperihome sur la page d'accueil lorsque le mouvement cesse.

Les URL appelées par l'actionneur HTTP sont de la forme :
http://192.168.0.12:8080/api/rest/dashb ... ?pageIdx=0 (pour que Imperihome affiche la page d'accueil)
ou
http://192.168.0.12:8080/api/rest/camer ... C_11_IPC_1 (pour la caméra en plein écran)

Globalement, tout cela fonctionne très bien sauf que, pour une raison encore inconnue (mais j'investigue), Imperihome perd parfois le focus sur la tablette et passe alors en arrière-plan, ce qui l'empêche à priori de recevoir les appels HTTP de ma règle qui signale alors l'erreur. J'aimerai donc détecter l'erreur de l'actionneur pour envoyer ensuite une requête via le plugin Autoremote de l'application Tasker sur la tablette afin de relancer automatiquement l'application Imperihome (Tasker et Autoremote fonctionnent eux très bien quand ils sont en arrière-plan et reçoivent donc mes requêtes sans broncher).

Merci de te pencher sur mon problème, ça pourra peut-être aider d'autres personnes ayant un besoin similaire. ;)
Auteur:  merguez07 [ 21 Juin 2018 07:23 ]
Sujet du message:  Re: Action sur actionneur HTTP en erreur

Désolé mais j'ai encore 2 questions :

quand tu dis :
ElYoM a écrit: ce qui l'empêche à priori de recevoir les appels HTTP de ma règle qui signale alors l'erreur.


cela veut il dire que tu as une erreur qui remonte jusqu'à l'Eedomus ? si oui peux tu me faire une copie d'écran?

sinon est ce que tu passes par le plugin imperihome ou as tu fait un actionneur http spécifique ?
Auteur:  ElYoM [ 21 Juin 2018 11:27 ]
Sujet du message:  Re: Action sur actionneur HTTP en erreur

Hello,

Oui, c'est bien cela, j'ai une erreur qui apparaît sur le portail eedomus, l'erreur est la suivante : Failed to connect to 192.168.0.12 port 8080: Connection refused.

J'utilise également le plugin Imperihome du store eedomus où j'y ai juste rajouté une valeur pour le contrôle de l'affichage des caméras en plein écran.
Auteur:  schizo [ 21 Juin 2018 12:22 ]
Sujet du message:  Re: Action sur actionneur HTTP en erreur

Bonjour,
Au risque de dire une bêtise, mais, vous êtes sur qu'Imperihome ( et donc la tablette), est en IP fixe?...
çà donne quoi en Navigateur cette URL?
Auteur:  ElYoM [ 21 Juin 2018 12:31 ]
Sujet du message:  Re: Action sur actionneur HTTP en erreur

Oui, pas de souci, la tablette est bien en IP fixe. Comme expliqué auparavant, toutes mes règles et mes actionneurs liés à Imperihome fonctionnent normalement sauf lorsque l'application sur la tablette perd le focus et passe en arrière-plan. A partir de là, les requêtes HTTP vers l'API d'Imperihome ne fonctionnent plus et l'eedomus affiche alors un message d'erreur lié à l'actionneur HTTP. En repassant l'application au premier-plan sur la tablette, plus aucun message d'erreur.

Pour information complémentaire, Imperihome possède toutes les autorisations sur la tablette et, pour éviter la mise en veille de l'application, elle est non optimisée au niveau de la batterie dans les paramètres Android et le réveil sur mouvement de la caméra frontale de la tablette est activé. ;)

Image
Auteur:  merguez07 [ 21 Juin 2018 13:07 ]
Sujet du message:  Re: Action sur actionneur HTTP en erreur

mon Impérihome ne marche plus alors je peux pas tester un truc

essaye d'installer le plugin PING et regarde ce que ça donne si tu lui met en adresse IP 192.168.0.12:8080 avec

1 - impérihome qui est actif sur ta tablette
2 - impérihome qui passe en deuxième plan sur ta tablette
Auteur:  ElYoM [ 21 Juin 2018 15:01 ]
Sujet du message:  Re: Action sur actionneur HTTP en erreur

Malheureusement, le ping de l'eedomus ne permet pas de pinger une IP + PORT. J'ai déjà un ping lancé sur l'adresse IP de la tablette sans qu'il n'y ait eu aucune coupure depuis plusieurs jours.
Auteur:  rover820i [ 21 Juin 2018 16:40 ]
Sujet du message:  Re: Action sur actionneur HTTP en erreur

Il y a en effet une notification sur le portail eedomus quand une erreur HTTP se déclare. Mais je ne connais pas de moyen de la récupérer...
Auteur:  merguez07 [ 21 Juin 2018 16:58 ]
Sujet du message:  Re: Action sur actionneur HTTP en erreur

en fait je pense qu'il faut créer un petit script pour tester si ton serveur imperihome est accessible ou pas

je ne peux tester chez moi
peux tu créer un actionneur en mettant en VAR 1 l'IP de ta tablette et en VAR 2 le port 8080
dans l'url de la requête tu tapes http://localhost/script/?exec=testport.php&ip=[VAR1]&port=[VAR2]
tu crées un script qui s'appelle testport.php
tu lui mets le code suivant
Code : Tout sélectionner
<?
$ip=getarg('ip');
$port=getarg('port');
$str_cmd = $ip.':'.$port;
var_dump($str_cmd);
$a=httpQuery($str_cmd,get);
var_dump($a);
?>

puis sur ton actionneur tu cliques sur tester (sous le xpath)
et dans la nouvelle fenêtre qui s'est ouverte tu cliques sur le bouton tester et tu me donnes le résultat qui se trouve dans la grande zone blanche
tu fais le test 2 fois. une fois avec ton impérihome en premier plan et une fois en deuxième plan
Auteur:  ElYoM [ 23 Juin 2018 02:45 ]
Sujet du message:  Re: Action sur actionneur HTTP en erreur

Merci à tous de vous être penché sur mon problème avec Imperihome. Il se trouve que la dernière mise à jour de l'OS de ma tablette (LineAgeOS) semble avoir résolu le problème (je n'ai pourtant rien vu dans le changelog qui pourrait m'indiquer la piste de ce qui foirait). Dans tous les cas, Imperihome reçoit désormais correctement les appels vers son API même lorsque l'application passe en arrière-plan, ce qui est d'ailleurs le résultat attendu étant donné le paramétrage d'Android effectué pour cette application.

@merguez07 : Merci pour le script que je garde sous le coude au cas où. ;)

Je marque donc ce sujet comme résolu même si dans l'absolu je ne saurai dire ce qui posait problème.
Page 1 sur 1 Le fuseau horaire est UTC+1 heure