# IRC

Plugin destined to be used together with the Biboumi IRC gateway.

For more information about Biboumi, please see the official website.

This plugin is here as a non-default extension of the poezio configuration made to work with IRC rooms and logins. It also defines commands aimed at reducing the amount of effort needed to navigate smoothly between IRC and XMPP rooms.

## Configuration

Every feature of this plugin is centered around its configuration file, so you have to make sure it is filled properly.

### Global configuration

gateway

  Default: `irc.poez.io`

  The JID of the IRC gateway to use. If empty, irc.poez.io will be used. Please try to run your own, though, it’s painless to setup.

initial_connect

  Default: `true`

  Set to `true` if you want to join all the rooms and try to authenticate with nickserv when the plugin gets loaded. If it set to `false`, you will have to use the /irc_login command to authenticate, and the /irc_join command to join preconfigured rooms.

Note

There is no nickname option because the default from poezio will be used.

### Server-specific configuration

Write a configuration section for each server, with the server address as the section name, and the following options:

login_command

  Default: `[empty]`

  The command used to identify with the services (e.g. `IDENTIFY mypassword`).

login_nick

  Default: `[empty]`

  The nickname to whom the auth command will be sent.

nickname

  Default: `[empty]`

  Your nickname on this server. If empty, the default configuration will be used.

rooms [IRC plugin]

  Default: `[empty]`

  The list of rooms to join on this server (e.g. `#room1:#room2`).

Note

If no login_command or login_nick is set, the authentication phase won’t take place and you will join the rooms without authentication with nickserv or whatever.

### Commands

/irc_join

  Usage: `/irc_join <room or server>`

  Join the specified room on the same server as the current tab (can be a private conversation or a chatroom). If a server that appears in the conversation is specified instead of a room, the plugin will try to join all the rooms configured with autojoin on that server.

/irc_login

  Usage: `/irc_login [server1] [server2]…`

  Authenticate with the specified servers if they are correctly configured. If no servers are provided, the plugin will try them all. (You need to set login_nick and login_command as well)

/irc_query

  Usage: `/irc_query <nickname> [message]`

  Open a private conversation with the given nickname, on the same IRC server as the current tab (can be a private conversation or a chatroom). Doing /irc_query foo "hello there" when the current tab is #foo%irc.example.com@biboumi.example.com is equivalent to `/message foo%irc.example.com@biboumi.example.com "hello there"`

### Example configuration

    [irc]
    gateway = irc.poez.io

    [irc.freenode.net]
    nickname = mynick
    login_nick = nickserv
    login_command = identify mypassword
    rooms = #testroom1:#testroom2

    [irc.geeknode.org]
    nickname = anothernick
    login_nick = C
    login_command = nick identify mypassword
    rooms = #testvroum