~ubuntu-branches/ubuntu/precise/libtelepathy/precise

« back to all changes in this revision

Viewing changes to spec/Connection_Interface_Presence.xml

  • Committer: Bazaar Package Importer
  • Author(s): Simon McVittie, Laurent Bigonville, Simon McVittie
  • Date: 2007-11-26 11:21:59 UTC
  • mfrom: (1.1.15 upstream)
  • Revision ID: james.westby@ubuntu.com-20071126112159-ftf8bitsi2ote4cq
Tags: 0.3.1-1
[ Laurent Bigonville ]
* Use now official Vcs-* field
* Use new Homepage field instead of old pseudo-field

[ Simon McVittie ]
* New upstream release
* Bump shlibs
* Now depends on telepathy-glib and build-depends on python
* Add XS-Dm-Upload-Allowed: yes so I can upload it in future

Show diffs side-by-side

added added

removed removed

Lines of Context:
26
26
  </tp:license>
27
27
  <interface name="org.freedesktop.Telepathy.Connection.Interface.Presence">
28
28
    <tp:requires interface="org.freedesktop.Telepathy.Connection"/>
 
29
 
 
30
    <!-- We hope to simplify these eventually -->
 
31
    <tp:mapping name="Multiple_Status_Map">
 
32
      <tp:docstring>Mapping used in Last_Activity_And_Statuses and passed to
 
33
        SetStatus, representing a collection of statuses. Use of this mapping
 
34
        with more than one member is deprecated.</tp:docstring>
 
35
      <tp:member type="s" name="Status"/>
 
36
      <tp:member type="a{sv}" tp:type="String_Variant_Map" name="Parameters"/>
 
37
    </tp:mapping>
 
38
    <tp:struct name="Last_Activity_And_Statuses" array-name="">
 
39
      <tp:docstring>Structure representing a contact's presence, containing
 
40
        a last-activity time (deprecated) and a Multiple_Status_Map.
 
41
      </tp:docstring>
 
42
      <tp:member type="u" tp:type="Unix_Timestamp" name="Last_Activity"/>
 
43
      <tp:member type="a{sa{sv}}" tp:type="Multiple_Status_Map"
 
44
        name="Statuses"/>
 
45
    </tp:struct>
 
46
    <tp:mapping name="Contact_Presences">
 
47
      <tp:docstring>Mapping returned by GetPresence and signalled by
 
48
        PresenceUpdate, where the keys are contacts and the values represent
 
49
        their presences.</tp:docstring>
 
50
      <tp:member type="u" tp:type="Contact_Handle" name="Contact"/>
 
51
      <tp:member type="(ua{sa{sv}})" tp:type="Last_Activity_And_Statuses"
 
52
        name="Presence"/>
 
53
    </tp:mapping>
 
54
    <tp:struct name="Status_Spec" array-name="">
 
55
      <tp:member type="u" tp:type="Connection_Presence_Type" name="Type"/>
 
56
      <tp:member type="b" name="May_Set_On_Self"/>
 
57
      <tp:member type="b" name="Exclusive"/>
 
58
      <tp:member type="a{ss}" tp:type="String_String_Map"
 
59
        name="Parameter_Types"/>
 
60
    </tp:struct>
 
61
    <tp:mapping name="Status_Spec_Map">
 
62
      <tp:member type="s" name="Identifier"/>
 
63
      <tp:member type="(ubba{ss})" tp:type="Status_Spec" name="Spec"/>
 
64
    </tp:mapping>
 
65
 
29
66
    <method name="AddStatus">
30
67
      <arg direction="in" name="status" type="s">
31
68
        <tp:docstring>
32
69
          The string identifier of the desired status
33
70
        </tp:docstring>
34
71
      </arg>
35
 
      <arg direction="in" name="parms" type="a{sv}">
 
72
      <arg direction="in" name="parms" type="a{sv}" tp:type="String_Variant_Map">
36
73
        <tp:docstring>
37
74
          A dictionary of optional parameter names mapped to their variant-boxed values
38
75
        </tp:docstring>
69
106
          An array of the contacts whose presence should be obtained
70
107
        </tp:docstring>
71
108
      </arg>
72
 
      <arg direction="out" name="presence" type="a{u(ua{sa{sv}})}">
 
109
      <arg direction="out" name="presence" type="a{u(ua{sa{sv}})}"
 
110
        tp:type="Contact_Presences">
73
111
        <tp:docstring>
74
112
          Presence information in the same format as for the PresenceUpdate
75
113
          signal
89
127
      </tp:possible-errors>
90
128
    </method>
91
129
    <method name="GetStatuses">
92
 
      <arg direction="out" type="a{s(ubba{ss})}">
 
130
      <arg direction="out" type="a{s(ubba{ss})}" tp:type="Status_Spec_Map">
93
131
        <tp:docstring>
94
132
        A dictionary of string identifiers mapped to a struct for each status, containing:
95
133
        <ul>
111
149
      </tp:possible-errors>
112
150
    </method>
113
151
    <signal name="PresenceUpdate">
114
 
      <arg name="presence" type="a{u(ua{sa{sv}})}">
 
152
      <arg name="presence" type="a{u(ua{sa{sv}})}" tp:type="Contact_Presences">
115
153
        <tp:docstring>
116
154
        A dictionary of contact handles mapped to a struct containing
117
155
        a UNIX timestamp of the last activity time (in UTC), and
174
212
      </tp:possible-errors>
175
213
    </method>
176
214
    <method name="SetLastActivityTime">
177
 
      <arg direction="in" name="time" type="u" tp:type="Timestamp">
 
215
      <arg direction="in" name="time" type="u" tp:type="Unix_Timestamp">
178
216
        <tp:docstring>
179
217
          A UNIX timestamp of the user's last activity time (in UTC)
180
218
        </tp:docstring>
194
232
      </tp:possible-errors>
195
233
    </method>
196
234
    <method name="SetStatus">
197
 
      <arg direction="in" name="statuses" type="a{sa{sv}}">
 
235
      <arg direction="in" name="statuses" type="a{sa{sv}}" tp:type="Multiple_Status_Map">
198
236
        <tp:docstring>
199
237
          A dictionary mapping status identifiers to dictionaries, which
200
238
          map optional parameter names to their variant-boxed values
307
345
          Hidden (invisible)
308
346
        </tp:docstring>
309
347
      </tp:enumvalue>
 
348
      <tp:enumvalue suffix="Busy" value="6">
 
349
        <tp:docstring>
 
350
          Busy, Do Not Disturb.
 
351
        </tp:docstring>
 
352
      </tp:enumvalue>
310
353
    </tp:enum>
311
354
  </interface>
312
355
</node>