Fixed restoration of the panel divider position.
[psensor.git] / src / server / description.txt
index 309bfed..a0b2cd8 100644 (file)
@@ -10,16 +10,90 @@ It can provide information about:
   * the temperature of the Hard Disk Drives (using hddtemp).
   * the rotation speed of the fans (using lm\-sensors).
 
-The entry point of the JSON Web service is:
-http://hostname:3131/api/1.0/sensors.
-
 It is also possible to connect to the psensor\-server with a browser, a
 simple Web page is displaying the sensors information and the CPU
 usage.
 
-If run in debug mode, psensor\-server can be stopped by sending an HTTP
+The URL http://hostname:3131/api/1.0/sensors/[id] returns a JSON
+object containing all information about a sensor. [id] is the uniq
+identifier of the sensor.
+
+Here is an example of the JSON object of type 'sensor':
+
+{ "id": "lmsensor acpitz\-virtual\-0 temp1", 
+  "name": "temp1", 
+  "type": 257, 
+  "min": 47.800000, 
+  "max": 60.800000,
+  "measures": [ { "value": 47.800000, "time": 1311374873 },
+                { "value": 49.800000, "time": 1311374878 },
+                { "value": 49.800000, "time": 1311374883 } ],
+  "last_measure": { "value": 49.800000, "time": 1311374883 }
+}
+
+Fields of the type 'sensor':
+
+   * id: the uniq identifier of the sensor.
+   * name: a humean readable name of the sensor (might not be uniq).
+   * type: the type of sensor. Look at src/lib/psensor.h for the
+     different types.
+   * min: the minimal value of the sensor.
+   * max: the maximal value of the sensor.
+   * measures: all measures of the sensor.
+   * last_measure: the last value of the sensor.
+   * time: the time of a measure as the number of seconds since
+     1970/01/01.
+
+The URL http://hostname:3131/api/1.0/sensors returns a JSON array
+containing all JSON objects of type 'sensor'.
+
+psensor\-server can be stopped by sending an HTTP
 request with the URL 'http://hostname:port/api/1.0/server/stop'.
 
+[SENSOR LOG FILE]
+
+Sensors can be logged using the \-\-sensor-log-file option.
+
+It is using a text format, each line is terminated with a NEWLINE
+char.
+
+The first line is: I,%D,%V
+
+%D is the starting time of the log expressed as the number of seconds
+since EPOC.
+
+%V is the version of psensor-server.
+
+Following lines gives the ordered list of sensors: S,%I,%T
+
+%I is the uniq identifier of the sensor.
+
+%T is the hexadecimal representation of the sensor type.
+
+Then, the values of all sensors are written: %D,%V...
+
+%D is the number of seconds elapsed since the starting time of the
+log.
+
+%V... is the list separated by a comma of the current value of all
+sensors. The ordering is the same than the list of sensor identifiers.
+
+The value is expressed as a float with one digit precision. Temperatures
+are using Celsius unit.
+
+The value is written only if it has changed.
+
+Example:
+I,1345974927,0.7.0.4
+S,lmsensor coretemp-isa-0000 Physical id 0,101
+S,lmsensor coretemp-isa-0000 Core 0,101
+S,lmsensor coretemp-isa-0000 Core 1,101
+0,37.0,37.0,36.0
+5,36.0,,36.0
+
+Five seconds after the log starts, the temperature of the second
+sensor (Core 0) is still 37C.
+
 [WARNING]
 
 psensor\-server does not provide any way to restrict the connection to