| <?xml version="1.0" encoding="UTF-8" ?> |
| |
| <node name="/org/chromium/Buffet/Manager" |
| xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0"> |
| <interface name="org.chromium.Buffet.Manager"> |
| <tp:docstring> |
| The Manager is responsible for global state of Buffet. It exposes |
| interfaces which affect the entire device such as device registration and |
| device state. |
| </tp:docstring> |
| <method name="CheckDeviceRegistered"> |
| <arg name="device_id" type="s" direction="out"/> |
| <annotation name="org.chromium.DBus.Method.Kind" value="async"/> |
| </method> |
| <method name="GetDeviceInfo"> |
| <arg name="device_info" type="s" direction="out"/> |
| <annotation name="org.chromium.DBus.Method.Kind" value="async"/> |
| </method> |
| <method name="RegisterDevice"> |
| <arg name="ticket_id" type="s" direction="in"/> |
| <arg name="device_id" type="s" direction="out"/> |
| <annotation name="org.chromium.DBus.Method.Kind" value="async"/> |
| </method> |
| <method name="UpdateDeviceInfo"> |
| <arg name="name" type="s" direction="in"/> |
| <arg name="description" type="s" direction="in"/> |
| <arg name="location" type="s" direction="in"/> |
| <annotation name="org.chromium.DBus.Method.Kind" value="normal"/> |
| </method> |
| <method name="UpdateServiceConfig"> |
| <arg name="client_id" type="s" direction="in"/> |
| <arg name="client_secret" type="s" direction="in"/> |
| <arg name="api_key" type="s" direction="in"/> |
| <arg name="oauth_url" type="s" direction="in"/> |
| <arg name="service_url" type="s" direction="in"/> |
| <annotation name="org.chromium.DBus.Method.Kind" value="normal"/> |
| </method> |
| <method name="UpdateState"> |
| <arg name="property_set" type="a{sv}" direction="in"/> |
| <annotation name="org.chromium.DBus.Method.Kind" value="async"/> |
| </method> |
| <method name="GetState"> |
| <arg name="device_info" type="s" direction="out"/> |
| <annotation name="org.chromium.DBus.Method.Kind" value="normal"/> |
| </method> |
| <method name="AddCommand"> |
| <arg name="json_command" type="s" direction="in"/> |
| <arg name="user_role" type="s" direction="in"/> |
| <arg name="id" type="s" direction="out"/> |
| <annotation name="org.chromium.DBus.Method.Kind" value="async"/> |
| </method> |
| <method name="GetCommand"> |
| <arg name="id" type="s" direction="in"/> |
| <arg name="json_command" type="s" direction="out"/> |
| <annotation name="org.chromium.DBus.Method.Kind" value="async"/> |
| </method> |
| <method name="SetCommandVisibility"> |
| <tp:docstring> |
| Changes the visibility of command definition. |
| Parameters: |
| names - a list of the full names of commands to update |
| (each command name should look like 'base.identify'). |
| visibility - the new visibility state of the command: |
| "none" - Command is hidden/unavailable. |
| "local" - Command is available to local clients only. |
| "cloud" - Command is available to cloud clients only. |
| "all" - Command is available to both local and cloud |
| clients. |
| </tp:docstring> |
| <arg name="names" type="as" direction="in"/> |
| <arg name="visibility" type="s" direction="in"/> |
| <annotation name="org.chromium.DBus.Method.Kind" value="async"/> |
| </method> |
| <method name="TestMethod"> |
| <arg name="message" type="s" direction="in"/> |
| <arg name="echoed_message" type="s" direction="out"/> |
| <annotation name="org.chromium.DBus.Method.Kind" value="simple"/> |
| </method> |
| <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.Buffet.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> |
| |
| <property name="Status" type="s" access="read"> |
| <tp:docstring> |
| State of Buffet's cloud registration. |
| Possible values include: |
| "unconfigured": Buffet has no credentials, either from an out of box |
| state, or because device was unregistered. |
| |
| "connecting": Buffet is registered and attempting to connect to the |
| cloud. |
| |
| "connected": Buffet is online and connected to the cloud. Note that |
| only this state requires internet connectivity. |
| |
| "invalid_credentials": Buffet has credentials, but they are no longer |
| valid. |
| </tp:docstring> |
| </property> |
| <property name="DeviceId" type="s" access="read"> |
| <tp:docstring> |
| GCD ID if the device is registered or empty otherwise. |
| </tp:docstring> |
| </property> |
| <property name="CommandDefs" type="s" access="read"> |
| <tp:docstring> |
| JSON with command definitions of the devices. |
| </tp:docstring> |
| </property> |
| <property name="State" type="s" access="read"> |
| <tp:docstring> |
| JSON with state of the devices. |
| </tp:docstring> |
| </property> |
| <property name="OemName" type="s" access="read"> |
| <tp:docstring> |
| Name of the device maker. |
| </tp:docstring> |
| </property> |
| <property name="ModelName" type="s" access="read"> |
| <tp:docstring> |
| Name of the device model. |
| </tp:docstring> |
| </property> |
| <property name="ModelId" type="s" access="read"> |
| <tp:docstring> |
| Five character code assigned by the cloud registry of device models. |
| </tp:docstring> |
| </property> |
| <property name="Name" type="s" access="read"> |
| <tp:docstring> |
| Human readable name of the device. Must not be empty. |
| </tp:docstring> |
| </property> |
| <property name="Description" type="s" access="read"> |
| <tp:docstring> |
| Human readable description of the device. |
| </tp:docstring> |
| </property> |
| <property name="Location" type="s" access="read"> |
| <tp:docstring> |
| Location of the device. |
| </tp:docstring> |
| </property> |
| <property name="AnonymousAccessRole" type="s" access="read"> |
| <tp:docstring> |
| Max role granted to anonymous user when accessing device over the local |
| network. |
| Possible values include: |
| "none": Device does not allow local access by unauthenticated users. |
| |
| "viewer": Device allows everyone authenticated to access device. |
| |
| "user": Device allows everyone authenticated as 'user' to access |
| device. |
| |
| "owner": Device allows everyone authenticated as 'owner' to access |
| device. |
| </tp:docstring> |
| </property> |
| <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” - buffet is waiting to receive WiFi credentials from |
| a paired peer. |
| “connecting” - buffet has received WiFi credentials, and is now |
| attempting to connect to a WiFi network. |
| “monitoring” - buffet 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> |
| </interface> |
| </node> |