I am using sleekxmpp to connect to Google Talk. I am trying to track when contacts change their status using the changed_status event. The issue I am having is that as I log a status change, the function associated with the changed_status event seems to be called multiple times. Why might this be?
I am thinking it has something to do with the way that contact is logged into Google Talk, that is they may have it open multiple times from the same computer. So when they close their computer it affects both sessions, and each session triggers a changed_status event.
The answer is that you exposed a bug in SleekXMPP that I need to fix 🙂
The changed_status event was firing for any presence stanza received, and not firing only when a resource’s status or show value changed.
The bug fix is now in the develop branch and it will be in the soon-to-be RC3 release.