[Telepathy] "Denying a contact" Bug in Empathy

Will Thompson will.thompson at collabora.co.uk
Fri Oct 22 04:20:03 PDT 2010


Hi Uday,

Sorry for the very belated reply, and for the lazy top-posting. This 
mail's been in my TODO queue for too long. :)

Your analysis of the problem is correct! The right fix here would be to 
add API to libpurple so that you can decline a subscription request with 
a message, rather than the Yahoo! prpl having to pop up a dialog to ask 
for a message. This API would also be useful on other protocols, like 
MSN, and it would allow Pidgin and other “normal” libpurple UIs to 
present much better UI.

No-one's working on this at the moment. I'd be happy to give pointers, 
and help shepherd the resulting patches into libpurple. :)

(I did start a Haze branch that made it always respond to 
purple_request_*() operations, picking a callback arbitrarily, but I 
wasn't really happy with it...)

On 13/10/10 11:53, udayjandhyala at gmail.com wrote:
> Greetings!
>
> *Problem statement :*
>
> If there is an incoming friendship request from a Yahoo ID, to our 
> Signed in Yahoo account on Empathy client,
> On 'Denying' the request, the alert disappears. However, if we logout 
> and login again, the request reappears.
>
> Has anyone else observed this issue ? If no, then am confused :)
>
>
> *My understanding :*
>
> In libpurple to deny an incoming friendship request, below procedure 
> has been observed :
>
> 1) Compilation of telepathy-haze needs to be done with the below option :
>    " --enable-leaky-request-stubs "
>
> This would set 'request ui ops' by calling the function 
> purple_request_set_ui_ops ( ), in telepathy-haze-0.3.4/src/main.c 
> within the function haze_ui_init ( )
>
>
> When the friendship request is denied :
>
> 2) A call is made to yahoo_buddy_add_deny_reason_cb which will trigger 
> UI to show an additional alert, so that user can enter his 'reason string'
>     for denying the friendship request
>
> 3) Currently, in Empathy, this alert never comes up, since it is not 
> communicated from 'telepathy-haze' to the Empathy client, through any 
> dbus call
>     (In Pidgin, this alert is being shown)
>
> 4) If somehow, we make sure (by a tweak), that a callback is called 
> for either 'Ok' or 'Cancel' (just like in the case of Pidgin),
>     then in the final callback, only 'DEBUG' print statements are placed.
>
> 5) There needs to be an additional call, to actually send a request to 
> Yahoo server, preparing a packet with appropriate yahoo protocol syntax
>     which looks something like this :
>
> In file telepathy-haze-0.3.4/src/request.c , in function 
> haze_request_input ( ) :
>
> <after the DEBUG statements, place the below line>
> ( (PurpleRequestInputCb) ok_cb) (user_data, "<Reason for denying, 
> given by User>");
>
>
> Doing the above, has solved the problem for me. Can anyone suggest if 
> there is a better way ? Or this bug fix is already
> underway for the next haze release ?
>
> Kindly do let me know, if there is any work around already in place, 
> for Empathy later releases. Am using Empathy 2.30.1.1, which is pretty 
> old,
> coming with Ubuntu Lucid
>
> Thanks in advance!
> Best wishes
> Uday Kiran
>
>
> _______________________________________________
> telepathy mailing list
> telepathy at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/telepathy
>    


-- 
Will

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/telepathy/attachments/20101022/23d6bf4c/attachment.html>


More information about the telepathy mailing list