blob: f618d8070fdcdaff79dee7e8e3f1305b55b9f06b [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8" ?>
<node name="/org/chromium/privetd/Manager"
xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<interface name="org.chromium.privetd.Manager">
<tp:docstring>
The Manager is responsible for global state of privetd. It exposes
functionality affecting the entire device such as starting and stopping
bootstrapping and some parts of the device description.
</tp:docstring>
<method name="EnableWiFiBootstrapping">
<tp:docstring>
Enables WiFiBootstrapping if manual bootstrapping is selected via the
configuration file. This will re-purpose a WiFi interface for use in
bootstrapping. This breaks any existing WiFi connection on the
interface.
</tp:docstring>
<arg name="listener_path" type="o" direction="in">
<tp:docstring>
Path to an object exposed by the caller. This object must support
the org.chromium.privetd.WiFiBootstrapListener interface.
</tp:docstring>
</arg>
<arg name="options" type="a{sv}" direction="in"/>
<annotation name="org.chromium.DBus.Method.Kind" value="normal"/>
</method>
<method name="DisableWiFiBootstrapping">
<tp:docstring>
If a previous call to EnableWiFiBootstrapping was successful and
has not been cancelled or completed since, disables that bootstrapping
process.
</tp:docstring>
<annotation name="org.chromium.DBus.Method.Kind" value="normal"/>
</method>
<method name="EnableGCDBootstrapping">
<arg name="listener_path" type="o" direction="in"/>
<arg name="options" type="a{sv}" direction="in"/>
<annotation name="org.chromium.DBus.Method.Kind" value="normal"/>
</method>
<method name="DisableGCDBootstrapping">
<annotation name="org.chromium.DBus.Method.Kind" value="normal"/>
</method>
<method name="SetName">
<tp:docstring>
Sets the user friendly name exposed via mDNS advertisements and /info
API. This will override defaults provided in configuration files.
</tp:docstring>
<arg name="name" type="s" direction="in"/>
<annotation name="org.chromium.DBus.Method.Kind" value="simple"/>
</method>
<method name="SetDescription">
<tp:docstring>
Sets the user friendly description exposed via mDNS advertisements and
/info API. This will override defaults provided in configuration
files.
</tp:docstring>
<arg name="description" type="s" direction="in"/>
<annotation name="org.chromium.DBus.Method.Kind" value="simple"/>
</method>
<method name="Ping">
<tp:docstring>
Test method. Always returns “Hello world!”
</tp:docstring>
<arg name="message" type="s" direction="out"/>
<annotation name="org.chromium.DBus.Method.Kind" value="simple"/>
</method>
<property name="WiFiBootstrapState" type="s" access="read">
<tp:docstring>
Contains one of the following values describing the state of WiFi
bootstrapping:
“disabled” - Bootstrapping has been disabled in the config file.
“waiting” - privetd is waiting to receive WiFi credentials from
a paired peer.
“connecting” - privetd has received WiFi credentials, and is now
attempting to connect to a WiFi network.
“monitoring” - privetd is monitoring our connectivity and will
re-enable bootstrapping if connectivity fails in
automatic mode.
Note: more values may be added later to this list.
</tp:docstring>
</property>
<property name="GCDBootstrapState" type="s" access="read">
<tp:docstring>
Contains one of the following values describing the state of GCD
bootstrapping:
“disabled” - GCD registration has been disabled in the config file.
“offline” - GCD registration is unknown because the device is offline.
“connecting” - GCD registration is unknown because the device is still
connecting to the cloud.
“waiting” - Waiting to be configured with GCD credentials.
“registering” - Registering the device with the GCD servers.
“online” - Device is online and registered with GCD servers.
Note: more values may be added later to this list.
Clients that wish to present a single linear bootstrapping flow to users
may treat GCD bootstrapping states as a suffix to WiFi bootstrapping
states. If we have no cloud connectivity, we cannot possibly do GCD
registration/credential verification.
</tp:docstring>
</property>
<property name="PairingInfo" type="a{sv}" access="read">
<tp:docstring>
Describes the state of device pairing. While no pairing attempt is in
progress, this dictionary will be empty. When a client initiates a
pairing transaction via /privet/v3/pairing/start, dictionary will
contain the following keys:
“sessionId” - ID of the pairing session; generated by device
“pairingMode” - Selected type of pairing from /privet/v3/pairing/start
(e.g. “pinCode” or “embeddedCode”)
“code” - The pin code or embedded code as appropriate to the
“pairingMode” value. See design document.
This value will be a string.
</tp:docstring>
</property>
<property name="Description" type="s" access="read">
<tp:docstring>
Concise note describing a peer. Suitable for display to the user. May
not be supplied by the device, contains fewer than 250 characters (e.g.
“Device belonging to Larry Page”).
</tp:docstring>
</property>
<property name="Name" type="s" access="read">
<tp:docstring>
Concise name describing a peer. Suitable for display to the user;
contains only UTF-8 characters. May not be supplied by the device,
contains fewer than 32 characters.
Example value: “Android Nexus 5”
</tp:docstring>
</property>
</interface>
</node>