[sugar] Collaboration in an activity

Morgan Collett morgan.collett at gmail.com
Wed Apr 30 15:02:56 EDT 2008


On Wed, Apr 30, 2008 at 6:55 PM, Urko Fernandez <tturktime at gmail.com> wrote:
> Hi,
>
>  Before I start coding any collaboration implementation for my activity,
>  I would like to know which approach is best for what I'm willing to do.
>  In my scenario, if a user joins an activity for the first time, she
>  downloads the file, which in my case is an SQLite database. Next time,
>  she would ask for new content to fill/merge her database, so I was
>  thinking about sending query results.
>  For sending files I've seen that stream tubes are used in Read activity,
>  and many examples use D-Bus tubes (Write, Web, Connect...) for sending
>  python objects. Can I send binary files using D-Bus tubes? Is it
>  possible to send any python object through dbus? I could send the
>  database in some more complex python data type.

Stream Tubes wrap a TCP socket connection between two participants.
This could be http, or any protocol of your choice. That's good for
transfering files to a particular participant.

D-Bus Tubes are more event driven, and signals go to all participants
in the shared activity session - so a way of updating everyone at once
with a small change.

You can certainly use both.

See http://dbus.freedesktop.org/doc/dbus-python/doc/tutorial.html#data-types
for how the types work in dbus-python (and hence D-Bus Tubes). You can
send binary data, and data structured in lists, tuples and dicts.

Feel free to ask more specific questions...

Regards
Morgan


More information about the Sugar mailing list