I wanted to send some text and a link to Alex and Martin (inside the office). I opened a chat with one of both then invited the other and I typed. All of us ended up having the same I said like 3 or 4 times. They always arrive with the same timestamp. We tried a similar thing, and the same happened. Reproducible: Always Steps to Reproduce: 1. make 2 friends 2. open a chat with one of them 3. invite the other 4. say something 5. see what you said many times 6. wait for others to get it many times as well
I want a ktp-debbuger log of MC from every contact involved. Then I want it again with a group chat that works (one person using gmail web interface seems to do it) We can do this tomorrow if you're free.
Re-reading the documentation I have a mistake in the group channel request: if (m_channel->canInviteContacts()) { m_channel->inviteContacts(QList<Tp::ContactPtr>() << contact); } else { QList<Tp::ContactPtr> contacts; contacts << contact; contacts << m_channel->groupContacts(false).toList(); m_account->createConferenceTextChat(QList<Tp::ChannelPtr>() << m_channel, contacts); } the contacts << m_channel->groupContacts(false).toList(); is wrong, the second parameter is only additional contacts who should be invited so this line is not needed. Will need help testing.
How can I help, my friend?
Unsurprisingly my comment #2 did not magically fix everything. This is the ktp-debugger MC log from the new channel requst. Fri Mar 22 2013 ----------------------------- 22/03/13 14:59:32.173233 - [mcd] dispatcher_channel_request_acl_start: start /org/freedesktop/Telepathy/Account/gabble/jabber/david_40davidedmundson_2eco_2euk0.org.freedesktop.Telepathy.Connection.Interface.Requests.CreateChannel acl (0x1dc8f40) 22/03/13 14:59:32.173302 - [mcd] dispatcher_channel_request_acl_success: complete acl (0x1dc8f40) 22/03/13 14:59:32.173391 - [mcd] _mcd_request_init: 0x2059220 22/03/13 14:59:32.174484 - [mcd] _mcd_request_new: 0x2059220 (for 0x1d55780) 22/03/13 14:59:32.174567 - [mcd] _mcd_channel_set_status: 0x1dbcf60, 1 22/03/13 14:59:32.174699 - [mcd] _mcd_request_predict_handler: No known handler for request /org/freedesktop/Telepathy/ChannelDispatcher/Request31 22/03/13 14:59:32.174753 - [mcd] dispatcher_channel_request_acl_cleanup: cleanup acl (0x1dc8f40) 22/03/13 14:59:32.184629 - [mcd] ready_to_request_cb: Starting online request 22/03/13 14:59:32.184700 - [mcd] _mcd_account_online_request: connection status for gabble/jabber/david_40davidedmundson_2eco_2euk0 is 0 22/03/13 14:59:32.184741 - [mcd] _mcd_account_online_request: gabble/jabber/david_40davidedmundson_2eco_2euk0 is already connected 22/03/13 14:59:32.184781 - [mcd] online_request_cb: called 22/03/13 14:59:32.184829 - [mcd] _mcd_mission_set_parent: child = 0x1dbcf60, parent = 0x20476c0 22/03/13 14:59:32.184966 - [mcd] _mcd_channel_set_status: 0x1dbcf60, 2 22/03/13 14:59:32.456676 - [mcd] common_request_channel_cb: got error: room is full 22/03/13 14:59:32.456733 - [mcd] _mcd_channel_set_status: 0x1dbcf60, 6 22/03/13 14:59:32.456782 - [mcd] _mcd_request_set_failure: Request failed: tp_errors 8: room is full 22/03/13 14:59:32.456909 - [mcd] mcd_channel_abort: 0x1dbcf60 22/03/13 14:59:32.456954 - [mcd] _mcd_channel_set_status: 0x1dbcf60, 7 22/03/13 14:59:32.457003 - [mcd] _mcd_mission_set_parent: child = 0x1dbcf60, parent = (nil) 22/03/13 14:59:32.457050 - [mcd] _mcd_operation_remove_mission: removing mission: 0x1dbcf60 22/03/13 14:59:32.457092 - [mcd] _mcd_channel_dispose: 0x1dbcf60 (is disposed = 0) 22/03/13 14:59:32.457146 - [mcd] _mcd_mission_dispose: mission disposed 0x1dbcf60 22/03/13 14:59:32.457192 - [mcd] _mcd_request_dispose: 0x2059220 22/03/13 14:59:32.457237 - [mcd] _mcd_request_finalize: 0x2059220 22/03/13 14:59:32.457283 - [mcd] _mcd_mission_finalize: mission finalized 0x1dbcf60 22/03/13 14:59:32.456888 - [mcd] Channel request /org/freedesktop/Telepathy/ChannelDispatcher/Request31 failed, error: room is full
I know what's wrong! My createChannel request: @o "/org/freedesktop/Telepathy/Account/gabble/jabber/david_40davidedmundson_2eco_2euk0" @a{sv} {"org.freedesktop.Telepathy.Channel.ChannelType": <@s "org.freedesktop.Telepathy.Channel.Type.Text">, "org.freedesktop.Telepathy.Channel.Interface.Conference.InitialChannels": <@ao ["/org/freedesktop/Telepathy/Connection/gabble/jabber/david_40davidedmundson_2eco_2euk_2fkde_2dtelepathy/ImChannel11"]>, "org.freedesktop.Telepathy.Channel.Interface.Conference.InitialInviteeHandles": <@au [18]>} @x 1363965518 @s "" Gabble then sends in HandleOwnersChangedDetailed @a{uu} {409: 1} @au [] @a{us} {1: "david@davidedmundson.co.uk", 409: "private-chat-54fe6ab2-279e-4873-afa7-51a1300bb11c@conference.jabber.org/David Edmundson"} summary: I'm creating a chat room on conference.jabber.org We know gmail accounts don't work in conference.jabber.org and return with room is full. This is why it works when a GMail web interface user creates the group chat. TODO: Get a bustle-dbus-monitor log from Empathy starting a group chat.
Or we simply override the "fallback conference server" in GTalk profiles
Git commit a3a8da73ecdcf2e4e45cef00132bb9b637c8cc46 by David Edmundson. Committed on 24/03/2013 at 00:55. Pushed by davidedmundson into branch 'master'. Fix address of conference server for Google group chats M +1 -1 data/profiles/google-talk.profile http://commits.kde.org/telepathy-accounts-kcm/a3a8da73ecdcf2e4e45cef00132bb9b637c8cc46