Changes

no edit summary
Line 1: Line 1:  
Some notes follow about how we can replace the implementation of the signals and methods in the Presence Service by another that uses more fully the telepathy framework and is stateless.
 
Some notes follow about how we can replace the implementation of the signals and methods in the Presence Service by another that uses more fully the telepathy framework and is stateless.
 +
 +
== Interface org.laptop.Sugar.Presence ==
    
  @dbus.service.signal(PRESENCE_INTERFACE, signature="o")
 
  @dbus.service.signal(PRESENCE_INTERFACE, signature="o")
Line 117: Line 119:  
     pass
 
     pass
   −
* Used by:  
+
* Used by: shell to represent the buddy icon for the owner
   −
* Present:  
+
* Present: color, tags and nick are retrieved from GConf, the public key from the owner.key.pub file
    
* Future:  
 
* Future:  
Line 127: Line 129:  
     pass
 
     pass
   −
* Used by:  
+
* Used by: activities to interact with a connection manager
   −
* Present:  
+
* Present: returns the gabble CM if available or the salut one otherwise
    
* Future:  
 
* Future:  
Line 138: Line 140:  
  def ShareActivity(self, actid, atype, name, properties, async_cb,
 
  def ShareActivity(self, actid, atype, name, properties, async_cb,
 
                     async_err_cb, sender):
 
                     async_err_cb, sender):
 +
    pass
 +
 +
* Used by: activities to become shared publicly or privately
 +
 +
* Present: requests a room from the CM, then requests a text channel and tubes channel on this room
 +
 +
* Future:
 +
 +
@dbus.service.method(PRESENCE_INTERFACE, in_signature="as", out_signature="")
 +
def SyncFriends(self, keys):
 +
    pass
 +
 +
* Used by: shell every time that the local friends list changes
 +
 +
* Present: add local friends to the contact list in the server
 +
 +
* Future:
 +
 +
@dbus.service.method(PRESENCE_INTERFACE, in_signature="", out_signature="")
 +
def RestartServerConnection(self):
 +
    pass
 +
 +
* Used by: shell when the jabber server name is changed
 +
 +
* Present: disconnects the gabble CM and starts it again
 +
 +
* Future:
 +
 +
 +
== Interface org.laptop.Sugar.Presence.Buddy ==
 +
 +
@dbus.service.signal(_BUDDY_INTERFACE, signature="ay")
 +
def IconChanged(self, icon_data):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
@dbus.service.signal(_BUDDY_INTERFACE, signature="o")
 +
def JoinedActivity(self, activity_path):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
@dbus.service.signal(_BUDDY_INTERFACE, signature="o")
 +
def LeftActivity(self, activity_path):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
@dbus.service.signal(_BUDDY_INTERFACE, signature="a{sv}")
 +
def PropertyChanged(self, updated):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
@dbus.service.signal(_BUDDY_INTERFACE, signature='sou')
 +
def TelepathyHandleAdded(self, tp_conn_name, tp_conn_path, handle):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
@dbus.service.method(_BUDDY_INTERFACE, in_signature="", out_signature="ay")
 +
def GetIcon(self):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
@dbus.service.method(_BUDDY_INTERFACE, in_signature="", out_signature="ao")
 +
def GetJoinedActivities(self):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
@dbus.service.method(_BUDDY_INTERFACE, in_signature="", out_signature="a{sv}")
 +
def GetProperties(self):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
@dbus.service.method(_BUDDY_INTERFACE, in_signature='', out_signature='a(sou)')
 +
def GetTelepathyHandles(self):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
 +
== Interface org.laptop.Sugar.Presence.Activity ==
 +
 +
@dbus.service.signal(_ACTIVITY_INTERFACE, signature="o")
 +
def BuddyJoined(self, buddy_path):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
@dbus.service.signal(_ACTIVITY_INTERFACE, signature="ou")
 +
def BuddyHandleJoined(self, buddy_path, handle):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
@dbus.service.signal(_ACTIVITY_INTERFACE, signature="o")
 +
def BuddyLeft(self, buddy_path):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
@dbus.service.signal(_ACTIVITY_INTERFACE, signature="a{sv}")
 +
def PropertiesChanged(self, properties):
 +
    pass
 +
 +
* Used by:
 +
 +
* Present:
 +
 +
* Future:
 +
 +
@dbus.service.signal(_ACTIVITY_INTERFACE, signature="o")
 +
def NewChannel(self, channel_path):
 
     pass
 
     pass
   Line 146: Line 314:  
* Future:  
 
* Future:  
   −
  @dbus.service.method(PRESENCE_INTERFACE, in_signature="as", out_signature="")
+
  @dbus.service.method(_ACTIVITY_INTERFACE, in_signature="", out_signature="a{sv}")
  def SyncFriends(self, keys):
+
  def GetProperties(self):
 +
    pass
 +
 
 +
* Used by:
 +
 
 +
* Present:
 +
 
 +
* Future:
 +
 
 +
@dbus.service.method(_ACTIVITY_INTERFACE, in_signature="", out_signature="s")
 +
def GetId(self):
 +
    pass
 +
 
 +
* Used by:
 +
 
 +
* Present:
 +
 
 +
* Future:
 +
 
 +
@dbus.service.method(_ACTIVITY_INTERFACE, in_signature="", out_signature="s")
 +
def GetColor(self):
 +
    pass
 +
 
 +
* Used by:
 +
 
 +
* Present:
 +
 
 +
* Future:
 +
 
 +
@dbus.service.method(_ACTIVITY_INTERFACE, in_signature="", out_signature="s")
 +
def GetType(self):
 +
    pass
 +
 
 +
* Used by:
 +
 
 +
* Present:
 +
 
 +
* Future:
 +
 
 +
@dbus.service.method(_ACTIVITY_INTERFACE,
 +
                      in_signature='os', out_signature='',
 +
                      async_callbacks=('async_cb', 'async_err_cb'))
 +
def Invite(self, buddy_path, message, async_cb, async_err_cb):
 +
    pass
 +
 
 +
* Used by:
 +
 
 +
* Present:
 +
 
 +
* Future:
 +
 
 +
@dbus.service.method(_ACTIVITY_INTERFACE,
 +
                      in_signature="", out_signature="",
 +
                      async_callbacks=('async_cb', 'async_err_cb'),
 +
                      sender_keyword='sender')
 +
def Join(self, async_cb, async_err_cb, sender):
 +
    pass
 +
 
 +
* Used by:
 +
 
 +
* Present:
 +
 
 +
* Future:
 +
 
 +
@dbus.service.method(_ACTIVITY_INTERFACE,
 +
                      in_signature="", out_signature="",
 +
                      async_callbacks=('async_cb', 'async_err_cb'))
 +
def Leave(self, async_cb, async_err_cb):
 +
    pass
 +
 
 +
* Used by:
 +
 
 +
* Present:
 +
 
 +
* Future:
 +
 
 +
@dbus.service.method(_ACTIVITY_INTERFACE, in_signature="", out_signature="ao")
 +
def GetJoinedBuddies(self):
 +
    pass
 +
 
 +
* Used by:
 +
 
 +
* Present:
 +
 
 +
* Future:
 +
 
 +
@dbus.service.method(_ACTIVITY_INTERFACE, in_signature="", out_signature="soao")
 +
def GetChannels(self):
 +
    pass
 +
 
 +
* Used by:
 +
 
 +
* Present:
 +
 
 +
* Future:
 +
 
 +
@dbus.service.method(_ACTIVITY_INTERFACE, in_signature="", out_signature="soa(osuu)")
 +
def ListChannels(self):
 +
    pass
 +
 
 +
* Used by:
 +
 
 +
* Present:
 +
 
 +
* Future:
 +
 
 +
@dbus.service.method(_ACTIVITY_INTERFACE, in_signature='a{sv}', out_signature='')
 +
def SetProperties(self, new_props):
 
     pass
 
     pass
   Line 156: Line 431:  
* Future:  
 
* Future:  
   −
  @dbus.service.method(PRESENCE_INTERFACE, in_signature="", out_signature="")
+
  @dbus.service.method(_ACTIVITY_INTERFACE, in_signature="", out_signature="s")
  def RestartServerConnection(self):
+
  def GetName(self):
 
     pass
 
     pass
  
647

edits