summaryrefslogtreecommitdiff
path: root/org.pebbled.Watch.xml
blob: 4c10bdb2d8e8ac0635f59f6b877da05acaad51f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<?xml version="1.0"?>
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node name="/org/pebbled/Watch">
  <interface name="org.pebbled.Watch">
    <property name="Name" type="s" access="read"/>
    <property name="Address" type="s" access="read"/>
    <property name="Info" type="a{sv}" access="read">
      <annotation name="org.qtproject.QtDBus.QtTypeName" value="QVariantMap"/>
    </property>
    <property name="Connected" type="b" access="read"/>
    <property name="AppUuid" type="s" access="read"/>

    <!-- Qt does not yet support property changed signals, so we fake them. -->
    <signal name="NameChanged"/>
    <signal name="AddressChanged"/>
    <signal name="InfoChanged"/>
    <signal name="ConnectedChanged"/>
    <signal name="AppUuidChanged"/>

    <method name="Disconnect"/>
    <method name="Reconnect"/>
    <method name="Ping">
      <arg name="val" type="u" direction="in"/>
    </method>
    <method name="SyncTime"/>

    <!-- The following methods resemble the official PebbleKit API -->
    <method name="LaunchApp">
      <arg name="uuid" type="s" direction="in"/>
    </method>
    <method name="CloseApp">
      <arg name="uuid" type="s" direction="in"/>
    </method>
    <method name="SendAppMessage">
      <arg name="uuid" type="s" direction="in"/>
      <arg name="message" type="a{sv}" direction="in"/>
      <arg name="msg_ack" type="b" direction="out"/>
      <annotation name="org.qtproject.QtDBus.QtTypeName.In1" value="QVariantMap"/>
    </method>
    <signal name="AppOpened">
      <arg name="uuid" type="s"/>
    </signal>
    <signal name="AppClosed">
      <arg name="uuid" type="s"/>
    </signal>

    <!-- The following method are used for configuration of JSKit applications by the client app -->
    <method name="StartAppConfiguration">
      <arg name="uuid" type="s" direction="in"/>
      <arg name="config_url" type="s" direction="out"/>
    </method>
    <method name="SendAppConfigurationData">
      <arg name="uuid" type="s" direction="in"/>
      <arg name="data" type="s" direction="in"/>
    </method>

    <!-- Bank management methods -->
    <property name="AppSlots" type="as" access="read"/>
    <signal name="AppSlotsChanged"/>
    <method name="UnloadApp">
      <arg name="slot" type="i" direction="in"/>
    </method>
    <method name="UploadApp">
      <arg name="uuid" type="s" direction="in"/>
      <arg name="slot" type="i" direction="in"/>
    </method>

    <!-- Installed apps (not necessarily uploaded) -->
    <property name="AllApps" type="aa{sv}" access="read">
      <annotation name="org.qtproject.QtDBus.QtTypeName" value="QVariantList"/>
    </property>
    <signal name="AllAppsChanged"/>

    <!-- Firmware management methods -->
    <method name="NotifyFirmware">
        <arg name="ok" type="b" direction="in"/>
    </method>
    <method name="UploadFirmware">
      <arg name="recovery" type="b" direction="in"/>
      <arg name="file" type="s" direction="in"/>
    </method>
  </interface>
</node>