[Pidgin] #16777: Signal connects such as "receiving-im-msg" don't work when XMPP usernames don't match (hipchat direct messages specifically)

Pidgin trac at pidgin.im
Sun Oct 11 15:09:39 EDT 2015

#16777: Signal connects such as "receiving-im-msg" don't work when XMPP usernames
don't match (hipchat direct messages specifically)
 Reporter:  glajchs  |      Owner:  deryni
     Type:  defect   |     Status:  new
Milestone:           |  Component:  XMPP
  Version:  2.10.9   |   Keywords:  receiving-im-msg signals plugins
 I'm trying to extend a plugin to do some modifications on incoming and
 outgoing messages.  The protocol I'm using is XMPP, specifically for
 connecting with Hipchat type servers.

 The "receiving-chat-msg" Signal::connect() calls are working just fine,
 but when trying to add a "receiving-im-msg" call it doesn't work.  It does
 however work over the AIM protocol.

 I think it has something to do with the fact that my username in chat
 rooms is different than my username in IMs using Hipchat(XMPP), or maybe
 due to the fact that the UI handles for usernames are their full names in
 Hipchat, but the underlying userId is a string of numbers.

 I've attached a debug log to this ticket, as well as a very watered down
 version of the plugin file that has all the logic except for the log
 entries removed.

 For the debug session, I opened pidgin (auto-logged into AIM and Hipchat),
 then sent 3 messages.  One to a hipchat room (where the "receiving-chat-
 msg" API works), one to a hipchat direct message to myself (where the
 "receiving-im-msg" API does not work), and one to myself over AIM (where
 the "receiving-im-msg" API works).

 The name of the plugin is: {{{hipchat-helper-plugin}}}

 For the debug log, I've removed a whole bunch of entries about getting
 information about my buddy list, and replaced a few pieces of more private
 information as follows:

 * replaced my hipchat userId with {{{12345_123456}}}
 * replaced my hipchat roomId with {{{12345_room}}}
 * replaced my hipchat email with {{{myhipchat at email.com}}}
 * replaced my AIM screenname with {{{myaimscreenname}}}
 * replaced my full name with {{{First Last}}}

 I'm running Linux Mint 17 (based on Ubuntu 14.04), pidgin 2.10.9, perl

 I'll try updating to the latest pidgin/libpurple source at some point, but
 as I haven't found any bugs in the system for this, it's less likely that
 a newer version has a fix.

 Notice that when I'm in a hipchat room, my userId is:
 "12345_123456 at chat.hipchat.com/xmpp||proxy|pubproxy-c100.hipchat.com|5272"
 however when I direct message myself, my userId is:
 "12345_123456 at chat.hipchat.com"

Ticket URL: <https://developer.pidgin.im/ticket/16777>
Pidgin <https://pidgin.im>

More information about the Tracker mailing list