When you send a message with Idle, as long as the recipient and message type are valid Sent will be emitted immediately. However, the message might not actually be sent by the time Sent is emitted; if it has been split into multiple parts for length reasons, it will never have all been sent by the time Sent is emitted. The signal emission should be delayed until the message is fully sent.
As per discussion on #tp: I was wrong that Sent should be delayed. (This is consistent with Gabble's new behaviour in group chats: it emits Sent just to signal that you called Send().) However, it should be emitted once per split part, not once for the whole message.
I have a potential fix for this in my 'sent-signal' branch: http://git.collabora.co.uk/?p=user/jonathon/telepathy-idle;a=shortlog;h=refs/heads/sent-signal
+1 from me.
Actually, I take that back: got event: - type dbus-signal - args: [1238578566L, 0L, u'PRIVMSG #idletest :one two three four five six seven eight nine ten eleven twelve thirteen fourteen fifteen sixteen seventeen eighteen nineteen twenty twenty-one twenty-two twenty-three twenty-four twenty-five twenty-six twenty-seven twenty-eight twenty-nine thirty thirty-one thirty-two thirty-three thirty-four thirty-five thirty-six thirty-seven thirty-eight thirty-nine forty forty-one forty-two forty-thr'] - interface: 'org.freedesktop.Telepathy.Channel.Type.Text' - path: '/Connection/idle/irc/test_40localhost0x24e9070/MucChannel1' - signal: 'Sent' handled It's emitting the 'PRIVMSG #idletest :' stuff in the Sent signal!
This was fixed in 0.1.4.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.