Gestion des notifications HTML5 / Discord / Home Assistant / Email / TTS / Telegram

Super, merci pour ta participation @carfnann, je vais voir pour intégrer tes modifs dans mon flow :slight_smile:

1 « J'aime »

Bon voila, j’ai intégré le flow JPI de @carfnann (encore merci à toi :wink: )
@carfnann, pour info, j’ai rework un truc au niveau de ta function pour facilité la configuration du serveur JPI.

Par contre ATTENTION à cette nouvelle version !

J’ai également rework la configuration du sublow.
Dorénavant, tout est stocker dans un seul JSON qui est stocker en variable global « notif »

Voici le nouveau format :

var configuration = 
{
    "discord": {
        "dest": {
            "discord_communaute_news": "https://discord.com/api/webhooks/XXXXXXXXXXXXXXXX",
            "discord_communaute_zwave": "https://discord.com/api/webhooks/YYYYYYYYYYYYYYYY",
            "discord_communaute_diy": "https://discord.com/api/webhooks/ZZZZZZZZZZZZZZZZZ",
        }
    },
    "home_assistant": {
        "dest": {
            "tel_clement": "mobile_app_oneplus_a6010",
            "tel_nathalie": "mobile_app_oneplus_a5000"
        }
    },
    "email": {
        "dest": {
            "mail_clement": "email1@domain.fr",
            "mail_john": "email2@domain.fr",
            "mail_bibi": "email3@domain.fr"        
        }
    },
    "telegram": {
        "dest": {
            "telegram_smarthome": "ID1",
            "telegram_bot": "ID2"        
        }
    },
    "mattermost": {
        "dest": {
            "mattermost_home" : "https://mattermost.domain.fr/hooks/XXXXXXXXXXXXXXXXXXXXXXXXX",
            "mattermost_volets" : "https://mattermost.domain.fr/hooks/YYYYYYYYYYYYYYYYYYYYYYYY",
        }
    },
    "jpi": {
        "address": "192.168.1.1:8080",
        "dest": {
            "sms_clement": "06XXXXXXXXX",
            "sms_nathalie": "06YYYYYYYYY",
        }
    }
}
global.set("notif",configuration)

Super !!! Merci carfnann !!

Je cherche ca depuis un moment cool

Merci a M4dm4rtig4n pour ce travail !

Je reviens vers vous car aprés teste j’ai une erreur que je ne comprend pas


Je crois qu’il me manque quelque chose

Oui il y a un bug, j’ai pas encore push le fix :slight_smile:

A mettre dans le « Get Configuration » de JPI :

var dest = msg.dest ;
var jpi_address = global.get('notif.sms.address');
var sms_number = global.get("notif.sms.dest."+dest) || 'undefined'
var message = encodeURIComponent(msg.message);

msg.method = "POST"
msg.url = "http://"+jpi_address+"/?action=sendSms&number="+sms_number+"&message="+message

return msg;

super merci !!
Ca fonctionne mais depuis j’ai ce type d’erreur il y a une façon de faire le message d’envoie?

Capture3

J’ai déjà eu plusieurs fois cette erreur, mais je ne sais plus à quoi c dû…
Dans mes souvenirs, c’est parce que je set une valeur en amont qui vient surcharger le node http.

Dans ton node « http out », tu as bien set le method en - send by msg.method - ?

En effet ca s’arrête quand je fait ça mais je n’ai pas de message qui passe. j’ai une erreur :
ERREUR - undefined

@M4dm4rtig4

Avec l’aide de @evenisse il a modifier ce que tu a mis plus haut car ca ne marchait pas pour moi je t ele met ci-aprés :

var dest = msg.dest ;
var jpi_address = global.get('notif.jpi.address');
var sms_number = global.get("notif.jpi.dest."+dest) || 'undefined'
var message = encodeURIComponent(msg.message);

msg.method = "POST"
msg.url = "http://"+jpi_address+"/?action=sendSms&number="+sms_number+"&message="+message

return msg;

Pour moi ca marche il a juste changer notif.sms.dest par notif.jpi.dest

1 « J'aime »

Nickel, n’ayant pas JPI je ne peut pas vraiment tester correctement le flow :stuck_out_tongue:

J’ai push la maj sur Github.

Je propose une modification afin de faire marcher les alertes avec d’autres plateformes SMS accessible via http:

var dest = msg.dest ;
var sms_url = global.get('notif.sms.url');
var sms_number = global.get("notif.sms.dest."+dest) || 'undefined'
var message = encodeURIComponent(msg.message);

msg.method = "POST"
msg.url = sms_url.replace("##SMSNUMBER##",sms_number).replace("##MESSAGE##",message)

return msg;

Et dans configuration :

    "sms": {
        "url": "http://192.168.1.1:8080/?action=sendSms&number=##SMSNUMBER##&message=##MESSAGE##",
        "dest": {
            "sms_vincent": "06XXXXXXXX",
            "sms_sandrine": "06YYYYYYYYY",
        }

N’ayant pas JPI, j’ai testé avec smsmode (au hasard sur le net) en mettant

        "url": "https://api.smsmode.com/http/1.6/sendSMS.do?accessToken=XXXXXXXX&message=##MESSAGE##&numero=##SMSNUMBER##",

Et ca marche :wink:

J’ai fait cette modification en prevision de l’envoie de SMS via un routeur huawei 4G en local, ce qui a plus de sens pour moi que de le faire via une API externe WEB, les SMS permettant principalement de m’avertir quand je n’ai plus le net :wink:

1 « J'aime »

@Ioull une petite PR sur le github de @M4dm4rtig4n ?
En appliquant ce patch, il faudrait retirer toutes références à JPI

Vu que l’export du flow n’est pas formatté sur plusieurs lignes, la PR va être compliquée à merge je pense, non ?

oui je sais. J’ai déjà fait une PR pour awtrix (+formattage). Une fois passée (si acceptée par @M4dm4rtig4n :wink:) , il sera plus simple d’en faire d’autres.

1 « J'aime »

Bonjour,

Je n’utilise pas Node-red du tout. MAis pour ma culture, comment utilisez vous cela dans vos automatisations ensuite ?

Je regarde ça ce soir :wink:

1 « J'aime »

@Ioull tu peux faire ton patch, le flow est formatté.

Et voila c’est fait !

1 « J'aime »

Et voila c’est merge ! :smiley:

Hello,
Aurais tu un exemple pour envoyer le tts. Comment formater le message.
J’ai essayé avec ton exemple d’input. J’ai essayé avec un node function en indiquant msg.message = « test »
en dest j’ai mis tts_vol_player.
Mon google home reçoit bien l’ordre mais rien ne se passe après le réglage du volume. le message n’est pas lu