NEWS
[Vorlage] Script und VIS: Druckerpatronen Zustand
- 
					
					
					
					
 hallo wollte das Script für meinen WF-7620 umbauen aber scheitere schon am Request Aufruf. Das Problem ist das der Drucker nur per HTTPS angesprochen werden kann. Hat da jemand eine Idee ? 
- 
					
					
					
					
 Habe noch einen weiteren Fehler beim 4-Catridge Code entdeckt. Und zwar schlägt der nur dann nieder, wenn der Füllstand 100% ist. Mit der Zeile level_string = body.substring(zwei_position, zwei_position+2);holst du die nächsten 2 Zeichen als Teilstring. Im Fall von 100% sind das aber 3 Zeichen, deshalb kommt hier fälschlicherweise 10% raus. Ich habe das bei mir wie folgt geändert: level_string = body.substring(zwei_position, body.indexOf('Damit suche ich nach dem End-Tag und bekomme die komplette Zahl! Der Schönheit halber, kann man den Suchstring auch als Variable am Anfang des Skripts anzeigen. Hier der komplette Code: ! ```` 
 // bringt den Druckertintenstand von WEB enabled HP Tintenstrahler in ioBroker
 // Basierend auf CCU2 Script fuer HP Drucker http://homematic-forum.de/forum/viewtop ... 31&t=25140
 // und dem angepassten Script von PiX aus iobroker http://forum.iobroker.de/viewtopic.php? ... c289#p6931
 // Author : looxer01 - 22.12.2015
 // 2016-06-18, jtraxler: Angepasst an HP8620
 // 2016-11-01, jtraxler: Bugfix 100% Level
 ! // hier Drucker parameter einstellen - vor dem ersten Speichern des Scripts
 var druckerIP = "10.0.0.43";
 var druckerURL = "http://" + druckerIP + "/DevMgmt/ConsumableConfigDyn.xml";
 ! var druckermod = "8620";
 var TinteID = "951XL";
 ! var request = require('request');
 var cut1 = "dd:ConsumableLabelCode";
 var cut2 = "dd:ConsumablePercentageLevelRemaining";
 var TagEndMarker = '
- 
					
					
					
					
 Das Problem ist das der Drucker nur per HTTPS angesprochen werden kann. Hat da jemand eine Idee ? ` 
 Noch ein Hinweis für dich: Schau dir mal die "request-ssl" Library an (https://www.npmjs.com/package/request-ssl)!
- 
					
					
					
					
 Liebe Community, nach reichlich suchen und probieren habe ich es als iobroke-newbie geschafft. Dank all den guten Tipps hier im Threat. Gern teile ich meinen View und das Script für einen HP Laserjet Pro MFP M276n: View: ! { "settings": { "style": { "background-clip": "border-box", "background-color": "#f8f2f2", "background_class": "", "background": "" }, "theme": "redmond", "sizex": "", "sizey": "", "gridSize": "", "snapType": null }, "widgets": { "e00001": { "tpl": "tplJustgageJustGage", "data": { "g_fixed": false, "g_visibility": false, "g_css_font_text": false, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "is_tdp": "false", "factor": "1", "balance1": "10", "balance2": "50", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "oid": "javascript.1.Drucker.HP.M276n.Cyan.Level", "min_oid": "0", "max_oid": "100", "digits": "0", "valueFontColor": "", "pointerColor": "", "title": "", "titleFontColor": "#000000", "titleFontFamily": "Arial, Helvetica, sans-serif", "labelFontColor": "#000000", "labelFontFamily": "Arial, Helvetica, sans-serif", "color1": "#FFFFFF", "color2": "", "color3": "#00FFFF" }, "style": { "left": "21px", "top": "56px", "width": "129px", "height": "95px", "z-index": 1 }, "widgetSet": "justgage" }, "e00002": { "tpl": "tplValueString", "data": { "oid": "javascript.1.Drucker.HP.M276n.Cyan.LastUsed", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "html_prepend": "Letzte Nutzung: " }, "style": { "left": "34px", "top": "157px", "font-size": "small", "width": "169px", "height": "19px", "z-index": 1 }, "widgetSet": "basic" }, "e00003": { "tpl": "tplValueString", "data": { "oid": "javascript.1.Drucker.HP.M276n.Cyan.InstallDay", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "html_prepend": "Installation: ", "html_append": "" }, "style": { "left": "59px", "top": "182px", "font-size": "small", "width": "144px", "height": "19px", "z-index": 1 }, "widgetSet": "basic" }, "e00004": { "tpl": "tplValueString", "data": { "oid": "nothing_selected", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "html_prepend": "Cyan" }, "style": { "left": "42px", "top": "43px", "font-weight": "bold", "font-size": "large", "width": "60px", "height": "20px", "z-index": 1 }, "widgetSet": "basic" }, "e00005": { "tpl": "tplValueString", "data": { "oid": "javascript.1.Drucker.HP.M276n.Cyan.Ink", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false }, "style": { "left": "147px", "top": "47px", "font-size": "small", "font-weight": "bold", "width": "60px", "height": "20px", "z-index": 1 }, "widgetSet": "basic" }, "e00006": { "tpl": "tplJustgageJustGage", "data": { "g_fixed": false, "g_visibility": false, "g_css_font_text": false, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "is_tdp": "false", "factor": "1", "balance1": "10", "balance2": "50", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "oid": "javascript.1.Drucker.HP.M276n.Magenta.Level", "min_oid": "0", "max_oid": "100", "digits": "0", "valueFontColor": "", "pointerColor": "", "title": "", "titleFontColor": "#000000", "titleFontFamily": "Arial, Helvetica, sans-serif", "labelFontColor": "#000000", "labelFontFamily": "Arial, Helvetica, sans-serif", "color1": "#FFFFFF", "color2": "", "color3": "#FF00FF" }, "style": { "left": "229px", "top": "56px", "width": "129px", "height": "95px", "z-index": 1 }, "widgetSet": "justgage" }, "e00007": { "tpl": "tplValueString", "data": { "oid": "javascript.1.Drucker.HP.M276n.Magenta.LastUsed", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "html_prepend": "Letzte Nutzung: " }, "style": { "left": "242px", "top": "157px", "font-size": "small", "width": "169px", "height": "19px", "z-index": 1 }, "widgetSet": "basic" }, "e00008": { "tpl": "tplValueString", "data": { "oid": "javascript.1.Drucker.HP.M276n.Magenta.InstallDay", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "html_prepend": "Installation: ", "html_append": "" }, "style": { "left": "266px", "top": "181px", "font-size": "small", "width": "144px", "height": "19px", "z-index": 1 }, "widgetSet": "basic" }, "e00009": { "tpl": "tplValueString", "data": { "oid": "nothing_selected", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "html_prepend": "Magenta" }, "style": { "left": "249px", "top": "42px", "font-weight": "bold", "font-size": "large", "width": "88px", "height": "20px", "z-index": 1 }, "widgetSet": "basic" }, "e00010": { "tpl": "tplValueString", "data": { "oid": "javascript.1.Drucker.HP.M276n.Magenta.Ink", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false }, "style": { "left": "354px", "top": "46px", "font-size": "small", "font-weight": "bold", "width": "60px", "height": "20px", "z-index": 1 }, "widgetSet": "basic" }, "e00011": { "tpl": "tplJustgageJustGage", "data": { "g_fixed": false, "g_visibility": false, "g_css_font_text": false, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "is_tdp": "false", "factor": "1", "balance1": "10", "balance2": "50", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "oid": "javascript.1.Drucker.HP.M276n.Yellow.Level", "min_oid": "0", "max_oid": "100", "digits": "0", "valueFontColor": "", "pointerColor": "", "title": "", "titleFontColor": "#000000", "titleFontFamily": "Arial, Helvetica, sans-serif", "labelFontColor": "#000000", "labelFontFamily": "Arial, Helvetica, sans-serif", "color1": "#FFFFFF", "color2": "", "color3": "#FFFF00" }, "style": { "left": "21px", "top": "244px", "width": "129px", "height": "95px", "z-index": 1 }, "widgetSet": "justgage" }, "e00012": { "tpl": "tplValueString", "data": { "oid": "javascript.1.Drucker.HP.M276n.Yellow.LastUsed", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "html_prepend": "Letzte Nutzung: " }, "style": { "left": "33px", "top": "344px", "font-size": "small", "width": "169px", "height": "19px", "z-index": 1 }, "widgetSet": "basic" }, "e00013": { "tpl": "tplValueString", "data": { "oid": "javascript.1.Drucker.HP.M276n.Yellow.InstallDay", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "html_prepend": "Installation: ", "html_append": "" }, "style": { "left": "57px", "top": "368px", "font-size": "small", "width": "144px", "height": "19px", "z-index": 1 }, "widgetSet": "basic" }, "e00014": { "tpl": "tplValueString", "data": { "oid": "nothing_selected", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "html_prepend": "Yellow" }, "style": { "left": "40px", "top": "229px", "font-weight": "bold", "font-size": "large", "width": "60px", "height": "20px", "z-index": 1 }, "widgetSet": "basic" }, "e00015": { "tpl": "tplValueString", "data": { "oid": "javascript.1.Drucker.HP.M276n.Yellow.Ink", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false }, "style": { "left": "145px", "top": "233px", "font-size": "small", "font-weight": "bold", "width": "60px", "height": "20px", "z-index": 1 }, "widgetSet": "basic" }, "e00016": { "tpl": "tplJustgageJustGage", "data": { "g_fixed": false, "g_visibility": false, "g_css_font_text": false, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "is_tdp": "false", "factor": "1", "balance1": "10", "balance2": "50", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "oid": "javascript.1.Drucker.HP.M276n.Black.Level", "min_oid": "0", "max_oid": "100", "digits": "0", "valueFontColor": "", "pointerColor": "", "title": "", "titleFontColor": "#000000", "titleFontFamily": "Arial, Helvetica, sans-serif", "labelFontColor": "#000000", "labelFontFamily": "Arial, Helvetica, sans-serif", "color1": "#FFFFFF", "color2": "", "color3": "#000000" }, "style": { "left": "229px", "top": "244px", "width": "129px", "height": "95px", "z-index": 1 }, "widgetSet": "justgage" }, "e00017": { "tpl": "tplValueString", "data": { "oid": "javascript.1.Drucker.HP.M276n.Black.LastUsed", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "html_prepend": "Letzte Nutzung: " }, "style": { "left": "240px", "top": "343px", "font-size": "small", "width": "169px", "height": "19px", "z-index": 1 }, "widgetSet": "basic" }, "e00018": { "tpl": "tplValueString", "data": { "oid": "javascript.1.Drucker.HP.M276n.Black.InstallDay", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "html_prepend": "Installation: ", "html_append": "" }, "style": { "left": "265px", "top": "368px", "font-size": "small", "width": "144px", "height": "19px", "z-index": 1 }, "widgetSet": "basic" }, "e00019": { "tpl": "tplValueString", "data": { "oid": "nothing_selected", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "html_prepend": "Black" }, "style": { "left": "247px", "top": "228px", "font-weight": "bold", "font-size": "large", "width": "60px", "height": "20px", "z-index": 1 }, "widgetSet": "basic" }, "e00020": { "tpl": "tplValueString", "data": { "oid": "javascript.1.Drucker.HP.M276n.Black.Ink", "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false }, "style": { "left": "352px", "top": "232px", "font-size": "small", "font-weight": "bold", "width": "60px", "height": "20px", "z-index": 1 }, "widgetSet": "basic" }, "e00021": { "tpl": "tplFrame", "data": { "g_fixed": false, "g_visibility": false, "g_css_font_text": true, "g_css_background": true, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "title": "HP MFP M276n", "title_color": "black", "title_top": "3", "title_left": "11", "header_height": "0", "header_color": "black", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false }, "style": { "left": "6px", "top": "5px", "width": "446px", "height": "420px", "font-size": "large", "font-weight": "bold", "background-color": "#a8a9d7", "z-index": 0 }, "widgetSet": "basic" } }, "name": "Drucker", "filterList": [] } !
 sowie dem passenden Script! ```` 
 /* bringt den Druckerttonerstand von WEB enabled HP Farmlaserdrucker M276n in ioBroker
 Drucker HP Tintenstand für iobroker ermitteln
 Basierend auf CCU2 Script fuer HP Drucker http://homematic-forum.de/forum/viewtopic.php?f=31&t=25140
 und dem angepassten Script von PiX aus iobroker http://forum.iobroker.de/viewtopic.php?f=21&t=910&p=6931&hilit=drucker&sid=6780c0b33361e199846dcb584c8dc289&sid=6780c0b33361e199846dcb584c8dc289#p6931
 Author : looxer01 - 22.12.2015
 Version 0.2 29.01.2015 Druckerparameter jetzt einstellbar im Bereich der Einstellungen
 */
 ! // hier Drucker parameter einstellen - vor dem ersten Speichern des Scripts
 ! var druckerIP = '192.168.0.238'; // Drucker IP
 var druckermod = "M276n"; // Drucker Modell - Strukturelement in den Variablen
 var TinteID = "131A"; // Tinte - Tintenbezeichnung
 var TinteCyanBez = "CF211A"; // Bezeichnung fuer Cyan
 var TinteYellowBez = "CF212A"; // Bezeichnung fuer Yellow
 var TinteBlackBez = "CF210X"; // Bezeichnung fuer Black
 var TinteMagentaBez = "CF213A"; // Bezeichnung fuer Magenta
 ! // ende Einstellungen
 ! var druckerURL = "http://" + druckerIP + "/DevMgmt/ConsumableConfigDyn.xml"; // URL nicht ändern
 var request = require('request'); // Enabling for URL Request
 var cut1 = "dd:ConsumableLabelCode"; // Marker für color
 var cut2 = "dd:ConsumablePercentageLevelRemaining"; // Marker für Level
 var cut3 = "ccdyn:ConsumableInfo"; // ab hier stehen die Informationen
 var cut4 = "dd:MaxCapacity"; // Marker für maximale Kapazität
 var cut5 = "dd:ConsumableLastUsedDate"; // Marker für letzte Nutzung
 var cut6 = "dd:Date"; // Marker für Installationsdatum
 var cut7 = "ccdyn:ConsumableInfo"; // Marker für
 ! var level_M = 0; // Tintenlevel
 var level_C = 0; // Tintenlevel
 var level_Y = 0; // Tintenlevel
 var level_K = 0; // Tintenlevel
 var capacity_M = 0; // Tintenlevel
 var capacity_C = 0; // Tintenlevel
 var capacity_Y = 0; // Tintenlevel
 var capacity_K = 0; // Tintenlevel
 var LastUsed_M = ""; // Tintenlevel
 var LastUsed_C = ""; // Tintenlevel
 var LastUsed_Y = ""; // Tintenlevel
 var LastUsed_K = ""; // Tintenlevel
 var InstallDay_M = ""; // Tintenlevel
 var InstallDay_C = ""; // Tintenlevel
 var InstallDay_Y = ""; // Tintenlevel
 var InstallDay_K = ""; // Tintenlevelvar DruckIP = "Drucker.HP." + druckermod + ".IP"; // Variable für create states 
 var DruckerName = "Drucker.HP." + druckermod + ".Name"; // Variable für create states
 var Modell = "Drucker.HP." + druckermod + ".Modell"; // Variable für create states
 var Tinte = "Drucker.HP." + druckermod + ".Tinte"; // Variable für create states
 var CyanInk = "Drucker.HP." + druckermod + ".Cyan.Ink"; // Variable für create states
 var YellowInk = "Drucker.HP." + druckermod + ".Yellow.Ink"; // Variable für create states
 var BlackInk = "Drucker.HP." + druckermod + ".Black.Ink"; // Variable für create states
 var MagentaInk = "Drucker.HP." + druckermod + ".Magenta.Ink"; // Variable für create states! var CyanLevel = "Drucker.HP." + druckermod + ".Cyan.Level"; // Variable für create states 
 var YellowLevel = "Drucker.HP." + druckermod + ".Yellow.Level"; // Variable für create states
 var BlackLevel = "Drucker.HP." + druckermod + ".Black.Level"; // Variable für create states
 var MagentaLevel= "Drucker.HP." + druckermod + ".Magenta.Level"; // Variable für create states
 ! var CyanCapacity = "Drucker.HP." + druckermod + ".Cyan.Capacity"; // Variable für create states
 var YellowCapacity = "Drucker.HP." + druckermod + ".Yellow.Capacity"; // Variable für create states
 var BlackCapacity = "Drucker.HP." + druckermod + ".Black.Capacity"; // Variable für create states
 var MagentaCapacity= "Drucker.HP." + druckermod + ".Magenta.Capacity"; // Variable für create states
 ! var CyanLastUsed = "Drucker.HP." + druckermod + ".Cyan.LastUsed"; // Variable für create states
 var YellowLastUsed = "Drucker.HP." + druckermod + ".Yellow.LastUsed"; // Variable für create states
 var BlackLastUsed = "Drucker.HP." + druckermod + ".Black.LastUsed"; // Variable für create states
 var MagentaLastUsed = "Drucker.HP." + druckermod + ".Magenta.LastUsed"; // Variable für create states
 ! var CyanInstallDay = "Drucker.HP." + druckermod + ".Cyan.InstallDay"; // Variable für create states
 var YellowInstallDay = "Drucker.HP." + druckermod + ".Yellow.InstallDay"; // Variable für create states
 var BlackInstallDay = "Drucker.HP." + druckermod + ".Black.InstallDay"; // Variable für create states
 var MagentaInstallDay= "Drucker.HP." + druckermod + ".Magenta.InstallDay"; // Variable für create states
 ! // Anlegen der Variablen
 createState(DruckIP,druckerIP);
 createState(DruckerName,druckermod);
 createState(Tinte,TinteID);
 ! createState(CyanInk,TinteCyanBez);
 createState(YellowInk,TinteYellowBez);
 createState(BlackInk,TinteBlackBez);
 createState(MagentaInk,TinteMagentaBez);
 ! createState(CyanLevel,0);
 createState(YellowLevel,0);
 createState(BlackLevel,0);
 createState(MagentaLevel,0);
 ! createState(CyanCapacity,0);
 createState(YellowCapacity,0);
 createState(BlackCapacity,0);
 createState(MagentaCapacity,0);
 ! createState(CyanLastUsed,"");
 createState(YellowLastUsed,"");
 createState(BlackLastUsed,"");
 createState(MagentaLastUsed,"");
 ! createState(CyanInstallDay,"");
 createState(YellowInstallDay,"");
 createState(BlackInstallDay,"");
 createState(MagentaInstallDay,"");
 ! // Schedule für die Updates
 schedule("/1 * * * * ", function () { // alle 20 Minuten
 // oder schedule( */6 * * * , function () { // alle 6 Stunden, etcrequest(druckerURL, function (error, response, body) { // Einlesen der XML Information 
 if (!error && response.statusCode == 200) { // error check
 var eins_lastpos = body.indexOf(cut3); // ab hier beginnen die realen Datenvar start_position ; var color; var position; var level_string ; var max_capacity ; var last_used; var inst_day;! for (var i = 1; i <= 4; i++) { position = body.indexOf(cut1, start_position) + cut1.length + 1; color = body.substring(position, position+1) ; position = body.indexOf(cut2,start_position)+ cut2.length + 1; level_string = body.substring(position, position+3) ; position = body.indexOf(cut4,start_position)+ cut4.length + 1; // dritte Position finden max_capacity = body.substring(position, position+4) ; position = body.indexOf(cut5,start_position)+ cut5.length + 1; // dritte Position finden last_used = body.substring(position, position+10) ; position = body.indexOf(cut6,start_position)+ cut6.length + 1; // dritte Position finden inst_day = body.substring(position, position+10) ;! // log("color " + color,"info"); 
 // log("Level " + level_string,"info");
 // log("max Kapa " + max_capacity,"info");
 // log("last used " + last_used,"info");
 // log("inst_day " + inst_day,"info");if("M" == color){ level_M = level_string; capacity_M = max_capacity; LastUsed_M = last_used; InstallDay_M = inst_day; } if("C" == color){ level_C = level_string; capacity_C = max_capacity; LastUsed_C = last_used; InstallDay_C = inst_day; } if("Y" == color){ level_Y = level_string; capacity_Y = max_capacity; LastUsed_Y = last_used; InstallDay_Y = inst_day; } if("K" == color){ level_K = level_string; capacity_K = max_capacity; LastUsed_K = last_used; InstallDay_K = inst_day; } start_position = body.indexOf(cut3, position); // merken position eins! } //end For 
 !
 // log('Drucker Level M ' + level_M , "info");
 // log('Drucker Level C ' + level_C , "info");
 // log('Drucker Level Y ' + level_Y , "info");
 // log('Drucker Level K ' + level_K , "info");// der folgende Bereich muss für ggf abweichenden Druckertyp angepasst werden 
 setState(CyanLevel, level_C);
 setState(YellowLevel, level_Y);
 setState(BlackLevel, level_K);
 setState(MagentaLevel, level_M);
 setState(DruckIP, druckerIP);
 setState(CyanCapacity, capacity_C);
 setState(YellowCapacity, capacity_Y);
 setState(BlackCapacity, capacity_K);
 setState(MagentaCapacity, capacity_M);
 setState(CyanLastUsed, LastUsed_C);
 setState(YellowLastUsed, LastUsed_Y);
 setState(BlackLastUsed, LastUsed_K);
 setState(MagentaLastUsed, LastUsed_M);
 setState(CyanInstallDay, InstallDay_C);
 setState(YellowInstallDay, InstallDay_Y);
 setState(BlackInstallDay, InstallDay_K);
 setState(MagentaInstallDay, InstallDay_M);! 
 } else { // if (!error && response.statusCode == 200) {
 log(error);
 log('Kein Drucker gefunden');}! }); // end of request 
 ! }); // end of schedule
 ! ````
 Vielleicht hilft es einem und Viel Spaß damitJürgen 
- 
					
					
					
					
 HI, hab das Skript eingefügt und entsprechend die IP angepasst. Beim starten erscheint folgende Meldung in Rot: 00:15:57.655 [error] javascript.0 script.js.IT.Tinte compile failed: SyntaxError: Unexpected number Außer der IP und dem Tintenbezeichnung hab ich in dem Skript nichts weiter geändert. Nach was muss ich suchen im Skript? Danke 
- 
					
					
					
					
 Nach dem Fehler. 
- 
					
					
					
					
 Der wäre? 
- 
					
					
					
					
 Wollte damit wohl sagen; wenn Du uns nichts gibst, können wir auch nichts suchen.??!! -> Geändertes Script herzeigen. 
- 
					
					
					
					
 Hier… ! ```` 
 var druckerIP = "192.168.178.31";
 var druckerURL = "http://" 192.168.178.31 "/DevMgmt/ConsumableConfigDyn.xml";
 ! var druckermod = "8500";
 var TinteID = "920XL";
 ! var request = require('request');
 var cut1 = "dd:ConsumableLabelCode";
 var cut2 = "dd:ConsumablePercentageLevelRemaining";
 ! var level_M = 0;
 var level_C = 0;
 var level_Y = 0;
 var level_K = 0;
 ! // angepasst an HP 8900 - hier bitte entsprechend anpassen auf den jeweiligen Typ
 createState('Drucker.HP.8500.IP',druckerIP);
 createState('Drucker.HP.8500.Modell',druckermod);
 createState('Drucker.HP.8500.Tinte',TinteID);
 createState('Drucker.HP.8500.Cyan.Level');
 createState('Drucker.HP.8500.Cyan.Ink','C4907A');
 createState('Drucker.HP.8500.Yellow.Level');
 createState('Drucker.HP.8500.Yellow.Ink','C4909A');
 createState('Drucker.HP.8500.Black.Level');
 createState('Drucker.HP.8500.Black.Ink','C4906A');
 createState('Drucker.HP.8500.Magenta.Level');
 createState('Drucker.HP.8500.Magenta.Ink','C4908A');
 ! schedule("*/20 * * * *", function () { // alle 20 Minuten
 ! request(druckerURL, function (error, response, body) {
 if (!error && response.statusCode == 200) {
 ! // Farbe nummer 1
 var eins_position = body.indexOf(cut1) + cut1.length + 1;
 var color = body.substring(eins_position, eins_position+1) ;
 var zwei_position = body.indexOf(cut2)+ cut2.length + 1;
 var level_string = body.substring(zwei_position, zwei_position+2) ;
 var eins_lastpos = eins_position +10;
 var zwei_lastpos = zwei_position + 10;
 ! if("M" == color){
 level_M = level_string;
 }
 if("X" == color){
 level_C = level_string;
 }
 if("Y" == color){
 level_Y = level_string;
 }
 if("K" == color){
 level_K = level_string;
 }
 ! // Farbe nummer 2
 eins_position = body.indexOf(cut1, eins_lastpos) + cut1.length + 1 ;
 color = body.substring(eins_position, eins_position+1) ;
 zwei_position = body.indexOf(cut2,zwei_lastpos)+ cut2.length + 1;
 level_string = body.substring(zwei_position, zwei_position+2) ;
 ! if("M" == color){
 level_M = level_string;
 }
 if("C" == color){
 level_C = level_string;
 }
 if("Y" == color){
 level_Y = level_string;
 }
 if("K" == color){
 level_K = level_string;
 }
 eins_lastpos = eins_position + 10;
 zwei_lastpos = zwei_position + 10;
 ! // Farbe nummer 3
 eins_position = body.indexOf(cut1, eins_lastpos) + cut1.length + 1;
 color = body.substring(eins_position, eins_position+1) ;
 zwei_position = body.indexOf(cut2,zwei_lastpos)+ cut2.length + 1;
 level_string = body.substring(zwei_position, zwei_position+2) ;
 ! if("M" == color){
 level_M = level_string;
 }
 if("C" == color){
 level_C = level_string;
 }
 if("Y" == color){
 level_Y = level_string;
 }
 if("K" == color){
 level_K = level_string;
 }
 eins_lastpos = eins_position + 10;
 zwei_lastpos = zwei_position + 10;
 ! // Farbe nummer 4
 eins_position = body.indexOf(cut1, eins_lastpos) + cut1.length + 1;
 color = body.substring(eins_position, eins_position+1) ;
 zwei_position = body.indexOf(cut2,zwei_lastpos)+ cut2.length + 1;
 level_string = body.substring(zwei_position, zwei_position+2) ;
 ! if("M" == color){
 level_M = level_string;
 }
 if("C" == color){
 level_C = level_string;
 }
 if("Y" == color){
 level_Y = level_string;
 }
 if("K" == color){
 level_K = level_string;
 }
 eins_lastpos = eins_position + 10;
 zwei_lastpos = zwei_position + 10;
 ! log('Drucker Level M ' + level_M , "info");
 log('Drucker Level C ' + level_C , "info");
 log('Drucker Level Y ' + level_Y , "info");
 log('Drucker Level K ' + level_K , "info");
 ! // der folgende Bereich muss für ggf abweichenden Druckertyp angepasst werden
 ! setState('javascript.0.Drucker.HP.8500.Cyan.Level', level_C);
 setState('javascript.0.Drucker.HP.8500.Yellow.Level', level_Y);
 setState('javascript.0.Drucker.HP.8500.Black.Level', level_K);
 setState('javascript.0.Drucker.HP.8500.Magenta.Level', level_M);
 setState('javascript.0.Drucker.HP.8500.IP', druckerIP);
 ! } else { // if (!error && response.statusCode == 200) {
 log(error);
 log('Kein Drucker gefunden');
 ! }
 ! }); // end of request
 ! }); // end of schedulegeändert: Code in Code-Tags und Spoiler gesetzt; ****Homoran (Mod)****
- 
					
					
					
					
 Da ist definitiv schon ein Fehler drin. Ev. hast Du den schon mit-kopiert… oder was auch immer. Ich schau's mal durch. Für das nächste Mal; bitte den Code zwischen die (Code)(/code) Markierungen einpacken... 
- 
					
					
					
					
 Das war schon verpfuscht. Habe nun eine neuere Version des Druckerscripts für Dich angepasst. Bitte bei den Objekten, alle bereits erstellten -javascript.0.Drucker.HP.8500- Einträge löschen (falls vorhanden). Das Script macht die dann neu. Einstellungen sollten ca. passen - So wie es ist, läufts alle 6 Stunden. Das könnte bei Zeile 69 sonst angepasst werden. /* bringt den Druckertintenstand von WEB enabled HP Tintenstrahler in ioBroker Drucker HP Tintenstand für iobroker ermitteln Basierend auf CCU2 Script fuer HP Drucker http://homematic-forum.de/forum/viewtopic.php?f=31&t=25140 und dem angepassten Script von PiX aus iobroker http://forum.iobroker.de/viewtopic.php?f=21&t=910&p=6931&hilit=drucker&sid=6780c0b33361e199846dcb584c8dc289&sid=6780c0b33361e199846dcb584c8dc289#p6931 Author : looxer01 - 22.12.2015 Version 0.2 29.01.2015 Druckerparameter jetzt einstellbar im Bereich der Einstellungen kosmetik ykuendig */ // hier Drucker parameter einstellen - vor dem ersten Speichern des Scripts var druckerIP = '192.168.178.31'; // Drucker IP var druckermod = "8500"; // Drucker Modell - Strukturelement in den Variablen var TinteID = "920XL"; // Tinte - Tintenbezeichnung var TinteCyanBez = "1234567"; // Bezeichnung fuer Cyan var TinteMagentaBez = "1234567"; // Bezeichnung fuer Magenta var TinteYellowBez = "1234567"; // Bezeichnung fuer Yellow var TinteBlackBez = "1234567"; // Bezeichnung fuer Black // ENDE der Einstellungen var druckerURL = "http://" + druckerIP + "/DevMgmt/ConsumableConfigDyn.xml"; // URL nicht ändern var request = require('request'); // Enabling for URL Request var cut0 = "dd:Capacity"; // Marker für capacity var cut1 = "dd:ConsumableLabelCode"; // Marker für color var cut2 = "dd:ConsumablePercentageLevelRemaining"; // Marker für Level var level_C = 0; // Tintenlevel var level_M = 0; // Tintenlevel var level_Y = 0; // Tintenlevel var level_K = 0; // Tintenlevel var DruckIP = "Drucker.HP." + druckermod + ".IP"; // Variable für create states var DruckerName = "Drucker.HP." + druckermod + ".Name"; // Variable für create states var Modell = "Drucker.HP." + druckermod + ".Modell"; // Variable für create states var Tinte = "Drucker.HP." + druckermod + ".Tinte"; // Variable für create states var CyanInk = "Drucker.HP." + druckermod + ".Color1Cyan.Ink"; // Variable für create states var MagentaInk = "Drucker.HP." + druckermod + ".Color2Magenta.Ink"; // Variable für create states var YellowInk = "Drucker.HP." + druckermod + ".Color3Yellow.Ink"; // Variable für create states var BlackInk = "Drucker.HP." + druckermod + ".Color4Black.Ink"; // Variable für create states var CyanLevel = "Drucker.HP." + druckermod + ".Color1Cyan.Level"; // Variable für create states var MagentaLevel = "Drucker.HP." + druckermod + ".Color2Magenta.Level"; // Variable für create states var YellowLevel = "Drucker.HP." + druckermod + ".Color3Yellow.Level"; // Variable für create states var BlackLevel = "Drucker.HP." + druckermod + ".Color4Black.Level"; // Variable für create states // Anlegen der Variablen createState(DruckIP,druckerIP); createState(DruckerName,druckermod); createState(Tinte,TinteID); createState(CyanInk,TinteCyanBez); createState(MagentaInk,TinteMagentaBez); createState(YellowInk,TinteYellowBez); createState(BlackInk,TinteBlackBez); createState(CyanLevel,0); createState(MagentaLevel,0); createState(YellowLevel,0); createState(BlackLevel),0; // Schedule für die Updates schedule("0 */6 * * *", Drucker); // Schedule alle 6 Stunden Drucker(); // Sofort beim Scriptstart einmal laufen lassen function Drucker () { request(druckerURL, function (error, response, body) { // Einlesen der XML Information if (!error && response.statusCode == 200) { // error check // Farbe nummer 1 var null_position = body.indexOf(cut0) + cut0.length + 1 ; var eins_position = body.indexOf(cut1, null_position) + cut1.length + 1; // erste Position finden var color = body.substring(eins_position, eins_position+1) ; // erste Position ist die Farbe var zwei_position = body.indexOf(cut2)+ cut2.length + 1; // zweite Position finden var level_string = body.substring(zwei_position, body.indexOf(TagEndMarker, zwei_position)); var eins_lastpos = eins_position; // merken position eins var zwei_lastpos = zwei_position; // merken position zwei var TagEndMarker = '<'; if("C" == color){ level_C = level_string; } if("M" == color){ level_M = level_string; } if("Y" == color){ level_Y = level_string; } if("K" == color){ level_K = level_string; } eins_lastpos = eins_position + 10; zwei_lastpos = zwei_position + 10; // Farbe nummer 2 eins_position = body.indexOf(cut1, eins_lastpos) + cut1.length + 1 ; color = body.substring(eins_position, eins_position+1) ; zwei_position = body.indexOf(cut2,zwei_lastpos)+ cut2.length + 1; level_string = body.substring(zwei_position, body.indexOf(TagEndMarker, zwei_position)); if("C" == color){ level_C = level_string; } if("M" == color){ level_M = level_string; } if("Y" == color){ level_Y = level_string; } if("K" == color){ level_K = level_string; } eins_lastpos = eins_position + 10; zwei_lastpos = zwei_position + 10; // Farbe nummer 3 eins_position = body.indexOf(cut1, eins_lastpos) + cut1.length + 1; color = body.substring(eins_position, eins_position+1) ; zwei_position = body.indexOf(cut2,zwei_lastpos)+ cut2.length + 1; level_string = body.substring(zwei_position, body.indexOf(TagEndMarker, zwei_position)); if("C" == color){ level_C = level_string; } if("M" == color){ level_M = level_string; } if("Y" == color){ level_Y = level_string; } if("K" == color){ level_K = level_string; } eins_lastpos = eins_position + 10; zwei_lastpos = zwei_position + 10; // Farbe nummer 4 eins_position = body.indexOf(cut1, eins_lastpos) + cut1.length + 1; color = body.substring(eins_position, eins_position+1) ; zwei_position = body.indexOf(cut2,zwei_lastpos)+ cut2.length + 1; level_string = body.substring(zwei_position, body.indexOf(TagEndMarker, zwei_position)); if("C" == color){ level_C = level_string; } if("M" == color){ level_M = level_string; } if("Y" == color){ level_Y = level_string; } if("p" == color){ level_pK = level_string; } if("K" == color){ level_K = level_string; } eins_lastpos = eins_position + 10; zwei_lastpos = zwei_position + 10; log('Drucker Level C ' + level_C , "info"); log('Drucker Level M ' + level_M , "info"); log('Drucker Level Y ' + level_Y , "info"); log('Drucker Level K ' + level_K , "info"); // der folgende Bereich muss für ggf abweichenden Druckertyp angepasst werden setState(CyanLevel, level_C); setState(MagentaLevel, level_M); setState(YellowLevel, level_Y); setState(BlackLevel, level_K); setState(DruckIP, druckerIP); } else { // if (!error && response.statusCode == 200) { log(error); log('Kein Drucker gefunden'); } }); // end of request } // end of functionDann mal los. 
- 
					
					
					
					
 Das Skript läuft soweit aber er findet keinen Drucker. Mal sehen ob ich was finde… 
- 
					
					
					
					
 Die IP vom Drucker muss stimmen: 192.168.178.31 Der Drucker muss das Vorhaben untersützen. Sprich, er muss auf Eingabe des Links im Browser ein XML zurückschicken: http://192.168.178.31/DevMgmt/ConsumableConfigDyn.xmlIm Zweifelsfalle das Resultat-XML hier posten. (( CODE-Tags nicht vergessen)) 
- 
					
					
					
					
 Ok dann klappt das wohl mit dem Drucker nicht. Ergebnis: 404 Not Found 
- 
					
					
					
					
 Probier mal: http://192.168.178.31/DevMgmt/ProductConfigDyn.xml ````oder:http://192.168.178.31/DevMgmt/MediaHandlingDyn.xml http://192.168.178.31/DevMgmt/ProductStatusDyn.xml 
- 
					
					
					
					
 Keine Chance sagt immer das selbe 404 nicht gefunden. Wenn ich dir IP direkt aufrufe öffnet er aber das Geräte Fenster und zeigt Tintenstand etc an. 
- 
					
					
					
					
 Dann kopier mal den Quelltext der normalen Seite hier rein. Ev. kann die auch durchsucht werden. 
- 
					
					
					
					
 Nicht wundern hab den Drucker nun übers LAN angeschlossen und dadurch die andere Ip. ! http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
 ! http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 ! <title><br/><br /> <br/><br /><br/><br /><br/><br /> HP Officejet 6500 E709n<br/><br /><br/><br /> 192.168.178.47<br/><br /><br/><br /><br/><br /><br/><br /><br/><br /></title>
 !
 ! | http://www.hp.com';" /> |
 ! # HP Officejet 6500 E709n
 ! | |
 ! |
 ! HPD0B01A
 ! 192.168.178.47 |
 ! Status:
 !
 ! Bereit
 !
 !
 ! |
 ! |
 ! Informationen
 ! Einstellungen
 ! Netzwerk! ! Übersicht 
 ! Geräteinformationen
 ! Netzwerkinformationen
 ! Status
 ! Nutzungsbericht
 ! Protokoll
 ! Anwendungen
 ! Webscan
 ! EWS-Einstellungen
 ! Sprache
 ! Aktualisierungsrate
 ! |
 ! |
 ! #
 ! Geräteinformationen
 ! |
 ! |
 ! ###
 ! Status
 ! |
 ! #####
 ! Gerät:
 ! |
 !! HP Officejet 6500 E709n ! Status: 
 !
 ! Bereit
 ! |
 ! |
 ! #####
 ! Geschätzte Tintenfüllstände:*! ! ! ! ! ! ! ! ! | ! 
 ! | |
 !
 ! | |
 !
 ! | |
 !
 ! |
 ! *Nur ungefähre Werte. Die tatsächlichen Tintenstände können abweichen.
 ! |
 ! #####
 ! Optionen, die einen Benutzereingriff erfordern:
 ! |
 ! ###
 ! Angaben
 ! |
 ! #####
 ! Gerät:
 ! |
 ! Produktname
 ! |
 ! HP Officejet 6500 E709n! ! Produktmodellnummer 
 ! |
 ! CB057A! ! Produktseriennummer 
 ! |
 ! TH094321X205G2! ! Dienst-ID 
 ! |
 ! 21075! ! Drucker-ID 
 ! |
 ! 0! ! Firmwareversion 
 ! |
 ! RBP1FN0907AR! ! Automatischer Duplexer 
 ! |
 ! Installiert! ! Administrator-Passwort 
 ! |
 ! Nicht festgelegt! ! Seitenanzahl gesamt 
 ! |
 ! 6583! ! Land/Region 
 ! |
 ! Deutschland! ! PCL-Set Standard-Symbole 
 ! |
 ! 341
 ! |
 ! |
 ! #####
 ! Tintenpatrone:
 ! |
 ! Farbe
 ! |
 ! Patronenbereich (PX)
 ! |
 ! Datum der Erstinstallation (J-M-T)
 ! |
 ! Datum Garantieablauf (J-M-T)
 ! |
 ! Teilenummer! | ! 
 ! Schwarz! 1 2016-11-18 2017-03-26 ! 
 ! Gelb! 1 2016-12-16 2018-11-12 ! 
 ! Zyan! 1 2016-12-16 2018-11-12 ! 
 ! Magenta
 ! | 1 | 2017-02-26 | 2018-11-12 | |
 ! |
 ! |
- 
					
					
					
					
 Das ginge mit dem parser Adapter, wenn Du möchtest. 
  sieht dann so aus: sieht dann so aus: 
 Regexzeilen zum kopieren:````
 cyanink=([+-]?\d+)
 magentaink=([+-]?\d+)
 yellowink=([+-]?\d+)
 blackink=([+-]?\d+)Objektnamen nach eigenem Gutdünken anpassen und Polling Intervall in ms einstellen… :idea:
- 
					
					
					
					
 Bei mir sieht es unter objekte ebenso aus, nur das er mir in grüner oder orangener Schrift bei allen vieren 0% anzeigt  Das ginge mit dem parser Adapter, wenn Du möchtest. parser01.png sieht dann so aus: parser02.png Regexzeilen zum kopieren:```` 
 cyanink=([+-]?\d+)
 magentaink=([+-]?\d+)
 yellowink=([+-]?\d+)
 blackink=([+-]?\d+)Objektnamen nach eigenem Gutdünken anpassen und Polling Intervall in ms einstellen… :idea: `
 
		
	