diff --git a/printermonitor/OctoPrintClient.cpp b/printermonitor/OctoPrintClient.cpp index 162510c..369fe30 100644 --- a/printermonitor/OctoPrintClient.cpp +++ b/printermonitor/OctoPrintClient.cpp @@ -406,3 +406,7 @@ int OctoPrintClient::getPrinterPort() { String OctoPrintClient::getPrinterName() { return printerData.printerName; } + +void OctoPrintClient::setPrinterName(String printer) { + printerData.printerName = printer; +} diff --git a/printermonitor/OctoPrintClient.h b/printermonitor/OctoPrintClient.h index 7a79850..1761ccc 100644 --- a/printermonitor/OctoPrintClient.h +++ b/printermonitor/OctoPrintClient.h @@ -100,4 +100,5 @@ public: String getPrinterType(); int getPrinterPort(); String getPrinterName(); + void setPrinterName(String printer); }; diff --git a/printermonitor/RepetierClient.cpp b/printermonitor/RepetierClient.cpp index c950758..edaedf3 100644 --- a/printermonitor/RepetierClient.cpp +++ b/printermonitor/RepetierClient.cpp @@ -138,8 +138,18 @@ void RepetierClient::getPrinterJobResults() { return; } - //Selecting First printer - JsonObject& pr = root[0]; + int inx = 0; + int count = root.size(); + Serial.println("Size of root: " + String(count)); + for (int i = 0; i < count; i++) { + Serial.println("Printer: " + String((const char*)root[i]["slug"])); + if (String((const char*)root[i]["slug"]) == printerData.printerName) { + inx = i; + break; + } + } + + JsonObject& pr = root[inx]; //printerData.averagePrintTime = (const char*)pr[""]; printerData.estimatedPrintTime = (const char*)pr["printTime"]; @@ -151,7 +161,6 @@ void RepetierClient::getPrinterJobResults() { printerData.progressCompletion = (const char*) pr["done"]; printerData.progressFilepos = (const char*) pr["linesSend"]; printerData.progressPrintTime = (const char*) pr["printedTimeComp"]; - printerData.printerName = (const char*) pr["slug"]; //Figure out Time Left long timeTot=0; @@ -241,7 +250,6 @@ void RepetierClient::resetPrintData() { printerData.isPrinting = false; printerData.isPSUoff = false; printerData.error = ""; - printerData.printerName = ""; } String RepetierClient::getAveragePrintTime(){ @@ -285,7 +293,11 @@ String RepetierClient::getProgressPrintTimeLeft() { } String RepetierClient::getState() { - return printerData.state; + String rtnValue = "Printer is OFF"; + if (printerData.state == "1") { + rtnValue = "Printer is ON"; + } + return rtnValue; } boolean RepetierClient::isPrinting() { @@ -345,3 +357,7 @@ int RepetierClient::getPrinterPort() { String RepetierClient::getPrinterName() { return printerData.printerName; } + +void RepetierClient::setPrinterName(String printer) { + printerData.printerName = printer; +} diff --git a/printermonitor/RepetierClient.h b/printermonitor/RepetierClient.h index c30a465..7c92105 100644 --- a/printermonitor/RepetierClient.h +++ b/printermonitor/RepetierClient.h @@ -100,4 +100,5 @@ public: String getPrinterType(); int getPrinterPort(); String getPrinterName(); + void setPrinterName(String printer); }; diff --git a/printermonitor/printermonitor.ino b/printermonitor/printermonitor.ino index 5e86403..7626c2f 100644 --- a/printermonitor/printermonitor.ino +++ b/printermonitor/printermonitor.ino @@ -110,7 +110,7 @@ String WEB_ACTIONS = " Firmware Update" " About"; -String CHANGE_FORM = ""; // moved to setup to make it dynamic +String CHANGE_FORM = ""; // moved to config to make it dynamic String THEME_FORM = "
Theme Color
" "