1 BlueZ D-Bus Thermometer API description
2 ****************************************
4 Santiago Carot-Nemesio <sancane@gmail.com>
6 Health Thermometer Profile hierarchy
7 =====================================
10 Interface org.bluez.Thermometer
11 Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX
14 Methods void SetProperty(string name, variant value)
16 Changes the value of the specified property. Only
17 read-write properties can be changed. On success
18 this will emit a PropertyChanged signal.
20 Possible Errors: org.bluez.Error.InvalidArguments
24 Returns all properties for the interface. See the
25 Properties section for the available properties.
27 RegisterWatcher(object agent)
29 Registers a watcher to monitor scanned measurements.
30 This agent will be notified about final temperature
33 Possible Errors: org.bluez.Error.InvalidArguments
35 UnregisterWatcher(object agent)
37 Unregisters a watcher.
39 Final and intermediate temperatures won't be notified to
42 Possible Errors: org.bluez.Error.InvalidArguments
43 org.bluez.Error.NotFound
45 EnableIntermediateMeasurement(object agent)
47 Enables intermediate measurement notifications for this
48 agent if the thermometer supports it.
50 Possible Errors: org.bluez.Error.InvalidArguments
51 org.bluez.Error.NotSupported
53 DisableIntermediateMeasurement(object agent)
55 Disables intermediate measurement notifications for this
56 agent. It will disable notifications in the thermometer
57 when the last agent removes the watcher for intermediate
60 Possible Errors: org.bluez.Error.InvalidArguments
61 org.bluez.Error.NotFound
63 Signals PropertyChanged(string name, variant value)
65 This signal indicates a changed value of the given
68 Properties boolean Intermediate [readonly]
70 True if the thermometer supports intermediate measurement
73 uint16 Interval (optional) [readwrite]
75 The Measurement Interval defines the time (in seconds)
76 between measurements. This interval is not related to
77 the intermediate measurements and must be defined into
78 a valid range. Setting it to zero means that no periodic
79 measurements will be taken.
81 uint16 Maximum (optional) [readonly]
83 Defines the maximum value allowed for the interval
84 between periodic measurements.
86 uint16 Minimum (optional) [readonly]
88 Defines the minimum value allowed for the interval
89 between periodic measurements.
92 Health Thermometer Watcher hierarchy
93 ====================================
95 Interface org.bluez.ThermometerWatcher
96 Object path freely definable
98 Methods void MeasurementReceived(dict measure)
100 This callback gets called when a measure has been
101 scanned in the thermometer. The Time entry in the dict
102 will be only present if the device supports storing of
103 data. The time value is expressed in seconds since epoch.
104 The value represented is (mantissa) x (10**exponent)
105 See foot note for special values when treating with
106 health devices. The Type entry is only present if the
107 measurement type is known. Otherwise, it is undefined.
109 Dict is defined as below:
113 "Unit" : ("Celsius" or "Fahrenheit"),
115 "Type" : ("Armpit", "Body", "Ear", "Finger",
116 "Intestines", "Mouth", "Rectum", "Toe",
118 "Measurement" : ("Final" or "Intermediate"),
121 For special cases, the exponent shall always be zero and
122 the mantissa should be one of following values:
127 -INFINITY = -(2**23-2)