Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. ETA Kessel auslesen über Etamon und Script [gelöst]

    NEWS

    • Wartungsarbeiten am Forum 16.04.21 um 22 Uhr

    • js-controller 3.2 jetzt im STABLE!

    • Alexa2 Adapter: ACHTUNG UPDATE auf 3.7.x nötig!!

    ETA Kessel auslesen über Etamon und Script [gelöst]

    This topic has been deleted. Only users with topic management privileges can see it.
    • I
      Idefix01 last edited by Idefix01

      Hallöchen und frohe Ostern,

      kann mir jemand weiter helfen?

      Ich bekomme keine Werte über das Script, sondern nur irgendwann ein Timeout, irgendetwas fehlt noch.

      Mit dieser Zeile komme ich auf den Kessel drauf und sehe alle "var" Funktionen

      IP-ETA:8080/user/menu
      

      Aber mit dem Script schreibt er keine Werte

      var http = require('http');
      var xpath = require('xpath');
      var dom = require('xmldom').DOMParser;
      
      var etaIP = 'http://IP-ETA:8080/user/var';
      
      	// 1. URI
      	// 2. iobroker Object
      	// 3. read
      	// 4. write
      	// 5. name
      	// 6. type
      	// 7. unit
      	// 8. role
      	// 9. CCU variable (optional)
      var etaVars = [
      	["/120/10251/0/0/12242",		"Eta.Puffer.oben",				                true, false, "Puffer oben",						            "number",	"°C",		"value.temperature",    ""]
      	,["/120/10251/0/0/12244",		"Eta.Puffer.unten",				                true, false, "Puffer unten",					            "number",	"°C",		"value.temperature",    ""]
      	,["/120/10251/0/0/12533",	    "Eta.Puffer.geforderte-Leistung",		        true, false, "geforderte Leistung",   			            "number",	"KW",		"state",                ""]
      	,["/120/10251/0/0/12245",		"Eta.Puffer.unten-Solar",         		        true, false, "Puffer unten Solar", 				            "number",	"°C",		"value.temperature",    ""]
      	,["/120/10251/0/0/12197",		"Eta.Aussen.Aussentemperatur",			        true, false, "Aussentemperatur",				            "number",	"°C",		"value.temperature",    ""]
      	,["/120/10251/0/0/13026",		"Eta.Puffer.Extra-laden",   			        true, false, "Puffer Extra laden",				            "string",	"",			"state",                ""]
      	,["/120/10251/0/0/12129",		"Eta.Puffer.Status",        			        true, false, "Puffer Status",	    			            "string",	"",			"state",                ""]
      	,["/120/10251/0/0/12271",		"Eta.Puffer.WW-Temperatur-oben",	            true, false, "WW Temperatur oben",				            "string",	"",			"state",                ""]
      	
      	,["/120/10101/0/11125/2002",	"Eta.Heizkreis.Mischer-Status",		            true, false, "Heizkreis Mischer Status",         	        "string",	"",		    "state",                ""]
      	,["/120/10101/0/11125/2120",	"Eta.Heizkreis.Mischer-Temperatur-Soll",        true, false, "Heizkreis Mischer Temperatur Soll",           "string",	"°C",	    "value.temperature",                ""]
      	,["/120/10101/0/11125/2121",	"Eta.Heizkreis.Mischer-Temperatur-Ist",         true, false, "Heizkreis Mischer Temperatur Ist",    	    "string",	"°C",	    "value.temperature",                ""]
      	,["/120/10101/0/11125/2127",	"Eta.Heizkreis.Mischer-Position",		        true, false, "Heizkreis Mischer Position",         	        "string",	"",		    "state",                ""]
      	,["/120/10101/0/11125/2002",	"Eta.Heizkreis.Mischer-Status",		            true, false, "Heizkreis Mischer Status",         	        "string",	"",		    "state",                ""]
      	,["/120/10101/0/11124/0",	    "Eta.Heizkreis.Pumpe-Status",		            true, false, "Heizkreis Pumpe Status",           	        "string",	"",		    "state",                ""]
      	,["/120/10101/0/11124/2001",	"Eta.Heizkreis.Pumpe-Anforderung",		        true, false, "Heizkreis Pumpe Anforderung",         	    "string",	"",		    "state",                ""]
      	,["/120/10101/12113/0/1109",	"Eta.Heizkreis.Schaltzustand",		            true, false, "Heizkreis Schaltzustand",          	        "string",	"",		    "state",                ""]
      	,["/120/10101/0/0/12241",   	"Eta.Heizkreis.Vorlauf",		                true, false, "Heizkreis Vorlauf",				            "number",	"°C",		"value.temperature",    ""]
      	,["/120/10101/0/0/13100",		"Eta.Heizlast.Heizlast",	    		        true, false, "Heizlast",		                		    "number",	"KW",		"state",                ""]
      	,["/120/10101/0/0/13099",		"Eta.Heizlast.Nennheizlast",	                true, false, "Nennheizlast",			                    "number",	"KW",		"state",                ""]
      	,["/120/10101/0/0/12080",		"Eta.Kessel.Ein-Aus-Taste",     		        true, false, "Kessel Zustand",				                "string",	"",		    "state",                ""]
      	
      	,["/120/10221/0/11142/2002",	"Eta.Solar.Kollektorpumpe-Status",              true, false, "Solar Kollektorpumpe Status",  				"string",	"",			"state",                ""]
      	,["/120/10221/0/0/12275",	    "Eta.Solar.Kollektor-Temperatur",               true, false, "Solar Kollektor Temperatur",  				"number",	"°C",		"value.temperature",    ""]
      	,["/120/10221/0/0/12187",	    "Eta.Solar.Kollektor-Temperatur-Min",           true, false, "Solar Kollektor Temperatur Min",  			"number",	"°C",		"value.temperature",    ""]
      	,["/120/10221/0/0/12188",	    "Eta.Solar.Kollektor-Temperatur-Max",           true, false, "Solar Kollektor Temperatur Max",  			"number",	"°C",		"value.temperature",    ""]
      	
          ,["/40/10021/0/11031/0",		"Eta.Kessel.Wassermangel",			            true, false, "Kessel Wassermangel",			                "string",	"",		    "state",                ""]
      	,["/40/10021/0/11033/0",		"Eta.Kessel.STB",			                    true, false, "Kessel STB",			                        "string",	"",		    "state",                ""]
      	,["/40/10021/0/11034/0",		"Eta.Kessel.Aschebox",			                true, false, "Kessel Aschebox",	                            "string",	"",		    "state",                ""]
      	,["/40/10021/0/0/12251",		"Eta.Kessel.Rost-geschlossen",			        true, false, "Kessel Rost geschlossen",				        "string",	"",		    "state",                ""]
      	,["/40/10021/0/11037/0",		"Eta.Kessel.Pelletsbehälter",			        true, false, "Kessel Pelletsbehälter",				        "string",	"",		    "state",                ""]
      	,["/40/10021/0/11109/0",		"Eta.Kessel.Temperatur",				        true, false, "Kessel Temperatur",					        "number",	"°C",		"value.temperature",    ""]
      	,["/40/10021/0/0/12161",		"Eta.Kessel.Temperatur-Ist",				    true, false, "Kessel Temperatur Ist",				        "number",	"°C",		"value.temperature",    ""]
      	,["/40/10021/0/0/12001",		"Eta.Kessel.Temperatur-Soll",				    true, false, "Kessel Temperatur Soll",				        "number",	"°C",		"value.temperature",    ""]
      	,["/40/10021/0/11160/0",		"Eta.Kessel.Temperatur-Ruecklauf",		        true, false, "Kessel Temperatur Ruecklauf",			        "number",	"°C",	    "value.temperature",    ""]
          ,["/40/10021/0/11058/0",		"Eta.Kessel.Vorlauf",		                    true, false, "Kessel Temperatur Vorlauf",			        "number",	"°C",	    "value.temperature",    ""]
      	,["/40/10021/0/0/12162",		"Eta.Kessel.Temperatur-Abgas",	                true, false, "Kessel Temperatur Abgas",		                "number",	"°C",		"value.temperature",    ""]
      	,["/40/10021/0/0/19402",		"Eta.Kessel.Status",	                        true, false, "Kessel Status",			                    "string",	"",		    "state",                ""]
      	,["/40/10021/0/0/12180",		"Eta.Kessel.Kesseldruck",	                    true, false, "Kesseldruck",			                        "number",	"Bar",	    "state",                ""]
      	,["/40/10021/0/11135/2400",		"Eta.Kessel.Notbetrieb",	                    true, false, "Kessel Notbetrieb",			                "string",	"",		    "state",                ""]
      	,["/40/10021/0/0/12077",		"Eta.Kessel.angeforderte-Leistung",	            true, false, "Kessel angeforderte Leistung",			    "number",	"KW",	    "state",                ""]
      	,["/40/10021/0/0/12006",		"Eta.Kessel.angeforderte-Temperatur",	        true, false, "Kessel angeforderte Temperatur",			    "number",	"°C",	    "state",                ""]
      	,["/40/10021/0/0/12165",		"Eta.Kessel.Abgasgebläse",	                    true, false, "Kessel Abgasgeblaese",			            "number",	"",	        "state",                ""]
      	,["/40/10021/0/0/12164",		"Eta.Kessel.Restsauerstoff",	                true, false, "Kessel Restsauerstoff",			            "number",	"%",	    "state",                ""]
      	,["/40/10021/12004/0/0",		"Eta.Kessel.O2-Soll",	                        true, false, "Kessel O2 Soll",			                    "number",	"%",	    "state",                ""]
      	
          ,["/40/10021/0/11030/2002",		"Eta.Ausgaenge.Stockerschnecke-Status",	        true, false, "Ausgaenge Stockerschnecke Status",		    "string",	"",			"state",                ""]
      	,["/40/10021/0/11048/2002",		"Eta.Ausgaenge.Entaschung+Rost-Status",	        true, false, "Ausgaenge Entaschung+Rost Status",		    "string",	"",			"state",                ""]
      	,["/40/10021/0/11041/0",		"Eta.Ausgaenge.Zuendung-Status",	            true, false, "Ausgaenge Zuendung Status",		            "string",	"",			"state",                ""]
      	,["/40/10021/0/11042/0",		"Eta.Ausgaenge.Saugturbine-Status",	            true, false, "Ausgaenge Saugturbine Status",		        "string",	"",			"state",                ""]
      	,["/40/10021/0/11120/2002",		"Eta.Ausgaenge.Abgasgeblaese-Status",	        true, false, "Ausgaenge Abgasgeblaese Status",		        "string",	"",			"state",                ""]
      	,["/40/10021/0/11120/2110",		"Eta.Ausgaenge.Abgasgeblaese-Drehzahl-Ist",	    true, false, "Ausgaenge Abgasgeblaese Drehzahl Ist",		"number",	"U/min",	"state",                ""]
      	,["/40/10021/0/11120/2111",		"Eta.Ausgaenge.Abgasgeblaese-Drehzahl-Soll",	true, false, "Ausgaenge Abgasgeblaese Drehzahl Soll",		"number",	"U/min",	"state",                ""]
      	,["/40/10021/0/11123/2002",		"Eta.Ausgaenge.Kesselpumpe-Status",	            true, false, "Ausgaenge Kesselpumpe Status",		        "string",	"",	        "state",                ""]
      	,["/40/10021/0/11163/2120",		"Eta.Ausgaenge.Ruecklaufmischer-Temp-Soll",	    true, false, "Ausgaenge Ruecklaufmischer Temp Soll",		"number",	"°C",	    "value.temperature",                ""]
      	,["/40/10021/0/11163/2002",		"Eta.Ausgaenge.Ruecklaufmischer-Status",	    true, false, "Ausgaenge Ruecklaufmischer Status",   		"string",	"",	        "state",                ""]
      	,["/40/10021/0/11163/2121",		"Eta.Ausgaenge.Ruecklaufmischer-Temp-Ist",	    true, false, "Ausgaenge Ruecklaufmischer Temp Ist", 		"number",	"°C",	    "value.temperature",                ""]
      	,["/40/10021/0/11163/2127",		"Eta.Ausgaenge.Ruecklaufmischer-Position",	    true, false, "Ausgaenge Ruecklaufmischer Position",		    "number",	"%",	    "state",                ""]
      	
      	,["/40/10021/0/0/12153",		"Eta.Zaehlerstaende.Volllaststunden",	        true, false, "Volllaststunden",		                        "string",	"",	        "state",                ""]
          ,["/40/10021/0/0/12299",		"Eta.Zaehlerstaende.Abgasgeblaese-Laufzeit",	true, false, "Abgasgeblaese-Laufzeit",		                "string",	"",	        "state",                ""]
          ,["/40/10021/0/0/12016",		"Eta.Zaehlerstaende.Gesamtverbrauch",	        true, false, "Gesamtverbrauch",		                        "number",	"Kg",	    "state",                ""]
          ,["/40/10021/0/0/12014",		"Eta.Zaehlerstaende.Verbrauch-seit-Wartung",	true, false, "Verbrauch seit Wartung",		                "number",	"Kg",	    "state",                ""]
          ,["/40/10021/0/0/12012",		"Eta.Zaehlerstaende.Verbrauch-seit-Entaschung",	true, false, "Verbrauch seit Entaschung",	                "number",	"Kg",	    "state",                ""]
          ,["/40/10021/0/0/12013",		"Eta.Zaehlerstaende.Verbrauch-Aschebox-leeren",	true, false, "Verbrauch seit Aschebox leeren",              "number",	"Kg",	    "state",                ""]
          ,["/40/10021/0/0/12017",		"Eta.Zaehlerstaende.Heizbetriebe-Zaehler",	    true, false, "Heizbetriebe Zaehler",                        "number",	"",	        "state",                ""]
          ,["/40/10021/0/0/12018",		"Eta.Zaehlerstaende.Zuendungen-Zaehler",    	true, false, "Zuendungen Zaehler",                          "number",	"",  	    "state",                ""]
          ,["/40/10021/0/0/12156",		"Eta.Zaehlerstaende.Zuendung-Laufzeit",	        true, false, "Zuendung Laufzeit",                           "string",	"",  	    "state",                ""]
          ,["/40/10021/0/0/13346",		"Eta.Zaehlerstaende.Dauer-der-letzten-Zuendung",true, false, "Dauer der letzten Zuendung",                  "string",	"",	        "state",                ""]
          ,["/40/10021/0/0/12154",		"Eta.Zaehlerstaende.Stocker-Laufzeit",          true, false, "Stocker Laufzeit",                            "string",	"",	        "state",                ""]
          ,["/40/10021/0/0/12155",		"Eta.Zaehlerstaende.Entaschung-Laufzeit",       true, false, "Entaschung Laufzeit",                         "string",	"",	        "state",                ""]
          ,["/40/10021/0/0/12157",		"Eta.Zaehlerstaende.Saugturbine-Laufzeit",      true, false, "Saugturbine Laufzeit",                        "string",	"",	        "state",                ""]
      
      	,["/40/10201/0/0/12015",		"Eta.Lager.Pelletbunker",				        true, false, "Lager Pelletbunker",					        "number",	"kg",		"state",                ""]
      	,["/40/10201/0/11029/2002",		"Eta.Lager.Maulwurf-Status",     		        true, false, "Lager Maulwurf-Status",					    "state",	"",	    	"state",                ""]
      	,["/40/10021/0/0/12011",		"Eta.Zaehlerstaende.Tagesbehaelter",	        true, false, "Tagesbehaelter",		                        "number",	"Kg",	    "state",                ""]
      
      	,["/40/10241/0/0/14263",		"Eta.Meldungen.Alle-Stoermeldungen",	        true, false, "Alle Stoermeldungen",			            	"string",	"",	    	"state",                ""]
      	,["/40/10241/0/0/14260",		"Eta.Meldungen.Externe-Stoermeldungen",	        true, false, "Externe Stoermeldungen",		            	"string",	"",	    	"state",                ""]
      ];
      
      etaVars.forEach(function(etaVar){
          createState(etaVar[1], 0, {
              read:  etaVar[2],
              write: etaVar[3],
              name:  etaVar[4],
              type:  etaVar[5],
              unit:  etaVar[6],
              role:  etaVar[7]
          });
      });
      
      schedule("*/2 * * * *", function () {
          pollETA();
      });
      
      pollETA();
      
      function pollETA() {
          // console.log("** Polling ETA Variables");
      	etaVars.forEach(function(etaVar){
      		http.get(etaIP + etaVar[0], function (http_res) {
      
      			// initialize the container for our data
      			var data = "";
      
      			// this event fires many times, each time collecting another piece of the response
      			http_res.on("data", function (chunk) {
      				// append this chunk to our growing `data` var
      				data += chunk;
      				// console.log("** ETA chunk: " + chunk);
      			});
      
      			// this event fires *one* time, after all the `data` events/chunks have been gathered
      			http_res.on("end", function () {
      				// console.log("** ETA data: " + data);
      
      				try {
      					var doc = new dom().parseFromString(data);
      					var select = xpath.useNamespaces({"eta": "http://www.eta.co.at/rest/v1"});
      
      					var strValue    = (select('//eta:value/@strValue',    doc)[0].nodeValue);
      					var text        = (select('//eta:value/text()',       doc)[0].nodeValue);
      					var scaleFactor = (select('//eta:value/@scaleFactor', doc)[0].nodeValue);
      					var unit        = (select('//eta:value/@unit',        doc)[0].nodeValue);
                          var value       = "";
                          
      					if (etaVar[5]=="number") {
      						value = text * 1.0 / scaleFactor;
      					} else {
      						value = strValue;
      					}
      
      					/* console.log("**** ETA " + etaVar[0] + " @strValue:    " + strValue);
      					console.log("**** ETA " + etaVar[0] + " @unit:        " + unit);
      					console.log("**** ETA " + etaVar[0] + " text()  :     " + text);
      					console.log("**** ETA " + etaVar[0] + " @scaleFactor: " + scaleFactor);
      					console.log("** ETA [" + etaVar[4] + "]: " + value + " " + unit); */
      
      					setState(etaVar[1], value);
      					
      					// Schreibe Variablen zu CCU
      					if(etaVar[8]!="") {
      					    setState(etaVar[8], value);
      					}
      				}
      				catch (e) {
      					log("ETA: Cannot set data "+ etaVar[2] +":" + e, 'error');
      				}
      			});
      		});
      	});
      	
      	//var dateFormat = require('dateformat');
      	//var currentdate = new Date();
      	//log(dateFormat(currentdate, "dd. mmm yyyy hh:MM"));
      	// optional last update in CCU3
      	//setState("hm-rega.0.7022", dateFormat(currentdate, "dd. mmm yyyy hh:MM"));
      }
      

      mit der Befehlszeile:

      http://IP-ETA:8080/user/var
      

      kommt diese Fehlermeldung:

      <eta version="1.0">
      <error>Illegal resource identifier</error>
      </eta>
      
      1 Reply Last reply Reply Quote 0
      • First post
        Last post

      Support us

      ioBroker
      Community Adapters
      Donate

      534
      Online

      38.5k
      Users

      43.9k
      Topics

      614.1k
      Posts

      javascript
      1
      1
      24
      Loading More Posts
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes
      Reply
      • Reply as topic
      Log in to reply
      Community
      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
      The ioBroker Community 2014-2021
      logo