esibun / hitbox-irc-proxy

IRC proxy for Hitbox.tv
GNU General Public License v3.0
5 stars 1 forks source link

User List not working #4

Open esibun opened 8 years ago

esibun commented 8 years ago

Things that need to happen:

esibun commented 8 years ago

Should work something like this:

22:06 <-- srl PART #esibun :WeeChat 1.4
22:06 --> srl :esi!esi@circle.clicker PART #esibun :WeeChat 1.4
22:06 <-- srl JOIN #esibun
22:06 --> srl :esi!esi@circle.clicker JOIN :#esibun
22:06 --> srl :secret.speedrunslive.com 353 esi = #esibun :@esi
22:06 --> srl :secret.speedrunslive.com 366 esi #esibun :End of /NAMES list.
22:06 --> srl :ChanServ!services@speedrunslive.com MODE #esibun +ntrq esi
22:06 <-- srl MODE #esibun
22:06 --> srl :secret.speedrunslive.com 324 esi #esibun +ntr
22:06 --> srl :secret.speedrunslive.com 329 esi #esibun 1463018763
esibun commented 8 years ago

Basic idea for diff checker:

  1. get mode chars as in _calculateDelta for both lists
  2. create composite lists with list(set(a) + ...)
  3. calculate set difference between old/new composites
  4. remove those from both, send JOIN/PART
  5. calculate set difference between old/new individuals
  6. remove those from both, build mode string and send