Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Vorlage] Script und VIS: Druckerpatronen Zustand

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    658

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    5.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

[Vorlage] Script und VIS: Druckerpatronen Zustand

Scheduled Pinned Locked Moved Skripten / Logik
176 Posts 43 Posters 100.3k Views 16 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Ahnungsbefreit

    @tottitoad Ich habe den Fehler gefunden, die Variable "TagEndMarker" wird bei der ersten Farbe in Zeile 78 verwendet, aber erst in Zeile 81 deklariert. Habe noch eine nicht genutzte Zeile rausgeworfen, so läuft es jetzt bei mir für HP OfficeJet 8600 Pro:

    /* 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.33';            // Drucker IP 
    var druckermod      = "HPOJ8600";                   // Drucker Modell - Strukturelement in den Variablen
    var TinteID         = "950XL";                  // Tinte - Tintenbezeichnung
    var TinteCyanBez    = "CN046A";                // Bezeichnung fuer Cyan
    var TinteMagentaBez = "CN047A";                // Bezeichnung fuer Magenta
    var TinteYellowBez  = "CN048A";                // Bezeichnung fuer Yellow
    var TinteBlackBez   = "CN045A";                // 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 TagEndMarker = '<'; 
            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
            
     
            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("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 function
    
    
    P Online
    P Online
    ps1304
    wrote on last edited by ps1304
    #134

    @ahnungsbefreit da der iobroker jetzt meldet das die Funktion "request" deprecated wird, habe ich das ganze mit httpget umgebaut. Läuft bei mir mit einen HP9010 (OfficeJet Pro).

    /* 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.2.30';            // Drucker IP 
    var druckermod      = "HP-Pro9010";                   // Drucker Modell - Strukturelement in den Variablen
    var TinteID         = "950XL";                  // Tinte - Tintenbezeichnung
    var TinteCyanBez    = "CN046A";                // Bezeichnung fuer Cyan
    var TinteMagentaBez = "CN047A";                // Bezeichnung fuer Magenta
    var TinteYellowBez  = "CN048A";                // Bezeichnung fuer Yellow
    var TinteBlackBez   = "CN045A";                // Bezeichnung fuer Black
     
    // ENDE der Einstellungen
     
    var druckerURL      = "http://" + druckerIP + "/DevMgmt/ConsumableConfigDyn.xml";          // URL nicht ändern
    var http = require('http');                                                                 // Using the http module directly
    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() {
     
        http.get(druckerURL, (response) => {
            let body = '';
            
            // A chunk of data has been received.
            response.on('data', (chunk) => {
                body += chunk;
            });
            
            // The whole response has been received.
            response.on('end', () => {
                if (response.statusCode === 200) { // Check if the response is OK
                    // XML parsing logic remains the same
                    var TagEndMarker = '<'; 
                    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
     
                    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 ("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 {
                    log('Kein Drucker gefunden');
                }
            });
            
        }).on('error', (error) => {
            log(error);
            log('Kein Drucker gefunden');
        });
    } // end of function
    
    L 1 Reply Last reply
    1
    • P ps1304

      @ahnungsbefreit da der iobroker jetzt meldet das die Funktion "request" deprecated wird, habe ich das ganze mit httpget umgebaut. Läuft bei mir mit einen HP9010 (OfficeJet Pro).

      /* 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.2.30';            // Drucker IP 
      var druckermod      = "HP-Pro9010";                   // Drucker Modell - Strukturelement in den Variablen
      var TinteID         = "950XL";                  // Tinte - Tintenbezeichnung
      var TinteCyanBez    = "CN046A";                // Bezeichnung fuer Cyan
      var TinteMagentaBez = "CN047A";                // Bezeichnung fuer Magenta
      var TinteYellowBez  = "CN048A";                // Bezeichnung fuer Yellow
      var TinteBlackBez   = "CN045A";                // Bezeichnung fuer Black
       
      // ENDE der Einstellungen
       
      var druckerURL      = "http://" + druckerIP + "/DevMgmt/ConsumableConfigDyn.xml";          // URL nicht ändern
      var http = require('http');                                                                 // Using the http module directly
      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() {
       
          http.get(druckerURL, (response) => {
              let body = '';
              
              // A chunk of data has been received.
              response.on('data', (chunk) => {
                  body += chunk;
              });
              
              // The whole response has been received.
              response.on('end', () => {
                  if (response.statusCode === 200) { // Check if the response is OK
                      // XML parsing logic remains the same
                      var TagEndMarker = '<'; 
                      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
       
                      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 ("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 {
                      log('Kein Drucker gefunden');
                  }
              });
              
          }).on('error', (error) => {
              log(error);
              log('Kein Drucker gefunden');
          });
      } // end of function
      
      L Offline
      L Offline
      looxer01
      wrote on last edited by looxer01
      #135

      Hi,

      ich habe das Script etwas umgebaut und u.a. die Unschönheiten der Variablen-Deklaration behandelt.
      sollte auf Dauer robuster sein.

      Script: HP-Tinte_V1-0.txt

      Nachtrag:
      ich habe übrigens auch eine Variante für HP Drucker die die geschätzten druckbaren Restseiten je Farbe im XML mitliefern
      ich kann es aber selber nicht testen, weil mein Drucker das nicht macht. Also: falls jemand das testen
      möchte, dann bitte melden

      Script mit verbleibenden Seiten:
      Ich ziehe das erweiterte script im Moment zurück, da es so nicht funktioniert.
      Sobald ich soweit bin reiche ich es nach

      vG Looxer

      bahnuhrB 1 Reply Last reply
      1
      • L looxer01

        Hi,

        ich habe das Script etwas umgebaut und u.a. die Unschönheiten der Variablen-Deklaration behandelt.
        sollte auf Dauer robuster sein.

        Script: HP-Tinte_V1-0.txt

        Nachtrag:
        ich habe übrigens auch eine Variante für HP Drucker die die geschätzten druckbaren Restseiten je Farbe im XML mitliefern
        ich kann es aber selber nicht testen, weil mein Drucker das nicht macht. Also: falls jemand das testen
        möchte, dann bitte melden

        Script mit verbleibenden Seiten:
        Ich ziehe das erweiterte script im Moment zurück, da es so nicht funktioniert.
        Sobald ich soweit bin reiche ich es nach

        vG Looxer

        bahnuhrB Online
        bahnuhrB Online
        bahnuhr
        Forum Testing Most Active
        wrote on last edited by
        #136

        @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

        Variante für HP Drucker die die geschätzten druckbare Restseiten je Farbe im XML mitliefern

        bitte Script hier einstellen.


        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
        Danke.
        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
        ScreenToGif :https://www.screentogif.com/downloads.html

        HomoranH 1 Reply Last reply
        0
        • bahnuhrB bahnuhr

          @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

          Variante für HP Drucker die die geschätzten druckbare Restseiten je Farbe im XML mitliefern

          bitte Script hier einstellen.

          HomoranH Do not disturb
          HomoranH Do not disturb
          Homoran
          Global Moderator Administrators
          wrote on last edited by
          #137

          @bahnuhr sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

          bitte Script hier einstellen.

          @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

          Script: HP-Tinte_V1-0.txt

          kein Support per PN! - Fragen im Forum stellen -
          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
          Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          bahnuhrB 1 Reply Last reply
          0
          • HomoranH Homoran

            @bahnuhr sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

            bitte Script hier einstellen.

            @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

            Script: HP-Tinte_V1-0.txt

            bahnuhrB Online
            bahnuhrB Online
            bahnuhr
            Forum Testing Most Active
            wrote on last edited by
            #138

            @homoran
            Nein, das ist sie nicht.

            Er hat ja geschrieben, dass er noch zusätzlich eine andere Variante hat.

            @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

            Nachtrag:
            ich habe übrigens auch eine Variante


            Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
            Danke.
            gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
            ScreenToGif :https://www.screentogif.com/downloads.html

            L 2 Replies Last reply
            1
            • bahnuhrB bahnuhr

              @homoran
              Nein, das ist sie nicht.

              Er hat ja geschrieben, dass er noch zusätzlich eine andere Variante hat.

              @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

              Nachtrag:
              ich habe übrigens auch eine Variante

              L Offline
              L Offline
              looxer01
              wrote on last edited by looxer01
              #139

              @bahnuhr
              sind jetzt beide Scripts im vorherigen Post

              Nachtrag:
              die Variable FetchRemainPages muss auf true gestellt werden

              1 Reply Last reply
              2
              • bahnuhrB bahnuhr

                @homoran
                Nein, das ist sie nicht.

                Er hat ja geschrieben, dass er noch zusätzlich eine andere Variante hat.

                @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

                Nachtrag:
                ich habe übrigens auch eine Variante

                L Offline
                L Offline
                looxer01
                wrote on last edited by looxer01
                #140

                @bahnuhr
                würdest du deine XML Datei zur Verfügung stellen.
                Ich möchte versuchen Findungsstrategien einzubauen.
                Ich selber habe ja schon die beiden URL. Deine scheint ja nochmal mehr Daten zu enthalten.

                Hintergrund
                Die beiden URLs, die ich nutze haben beispielsweise einen anderen Aufbau. Bei der einen muß über hierarchiches Suchen der Tintenstand gefunden werden.
                Die zweite ist weniger komplex und es kann z.B. nach "Yellow" gesucht werden und ein paar Zeilen weiter steht schon der Tintenstand zur Verfügung

                Wenn es klappt, dann könnte das parsen . unabhängiger vom Druckertyp ablaufen und verschiedene URL ausgewertet werden.

                vG Looxer

                bahnuhrB 1 Reply Last reply
                0
                • L looxer01

                  @bahnuhr
                  würdest du deine XML Datei zur Verfügung stellen.
                  Ich möchte versuchen Findungsstrategien einzubauen.
                  Ich selber habe ja schon die beiden URL. Deine scheint ja nochmal mehr Daten zu enthalten.

                  Hintergrund
                  Die beiden URLs, die ich nutze haben beispielsweise einen anderen Aufbau. Bei der einen muß über hierarchiches Suchen der Tintenstand gefunden werden.
                  Die zweite ist weniger komplex und es kann z.B. nach "Yellow" gesucht werden und ein paar Zeilen weiter steht schon der Tintenstand zur Verfügung

                  Wenn es klappt, dann könnte das parsen . unabhängiger vom Druckertyp ablaufen und verschiedene URL ausgewertet werden.

                  vG Looxer

                  bahnuhrB Online
                  bahnuhrB Online
                  bahnuhr
                  Forum Testing Most Active
                  wrote on last edited by
                  #141

                  @looxer01
                  Ich nehme aber dein Script aus 2015. Die o.g. Scripte hab ich noch nicht ausprobiert.

                  Im Browser kommt bei: http://192.168.243.111/DevMgmt/ConsumableConfigDyn.xml

                  This XML file does not appear to have any style information associated with it. The document tree is shown below.
                  <!--  THIS DATA SUBJECT TO DISCLAIMER(S) INCLUDED WITH THE PRODUCT OF ORIGIN.  -->
                  <ccdyn:ConsumableConfigDyn xmlns:dd="http://www.hp.com/schemas/imaging/con/dictionaries/1.0/" xmlns:dd2="http://www.hp.com/schemas/imaging/con/dictionaries/2008/10/10" xmlns:ccdyn="http://www.hp.com/schemas/imaging/con/ledm/consumableconfigdyn/2007/11/19" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.hp.com/schemas/imaging/con/ledm/consumableconfigdyn/2007/11/19 ../schemas/ConsumableConfigDyn.xsd http://www.hp.com/schemas/imaging/con/dictionaries/1.0/ ../schemas/dd/DataDictionaryMasterLEDM.xsd">
                  <dd:Version>
                  <dd:Revision>SVN-IPG-LEDM.38</dd:Revision>
                  <dd:Date>2010-06-02</dd:Date>
                  </dd:Version>
                  <ccdyn:ProductConsumableInfo>
                  <dd:NumOfUserReplaceableConsumables>5</dd:NumOfUserReplaceableConsumables>
                  <dd:NumOfNonUserReplaceableConsumables>0</dd:NumOfNonUserReplaceableConsumables>
                  <dd:AlignmentMode>automatic</dd:AlignmentMode>
                  <ccdyn:CartridgeChipInfo>enabled</ccdyn:CartridgeChipInfo>
                  <ccdyn:SupportedConsumables>
                  <ccdyn:SupportedConsumable>
                  <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                  <dd:ConsumableLabelCode>M</dd:ConsumableLabelCode>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>951XL</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>951</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>everyday</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>951XL Z20</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>951 Z20</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  </ccdyn:SupportedConsumable>
                  <ccdyn:SupportedConsumable>
                  <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                  <dd:ConsumableLabelCode>C</dd:ConsumableLabelCode>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>951XL</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>951</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>everyday</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>951XL Z20</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>951 Z20</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  </ccdyn:SupportedConsumable>
                  <ccdyn:SupportedConsumable>
                  <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                  <dd:ConsumableLabelCode>Y</dd:ConsumableLabelCode>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>951XL</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>951</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>everyday</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>951XL Z20</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>951 Z20</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  </ccdyn:SupportedConsumable>
                  <ccdyn:SupportedConsumable>
                  <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                  <dd:ConsumableLabelCode>K</dd:ConsumableLabelCode>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>950XL</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>950</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>everyday</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>950 Z20</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  <ccdyn:SupportedConsumableInfo>
                  <dd:ConsumableSelectibilityNumber>950XL Z20</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                  </ccdyn:SupportedConsumableInfo>
                  </ccdyn:SupportedConsumable>
                  </ccdyn:SupportedConsumables>
                  <dd:ConsumableSlotDirection>leftToRight</dd:ConsumableSlotDirection>
                  <dd:IK>635</dd:IK>
                  <ccdyn:SingleCartridgeMode>disabled</ccdyn:SingleCartridgeMode>
                  <dd:AntiTheftMode>disabled</dd:AntiTheftMode>
                  </ccdyn:ProductConsumableInfo>
                  <ccdyn:ConsumableInfo>
                  <dd:ConsumableContentType>markingAgent</dd:ConsumableContentType>
                  <dd:ConsumableFamilyName>PAULINA</dd:ConsumableFamilyName>
                  <dd2:ConsumableID>11F583E1C38FA4A141000078001257E1</dd2:ConsumableID>
                  <dd:ConsumableLabelCode>CMYK</dd:ConsumableLabelCode>
                  <dd:ConsumableLifeState>
                  <dd:ConsumableState>ok</dd:ConsumableState>
                  <dd:Brand>nonApprovedOEM</dd:Brand>
                  </dd:ConsumableLifeState>
                  <dd:ConsumableReplaceabilityType>userReplaceable</dd:ConsumableReplaceabilityType>
                  <dd:ConsumableStation>4</dd:ConsumableStation>
                  <dd:ConsumableTypeEnum>printhead</dd:ConsumableTypeEnum>
                  <dd:Installation>
                  <dd:Date>2013-01-08</dd:Date>
                  </dd:Installation>
                  <ccdyn:ConsumablePersistentState>
                  <dd:ConsumableLabelCode>CMYK</dd:ConsumableLabelCode>
                  <dd:PersistentMarkerState>nonHP</dd:PersistentMarkerState>
                  </ccdyn:ConsumablePersistentState>
                  </ccdyn:ConsumableInfo>
                  <ccdyn:ConsumableInfo>
                  <dd:Capacity>
                  <dd:MaxCapacity>230</dd:MaxCapacity>
                  <dd:Unit>tenthsOfMilliliters</dd:Unit>
                  </dd:Capacity>
                  <dd:ConsumableAcceptibilitySubBrand>officejet</dd:ConsumableAcceptibilitySubBrand>
                  <dd:ConsumableAcceptibilitySegmentClass>allDevices</dd:ConsumableAcceptibilitySegmentClass>
                  <dd:ConsumableAcceptibilityUpgradability>notSupported</dd:ConsumableAcceptibilityUpgradability>
                  <dd:ConsumableContentType>markingAgent</dd:ConsumableContentType>
                  <dd:ConsumableFamilyName>NESTA</dd:ConsumableFamilyName>
                  <dd:ConsumableKeyingDescriptor>large1</dd:ConsumableKeyingDescriptor>
                  <dd:ConsumableLabelCode>M</dd:ConsumableLabelCode>
                  <dd:ConsumableLifeState>
                  <dd:ConsumableState>ok</dd:ConsumableState>
                  <dd:MeasuredQuantityState>ok</dd:MeasuredQuantityState>
                  <dd:Brand>HP</dd:Brand>
                  <dd:ConsumableStateAction>none</dd:ConsumableStateAction>
                  <dd:IsRefilled>false</dd:IsRefilled>
                  </dd:ConsumableLifeState>
                  <dd:ConsumableLevelMessagingStyle>dropCount</dd:ConsumableLevelMessagingStyle>
                  <dd:ConsumableLowUseAlgorithm>standard</dd:ConsumableLowUseAlgorithm>
                  <dd:ConsumablePercentageLevelRemaining>60</dd:ConsumablePercentageLevelRemaining>
                  <dd:ConsumableReplaceabilityType>userReplaceable</dd:ConsumableReplaceabilityType>
                  <dd:ConsumableSelectibilityNumber>951XL</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableStation>0</dd:ConsumableStation>
                  <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                  <dd:Installation>
                  <dd:Date>2023-08-20</dd:Date>
                  </dd:Installation>
                  <dd:ProductNumber> CN047A</dd:ProductNumber>
                  <dd:SerialNumber>1620128304</dd:SerialNumber>
                  <dd:RegionalCartridge>
                  <dd:RegionIdentifier>1</dd:RegionIdentifier>
                  </dd:RegionalCartridge>
                  <dd:ConsumableIcon>
                  <dd:Shape>Circle</dd:Shape>
                  <dd:Rotation>rotateZero</dd:Rotation>
                  <dd:FillColor>
                  <dd:Red>255</dd:Red>
                  <dd:Green>0</dd:Green>
                  <dd:Blue>255</dd:Blue>
                  </dd:FillColor>
                  <dd:OutlineColor>
                  <dd:Red>255</dd:Red>
                  <dd:Green>0</dd:Green>
                  <dd:Blue>255</dd:Blue>
                  </dd:OutlineColor>
                  <dd:BackGroundColor>
                  <dd:Red>0</dd:Red>
                  <dd:Green>0</dd:Green>
                  <dd:Blue>0</dd:Blue>
                  </dd:BackGroundColor>
                  <dd:RGBTextColor>
                  <dd:Red>255</dd:Red>
                  <dd:Green>255</dd:Green>
                  <dd:Blue>255</dd:Blue>
                  </dd:RGBTextColor>
                  <dd:Label>M</dd:Label>
                  </dd:ConsumableIcon>
                  <dd:Warranty>
                  <dd:ExpirationDate>2018-01-15</dd:ExpirationDate>
                  </dd:Warranty>
                  </ccdyn:ConsumableInfo>
                  <ccdyn:ConsumableInfo>
                  <dd:Capacity>
                  <dd:MaxCapacity>216</dd:MaxCapacity>
                  <dd:Unit>tenthsOfMilliliters</dd:Unit>
                  </dd:Capacity>
                  <dd:ConsumableAcceptibilitySubBrand>officejet</dd:ConsumableAcceptibilitySubBrand>
                  <dd:ConsumableAcceptibilitySegmentClass>allDevices</dd:ConsumableAcceptibilitySegmentClass>
                  <dd:ConsumableAcceptibilityUpgradability>notSupported</dd:ConsumableAcceptibilityUpgradability>
                  <dd:ConsumableContentType>markingAgent</dd:ConsumableContentType>
                  <dd:ConsumableFamilyName>NESTA</dd:ConsumableFamilyName>
                  <dd:ConsumableKeyingDescriptor>large1</dd:ConsumableKeyingDescriptor>
                  <dd:ConsumableLabelCode>C</dd:ConsumableLabelCode>
                  <dd:ConsumableLifeState>
                  <dd:ConsumableState>ok</dd:ConsumableState>
                  <dd:MeasuredQuantityState>ok</dd:MeasuredQuantityState>
                  <dd:Brand>HP</dd:Brand>
                  <dd:ConsumableStateAction>none</dd:ConsumableStateAction>
                  <dd:IsRefilled>false</dd:IsRefilled>
                  </dd:ConsumableLifeState>
                  <dd:ConsumableLevelMessagingStyle>dropCount</dd:ConsumableLevelMessagingStyle>
                  <dd:ConsumableLowUseAlgorithm>standard</dd:ConsumableLowUseAlgorithm>
                  <dd:ConsumablePercentageLevelRemaining>90</dd:ConsumablePercentageLevelRemaining>
                  <dd:ConsumableReplaceabilityType>userReplaceable</dd:ConsumableReplaceabilityType>
                  <dd:ConsumableSelectibilityNumber>951XL Z20</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableStation>1</dd:ConsumableStation>
                  <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                  <dd:Installation>
                  <dd:Date>2024-05-06</dd:Date>
                  </dd:Installation>
                  <dd:ProductNumber>CN046AE</dd:ProductNumber>
                  <dd:SerialNumber>-1746714000</dd:SerialNumber>
                  <dd:RegionalCartridge>
                  <dd:RegionIdentifier>4</dd:RegionIdentifier>
                  </dd:RegionalCartridge>
                  <dd:ConsumableIcon>
                  <dd:Shape>Circle</dd:Shape>
                  <dd:Rotation>rotateZero</dd:Rotation>
                  <dd:FillColor>
                  <dd:Red>0</dd:Red>
                  <dd:Green>255</dd:Green>
                  <dd:Blue>255</dd:Blue>
                  </dd:FillColor>
                  <dd:OutlineColor>
                  <dd:Red>0</dd:Red>
                  <dd:Green>255</dd:Green>
                  <dd:Blue>255</dd:Blue>
                  </dd:OutlineColor>
                  <dd:BackGroundColor>
                  <dd:Red>0</dd:Red>
                  <dd:Green>0</dd:Green>
                  <dd:Blue>0</dd:Blue>
                  </dd:BackGroundColor>
                  <dd:RGBTextColor>
                  <dd:Red>255</dd:Red>
                  <dd:Green>255</dd:Green>
                  <dd:Blue>255</dd:Blue>
                  </dd:RGBTextColor>
                  <dd:Label>C</dd:Label>
                  </dd:ConsumableIcon>
                  <dd:Warranty>
                  <dd:ExpirationDate>2021-08-06</dd:ExpirationDate>
                  </dd:Warranty>
                  </ccdyn:ConsumableInfo>
                  <ccdyn:ConsumableInfo>
                  <dd:Capacity>
                  <dd:MaxCapacity>230</dd:MaxCapacity>
                  <dd:Unit>tenthsOfMilliliters</dd:Unit>
                  </dd:Capacity>
                  <dd:ConsumableAcceptibilitySubBrand>officejet</dd:ConsumableAcceptibilitySubBrand>
                  <dd:ConsumableAcceptibilitySegmentClass>allDevices</dd:ConsumableAcceptibilitySegmentClass>
                  <dd:ConsumableAcceptibilityUpgradability>notSupported</dd:ConsumableAcceptibilityUpgradability>
                  <dd:ConsumableContentType>markingAgent</dd:ConsumableContentType>
                  <dd:ConsumableFamilyName>NESTA</dd:ConsumableFamilyName>
                  <dd:ConsumableKeyingDescriptor>large1</dd:ConsumableKeyingDescriptor>
                  <dd:ConsumableLabelCode>Y</dd:ConsumableLabelCode>
                  <dd:ConsumableLifeState>
                  <dd:ConsumableState>ok</dd:ConsumableState>
                  <dd:MeasuredQuantityState>ok</dd:MeasuredQuantityState>
                  <dd:Brand>HP</dd:Brand>
                  <dd:ConsumableStateAction>none</dd:ConsumableStateAction>
                  <dd:IsRefilled>false</dd:IsRefilled>
                  </dd:ConsumableLifeState>
                  <dd:ConsumableLevelMessagingStyle>dropCount</dd:ConsumableLevelMessagingStyle>
                  <dd:ConsumableLowUseAlgorithm>standard</dd:ConsumableLowUseAlgorithm>
                  <dd:ConsumablePercentageLevelRemaining>90</dd:ConsumablePercentageLevelRemaining>
                  <dd:ConsumableReplaceabilityType>userReplaceable</dd:ConsumableReplaceabilityType>
                  <dd:ConsumableSelectibilityNumber>951XL Z20</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableStation>2</dd:ConsumableStation>
                  <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                  <dd:Installation>
                  <dd:Date>2024-05-06</dd:Date>
                  </dd:Installation>
                  <dd:ProductNumber>CN048AE</dd:ProductNumber>
                  <dd:SerialNumber>1959508856</dd:SerialNumber>
                  <dd:RegionalCartridge>
                  <dd:RegionIdentifier>4</dd:RegionIdentifier>
                  </dd:RegionalCartridge>
                  <dd:ConsumableIcon>
                  <dd:Shape>Circle</dd:Shape>
                  <dd:Rotation>rotateZero</dd:Rotation>
                  <dd:FillColor>
                  <dd:Red>255</dd:Red>
                  <dd:Green>255</dd:Green>
                  <dd:Blue>0</dd:Blue>
                  </dd:FillColor>
                  <dd:OutlineColor>
                  <dd:Red>255</dd:Red>
                  <dd:Green>255</dd:Green>
                  <dd:Blue>0</dd:Blue>
                  </dd:OutlineColor>
                  <dd:BackGroundColor>
                  <dd:Red>0</dd:Red>
                  <dd:Green>0</dd:Green>
                  <dd:Blue>0</dd:Blue>
                  </dd:BackGroundColor>
                  <dd:RGBTextColor>
                  <dd:Red>0</dd:Red>
                  <dd:Green>0</dd:Green>
                  <dd:Blue>0</dd:Blue>
                  </dd:RGBTextColor>
                  <dd:Label>Y</dd:Label>
                  </dd:ConsumableIcon>
                  <dd:Warranty>
                  <dd:ExpirationDate>2019-05-14</dd:ExpirationDate>
                  </dd:Warranty>
                  </ccdyn:ConsumableInfo>
                  <ccdyn:ConsumableInfo>
                  <dd:Capacity>
                  <dd:MaxCapacity>651</dd:MaxCapacity>
                  <dd:Unit>tenthsOfMilliliters</dd:Unit>
                  </dd:Capacity>
                  <dd:ConsumableAcceptibilitySubBrand>officejet</dd:ConsumableAcceptibilitySubBrand>
                  <dd:ConsumableAcceptibilitySegmentClass>allDevices</dd:ConsumableAcceptibilitySegmentClass>
                  <dd:ConsumableAcceptibilityUpgradability>notSupported</dd:ConsumableAcceptibilityUpgradability>
                  <dd:ConsumableContentType>markingAgent</dd:ConsumableContentType>
                  <dd:ConsumableFamilyName>NESTA</dd:ConsumableFamilyName>
                  <dd:ConsumableKeyingDescriptor>large1</dd:ConsumableKeyingDescriptor>
                  <dd:ConsumableLabelCode>K</dd:ConsumableLabelCode>
                  <dd:ConsumableLifeState>
                  <dd:ConsumableState>ok</dd:ConsumableState>
                  <dd:MeasuredQuantityState>ok</dd:MeasuredQuantityState>
                  <dd:Brand>HP</dd:Brand>
                  <dd:ConsumableStateAction>none</dd:ConsumableStateAction>
                  <dd:IsRefilled>false</dd:IsRefilled>
                  </dd:ConsumableLifeState>
                  <dd:ConsumableLevelMessagingStyle>dropCount</dd:ConsumableLevelMessagingStyle>
                  <dd:ConsumableLowUseAlgorithm>standard</dd:ConsumableLowUseAlgorithm>
                  <dd:ConsumablePercentageLevelRemaining>50</dd:ConsumablePercentageLevelRemaining>
                  <dd:ConsumableReplaceabilityType>userReplaceable</dd:ConsumableReplaceabilityType>
                  <dd:ConsumableSelectibilityNumber>950XL Z20</dd:ConsumableSelectibilityNumber>
                  <dd:ConsumableStation>3</dd:ConsumableStation>
                  <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                  <dd:Installation>
                  <dd:Date>2023-08-20</dd:Date>
                  </dd:Installation>
                  <dd:ProductNumber>CN045AE</dd:ProductNumber>
                  <dd:SerialNumber>-1311755696</dd:SerialNumber>
                  <dd:RegionalCartridge>
                  <dd:RegionIdentifier>4</dd:RegionIdentifier>
                  </dd:RegionalCartridge>
                  <dd:ConsumableIcon>
                  <dd:Shape>Circle</dd:Shape>
                  <dd:Rotation>rotateZero</dd:Rotation>
                  <dd:FillColor>
                  <dd:Red>0</dd:Red>
                  <dd:Green>0</dd:Green>
                  <dd:Blue>0</dd:Blue>
                  </dd:FillColor>
                  <dd:OutlineColor>
                  <dd:Red>0</dd:Red>
                  <dd:Green>0</dd:Green>
                  <dd:Blue>0</dd:Blue>
                  </dd:OutlineColor>
                  <dd:BackGroundColor>
                  <dd:Red>255</dd:Red>
                  <dd:Green>255</dd:Green>
                  <dd:Blue>255</dd:Blue>
                  </dd:BackGroundColor>
                  <dd:RGBTextColor>
                  <dd:Red>255</dd:Red>
                  <dd:Green>255</dd:Green>
                  <dd:Blue>255</dd:Blue>
                  </dd:RGBTextColor>
                  <dd:Label>K</dd:Label>
                  </dd:ConsumableIcon>
                  <dd:Warranty>
                  <dd:ExpirationDate>2023-02-19</dd:ExpirationDate>
                  </dd:Warranty>
                  </ccdyn:ConsumableInfo>
                  </ccdyn:ConsumableConfigDyn>
                  

                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                  Danke.
                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                  ScreenToGif :https://www.screentogif.com/downloads.html

                  L 1 Reply Last reply
                  0
                  • bahnuhrB bahnuhr

                    @looxer01
                    Ich nehme aber dein Script aus 2015. Die o.g. Scripte hab ich noch nicht ausprobiert.

                    Im Browser kommt bei: http://192.168.243.111/DevMgmt/ConsumableConfigDyn.xml

                    This XML file does not appear to have any style information associated with it. The document tree is shown below.
                    <!--  THIS DATA SUBJECT TO DISCLAIMER(S) INCLUDED WITH THE PRODUCT OF ORIGIN.  -->
                    <ccdyn:ConsumableConfigDyn xmlns:dd="http://www.hp.com/schemas/imaging/con/dictionaries/1.0/" xmlns:dd2="http://www.hp.com/schemas/imaging/con/dictionaries/2008/10/10" xmlns:ccdyn="http://www.hp.com/schemas/imaging/con/ledm/consumableconfigdyn/2007/11/19" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.hp.com/schemas/imaging/con/ledm/consumableconfigdyn/2007/11/19 ../schemas/ConsumableConfigDyn.xsd http://www.hp.com/schemas/imaging/con/dictionaries/1.0/ ../schemas/dd/DataDictionaryMasterLEDM.xsd">
                    <dd:Version>
                    <dd:Revision>SVN-IPG-LEDM.38</dd:Revision>
                    <dd:Date>2010-06-02</dd:Date>
                    </dd:Version>
                    <ccdyn:ProductConsumableInfo>
                    <dd:NumOfUserReplaceableConsumables>5</dd:NumOfUserReplaceableConsumables>
                    <dd:NumOfNonUserReplaceableConsumables>0</dd:NumOfNonUserReplaceableConsumables>
                    <dd:AlignmentMode>automatic</dd:AlignmentMode>
                    <ccdyn:CartridgeChipInfo>enabled</ccdyn:CartridgeChipInfo>
                    <ccdyn:SupportedConsumables>
                    <ccdyn:SupportedConsumable>
                    <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                    <dd:ConsumableLabelCode>M</dd:ConsumableLabelCode>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>951XL</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>951</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>everyday</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>951XL Z20</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>951 Z20</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    </ccdyn:SupportedConsumable>
                    <ccdyn:SupportedConsumable>
                    <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                    <dd:ConsumableLabelCode>C</dd:ConsumableLabelCode>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>951XL</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>951</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>everyday</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>951XL Z20</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>951 Z20</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    </ccdyn:SupportedConsumable>
                    <ccdyn:SupportedConsumable>
                    <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                    <dd:ConsumableLabelCode>Y</dd:ConsumableLabelCode>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>951XL</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>951</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>everyday</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>951XL Z20</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>951 Z20</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    </ccdyn:SupportedConsumable>
                    <ccdyn:SupportedConsumable>
                    <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                    <dd:ConsumableLabelCode>K</dd:ConsumableLabelCode>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>950XL</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>950</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>everyday</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>950 Z20</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    <ccdyn:SupportedConsumableInfo>
                    <dd:ConsumableSelectibilityNumber>950XL Z20</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableUsageType>highVolume</dd:ConsumableUsageType>
                    </ccdyn:SupportedConsumableInfo>
                    </ccdyn:SupportedConsumable>
                    </ccdyn:SupportedConsumables>
                    <dd:ConsumableSlotDirection>leftToRight</dd:ConsumableSlotDirection>
                    <dd:IK>635</dd:IK>
                    <ccdyn:SingleCartridgeMode>disabled</ccdyn:SingleCartridgeMode>
                    <dd:AntiTheftMode>disabled</dd:AntiTheftMode>
                    </ccdyn:ProductConsumableInfo>
                    <ccdyn:ConsumableInfo>
                    <dd:ConsumableContentType>markingAgent</dd:ConsumableContentType>
                    <dd:ConsumableFamilyName>PAULINA</dd:ConsumableFamilyName>
                    <dd2:ConsumableID>11F583E1C38FA4A141000078001257E1</dd2:ConsumableID>
                    <dd:ConsumableLabelCode>CMYK</dd:ConsumableLabelCode>
                    <dd:ConsumableLifeState>
                    <dd:ConsumableState>ok</dd:ConsumableState>
                    <dd:Brand>nonApprovedOEM</dd:Brand>
                    </dd:ConsumableLifeState>
                    <dd:ConsumableReplaceabilityType>userReplaceable</dd:ConsumableReplaceabilityType>
                    <dd:ConsumableStation>4</dd:ConsumableStation>
                    <dd:ConsumableTypeEnum>printhead</dd:ConsumableTypeEnum>
                    <dd:Installation>
                    <dd:Date>2013-01-08</dd:Date>
                    </dd:Installation>
                    <ccdyn:ConsumablePersistentState>
                    <dd:ConsumableLabelCode>CMYK</dd:ConsumableLabelCode>
                    <dd:PersistentMarkerState>nonHP</dd:PersistentMarkerState>
                    </ccdyn:ConsumablePersistentState>
                    </ccdyn:ConsumableInfo>
                    <ccdyn:ConsumableInfo>
                    <dd:Capacity>
                    <dd:MaxCapacity>230</dd:MaxCapacity>
                    <dd:Unit>tenthsOfMilliliters</dd:Unit>
                    </dd:Capacity>
                    <dd:ConsumableAcceptibilitySubBrand>officejet</dd:ConsumableAcceptibilitySubBrand>
                    <dd:ConsumableAcceptibilitySegmentClass>allDevices</dd:ConsumableAcceptibilitySegmentClass>
                    <dd:ConsumableAcceptibilityUpgradability>notSupported</dd:ConsumableAcceptibilityUpgradability>
                    <dd:ConsumableContentType>markingAgent</dd:ConsumableContentType>
                    <dd:ConsumableFamilyName>NESTA</dd:ConsumableFamilyName>
                    <dd:ConsumableKeyingDescriptor>large1</dd:ConsumableKeyingDescriptor>
                    <dd:ConsumableLabelCode>M</dd:ConsumableLabelCode>
                    <dd:ConsumableLifeState>
                    <dd:ConsumableState>ok</dd:ConsumableState>
                    <dd:MeasuredQuantityState>ok</dd:MeasuredQuantityState>
                    <dd:Brand>HP</dd:Brand>
                    <dd:ConsumableStateAction>none</dd:ConsumableStateAction>
                    <dd:IsRefilled>false</dd:IsRefilled>
                    </dd:ConsumableLifeState>
                    <dd:ConsumableLevelMessagingStyle>dropCount</dd:ConsumableLevelMessagingStyle>
                    <dd:ConsumableLowUseAlgorithm>standard</dd:ConsumableLowUseAlgorithm>
                    <dd:ConsumablePercentageLevelRemaining>60</dd:ConsumablePercentageLevelRemaining>
                    <dd:ConsumableReplaceabilityType>userReplaceable</dd:ConsumableReplaceabilityType>
                    <dd:ConsumableSelectibilityNumber>951XL</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableStation>0</dd:ConsumableStation>
                    <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                    <dd:Installation>
                    <dd:Date>2023-08-20</dd:Date>
                    </dd:Installation>
                    <dd:ProductNumber> CN047A</dd:ProductNumber>
                    <dd:SerialNumber>1620128304</dd:SerialNumber>
                    <dd:RegionalCartridge>
                    <dd:RegionIdentifier>1</dd:RegionIdentifier>
                    </dd:RegionalCartridge>
                    <dd:ConsumableIcon>
                    <dd:Shape>Circle</dd:Shape>
                    <dd:Rotation>rotateZero</dd:Rotation>
                    <dd:FillColor>
                    <dd:Red>255</dd:Red>
                    <dd:Green>0</dd:Green>
                    <dd:Blue>255</dd:Blue>
                    </dd:FillColor>
                    <dd:OutlineColor>
                    <dd:Red>255</dd:Red>
                    <dd:Green>0</dd:Green>
                    <dd:Blue>255</dd:Blue>
                    </dd:OutlineColor>
                    <dd:BackGroundColor>
                    <dd:Red>0</dd:Red>
                    <dd:Green>0</dd:Green>
                    <dd:Blue>0</dd:Blue>
                    </dd:BackGroundColor>
                    <dd:RGBTextColor>
                    <dd:Red>255</dd:Red>
                    <dd:Green>255</dd:Green>
                    <dd:Blue>255</dd:Blue>
                    </dd:RGBTextColor>
                    <dd:Label>M</dd:Label>
                    </dd:ConsumableIcon>
                    <dd:Warranty>
                    <dd:ExpirationDate>2018-01-15</dd:ExpirationDate>
                    </dd:Warranty>
                    </ccdyn:ConsumableInfo>
                    <ccdyn:ConsumableInfo>
                    <dd:Capacity>
                    <dd:MaxCapacity>216</dd:MaxCapacity>
                    <dd:Unit>tenthsOfMilliliters</dd:Unit>
                    </dd:Capacity>
                    <dd:ConsumableAcceptibilitySubBrand>officejet</dd:ConsumableAcceptibilitySubBrand>
                    <dd:ConsumableAcceptibilitySegmentClass>allDevices</dd:ConsumableAcceptibilitySegmentClass>
                    <dd:ConsumableAcceptibilityUpgradability>notSupported</dd:ConsumableAcceptibilityUpgradability>
                    <dd:ConsumableContentType>markingAgent</dd:ConsumableContentType>
                    <dd:ConsumableFamilyName>NESTA</dd:ConsumableFamilyName>
                    <dd:ConsumableKeyingDescriptor>large1</dd:ConsumableKeyingDescriptor>
                    <dd:ConsumableLabelCode>C</dd:ConsumableLabelCode>
                    <dd:ConsumableLifeState>
                    <dd:ConsumableState>ok</dd:ConsumableState>
                    <dd:MeasuredQuantityState>ok</dd:MeasuredQuantityState>
                    <dd:Brand>HP</dd:Brand>
                    <dd:ConsumableStateAction>none</dd:ConsumableStateAction>
                    <dd:IsRefilled>false</dd:IsRefilled>
                    </dd:ConsumableLifeState>
                    <dd:ConsumableLevelMessagingStyle>dropCount</dd:ConsumableLevelMessagingStyle>
                    <dd:ConsumableLowUseAlgorithm>standard</dd:ConsumableLowUseAlgorithm>
                    <dd:ConsumablePercentageLevelRemaining>90</dd:ConsumablePercentageLevelRemaining>
                    <dd:ConsumableReplaceabilityType>userReplaceable</dd:ConsumableReplaceabilityType>
                    <dd:ConsumableSelectibilityNumber>951XL Z20</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableStation>1</dd:ConsumableStation>
                    <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                    <dd:Installation>
                    <dd:Date>2024-05-06</dd:Date>
                    </dd:Installation>
                    <dd:ProductNumber>CN046AE</dd:ProductNumber>
                    <dd:SerialNumber>-1746714000</dd:SerialNumber>
                    <dd:RegionalCartridge>
                    <dd:RegionIdentifier>4</dd:RegionIdentifier>
                    </dd:RegionalCartridge>
                    <dd:ConsumableIcon>
                    <dd:Shape>Circle</dd:Shape>
                    <dd:Rotation>rotateZero</dd:Rotation>
                    <dd:FillColor>
                    <dd:Red>0</dd:Red>
                    <dd:Green>255</dd:Green>
                    <dd:Blue>255</dd:Blue>
                    </dd:FillColor>
                    <dd:OutlineColor>
                    <dd:Red>0</dd:Red>
                    <dd:Green>255</dd:Green>
                    <dd:Blue>255</dd:Blue>
                    </dd:OutlineColor>
                    <dd:BackGroundColor>
                    <dd:Red>0</dd:Red>
                    <dd:Green>0</dd:Green>
                    <dd:Blue>0</dd:Blue>
                    </dd:BackGroundColor>
                    <dd:RGBTextColor>
                    <dd:Red>255</dd:Red>
                    <dd:Green>255</dd:Green>
                    <dd:Blue>255</dd:Blue>
                    </dd:RGBTextColor>
                    <dd:Label>C</dd:Label>
                    </dd:ConsumableIcon>
                    <dd:Warranty>
                    <dd:ExpirationDate>2021-08-06</dd:ExpirationDate>
                    </dd:Warranty>
                    </ccdyn:ConsumableInfo>
                    <ccdyn:ConsumableInfo>
                    <dd:Capacity>
                    <dd:MaxCapacity>230</dd:MaxCapacity>
                    <dd:Unit>tenthsOfMilliliters</dd:Unit>
                    </dd:Capacity>
                    <dd:ConsumableAcceptibilitySubBrand>officejet</dd:ConsumableAcceptibilitySubBrand>
                    <dd:ConsumableAcceptibilitySegmentClass>allDevices</dd:ConsumableAcceptibilitySegmentClass>
                    <dd:ConsumableAcceptibilityUpgradability>notSupported</dd:ConsumableAcceptibilityUpgradability>
                    <dd:ConsumableContentType>markingAgent</dd:ConsumableContentType>
                    <dd:ConsumableFamilyName>NESTA</dd:ConsumableFamilyName>
                    <dd:ConsumableKeyingDescriptor>large1</dd:ConsumableKeyingDescriptor>
                    <dd:ConsumableLabelCode>Y</dd:ConsumableLabelCode>
                    <dd:ConsumableLifeState>
                    <dd:ConsumableState>ok</dd:ConsumableState>
                    <dd:MeasuredQuantityState>ok</dd:MeasuredQuantityState>
                    <dd:Brand>HP</dd:Brand>
                    <dd:ConsumableStateAction>none</dd:ConsumableStateAction>
                    <dd:IsRefilled>false</dd:IsRefilled>
                    </dd:ConsumableLifeState>
                    <dd:ConsumableLevelMessagingStyle>dropCount</dd:ConsumableLevelMessagingStyle>
                    <dd:ConsumableLowUseAlgorithm>standard</dd:ConsumableLowUseAlgorithm>
                    <dd:ConsumablePercentageLevelRemaining>90</dd:ConsumablePercentageLevelRemaining>
                    <dd:ConsumableReplaceabilityType>userReplaceable</dd:ConsumableReplaceabilityType>
                    <dd:ConsumableSelectibilityNumber>951XL Z20</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableStation>2</dd:ConsumableStation>
                    <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                    <dd:Installation>
                    <dd:Date>2024-05-06</dd:Date>
                    </dd:Installation>
                    <dd:ProductNumber>CN048AE</dd:ProductNumber>
                    <dd:SerialNumber>1959508856</dd:SerialNumber>
                    <dd:RegionalCartridge>
                    <dd:RegionIdentifier>4</dd:RegionIdentifier>
                    </dd:RegionalCartridge>
                    <dd:ConsumableIcon>
                    <dd:Shape>Circle</dd:Shape>
                    <dd:Rotation>rotateZero</dd:Rotation>
                    <dd:FillColor>
                    <dd:Red>255</dd:Red>
                    <dd:Green>255</dd:Green>
                    <dd:Blue>0</dd:Blue>
                    </dd:FillColor>
                    <dd:OutlineColor>
                    <dd:Red>255</dd:Red>
                    <dd:Green>255</dd:Green>
                    <dd:Blue>0</dd:Blue>
                    </dd:OutlineColor>
                    <dd:BackGroundColor>
                    <dd:Red>0</dd:Red>
                    <dd:Green>0</dd:Green>
                    <dd:Blue>0</dd:Blue>
                    </dd:BackGroundColor>
                    <dd:RGBTextColor>
                    <dd:Red>0</dd:Red>
                    <dd:Green>0</dd:Green>
                    <dd:Blue>0</dd:Blue>
                    </dd:RGBTextColor>
                    <dd:Label>Y</dd:Label>
                    </dd:ConsumableIcon>
                    <dd:Warranty>
                    <dd:ExpirationDate>2019-05-14</dd:ExpirationDate>
                    </dd:Warranty>
                    </ccdyn:ConsumableInfo>
                    <ccdyn:ConsumableInfo>
                    <dd:Capacity>
                    <dd:MaxCapacity>651</dd:MaxCapacity>
                    <dd:Unit>tenthsOfMilliliters</dd:Unit>
                    </dd:Capacity>
                    <dd:ConsumableAcceptibilitySubBrand>officejet</dd:ConsumableAcceptibilitySubBrand>
                    <dd:ConsumableAcceptibilitySegmentClass>allDevices</dd:ConsumableAcceptibilitySegmentClass>
                    <dd:ConsumableAcceptibilityUpgradability>notSupported</dd:ConsumableAcceptibilityUpgradability>
                    <dd:ConsumableContentType>markingAgent</dd:ConsumableContentType>
                    <dd:ConsumableFamilyName>NESTA</dd:ConsumableFamilyName>
                    <dd:ConsumableKeyingDescriptor>large1</dd:ConsumableKeyingDescriptor>
                    <dd:ConsumableLabelCode>K</dd:ConsumableLabelCode>
                    <dd:ConsumableLifeState>
                    <dd:ConsumableState>ok</dd:ConsumableState>
                    <dd:MeasuredQuantityState>ok</dd:MeasuredQuantityState>
                    <dd:Brand>HP</dd:Brand>
                    <dd:ConsumableStateAction>none</dd:ConsumableStateAction>
                    <dd:IsRefilled>false</dd:IsRefilled>
                    </dd:ConsumableLifeState>
                    <dd:ConsumableLevelMessagingStyle>dropCount</dd:ConsumableLevelMessagingStyle>
                    <dd:ConsumableLowUseAlgorithm>standard</dd:ConsumableLowUseAlgorithm>
                    <dd:ConsumablePercentageLevelRemaining>50</dd:ConsumablePercentageLevelRemaining>
                    <dd:ConsumableReplaceabilityType>userReplaceable</dd:ConsumableReplaceabilityType>
                    <dd:ConsumableSelectibilityNumber>950XL Z20</dd:ConsumableSelectibilityNumber>
                    <dd:ConsumableStation>3</dd:ConsumableStation>
                    <dd:ConsumableTypeEnum>ink</dd:ConsumableTypeEnum>
                    <dd:Installation>
                    <dd:Date>2023-08-20</dd:Date>
                    </dd:Installation>
                    <dd:ProductNumber>CN045AE</dd:ProductNumber>
                    <dd:SerialNumber>-1311755696</dd:SerialNumber>
                    <dd:RegionalCartridge>
                    <dd:RegionIdentifier>4</dd:RegionIdentifier>
                    </dd:RegionalCartridge>
                    <dd:ConsumableIcon>
                    <dd:Shape>Circle</dd:Shape>
                    <dd:Rotation>rotateZero</dd:Rotation>
                    <dd:FillColor>
                    <dd:Red>0</dd:Red>
                    <dd:Green>0</dd:Green>
                    <dd:Blue>0</dd:Blue>
                    </dd:FillColor>
                    <dd:OutlineColor>
                    <dd:Red>0</dd:Red>
                    <dd:Green>0</dd:Green>
                    <dd:Blue>0</dd:Blue>
                    </dd:OutlineColor>
                    <dd:BackGroundColor>
                    <dd:Red>255</dd:Red>
                    <dd:Green>255</dd:Green>
                    <dd:Blue>255</dd:Blue>
                    </dd:BackGroundColor>
                    <dd:RGBTextColor>
                    <dd:Red>255</dd:Red>
                    <dd:Green>255</dd:Green>
                    <dd:Blue>255</dd:Blue>
                    </dd:RGBTextColor>
                    <dd:Label>K</dd:Label>
                    </dd:ConsumableIcon>
                    <dd:Warranty>
                    <dd:ExpirationDate>2023-02-19</dd:ExpirationDate>
                    </dd:Warranty>
                    </ccdyn:ConsumableInfo>
                    </ccdyn:ConsumableConfigDyn>
                    
                    L Offline
                    L Offline
                    looxer01
                    wrote on last edited by looxer01
                    #142

                    @bahnuhr
                    aaah ok. das ist die Struktur, die ich ja auch schon habe. Das optimierte Script, das ich gepostet habe funktioniert damit gut.
                    Ich war auf der Suche nach der XML mit den verbleibenden Druckseiten: "RemainingPages".

                    vG Looxer

                    bahnuhrB 1 Reply Last reply
                    0
                    • L looxer01

                      @bahnuhr
                      aaah ok. das ist die Struktur, die ich ja auch schon habe. Das optimierte Script, das ich gepostet habe funktioniert damit gut.
                      Ich war auf der Suche nach der XML mit den verbleibenden Druckseiten: "RemainingPages".

                      vG Looxer

                      bahnuhrB Online
                      bahnuhrB Online
                      bahnuhr
                      Forum Testing Most Active
                      wrote on last edited by
                      #143

                      @looxer01
                      gibt es da einen anderen xml Befehl ?


                      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                      Danke.
                      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                      ScreenToGif :https://www.screentogif.com/downloads.html

                      MartinPM L 2 Replies Last reply
                      0
                      • bahnuhrB bahnuhr

                        @looxer01
                        gibt es da einen anderen xml Befehl ?

                        MartinPM Online
                        MartinPM Online
                        MartinP
                        wrote on last edited by
                        #144

                        @bahnuhr Wieso macht man so etwas eigentlich nicht mit SNMP? Oder haben die Druckerhersteller sich da im HTTP interfacing auf so etwas, wie einen Standard geeinigt?

                        Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                        Virtualization : unprivileged lxc container (debian 13) on Proxmox 9.1.5)
                        Linux pve 6.17.9-1-pve
                        6 GByte RAM für den Container
                        Fritzbox 6591 FW 8.20 (Vodafone Leih-Box)
                        Remote-Access über Wireguard der Fritzbox

                        L 1 Reply Last reply
                        0
                        • bahnuhrB bahnuhr

                          @looxer01
                          gibt es da einen anderen xml Befehl ?

                          L Offline
                          L Offline
                          looxer01
                          wrote on last edited by
                          #145

                          @bahnuhr
                          versuch die mal: http://192.168.0.94/DevMgmt/ProductUsageDyn.xml
                          natürlich mit deiner IP

                          1 Reply Last reply
                          1
                          • MartinPM MartinP

                            @bahnuhr Wieso macht man so etwas eigentlich nicht mit SNMP? Oder haben die Druckerhersteller sich da im HTTP interfacing auf so etwas, wie einen Standard geeinigt?

                            L Offline
                            L Offline
                            looxer01
                            wrote on last edited by
                            #146

                            @martinp
                            ich habe einen HP8900Pro. Dieser wie viele andere auch verstehen meines Wissens nach kein SNMP

                            NegaleinN 1 Reply Last reply
                            0
                            • L looxer01

                              @martinp
                              ich habe einen HP8900Pro. Dieser wie viele andere auch verstehen meines Wissens nach kein SNMP

                              NegaleinN Offline
                              NegaleinN Offline
                              Negalein
                              Global Moderator
                              wrote on last edited by
                              #147

                              @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

                              ich habe einen HP8900Pro. Dieser wie viele andere auch verstehen meines Wissens nach kein SNMP

                              mein OfficeJet 9010 pro Series findet zumindest mit dem MIB-Browser einiges.
                              Muss noch testen, welche OID für was steht.

                              Den Druckzähler hab ich bereits, obwohl der im Webportal nicht angezeigt wird.

                              ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                              ° Node.js Fixer ---> iob nodejs-update
                              ° Fixer ---> iob fix

                              L 1 Reply Last reply
                              0
                              • NegaleinN Negalein

                                @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

                                ich habe einen HP8900Pro. Dieser wie viele andere auch verstehen meines Wissens nach kein SNMP

                                mein OfficeJet 9010 pro Series findet zumindest mit dem MIB-Browser einiges.
                                Muss noch testen, welche OID für was steht.

                                Den Druckzähler hab ich bereits, obwohl der im Webportal nicht angezeigt wird.

                                L Offline
                                L Offline
                                looxer01
                                wrote on last edited by
                                #148

                                @negalein
                                Ich habe mal SNMP aktiviert für den Drucker und dann in den SNMP Adapter eingepflegt.
                                zunächst mal zeigt der Adapter kein Problem und kann lesen.
                                Ein Tinten Level gibts noch nicht aber mit der richtigen OID mag es gehen. Ich habe diese

                                Tintenstand Cyan: .1.3.6.1.2.1.43.11.1.1.9.1.1
                                Tintenstand Magenta: .1.3.6.1.2.1.43.11.1.1.9.1.2
                                Tintenstand Yellow: .1.3.6.1.2.1.43.11.1.1.9.1.3
                                Tintenstand Black: .1.3.6.1.2.1.43.11.1.1.9.1.4

                                NegaleinN 1 Reply Last reply
                                0
                                • L looxer01

                                  @negalein
                                  Ich habe mal SNMP aktiviert für den Drucker und dann in den SNMP Adapter eingepflegt.
                                  zunächst mal zeigt der Adapter kein Problem und kann lesen.
                                  Ein Tinten Level gibts noch nicht aber mit der richtigen OID mag es gehen. Ich habe diese

                                  Tintenstand Cyan: .1.3.6.1.2.1.43.11.1.1.9.1.1
                                  Tintenstand Magenta: .1.3.6.1.2.1.43.11.1.1.9.1.2
                                  Tintenstand Yellow: .1.3.6.1.2.1.43.11.1.1.9.1.3
                                  Tintenstand Black: .1.3.6.1.2.1.43.11.1.1.9.1.4

                                  NegaleinN Offline
                                  NegaleinN Offline
                                  Negalein
                                  Global Moderator
                                  wrote on last edited by
                                  #149

                                  @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

                                  Ein Tinten Level gibts noch nicht aber mit der richtigen OID mag es gehen. Ich habe diese

                                  das sind doch die Tintenlevels? Oder meinst du da nicht den Füllstand?


                                  gedruckte Seiten

                                  .1.3.6.1.2.1.43.10.2.1.4.1.1

                                  ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                                  ° Node.js Fixer ---> iob nodejs-update
                                  ° Fixer ---> iob fix

                                  L 1 Reply Last reply
                                  0
                                  • NegaleinN Negalein

                                    @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

                                    Ein Tinten Level gibts noch nicht aber mit der richtigen OID mag es gehen. Ich habe diese

                                    das sind doch die Tintenlevels? Oder meinst du da nicht den Füllstand?


                                    gedruckte Seiten

                                    .1.3.6.1.2.1.43.10.2.1.4.1.1

                                    L Offline
                                    L Offline
                                    looxer01
                                    wrote on last edited by
                                    #150

                                    @negalein
                                    ja genau.
                                    Leider bekomme ich immer folgendes vom Adapter gemeldet:
                                    [HP8900Pro] device disconnected - request timeout

                                    HomoranH 1 Reply Last reply
                                    0
                                    • L looxer01

                                      @negalein
                                      ja genau.
                                      Leider bekomme ich immer folgendes vom Adapter gemeldet:
                                      [HP8900Pro] device disconnected - request timeout

                                      HomoranH Do not disturb
                                      HomoranH Do not disturb
                                      Homoran
                                      Global Moderator Administrators
                                      wrote on last edited by
                                      #151

                                      @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

                                      device disconnected

                                      dann ist er im standby und hat das WLAN(???) deaktiviert

                                      kein Support per PN! - Fragen im Forum stellen -
                                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                      Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
                                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                      L 1 Reply Last reply
                                      0
                                      • HomoranH Homoran

                                        @looxer01 sagte in [Vorlage] Script und VIS: Druckerpatronen Zustand:

                                        device disconnected

                                        dann ist er im standby und hat das WLAN(???) deaktiviert

                                        L Offline
                                        L Offline
                                        looxer01
                                        wrote on last edited by
                                        #152

                                        @homoran
                                        mmh: die connection ist nicht da aber der drucker hängt am LAN

                                        4e55910e-c590-4c83-8e78-fd0b0d11ffb3-grafik.png

                                        Ro75R 1 Reply Last reply
                                        0
                                        • L looxer01

                                          @homoran
                                          mmh: die connection ist nicht da aber der drucker hängt am LAN

                                          4e55910e-c590-4c83-8e78-fd0b0d11ffb3-grafik.png

                                          Ro75R Offline
                                          Ro75R Offline
                                          Ro75
                                          wrote on last edited by Ro75
                                          #153

                                          @looxer01 wenn der Drucker in den Standby geht, egal ob LAN oder WLAN, dann ist er im SNMP-Adapter offline. Ggfs. kannst du in der GUI vom Drucker längere Zeiten einstellen. Aber eigentlich ist es egal. Wenn du im SNMP Adapter aller 30 Sekunden die Daten abfgragt, kann ein Standby nach 5 Minuten völlig OK sein.

                                          Ro75.

                                          SERVER = Beelink U59 16GB DDR4 RAM 512GB SSD, FB 7490, FritzDect 200+301+440, ConBee II, Zigbee Aqara Sensoren + NOUS A1Z, NOUS A1T, Philips Hue ** ioBroker, REDIS, influxdb2, Grafana, PiHole, Plex-Mediaserver, paperless-ngx (Docker), MariaDB + phpmyadmin *** VIS-Runtime = Intel NUC 8GB RAM 128GB SSD + 24" Touchscreen

                                          1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          565

                                          Online

                                          32.7k

                                          Users

                                          82.6k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe