descriptioni (je) ii (irc it), some modifications that je has done to ii(1).
homepage URLhttp://repo.or.cz/w/iii.git
ownerje@ne.regrette.rien
last changeSun, 27 Feb 2011 11:06:26 +0000 (27 12:06 +0100)
content tags
add:
readme

ii - IRC it or IRC improved

SYNOPSIS
     ii [-d directory] [-f realname] [-i prefix] [-k password] [-n nickname]
	[-p port] [-s servername]

DESCRIPTION
     ii is a minimalistic FIFO and file system based IRC client.  Upon
     connection, it creates an IRC directory prefix which contains the server
     directory that can be overridden by directory.  Beyond the path, inside
     the server directory, there are channel and nickname directories together
     with a FIFO file named "ii" and a regular one called "out".  These two
     latter files do also occur inside each channel and nickname directory,
     which themselves are created upon joining a channel or opening of a
     private conversation.

     The FIFO files "in" are used to communicate with the server, while the
     regular "out" files carry the server messages.  If the data sent to an
     "in" file is not an IRC command, in other words not starting with a slash
     "/", it will be interpreted as a regular message (PRIVMSG) which later
     pops up in the "out" file in the same directory level.

     The idea of this file system structure, is to be able to communicate with
     an IRC server using basic command line tools.  For example, if the
     desired action is to join a channel, the command echo /j #channel > in
     will do the trick no matter which "in" FIFO file it is addressed to, as
     long as the file is in use by the current instance of ii.	For more
     information about available commands, see further down in this section.

     The arguments are as follows, with the default value enclosed within
     brackets:

     -d directory
	     Overrides the servername part within the directory structure that
	     ii creates.

     -f realname
	     The real name that is to be associated with the nickname.

     -i prefix
	     The directory in which ii will create its server directory.
	     (irc)

     -k password
	     A password used to authenticate the nickname with the server. Be
	     aware of the problem that it will be visible in the process list.
	     If this is not a desired side-effect, then simply use a query to
	     submit the password.

     -n nickname
	     The used nickname during the IRC session.	This is of course also
	     possible to change in a later stage by querying the server using
	     the /n command.  (anonymous)

     -p port
	     The port that ii will connect to on the specific servername.
	     (6667)

     -s servername
	     The server to which ii will connect.  (irc.freenode.net)

     The commands that ii understands are as follows:

     /a [message]
	     Used in order to mark oneself as away.  The server will send the
	     message automatically in reply to a PRIVMSG directed at the user
	     (you).  If message is omitted, the away status is removed.

     /j #channel/nickname [message]/message
	     Join a channel or open a private conversation with another user
	     having the nick nickname.	If the purpose is to join a channel,
	     then the message is meaning the key that is needed in order to
	     join the password protected channel.  When opening a private
	     conversation, then the message (compulsory) is sent to the
	     nickname as a PRIVMSG.

     /l [comment]
	     Causes the user to leave the current channel with an optional
	     comment.  This must be sent to the "in" FIFO file located within
	     the channel directory.

     /n nickname
	     Change the nick to nickname.

     /t [#channel] [topic]
	     Change the topic of the specified channel, or the current one if
	     omitted, to topic.	 If topic is skipped, the server will report
	     what the current topic is to the "out" file which is in the
	     server directory.

FILES
     in	     The FIFO files "in" are used to communicate with the server.

     irc     Inside this directory is the server directory and within the last
	     one, there are channel and nickname directories together with a
	     FIFO file named "ii" and a regular one called "out".  These two
	     latter files do also occur inside each channel and nickname
	     directory, which themselves are created upon joining a channel or
	     opening of a private conversation.

	     It is possible to override irc by specifying the prefix argument.

     out     These files carry the server messages.

SEE ALSO
     echo(1), tail(1)

AUTHORS
     Copyright (C) 2005-2006 by Anselm R. Garbe <garbeam (at) gmail (dot) com>
     Copyright (C) 2005-2008 by Nico Golde <nico (at) ngolde (dot) de>

CAVEATS
     ii cannot tell whether a specific user exists when the /j command is used
     to open a private conversation.  This means that it always succeeds if
     the syntax is correct, even if nobody will receive the message.  However,
     the server will, in these cases, report when a specific user is not
     available, so a check in the "out" file, in the server directory, works
     as a solution to this problem.

wrapper - wraps ii(1) and allows execution on connect

SYNOPSIS
     wrapper [-i ii arg] [-s sh arg] -- host1 port1 [host2 port2 ...]

DESCRIPTION
     The wrapper utility randomly selects one pair of hosts and ports before
     it passes the pair as arguments to ii(1) using system(3).	Additional
     arguments can be given to ii(1) by specifying them in ii arg.  In case
     ii(1) exits, this procedure is done all over again.

     If sh arg is given, wrapper forks and then initializes ii(1).  The child
     process sleeps for 60 seconds (default) before passing sh arg to
     system(3).	 This is useful in order to, for example, authenticate with
     NickServ or rejoin IRC channels after a disconnection.

SEE ALSO
     ii(1), sh(1), fork(3), sleep(3), system(3)

HISTORY
     The development of wrapper began in the early 2011's with the first
     version released on January 9, 2011 via http://repo.or.cz/w/iii.git.

CAVEATS
     Notice that sh(1) meta-characters must be escaped in both ii arg and sh
     arg and that the -s and -p flags of ii(1) have no effect in ii arg.

     To prevent ii(1) from choosing different server directories as
     connections are made to various hosts, pass it the -d flag.  The argument
     of the flag will override this part of the file path.

The manpages are from commit eea70aa4dbdde201cf938937d0fe500b17beb410. For the latest ones, check the Git repository.

In order to contact Je, add your message to the file CONTACT in the Git repository on the mob branch which is writable by everyone.

shortlog
2011-02-27 jePrevent wrapper.c from flooding the IRC server.master
2011-02-26 jeRemove unneeded macro in ii.c.
2011-02-26 jeUpdate ii.in.1 to address the new feature.
2011-02-26 jeMake SSL support optional at compile time.
2011-02-26 jeIntroduce SSL support.
2011-02-26 jeCorrected the spelling of "mentioned" in ii.in.1.
2011-02-26 jeSome cleanup in the documentation of ii.
2011-02-26 jeCleaned up ii.c and updated SSLEEP in wrapper.in.1
2011-02-21 jeIncrease the default SSLEEP.
2011-02-21 jeSome more fixing in the command code.
2011-02-19 jeTuned the contact message
2011-02-19 jeCopyright waiving info in "new" or rewritten files
2011-02-19 jeUpdated the wrapper.in.1 CAVEATS section.
2011-02-19 jeAdded contact info to README-repo_or_cz.html.
2011-02-18 jeAdded README-repo_or_cz.html to the repository.
2011-02-16 jeFix formatting errors in ii.in.1.
...
tags
13 years ago 1.6
13 years ago 1.5
13 years ago 1.4
heads
13 years ago master
13 years ago mob