Hey there,
Just completed installing and configuring MythTV. It's a great program!
I installed MythWeb and noticed the 'Backend status' menuitem. I created a
small addition, to show the ACPI CPU temperature
("/proc/acpi/thermal_zone/THRM/temperature") under 'Machine information'.
The attached patch is against mythtv-0.18.1 (the last version included in
Gentoo), but should be easily appliable to other versions.
It'd be nice to see it included in the main distribution. Thanks in advance!
--
A Dieu,
Robert Zwerus - WWW: http://zwering.adsl.utwente.nl
ICQ UIN: 3943443 - MSN: [EMAIL PROTECTED]
Currently playing: Elliott Smith - Independence Day
diff -uprN mythtv-0.18.1/programs/mythbackend/httpstatus.cpp mythtv-0.18.1-temperature/programs/mythbackend/httpstatus.cpp
--- mythtv-0.18.1/programs/mythbackend/httpstatus.cpp 2005-04-20 08:35:54.000000000 +0200
+++ mythtv-0.18.1-temperature/programs/mythbackend/httpstatus.cpp 2006-01-14 01:18:05.000000000 +0100
@@ -702,6 +702,24 @@ int HttpStatus::PrintMachineInfo( QTextS
<< " </div>\r\n";
}
}
+
+ // ACPI temperature ---------------------
+
+ node = info.namedItem( "Thermal" );
+
+ if (!node.isNull())
+ {
+ QDomElement e = node.toElement();
+
+ if (!e.isNull())
+ {
+ std::string temperature = e.attribute( "temperature" , "0" );
+
+ os << " Current CPU temperature: "
+ << temperature
+ << ".<br />\r\n";
+ }
+ }
// Guide Info ---------------------
diff -uprN mythtv-0.18.1/programs/mythbackend/mainserver.cpp mythtv-0.18.1-temperature/programs/mythbackend/mainserver.cpp
--- mythtv-0.18.1/programs/mythbackend/mainserver.cpp 2005-04-13 23:04:28.000000000 +0200
+++ mythtv-0.18.1-temperature/programs/mythbackend/mainserver.cpp 2006-01-14 01:13:57.000000000 +0100
@@ -16,6 +16,7 @@
#include <list>
#include <iostream>
+#include <fstream>
using namespace std;
#include <sys/stat.h>
@@ -3380,11 +3381,13 @@ void MainServer::FillStatusXML( QDomDocu
QDomElement mInfo = pDoc->createElement("MachineInfo");
QDomElement storage = pDoc->createElement("Storage" );
QDomElement load = pDoc->createElement("Load" );
+ QDomElement thermal = pDoc->createElement("Thermal" );
QDomElement guide = pDoc->createElement("Guide" );
root.appendChild (mInfo );
mInfo.appendChild(storage);
mInfo.appendChild(load );
+ mInfo.appendChild(thermal);
mInfo.appendChild(guide );
// drive space ---------------------
@@ -3408,6 +3411,19 @@ void MainServer::FillStatusXML( QDomDocu
load.setAttribute("avg3", rgdAverages[2]);
}
+ // ACPI temperature ---------------------
+ ifstream inp("/proc/acpi/thermal_zone/THRM/temperature");
+ std::string msg, temperature;
+
+ if(inp) {
+ inp >> msg >> temperature;
+ temperature += " degrees Celsius";
+ }
+ else
+ temperature = "unknown";
+
+ thermal.setAttribute("temperature", temperature);
+
// Guide Data ---------------------
QDateTime GuideDataThrough;
_______________________________________________
mythtv-dev mailing list
[email protected]
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev