Quantcast
Channel: Ignite Realtime: Message List
Viewing all articles
Browse latest Browse all 11412

processMessage not called after updated to smack 4.0, possibly a bug?

$
0
0

Hi,

 

The processMessage of my MessageListener is no longer being called after I updated to asmack 4.0.

 

I looked at the constructor of the ChatManager and noticed that the packetListener is changed in smack 4.0.

 

Before 4.0 (0.8.10 to be specific), the code tries to get a Chat from the thread id obtained from the incoming message, and if it failed, it falls back to getUserChat, which will find the Chat correctly.

 

However, after updating to 4.0, the code tries to get a Chat from the thread id of the message (a message will always have a thread id because Chat.sendMessage will always assign one to before sending), and if it fails, it will create a new Chat instead of going to getUserChat. So my processMessage is not called because a new Chat is created to deliver the message.

 

So in order for the method processMessage to be called, both clients communicating with each other must have the same thread id. Is this a bug or intentional?

 

Thanks,

Ray


Viewing all articles
Browse latest Browse all 11412

Trending Articles