Presence Service D-Bus API: Difference between revisions
Jump to navigation
Jump to search
(Remove Services and Channels, they are obsolete) |
|||
Line 51: | Line 51: | ||
** Gets the activity's ID |
** Gets the activity's ID |
||
** Returns: string representing the activity's ID |
** Returns: string representing the activity's ID |
||
* Join() -> nothing |
|||
** Joins the activity |
|||
** Returns: nothing, or an exception on error |
|||
* GetJoinedBuddies() -> ao |
* GetJoinedBuddies() -> ao |
||
** Gets all buddies who are currently participating in this activity |
** Gets all buddies who are currently participating in this activity |
Revision as of 17:34, 20 February 2007
This page is monitored by the OLPC team.
PresenceService DBus API
Revision 3 (post Collabora week)
There are 3 conceptual objects:
- PresenceService - manages and provides a query API for Activity and Buddy objects
- Activity - represents a shared space in which one or more buddies participate. Activities are globally unique.
- Buddy - represents another laptop somewhere on the network that you can communicate with
PresenceService Object
Service: org.laptop.Sugar.Presence
Interface: org.laptop.Sugar.Presence
Object Path: /org/laptop/Sugar/Presence
Signals
- ActivityAppeared (activity object path)
- ActivityDisappeared (activity object path)
- BuddyAppeared (buddy object path)
- BuddyDisappeared (buddy object path)
Methods
- GetActivities() -> ao
- Gets all activities the PS knows about
- Returns: array of activity object paths
- GetActivity(s: id) -> o
- Gets a specific activity object by the activity's ID
- Returns: activity object path
- GetBuddies() -> ao
- Gets all buddies the PS knows about
- Returns: array of buddy object paths
- GetBuddyByPublicKey(ay: key) -> o
- Gets a specific buddy, searching on the buddy's public key
- Returns: the buddy object path of the requested buddy
- GetOwner() -> o
- Gets the owner buddy object, which is always present
- Returns: the buddy object path of the owner
- ShareActivity(s: activity id, s: activity type, s: name, a{sv}: properties) -> o
- Shares an activity with others
- Returns: object path representing the new activity
Activity Object
Interface: org.laptop.Sugar.Presence.Activity
Object Path: /org/laptop/Sugar/Presence/Activities/
Signals
- BuddyJoined (buddy object path)
- BuddyLeft (buddy object path)
Methods
- GetId() -> s
- Gets the activity's ID
- Returns: string representing the activity's ID
- Join() -> nothing
- Joins the activity
- Returns: nothing, or an exception on error
- GetJoinedBuddies() -> ao
- Gets all buddies who are currently participating in this activity
- Returns: array of buddy object paths
< get telepathy channels >
Buddy Object
Interface: org.laptop.Sugar.Presence.Buddy
Object Path: /org/laptop/Sugar/Presence/Buddies/
Signals
Refered objects passed in signals are specific to this buddy only.
- IconChanged ()
- JoinedActivity (activity object path)
- LeftActivity (activity object path)
- PropertyChanged (list of property names)
Methods
- GetProperties() -> a{sv}
- Gets all the general properties of the buddy
- Returns: a dbus dict of buddy properties, like nickname, realname, IP address, whether or not this buddy is the laptop owner, etc
- GetIcon() -> ay
- Gets the buddy's icon data
- Returns: a character array containing the byte stream of the icon data
- GetJoinedActivities() -> ao
- Gets all activities in which this buddy is currently participating
- Returns: array of activity object paths