16

I use XChat for IRC. Some of the automatic channels I want to join require that I be identified with services. I have set xchat to autologin with nickserv when i start up, but sometimes there is a delay, it will try to join certain channels (and fail), before I am authenticated. Is there some way to tell xchat to delay trying to join some channels until after I am authenticated?

6 Answers 6

17

If we're talking about freenode (this may apply to others) you can authenticate at the same time as you connect. Just set the server password as your nick's password and you'll auto-login.

You can use nick-grouping and other various cleverness to auto-ghost your old user and take it back.

http://freenode.net/faq.shtml#identify

Or you can auth connecting with any nick by using a slightly more obtuse connect string:

/connect irc.freenode.net 6667 :<username> <password>

In xchat, this means you put :<username> <password> into the server password box.

4
  • 1
    Yes, I'm talking about FreeNode, and I have set the 'NickServ' password correctly, and I get this issue. I tried removing that, and putting my password in the 'server password' field, and that didn't identify me at all. Oct 12, 2010 at 16:11
  • 1
    the :<username> <password> trick worked for me on XChat package for Ubuntu 13.04
    – oblitum
    Sep 10, 2013 at 3:16
  • What's the difference between the NickServ password and server password fields? Sep 18, 2015 at 22:24
  • There is no difference.
    – Oli
    Sep 18, 2015 at 22:36
11

There is /set irc_join_delay $SECONDS. Default is 2.

Set it to 20 or any good number (determine it experimentally), and that should do the trick.

Stolen from http://forum.xchat.org/viewtopic.php?f=3&t=3966

4
  • 2
    That has never worked for me. I raised a bug here during the development stages of Maverick, but no word back yet. bugs.launchpad.net/ubuntu/+source/xchat/+bug/647633
    – ibuclaw
    Oct 12, 2010 at 9:00
  • Then I would say it is impossible. Let's hope the bug is resolved soon. I might take a look at it this weekend, see what I can hack up.
    – evgeny
    Oct 12, 2010 at 9:28
  • So as you can tell from the bug report, I tested it on Freenode and a few other networks. irc_join_delay seems to be functioning.
    – evgeny
    Oct 15, 2010 at 10:27
  • 1
    This solution works for me on Ubuntu 12.04LTS, xchat 2.8.8
    – memilanuk
    May 16, 2012 at 18:41
3

As mentioned on the freenode faq, there are two additional methods you can try. If you have a cloak on freenode, there is a script that will prevent you from joining channels until your cloak has been applied (which requires that you are identified). This method will only work if you have a cloak. The second and better method is to use SASL.

SASL is a method of identifying during your connection, before anything else happens

You can view instructions and access scripts to enable SASL here.

A script for XChat is available here in Python or Perl. To quote the README:

Copy cap_sasl_xchat.py or cap_sasl_xchat.pl to your .xchat/ directory, so that it auto-loads. Once loaded, use the /SASL command to add or remove SASL settings per network -- its help text describes the syntax.

2

put :<username> <password> in your ~/xchat2 file:

P=:nick password

after that the channels for autojoin.

set delay on 20

I changed the following line in ~/.xchat2/xchat.conf

irc_join_delay = 10

1

For X-Chat you'll want /server not /connect.

Using /connect will give this slightly confusing response; "* Permission Denied - You're not an IRC operator". This is because if X-Chat gets an unknown command it passes it through to the server.

0

Along with all these other great answers I'd recommend you put your nickserv password in the "Server Password" Field, instead of "Nickserv Password" this will cause you to identify to the server right away, instead of having some ident lag that has ya join, then quit to auth then rejoin. You don't notice that process but others can so it does happen...do that and you should notice a difference...

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .