Twitch does some funky things when it comes to the user list for chat.
You have to send "CAP REQ :twitch.tv/membership" to twitch's chat server's to get join/part events. Though, there's still issues with that.
1: The messages are sent in batches every 20 seconds or so resulting in not immediately getting the user list upon joining.
2: if a stream has more than 1000 users such messages are not sent.
With that said there is a project I've started to normalize twitch that can be found HERE