[weekly report] week 3: Music sharing in Banshee using Telepathy [banshee-soc]



Hi everyone!

Well, things are really cooking now. To review, my TODO for this week
was to get as much of the tubing (ability to send arbitrary data
between IM contacts) related stuff finished. I've decided to adapt an
idea I call a "dispatcher." I guess it is basically a wrapper around
the Telepathy Requests interface. The mechanism lets me request
"activities" (basically, a tube and Dbus connection wrapped into one
object) and also lets me know when there are incoming ones. I have
designed this dispatcher idea so it will easily extend to file
transfers (and possibly stream tubes, if needed in the future) as
well. So, the tube stuff is pretty much done.

Other notable things that happened this week:
* No updates to Telepathy bindings! That was nice, as last week the
Tube interface was undrafted and I had to update the bindings and test
that everything was still working. (Forgot to mention that in last
week's report).

* Workaround for MissionControl.AccountStatusChanged duplicate events.
I've implemented a really dirty hack to suppress duplicate events. I
don't know why Telepathy does this, but it does. I have been unable to
get an answer on IRC.

* Another annoyance I have is that attempting to register and use
objects on a NDesk.DBus.Connection object within the same application
process (ie. single instance of Banshee) blocks indefinitely when
accessing a method on an exported dbus object. So, when I am testing
tube stuff, I am now using my laptop and desktop computer for a
producer and a consumer. Slows me down a bit, but it works. :)

*  Now, the big one: I am able to send/receive a contact's music
library over a tube!! Yes, it is working. But, it's very rough at the
moment, however. Maybe I'll put together a screencast for next week's
report.

TODO for this week:
* improve the process that takes place when IM contacts exchange
library data. Namely, test more cases, do not block the UI, get tracks
displaying as they are downloading instead of when finished
downloading, etc.

So, stay tuned!

Neil


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]