SenseData elements can contain multiple package elements. Each package contains the Relay ID listed as just id and a timestamp which is a standard UNIX timestamp in seconds. Each package should contain only one sensors element. The sensors element can have multiple sensor elements, each with an id (Sensor ID), type and units. The sensor can contain one data element with the sensor data in its TEXT field.
Valid Sensor Types
*Volume and FlowRate are typically both components of the same counter. For 1-Wire devices in, currently a single counter will be represented by two sensor elements, one where the id ends with a -FR and the other with a -V for FlowRate and Volume respectively.
Location data is optional and can be specified using the gps tag. All three sections within the gps tag, location, delta, and accuracy are optional. However if a tag is present, all attributes within that tag are required. If data is not available for a given field, simply use the empty string ("").
- location - Contains a longitutde, latitude and altitude. Both longitude and latitude must be present together or absent (if you only have an altitude sensor, you can only report the altitude, but the other two fields must be present and blank). Longitude or Latitude by itself without the other is not valid.
- delta - Contains fields relating to rates of change. speed is speed in meters per second, track is course over ground (degrees from true north) and climb is vertical ascent/descent speed in meters per second
- accuracy - Potential +/- error for each field longitude_error, latitude_error, altitude_error, speed_error, climb_error, and track_error
- Soil Moisture
If security is enabled within, then a signature will need to be attached to the XML data. The attachment should be a Base64 encoded RSA with SHA1 digest signature of the XML data in its transmitted form, not including any leading or trailing whitespace or newlines. The signature must be separated by two newline characters. Both XML data and the signature should be in the HTTP POST Body. The following is a full POST request from a client to the web service from the client:
For information on how to build these signatures in both Python 2 and Java, please refer to http://penguindreams.org/blog/signature-verification-between-java-and-python/.