williamkapke / irc-connect

Minimal IRC connection that simply emits event objects. Plugin modules can do the rest.
14 stars 5 forks source link

nick() method only works if you have a NickServ or similar services #6

Closed Spudz76 closed 10 years ago

Spudz76 commented 10 years ago

On a vanilla ircd (ircd-hybrid in my case) without any services, the built-in nick() method does not work properly, as nothing ever sends back any NOTICE event, and no password is required.

Motion to rename the "services compatible" method to identify() (since the responding event is 'identified') and change the nick() method to actually just do a normal NICK command without all the NickServ fluff.

I suppose a backward compatible mode could be forged if anyone passes more than one argument to the nick() method (old usage). But strongly prefer the above solution as it is more consistent logically.

Spudz76 commented 10 years ago

That commit is a backward-compatible style one. No usage changes other than you probably should use identify() instead if you need to. Will update docs, assuming this fix is accepted.

Spudz76 commented 10 years ago

Tested the "vanilla" join() operation, I don't have a services-enabled (infected?) server to bother testing the identify() on.

Spudz76 commented 10 years ago

PR applied, use .nick('ircHax0r') like normal for simple NICK command, or .identify('ircHax0r','lam3passwd') for the NickServ style. If you pass a password in to .nick() per the old docs, it works backwardly compatible, but don't do that.