Date: prev next · Thread: first prev next last
2012 Archives by date, by thread · List index


Hi Matúš,

On Saturday, 2012-07-14 19:49:29 +0200, Matúš Kukan wrote:

This may be a little longer because it's still not clear how the
telepathy framework should work.

If you have detailed questions I suggest you /join #telepathy on
freenode.

I've pushed 10 more patches, all because I wanted to do the last one -
inviting people into MUC.
What's new:
- Registering client handlers is executed with Listen button in
Collaborate dialog.
Then current document can accept new channel and receive files. (was
LIBO_TUBES=slave)

So the LIBO_TUBES variable isn't needed at all anymore, at least
I didn't find it referenced in the code anymore. That's good.

- ScDocFuncSend owns TeleConference (the channel) instead of
TeleManager and can directly communicate.
Thus each document can collaborate with different contact.

Sounds good.

- Inviting contacts is possible.
This seem to work. I also played with .service and .client files
mentioned in tubes/README.
And it works! I was able to invite a contact and after accepting in VM
in empathy, Channel Dispatcher has executed .../soffice --calc as told
in org.freedesktop.Telepathy.Client.LibreOffice.service.
I was thinking that it could run .../soffice --accept-tube, so we know
why Libreoffice is started and do something clever ;-)
But this needs more work and ideas as mentioned later below.

Do things work in any way now when the .client files are not installed?

Note: that by pressing Collaborate button we are now starting MUC
session. 'saveme' (sending a file) for example does not work then.
You can change that in contacts.cxx [3]. Maybe I should add another button but..
Also, what's not intuitive is that, when you select a contact and
press Collaborate, the account to which the contact belongs to is
connecting to liboroom@conference.jabber.org.
So not the contact you see in the dialog. Check in terminal.

We'll need the MUC be configurable and not hardwired anyway. And both,
1-to-1 and MUC collaboration, should be possible. So extending the
dialog for MUCs will be inevitable ;)

With the current setup it is impossible to run against a local jabberd
that is not connected to the outer world.. in fact I pulled the changes
and now can't test anything.

Btw, the contacts list when opened is not populated until the Listen
button is clicked once and the contacts dialog opened again.


What's wrong:
- TeleManager is never destroyed.
Because I don't know where.

I think ScDocFuncSend and/or ScDocFuncRecv could hold a pointer they
obtained from TubeContacts and call TeleManager::unref() when destroyed.
Make sure TubeContacts passes the pointer by calling TeleManager::get()
to increment the reference count and unrefs any instance it obtained via
get() itself.

And also where we want the code which is called after signaling from
tubes/ (when we receive a file or a new channel) ?
Or more importantly: what should happen ?
  - when someone wants to start a session with us, he sends us file
and then we can start collaborating on it ?

Yes. Though in practice it should be an invitation and the file sent
only if the receiver accepted.

    There is no other case when someone sends us file ?

Currently not. Maybe we could distinguish between a "send file" and
"send file for collaboration" later.

    I am not sure how to do this. Some class alive as the whole
./soffice is running could help.

But that did already work with the "saveme" hack, or do I lose track
here?

    But still, after receiving new channel [4], I need to accept it,
receive the file and then bind the channel to that file ?

Yes. But also that (except accepting) worked already, if I'm not
mistaken.

- Also unit test is broken

Hum.. why that? It didn't break here, or is it the slowcheck
subsequenttest?

Should I start working on side-bar widget we can dock ? Any hints?
But I think that we need to improve receiving channels and files,
handle TeleManager properly and everything related.

Please work on the channels and file receiving internals first, widget
eye candy can be added later.

Hope you can parse this, I am loosing myself,

Seemed to do ;-)

  Eike

-- 
LibreOffice Calc developer. Number formatter stricken i18n transpositionizer.
GnuPG key 0x293C05FD : 997A 4C60 CE41 0149 0DB3  9E96 2F1A D073 293C 05FD

Attachment: pgpV7TrZHlhUm.pgp
Description: PGP signature


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.