[JPI-APK android] Tel Android dedié domotique

C’est normal, c’est surement les ports sortants qui doivent être affichés sur android > 9.
Rien a voir avec le port entrant d’écoute que tu as mis sur 8090.


Edit: Par contre je ne pige pas tes erreurs replacement == null sur le 2ème screenshot du scénario CRON ça c’est pas des erreurs normales, comme si le core de JPI était foireux.

Voilà, l’éditeur de code Java est quasi prêt :

image

image

Oui mais du coup pourquoi ces erreurs ?
Pour la partie core, facile à reproduire, coupe ton wifi et la tablette t’affichera cela.

Tiens sur la lenovo cette nuit et ce n’est qu’un getcmd je pense sur le scénario de mouvement.

Je n’ai pas plus d’info. Comme si jeedom était off alors que tout marche de l’autre côté, la vm est toujours là.

La xiaomi n’a généré aucune erreur.

La seconde lenovo aucune erreur

La seconde lenovo.

Bon ensuite, si je regarde le log de la tablette de la copie d’écran :

 - 09/03/21 21:28:16 - ERREUR getCmd: Jeedom ne répond pas...
timeout
 - 10/03/21 01:44:03 - ERREUR getCmd: Jeedom ne répond pas...
timeout
 - 10/03/21 04:06:03 - ERREUR getCmd: Jeedom ne répond pas...
timeout
 - 10/03/21 05:22:43 - ERREUR getCmd: Jeedom ne répond pas...
timeout
 - 10/03/21 05:22:43 - ERREUR getCmd: Jeedom ne répond pas...
timeout
 - 10/03/21 05:56:53 - ERREUR getCmd: Jeedom ne répond pas...
timeout
 - 10/03/21 06:18:16 - ERREUR getCmd: Jeedom ne répond pas...
timeout
 - 10/03/21 07:16:43 - ERREUR getCmd: Jeedom ne répond pas...
timeout
 - 10/03/21 07:16:43 - ERREUR getCmd: Jeedom ne répond pas...
timeout
 - 10/03/21 07:40:43 - ERREUR getCmd: Jeedom ne répond pas...
timeout

En fouillant dans l’APP LOG, je vois que ces erreurs arrivent par le refresh du design en cron 2 minutes.

Du coup, le problème serait de joindre Jeedom.
Ce que je ne comprends pas c’est que je n’ai aucun souci de gestion côté jeedom, il est toujours dispo. J’ai regardé le http.error, le ping ou autre, NADA. D’ailleurs mes autres tablettes vivent bien leur vie. Par contre, je cherche dans les logs Jeedom où je peux trouver les connexions API de JPI, mais je ne vois pas où c’est ?

Le GET est dans le CRON 2 minutes :

Je récupère l’état d’un binaire si mouvement dans la zone :

Salut @dJuL,
L’astuce de la liste de lecture ne fonctionne pas correctement, en fait cela additionne très vite plusieurs flux et ça devient inaudible :frowning: , au final on perd le contrôle et il devient imposssible de couper :frowning:

Par contre le cron, lui, fonctionne bien

Tu as surement un pb avec paw car il n’est pas possible d’avoir plusieurs flux en même temps, il n’y a qu’un seul mediaplayer…
Cela veut dire que le core de JPI sous paw doit être tué et il est relancé.
Et parfois tu as plusieurs core en même temps (si lecture simultané de plusieurs son)
Ca expliquerait également les coupures. (Je suis resté 6h sans coupure sur le flux franceInfo dans mon test).
Il faut vérifier que pour paw et JPI les optimisations de batteries sont bien désactivées, et peut être en profiter pour rebooter l’appareil.
Les crons étants gérés par le service de l’apk de JPI, cela explique pourquoi ça fonctionne.

Bah tout simplement parce que Jeedom ne répond pas du point de vu de l’appareil, comme c’est indiqué :stuck_out_tongue_winking_eye:

Ce message indique un timeout, et non pas une erreur de requête, ce n’est pas du tout la même chose que tes autres captures au dessus.
Au dessus c’est le réseau qui est dead, là c’est le timeout qui est atteint avant d’avoir reçu la réponse.
Il suffit donc pour commencer d’essayer de l’augmenter dans la configuration :

image

Essayes avec 5s.
Ce qu’il se passe probablement c’est que justement pendant un refreshLayout soit Jeedom, soit la tablette soit les 2 sont ralentis et du coup le timeout est atteint.

Merci @djul, j’adapte.

Bien vu, le problème venait de l’optimisation de batterie pour paw, sans doute mise par défaut à l’install :frowning:
Avec l’astuce de la liste de lecture multiple tout est ok depuis plusieurs heures.
Cela va peut être aussi résoudre les soucis de stabilité que j’avais avec la connexion réseau :wink:
En tout cas, merci pour le diagnostique, j’avoue n’avoir jamais penser à ce point :frowning:

Et sans doute que tu n’auras même plus besoin de liste de lecture car ça ne devrait plus couper (sauf si ça coupe à cause d’internet ou du serveur source) :wink:

Oui c’est sûr que ça ne peut qu’aider sur la stabilité…
Sans parler des pb de statuts et de valeurs des variables en RAM que ça pouvait engendrer (tout comme les messages « l’APK ne répond pas » vu que le core du code de JPI a un ID unique).

J’ai rajouté la vérification dans l’apk des optimisations batterie et pour JPI, et pour Paw :

image

Quand je me souviens le nombre de personne dans ce fil qui ont des pb de stabilité de Paw ou de JPI sur le long terme, je pense qu’une majorité de ce genre de soucis venait de cela…

Ce sera dans la prochaine maj :wink:


Edit: ce genre de manip interdit à l’appli d’être sur le playstore à cause d’une permission interdite par google.
Ca tombe bien, je ne comptais pas mettre JPI.
JPI était déjà surement pas éligible avant, là maintenant au moins c’est certain.

2 « J'aime »

Au nom de toutes les buzes :face_with_thermometer: MERCI :slight_smile:

2ème jour sans pertes de connection !! Pour le play, nickel (mais il faut quand même mettre n fois le http dans la commande)

Après il y a aussi un truc tout con qui m’est déjà arrivé.
Il suffit de désinstaller Paw ou JPI pour une raison ou une autre.
Et quand on le réinstalle, on oublie de retourner redésactiver les optimisations batteries qui ont forcément sautées de fait de la désinstallation.
Du coup maintenant ce problème ne se posera plus :slight_smile:


Edit: d’ailleurs pour ceux qui utilisent la VR je recommande de désactiver les optimisations batteries pour l’appli google.
Les moteurs de voix également pour ceux qui font du tts
Et le webview également pour les designs


Update du code v0.9938 en ligne ! :slight_smile:

Au menu, ajout d’un moteur d’expression puissant en Java et pour les conditions, et pour les actions via la nouvelle action javaCode. Ajout du type de trigger pour les événements d’allumage et d’extinction d’écran. Ajout de la vérification des réglages Android d’optimisation de la batterie pour éviter les instabilités. Nombreuses corrections et optimisations.


­
Change log
­

****************** MOTS CLEFS: ******************

— Ajout Mot clef dédié aux scénarios de l’allumage et extinction de l’écran :

image

  • {TRIGGER_TYPE} => Type de déclencheur qui a allumé ou éteint l’écran

image

Permet de réagir différemment dans les scénarios selon le type de déclencheur qui a allumé ou éteint l’écran.
Ex: Si < 0, on peut en déduire que l’éteint ne s’allume que brièvement et donc ignorer les éventuelles actions du scénario.
­

****************** ÉVÉNEMENTS / SCÉNARIOS : ******************

— Ajout d’un nouvel opérateur Expression Java pour les tests conditionnels :

image

image

Permet de réaliser des conditions complexes :

image

Permet également d’éviter de devoir imbriquer les blocs conditions :

image

Un peu similaire dans l’utilisation au moteur d’expression Jeedom, la syntaxe est en java et supporte toutes les fonctions classiques java ainsi que tout les mots clefs JPI.

­

****************** ACTIONS: ******************

— Ajout d’actions :

  • Fonctions / javaCode => Permet d’exécuter un bloc code (syntaxe Java)

image

Les mots clefs JPI sont accessibles au seins du bloc code.
Il est possible de définir la valeur à retourner par l’action avec l’instruction java « return ».
Toute valeur de type primitif peut être retournée (int, String…)

image

Un éditeur de code Java est également accessible pour une meilleur lisibilité.
Il permet également d’insérer facilement des mots clefs JPI dans le code :

image

— Modifications d’ actions:

  • Médias / play => Ajout du paramètre bufferTime

image

Permet d’augmenter la mise en mémoire tampon d’un flux.
Ne s’applique qu’aux media(s) sélectionné(s)
(Si ajout dans une liste de lecture existante par exemple avec le paramètre queue seul le ou les médias sélectionnés sont impactés)

­

****************** INTERFACE WEB - PAGES: ******************

  • page CONFIGURATION / Réglages avancés :
    – Section Application => Après avoir défini un code Pin il était impossible de vider le champs si on ne voulait plus l’utiliser => corrigé
    ­

****************** INTERFACE WEB - FENÊTRES: ******************

  • Fenêtre d’aide des mots clefs:
    – Ajout du nouveau mot clef {TRIGGER_TYPE}

  • Nouvelle Fenêtre Éditeur de code Java:
    – Utilisable lors de la création ou l’édition de la nouvelle action javaCode
    ­

****************** INTERFACE WEB - GÉNÉRAL: ******************

  • Améliorations esthétiques de l’interface et diverses petites corrections
  • Maj des fichiers JS
  • Maj des fichiers CSS
    ­

****************** MOTEUR (CORE DE JPI): ******************

  • Ajout du support des expressions java
  • Amélioration de la réinitialisation du core
  • Support des nouvelles actions et modifications d’actions
  • Diverses corrections et optimisations
  • Maj. des fichiers de langues
    ­

ps: Si vous avez défini un user/password (autre que ceux par défaut), vous devez les redéfinir à nouveau dans la page CONFIGURATION / Connexion pour qu’ils soient pris en compte pour l’authentification du streaming, des actions rapides et du lien du gestionnaire de fichiers.


NOTE: Vous devez d’abord mettre à jour l’APK de JPI en v0.9938 pour pouvoir avoir accès à cette mise à jour du code.


L’application restera gratuite. un bouton donation se trouve dans la fenêtre DIVERS / A propos de l’interface web si vous souhaitez soutenir le projet. :green_heart:


Update de l’APK v0.9938 en ligne ! :slight_smile:

  • Ajout de la vérification des optimisations de la batterie pour JPI et pour Paw server.

image

Pour éviter les problèmes récurrents liés à ce réglage, l’appli refuse de démarrer en cas de mauvaise configuration.
(Pour paw Serveur JPI lance la liste mais il faut aller configurer l’appli à la main dans la liste)

  • Ajout du support du nouveau mot clef {TRIGGER_TYPE}
  • Refonte des « wakelock » du service
  • Diverses corrections et optimisations
    ­

Patch de l’APK v0.9938 en ligne ! :slight_smile:

  • La vérification des optimisations de la batterie pour JPI et pour Paw server provoquait un blocage sous Andoid TV => corrigé

Pas de nouveau numéro de version, si vous êtes sous Android TV et avez déjà téléchargé la v0.9938 précédente, il faut à nouveau télécharger l’apk ici : http://rulistaff.free.fr/JPI/getJPI


Merci pour vos rapports de crashs.
Par contre svp évitez de les envoyer si vous n’utilisez pas la dernière version de JPI
Je n’en reçois quasi plus, ou alors provenant de vieilles versions c’est donc un bon signe :slight_smile:


Change log versions précédentes:

v0.9935 à v0.9937 : jpi-apk-android-tel-dedie-domotique/10014/1502
v0.9933 à v0.9934 : jpi-apk-android-tel-dedie-domotique/10014/1459
v0.993 à v0.9932 : jpi-apk-android-tel-dedie-domotique/10014/1353
v0.9929 : jpi-apk-android-tel-dedie-domotique/10014/1286
v0.9928 : jpi-apk-android-tel-dedie-domotique/10014/1181
v0.9926 à v0.9927 : jpi-apk-android-tel-dedie-domotique/10014/1083
v0.9922 à v0.9925 : jpi-apk-android-tel-dedie-domotique/10014/896
v0.992 à v0.9921 : jpi-apk-android-tel-dedie-domotique/10014/792
v0.991 à v0.9913 : jpi-apk-android-tel-dedie-domotique/10014/614
v0.99 à v0.9907 : jpi-apk-android-tel-dedie-domotique/10014/465
v0.989 à v0.9892: jpi-apk-android-tel-dedie-domotique/10014/322
v0.987 à v0.988 : jpi-apk-android-tel-dedie-domotique/10014/247
v0.986 : jpi-apk-android-tel-dedie-domotique/10014/239
v0.985 : jpi-apk-android-tel-dedie-domotique/10014/201
v0.983 : jpi-apk-android-tel-dedie-domotique/10014/161
v0.982 : jpi-apk-android-tel-dedie-domotique/10014/144
v0.98 : jpi-apk-android-tel-dedie-domotique/10014/102
v0.974 à v0.977: jpi-apk-android-tel-dedie-domotique/10014/35
v0.973: jpi-apk-android-tel-dedie-domotique/10014/22


NOTE : Cette version est en beta, merci de signaler les éventuels bugs rencontrés (testé sous Android v5 à v9 et Android GO).


Page permettant de télécharger toutes les versions de l’apk (avec changeLog) :

Get JPI


L’application restera gratuite. un bouton donation se trouve dans la fenêtre DIVERS / A propos de l’interface web si vous souhaitez soutenir le projet. :green_heart:


Changement de version faite, tout est NICKEL

Juste une question, que me recommanderais tu comme valeur pour les TROIS paramètres du play :

Tout dépend de ce que tu veux faire…

  • bufferTime rajoute du buffer ce qui peut éviter une coupure en cas de ralentissement du débit.
    Tu as mis 5s, ce qui donnera 8s au total de buffer (il y a 3s de buffer par défaut pour les flux http), ce qui me semble pas mal, il suffit de tester (le seul petit inconvénient de ce paramètre est l’attente entre le lancement de l’action et la sortie réelle du son)

  • queue = 1 rajoute à la liste de lecture (si le player est déjà en cours de lecture ou contient déjà une liste de lecture, rajoute à la suite de la liste).
    Si queue = 0 lance immédiatement la lecture et efface l’éventuelle liste de lecture précédente.

  • wait = 1 bloque le scénario tant que la lecture est cours (les actions suivantes ne seront donc pas exécutées tant que la lecture est en cours)
    Si wait = 0 continue l’exécution du scénario immédiatement

Merci @dJuL, je vais finir de tester tout ça :slight_smile:

Merci @djul, je viens de faire les mises à jour.
Du coup j’ai modifié mon allumage d’écran pour qu’il ne fasse le refresh que si j’allume à la main la tablette (double tap, ou power) notamment la nuit quand l’alarme est mise.
Cela me permet de ne pas avoir le refresh en double quand la détection de mouvement s’active et allume l’écran par un screenon et fais un refresh côté jeedom.

Parfait !

Impressionnant @dJuL
Bientôt la v1 :blush:

Bonjour,

toujours avec mes problèmes d’écran qui ne s’éteint jamais, je vous met ma config pour voir si j’ai pas loupé quelque chose. Ma tablette sert uniquement à l’affichage de Jeedom, il n’y a pas d’autres interactions.