Bonjour,
Maintenant que je fais tourner correctement maillistener, j’ai un problème d’analyse…
Comme plusieurs ici, je suis chez EPS-Homiris.
L’analyse de la mise en service ou de l’arrêt est simple à gérer, car dans l’objet du mail c’est indiqué, et donc facilement récupérable…
Par contre, la mise en « Alarme partielle » n’est stipulé que dans le corps du mail…
J’ai essayé avec les commandes [Texte] et [HTML], mais je n’arrive pas à déceler ce mot…
Vous faites comment ?
Bonjour à tous,
@nhi , @DDEF , @clovis , @PapiGege , @laurent.da-col , @mmourcia
Je crois avoir compris que vous utilisiez ce plugin et que vous étiez aussi chez Homiris…
Comment faites vous ?
Bonjour
Essaye ça :
En déclencheur :
#[Maison][Alarme][Texte]#
Un bloc Si : #[Maison][Alarme][Texte]# matches « /partielle/ » (attention au guillemets “. “)
Ensuite les actions que tu as besoin
Gérard
Salut,
de mon coté j’ai fait
Un virtuel Alarme activée ou non
En relisant je vois que j’aurais pu faire mieux mais bon ca a le mérite de fonctionner
Un équipement maillistener
Il fetche les mails régulièrement (il s’appelle signoepspresence
)
Un scénario qui regarde le contenu des emails
Il est déclenché par la réception d’une email
Pour être sur que je sois bien en présence d’une mail d’homiris, je contrôle l’expéditeur.
Ensuite je regarde le sujet et s’il contient le pattern Mise en marche
alors c’est que l’alarme est activée et je mets à jour le virtuel et s’il contient le pattern Mise à l
alors c’est le contraire.
Exemples d’exploitation du virtuel chez moi
- Quand l’alarme est en marche, j’éteins toutes les lumières possibles
- J’ai un capteur de mouvement à la descente d’escalier, lorsqu’il détecte un mouvement ET que l’alarme est en marche, ca veut dire que je dois désactiver l’alarme avant de me balader au RDC sous peine d’en prendre plein les oreilles
Voila, j’espère qie ca t’aidera
Salut
De mémoire, j’avais abandonné la lecture du corps du mail. Et donc, je ne sais plus qui de « Madame » ou « Monsieur » déclenche, tant pis.
Je ne sais pas si la situation a évolué depuis, mais vu ton message, ce n’est toujours pas fonctionnel.
une idée: passer par les sms qu’envoie homiris si tu es équipé GSM
A bientôt
Bonjour,
Je vais essayer…mais j’ai des doutes…
- Car le contenu du message est en HTML…
- Car j’arrive bien à déclencher mon scénario avec #[Maison][Richard Gmail][Expéditeur]#
Mais avec la condition #[Maison][Richard Gmail][HTML]# matches « /partielle/ » j’obtiens
[2023-05-31 15:32:16][SCENARIO] Start : Scenario lance manuellement.
[2023-05-31 15:32:16][SCENARIO] Exécution du sous-élément de type [condition] : if #[Maison][Richard Gmail][Texte]# matches "/partielle/"
[2023-05-31 15:32:16][SCENARIO] Evaluation de la condition : [0 matches "/partielle/"] = 0
[2023-05-31 15:32:16][SCENARIO] Exécution du sous-élément de type [action] : else
[2023-05-31 15:32:16][SCENARIO] Fin correcte du scénario
Tandis que la condition #[Maison][Richard Gmail][HTML]# matches « /partielle/ » me renvoie :
[2023-05-31 15:05:30][SCENARIO] -- Start : Scenario lance manuellement.
[2023-05-31 15:05:30][SCENARIO] - Exécution du sous-élément de type [condition] : if #[Maison][Richard Gmail][HTML]# matches "/partielle/"
[2023-05-31 15:05:30][SCENARIO] Evaluation de la condition : ["
Suivi du contenu du mail, puis :
" matches "/partielle/"] = "
Et une nouvelle fois le contenu du mail, puis :
" matches "/partielle/"
[2023-05-31 15:05:30][SCENARIO] Expression non valide : "
Et encore le contenu du mail, puis enfin :
" matches "/partielle/"
[2023-05-31 15:05:30][SCENARIO] Fin correcte du scénario
Merci mais mon problème n’est pas là…
C’est de savoir si c’est l’alarme totale ou partielle qui est activée et cette info n’est pas dans l’objet du mail mais dans le corps seulement…
Qu’entends-tu par là ?
On peut sniffer les sms ?
OUi, mon Homiris a une puce GSM
Je te confirme que ça ne fonctionne toujours pas dans le corps du mail:
Alors que le sujet est OK:
Pour le HTML, ok mais le matches ne marche pas non plus
Pas de solution à part tenter le sms
En fait, sur le site d’Homiris, tu peux recevoir des notifications mail ET sms, et ce je crois même si elle n’est pas équipée GSM. En effet, le GSM sert au lien entre ta maison et Homiris, et eux ensuite t’envoie un SMS si tu le souhaites.
Et là, si Jeedom est équipé d’un Dongle GSM, tu peux recevoir le sms et le traiter, à mon avis là, tu n’auras plus aucun soucis
Tu vas sur homiris, Espace abonnés, Configuration, SIGNO, et là tu gères tes règles et notifications (2 mails et 2 sms max si je ne me trompe)
Oui, je sais pour l’envoi de SMS de la part d’Homiris.
Mais je ne savais pas qu’il existait des Dongle pour capter des sms
Merci pour tes essais et tes explications
Avec plaisir.
Après, tu pourras voir sur le net que faire marcher ces clés « compatibles jeedom », c’est pas gagné, mais c’est un autre sujet, et cela ouvre, quand ça marche, de nouvelles perspectives à la domotique.
PS: il te faudra y intégrer une carte SIM, genre Free à 2€ par mois, si le réseau passe chez toi
Pour le moment je vais me contenter de Marche / Arrêt
Je rajoute sur ma longue liste ToDo…
Si je comprends mieux ton problème, le mail d’homiris contient des double quotes et celles-ci ne sont pas échappées par le plugin.
Jeedom se retrouve avec des fermetures de quotes au mauvais endroit etc.
Si tu es prêt à modifier une ligne de code, je peux t’indiquer un contournement.
Je n’ai pas en tête les effets de bord exacts.
Dans le fichier plugins/maillistener/resources/maillistener.js
, au moment où l’on poste le résultat du fetch de mail (vers la ligne 88),
- json: {"body": mail.text, "html": mail.html},
+ json: {"body": mail.text, "html": mail.html.replace(/[\"]/g, '\\"')},
La c’est juste un replace pour ce cas particulier et j’imagine qu’il existe des fonctions pour échapper tout correctement mais je ne connais pas le js.
Au final, le match répond normalement
Merci pour ta proposition que je viens d’appliquer
request({
url: encodeURI(apiurl),
method: 'PUT',
//json: {"body": mail.text, "html": mail.html},
json: {"body": mail.text, "html": mail.html.replace(/[\"]/g, '\\"')},
},
function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log('contact Jeedom avec retour :',response.statusCode);
}
});
});
Mais pour moi ça ne change rien… J’ai relancé les dépendances et le demon…il faut faire autre chose ?
Non rien de plus, en tout cas je n’ai rien fait de plus de mon coté.
Par contre, si tu relances les dépendances, j’espère que cela ne vient pas écraser les modifications live.
Tu as réenclenché ton alarme pour qu’un nouveau mail soit généré et passe ainsi dans le replace ?
Bonjour,
J’ai vérifié ce matin, les modifications sont toujours présentes et je n’avais pas besoin de relancer car pour les tests je testais sur le mot « Bonjour » présent dans tous les mails Signo
Par contre je viens de retester l’expression ce matin et …miracle ça marche
Je vais tester en live sur 24h et je validerai ta solution
Merci encore pour ton aide
Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.