mirror of
https://gitlab.freedesktop.org/upower/upower.git
synced 2026-04-03 05:40:34 +02:00
660 lines
22 KiB
XML
660 lines
22 KiB
XML
<!DOCTYPE node PUBLIC
|
|
"-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
|
|
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd" [
|
|
<!ENTITY ERROR_GENERAL "org.freedesktop.DeviceKit.Power.Device.GeneralError">
|
|
]>
|
|
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
|
|
<interface name="org.freedesktop.DeviceKit.Power.Device">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Objects implementing this interface are usually discovered through
|
|
the <doc:tt>org.freedesktop.DeviceKit.Power</doc:tt> interface on
|
|
the <doc:tt>/org/freedesktop/DeviceKit/Power</doc:tt> object on
|
|
the D-Bus system bus service with the well-known
|
|
name <doc:tt>org.freedesktop.DeviceKit.Power</doc:tt> using
|
|
the
|
|
<doc:ref type="method" to="Power.EnumerateDevices">EnumerateDevices</doc:ref>
|
|
method.
|
|
</doc:para>
|
|
<doc:para>
|
|
<doc:example language="shell" title="simple example">
|
|
<doc:code>
|
|
$ dbus-send --print-reply \
|
|
--system \
|
|
--dest=org.freedesktop.DeviceKit.Power \
|
|
/org/freedesktop/DeviceKit/Power/devices/battery_BAT0 \
|
|
org.freedesktop.DBus.Properties.GetAll \
|
|
string:org.freedesktop.DeviceKit.Power.Device
|
|
|
|
method return sender=:1.386 -> dest=:1.477 reply_serial=2
|
|
array [
|
|
dict entry(
|
|
string "native-path"
|
|
variant string "/sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0"
|
|
)
|
|
dict entry(
|
|
string "vendor"
|
|
variant string "SONY"
|
|
)
|
|
dict entry(
|
|
string "model"
|
|
variant string "42T4568"
|
|
)
|
|
dict entry(
|
|
string "serial"
|
|
variant string "4179"
|
|
)
|
|
dict entry(
|
|
string "update-time"
|
|
variant uint64 1226417875
|
|
)
|
|
dict entry(
|
|
string "type"
|
|
variant uint 2
|
|
)
|
|
dict entry(
|
|
string "power-supply"
|
|
variant boolean true
|
|
)
|
|
dict entry(
|
|
string "has-history"
|
|
variant boolean true
|
|
)
|
|
dict entry(
|
|
string "has-statistics"
|
|
variant boolean true
|
|
)
|
|
dict entry(
|
|
string "online"
|
|
variant boolean false
|
|
)
|
|
dict entry(
|
|
string "energy"
|
|
variant double 72.85
|
|
)
|
|
dict entry(
|
|
string "energy-empty"
|
|
variant double 0
|
|
)
|
|
dict entry(
|
|
string "energy-full"
|
|
variant double 74.55
|
|
)
|
|
dict entry(
|
|
string "energy-full-design"
|
|
variant double 74.88
|
|
)
|
|
dict entry(
|
|
string "energy-rate"
|
|
variant double 0
|
|
)
|
|
dict entry(
|
|
string "voltage"
|
|
variant double 16.415
|
|
)
|
|
dict entry(
|
|
string "time-to-empty"
|
|
variant int64 0
|
|
)
|
|
dict entry(
|
|
string "time-to-full"
|
|
variant int64 0
|
|
)
|
|
dict entry(
|
|
string "percentage"
|
|
variant double 97.7197
|
|
)
|
|
dict entry(
|
|
string "is-present"
|
|
variant boolean true
|
|
)
|
|
dict entry(
|
|
string "state"
|
|
variant uint 3
|
|
)
|
|
dict entry(
|
|
string "is-rechargeable"
|
|
variant boolean true
|
|
)
|
|
dict entry(
|
|
string "capacity"
|
|
variant double 100
|
|
)
|
|
dict entry(
|
|
string "technology"
|
|
variant uint 1
|
|
)
|
|
]
|
|
</doc:code>
|
|
</doc:example>
|
|
</doc:para>
|
|
<doc:para>
|
|
Unless otherwise noted, an empty string or the value 0 in a
|
|
property on this interface means not set.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
|
|
|
|
<!-- ************************************************************ -->
|
|
<method name="Refresh">
|
|
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Refreshes the data collected from the power source.
|
|
</doc:para>
|
|
</doc:description>
|
|
<doc:permission>Callers need the org.freedesktop.devicekit.power.refresh-power-source authorization</doc:permission>
|
|
<doc:errors>
|
|
<doc:error name="&ERROR_GENERAL;">if an error occured while refreshing</doc:error>
|
|
</doc:errors>
|
|
</doc:doc>
|
|
</method>
|
|
|
|
<!-- ************************************************************ -->
|
|
<signal name="Changed">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Some value on the power source changed.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</signal>
|
|
|
|
<!-- ************************************************************ -->
|
|
<method name="GetHistory">
|
|
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
|
|
<arg name="type" direction="in" type="s">
|
|
<doc:doc><doc:summary>The type of history.
|
|
Valid types are <doc:tt>rate</doc:tt> or <doc:tt>charge</doc:tt>.</doc:summary></doc:doc>
|
|
</arg>
|
|
<arg name="timespan" direction="in" type="u">
|
|
<doc:doc><doc:summary>The amount of data to return in seconds, or 0 for all.</doc:summary></doc:doc>
|
|
</arg>
|
|
<arg name="resolution" direction="in" type="u">
|
|
<doc:doc>
|
|
<doc:summary>
|
|
The approximate number of points to return.
|
|
A higher resolution is more accurate, at the expense of plotting speed.
|
|
</doc:summary>
|
|
</doc:doc>
|
|
</arg>
|
|
<arg name="data" direction="out" type="a(udu)">
|
|
<doc:doc><doc:summary>
|
|
The history data for the power device, if the device supports history.
|
|
Data is ordered from the earliest in time, to the newest data point.
|
|
Each element contains the following members:
|
|
<doc:list>
|
|
<doc:item>
|
|
<doc:term>time</doc:term>
|
|
<doc:definition>
|
|
The time value in seconds from the <doc:tt>gettimeofday()</doc:tt> method.
|
|
</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>value</doc:term>
|
|
<doc:definition>
|
|
The data value, for instance the rate in W or the charge in %.
|
|
</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>state</doc:term>
|
|
<doc:definition>
|
|
The state of the device, for instance <doc:tt>charging</doc:tt> or
|
|
<doc:tt>discharging</doc:tt>.
|
|
</doc:definition>
|
|
</doc:item>
|
|
</doc:list>
|
|
</doc:summary></doc:doc>
|
|
</arg>
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Gets history for the power device that is persistent across reboots.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</method>
|
|
|
|
<!-- ************************************************************ -->
|
|
<method name="GetStatistics">
|
|
<annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
|
|
<arg name="type" direction="in" type="s">
|
|
<doc:doc><doc:summary>The mode for the statistics.
|
|
Valid types are <doc:tt>charging</doc:tt> or <doc:tt>discharging</doc:tt>.</doc:summary></doc:doc>
|
|
</arg>
|
|
<arg name="data" direction="out" type="a(dd)">
|
|
<doc:doc><doc:summary>
|
|
The statistics data for the power device.
|
|
Each element contains the following members:
|
|
<doc:list>
|
|
<doc:item>
|
|
<doc:term>value</doc:term>
|
|
<doc:definition>
|
|
The value of the percentage point, usually in seconds
|
|
</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>accuracy</doc:term>
|
|
<doc:definition>
|
|
The accuracy of the prediction in percent.
|
|
</doc:definition>
|
|
</doc:item>
|
|
</doc:list>
|
|
</doc:summary></doc:doc>
|
|
</arg>
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Gets statistics for the power device that may be interesting
|
|
to show on a graph in the session.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</method>
|
|
|
|
<!-- ************************************************************ -->
|
|
<property name="native-path" type="s" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
OS specific native path of the power source. On Linux this
|
|
is the sysfs path, for
|
|
example <doc:tt>/sys/devices/LNXSYSTM:00/device:00/PNP0C0A:00/power_supply/BAT0</doc:tt>. Is
|
|
blank if the device is being driven by a user space
|
|
driver.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="vendor" type="s" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Name of the vendor of the battery.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="model" type="s" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Name of the model of this battery.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="serial" type="s" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Unique serial number of the battery.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="update-time" type="t" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
The point in time (seconds since the Epoch Jan 1, 1970
|
|
0:00 UTC) that data was read from the power source.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="type" type="u" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Type of power source.
|
|
</doc:para>
|
|
<doc:list>
|
|
<doc:item>
|
|
<doc:term>0</doc:term><doc:definition>Unknown</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>1</doc:term><doc:definition>Line Power</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>2</doc:term><doc:definition>Battery</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>3</doc:term><doc:definition>Ups</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>4</doc:term><doc:definition>Monitor</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>5</doc:term><doc:definition>Mouse</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>6</doc:term><doc:definition>Keyboard</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>7</doc:term><doc:definition>Pda</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>8</doc:term><doc:definition>Phone</doc:definition>
|
|
</doc:item>
|
|
</doc:list>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="power-supply" type="b" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
If the power device is used to supply the system.
|
|
This would be set TRUE for laptop batteries and UPS devices,
|
|
but set FALSE for wireless mice or PDAs.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="has-history" type="b" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
If the power device has history.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="has-statistics" type="b" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
If the power device has statistics.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="online" type="b" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Whether power is currently being provided through line power.
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "line-power".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="energy" type="d" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Amount of energy (measured in Wh) currently available in
|
|
the power source.
|
|
</doc:para><doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="energy-empty" type="d" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Amount of energy (measured in Wh) in the power source when
|
|
it's considered to be empty.
|
|
</doc:para><doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="energy-full" type="d" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Amount of energy (measured in Wh) in the power source when
|
|
it's considered full.
|
|
</doc:para><doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="energy-full-design" type="d" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Amount of energy (measured in Wh) the power source is
|
|
designed to hold when it's considered full.
|
|
</doc:para><doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="energy-rate" type="d" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Amount of energy being drained from the source, measured
|
|
in W. If positive, the source is being discharged, if
|
|
negative it's being charged.
|
|
</doc:para><doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="voltage" type="d" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Voltage in the Cell or being recorded by the meter.
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="time-to-empty" type="x" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Number of seconds until the power source is considered empty.
|
|
Is set to 0 if unknown.
|
|
</doc:para><doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="time-to-full" type="x" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Number of seconds until the power source is considered full.
|
|
Is set to 0 if unknown.
|
|
</doc:para><doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="percentage" type="d" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
The amount of energy left in the power source expressed as
|
|
a percentage between 0 and 100. Typically this is the same as
|
|
(<doc:ref type="property" to="Source:energy">energy</doc:ref> -
|
|
<doc:ref type="property" to="Source:energy-empty">energy-empty</doc:ref>) /
|
|
(<doc:ref type="property" to="Source:energy-full">energy-full</doc:ref> -
|
|
<doc:ref type="property" to="Source:energy-empty">energy-empty</doc:ref>).
|
|
However, some primitive power sources are capable of only
|
|
reporting percentages and in this case the energy-*
|
|
properties will be unset while this property is set.
|
|
</doc:para><doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="is-present" type="b" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
If the power source is present in the bay.
|
|
This field is required as some batteries are hot-removable, for example
|
|
expensive UPS and most laptop batteries.
|
|
</doc:para><doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="state" type="u" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
The battery power state.
|
|
</doc:para>
|
|
<doc:list>
|
|
<doc:item>
|
|
<doc:term>0</doc:term><doc:definition>Unknown</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>1</doc:term><doc:definition>Charging</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>2</doc:term><doc:definition>Discharging</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>3</doc:term><doc:definition>Empty</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>4</doc:term><doc:definition>Fully charged</doc:definition>
|
|
</doc:item>
|
|
</doc:list>
|
|
<doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="is-rechargeable" type="b" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
If the power source is rechargeable.
|
|
</doc:para><doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="capacity" type="d" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
The capacity of the power source expressed as a percentage between 0 and 100.
|
|
The capacity of the battery will reduce with age.
|
|
A capacity value less than 75% is usually a sign that you should renew your battery.
|
|
Typically this value is the same as
|
|
(<doc:ref type="property" to="Source:full-design">full-design</doc:ref> /
|
|
<doc:ref type="property" to="Source:full">full</doc:ref>) * 100.
|
|
However, some primitive power sources are not capable reporting capacity
|
|
and in this case the capacity property will be unset.
|
|
</doc:para><doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
<property name="technology" type="u" access="read">
|
|
<doc:doc>
|
|
<doc:description>
|
|
<doc:para>
|
|
Technology used in the battery:
|
|
</doc:para>
|
|
<doc:list>
|
|
<doc:item>
|
|
<doc:term>0</doc:term><doc:definition>Unknown</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>1</doc:term><doc:definition>Lithium ion</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>2</doc:term><doc:definition>Lithium polymer</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>3</doc:term><doc:definition>Lithium iron phosphate</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>4</doc:term><doc:definition>Lead acid</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>5</doc:term><doc:definition>Nickel cadmium</doc:definition>
|
|
</doc:item>
|
|
<doc:item>
|
|
<doc:term>6</doc:term><doc:definition>Nickel metal hydride</doc:definition>
|
|
</doc:item>
|
|
</doc:list>
|
|
<doc:para>
|
|
This property is only valid if the property
|
|
<doc:ref type="property" to="Source:type">type</doc:ref>
|
|
has the value "battery".
|
|
</doc:para>
|
|
</doc:description>
|
|
</doc:doc>
|
|
</property>
|
|
|
|
</interface>
|
|
|
|
</node>
|