Domollier Posté(e) le 18 janvier 2018 Signaler Posté(e) le 18 janvier 2018 Bonjour, Je rappelle que je debute avec la hc2 Je souhaite soulager ma zibase en utilisant celle ci seulement comme antenne multi protocole et en abandonnant son systeme de programmation disons pas terrible! pour l'instant j'ai reussi a faire des joli periph virtuels qui pilotent les peripheriques enocean en LUA et recupere le retour d'etat pour mettre a jour variable et icone du coup ca me donne envie de gerer TOUT mes peripheriques avec ma HC2 Les zwave .. pas de soucis c'est prevu pour ca ! EnOcean ca y est j'ai compris ca marche mais j'ai aussi des CHACON ... :-( Je n'ai trouvé ni les commandes HTLM (ProtocoleP13 pour Enocean Quel code pour Chacon) Ni le moyen de trouver l'etat des peripheriques Chacon dans le XML de la zibase. Peut être est ce tout simplement impossible ?? La zibase ne note pas l'etat des periph chacon?? Je crois que ces periph ne confirment pas leur etat par un retour mais il pourrait y avoir une trace des ordres envoyés Par avance merci
Steven Posté(e) le 19 janvier 2018 Signaler Posté(e) le 19 janvier 2018 J'ai encore sous la main un vieux script qui me permettant d'envoyé des ordres à ma Zibase directement depuis mon agenda google, il y a le P3 pour Chacon. Voici le script : var ZIBASE = "ZiBASExxxxxx"; var TOKEN = "xxxxxxxxx"; var CAL_ID = 'xxxxxxxxxxxxxxxxxxxx@group.calendar.google.com'; var KEYWORD = "MODULE"; function test() { actionneModule("A3", "ZWAVE", "OFF"); } /** * --------------------------------------------------------------------------------------------------------- * Cherche dans l'agenda le mot clé "MODULE" toutes les minutes et exécute l'action sur le module * ex. MODULE A7 ZWAVE OFF * --------------------------------------------------------------------------------------------------------- **/ function searchModule() { var cal = CalendarApp.getCalendarById(CAL_ID); var now = new Date(); var nowPlusOneMinute = new Date(now.getTime() + (60 * 1000)); var events = cal.getEvents(now, nowPlusOneMinute, {search: KEYWORD}); for (var i=0 ; i < events.length; i++) { if (events[i].getTag(KEYWORD) == null || events[i].getTag(KEYWORD) != "done") { var action = events[i].getTitle().replace(KEYWORD+ " ", ''); var params = action.split(" "); actionneModule(params[0], params[1], params[2]); events[i].setTag(KEYWORD, "done"); } } } /** * --------------------------------------------------------------------------------------------------------- * Lance une action sur un module de la ZiBASE * id : l'identifiant du périphérique (A3, B2, Z3, ...) * protocole : VISONIC433, VISONIC868, CHACON, DOMIA, RF X10, ZWAVE, ... * action : ON, OFF, DIM, ... * * Exemple : actionneModule("A7", "ZWAVE", "OFF"); * --------------------------------------------------------------------------------------------------------- **/ function actionneModule(id, protocole, action) { var erreur = ""; var iprotocole = -1; if (protocole == "VISONIC433") { iprotocole = 1; } else if (protocole == "VISONIC868") { iprotocole = 2; } else if (protocole == "CHACON") { iprotocole = 3; } else if (protocole == "DOMIA") { iprotocole = 4; } else if (protocole == "RF X10") { iprotocole = 5; } else if (protocole == "ZWAVE") { iprotocole = 6; } else if (protocole == "RFS10/TS10") { iprotocole= 7; } else if (protocole == "XDD433") { iprotocole= 8; } else if (protocole == "XDD868") { iprotocole= 9; } else if (protocole == "XDD868Inter/Shutter") { iprotocole= 10; } else if (protocole == "XDD868PilotWire") { iprotocole= 11; } else if (protocole == "XDD868Boiler") { iprotocole= 12; } if (iprotocole == -1) { erreur = erreur + "Protocole inconnu " + protocole; } var iaction = -1; if (action == "OFF") { iaction = 0; } else if (action == "ON") { iaction = 1; } else if (action == "DIM") { iaction = 2; } else if (action == "BRIGHT") { iaction = 2; } else if (action == "ALL_LIGHTS_ON") { // ne fonctionne pas en X10 iaction = 4; } else if (action == "ALL_LIGHTS_OFF") { // ne fonctionne pas en X10 iaction = 5; } else if (action == "ALL_OFF") { // fonctionne uniquement en X10 iaction = 6; } if (iaction == -1) { erreur = erreur + " action inconnu " + action; } if (erreur.length > 0) { envoi = UrlFetchApp.fetch("https://zibase.net/m/zapi_remote_zibase_set.php?device=" + ZIBASE + "&token="+ TOKEN + "&action=rowzibasecommand¶m1=0¶m2="+ (iprotocole * 256 + iaction) + "¶m3=" + (id.substring(1,2) -1) + "¶m4=" + (id.charCodeAt(0)-65)); } return erreur; }
Domollier Posté(e) le 19 janvier 2018 Auteur Signaler Posté(e) le 19 janvier 2018 (modifié) Merci Ca m'embetait de devoir changer des vieux modules qui fonctionnent parfaitement! avec la commande du type (peripherique chacon sur G2) GET("/cgi-bin/domo.cgi?cmd=ON%20G2%20P3") GET("/cgi-bin/domo.cgi?cmd=OFF%20G2%20P3") ca marche nickel pour ceux qui auraient encore des X10 ca marche aussi avec GET("/cgi-bin/domo.cgi?cmd=ON%20A1%20X10") reste plus quune eventuelle recup dans le xml de la zibase si certain savent que c'est impossible une confirmation mevitera de me chauffer les neurones a regarder ce xml dans tous les sens Je vais mettre une variable globale dans la HC2 pour conserver l'état et afficher les icones. En tout cas merci je vais pouvoir faire fonctionner TOUT mes peripheriques avec la HC2 Modifié le 19 janvier 2018 par Domollier
Steven Posté(e) le 19 janvier 2018 Signaler Posté(e) le 19 janvier 2018 J'avais fait l'opération inverse, càd que chaque changement d'état de mon module Chacon allait presser le bouton d'un VD sur ma HC2. Je n'allais donc plus récupérer le XML toutes les X secondes.
Domollier Posté(e) le 28 janvier 2018 Auteur Signaler Posté(e) le 28 janvier 2018 mais comment fais tu pour reuperer l'etat ou l'action du module chacon?? pour lancer un VD sur la hc2 ??
Steven Posté(e) le 29 janvier 2018 Signaler Posté(e) le 29 janvier 2018 Ton url à toi devra est http://user:password@ip_de_ta_hc2/api/callAction?deviceID=<id du vd>&name=pressButton&arg1=<id du bouton>
Messages recommandés