Module:ControlPanel

From BNC4FREE
Revision as of 13:57, 12 January 2021 by Russell (talk | contribs) (→‎CTCP Replies: Delete not List...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This module allows you to edit your user and network settings on the fly via IRC messages.

Usage

Arguments

This module takes no arguments

Commands

There are a large number of commands that can be used to manage your accounts and its networks of which are listed below. The list of commands can also be accessed using the following command:

   /msg *controlpanel help

The following variables are available for most commands:

Variable Description
$user This variable is replaced with the username of your account
$network This variable is replaced with the name of the network that you are currently attached to.
You can replace this with a specific network name if configuring other networks (not the currently attached one) within your account


Loading & Unloading Modules

To list the available modules that can be loaded on your account, the following command can be used:

   /msg *controlpanel ListMods

To list the available modules that can be loaded for individual networks on your account, the following command can be used:

   /msg *controlpanel ListNetMods

To load a module on your account, the following command can be used:

   /msg *controlpanel LoadModule $user <module name> [module arguments]

To load a module on a network that is on your account, use the following command:

   /msg *controlpanel LoadNetModule $user <module name> [module arguments]

The following commands can be used to unload account and network modules respectively:

   /msg *controlpanel UnloadModule $user <module name>
   /msg *controlpanel UnloadNetModule $user <module name>

Account Settings

To view an accounts current setting, the following command can be used:

  /msg *controlpanel Get <variable>

To set a new value for an account setting, the following command can be used:

  /msg *controlpanel Set <variable> <new value>

The account settings (variables) can be used with these commands:

Variable Type Description
MultiClients Bool If set to true, allows multiple clients to connect to your account.
If set to false, you will only be able to connect one client to your account
AutoClearChanBuffer Bool If set to true, the channel buffers will be cleared once they have been played back to your client
If set to false, the channel buffers will be kept and the full buffer will be played back every time your client connects
AutoClearQueryBuffer Bool If set to true, the query buffers (private messages) will be cleared once they have been played back to your client
If set to false, the query buffers (private messages) will be kept and the full buffer will be played back every time your client connects
AppendTimestamp Bool If set to true, a timestamp will be appended to each playback buffer message when it is played back
If set to false, no timestamp will be appended to playback buffer messages
The timestamp format and timezone can be set using the TimestampFormat and Timezone settings
PrependTimestamp Bool If set to true, a timestamp will be prepended to each playback buffer message when it is played back
If set to false, no timestamp will be prepended to playback buffer messages
The timestamp format and timezone can be set using the TimestampFormat and Timezone settings
ChanBufferSize Integer The maximum number of lines that can be kept in the channel buffer per channel (Maximum: 1000)
QueryBufferSize Integer The maximum number of lines that can be kept in the query buffer per private message from a user (Maximum: 1000)
JoinTries Integer The amount of times the bouncer will attempt to rejoin a channel if blocked by a ban or any other mode that restricts the user from joining
MaxJoins Integer The maximum number of channels the bouncer will try to join at once (including after a reconnect)
The recommended value for this is between 3 and 5 as higher values may trigger 'Excess Flood'
MaxQueryBuffers Integer The maximum number of query buffers (private messages) that can be stored (by default this is unlimited)
NoTrafficTimeout Integer How much time the bouncer waits (in seconds) until it receives something from network or declares a connection timeout.
The recommended value for this is 180 seconds. Other values may cause unexpected behavior and frequent disconnects from the network
Nick String The default primary nickname that your account will use when connecting to networks
This can be over-ridden per network by using network settings
AltNick String The default alternative nickname that your account will use if your primary nickname is not available
This can be over-ridden per network by using network settings
Ident String The default ident that your account will use when connecting to networks
This can be over-ridden per network by using network settings
RealName String The default realname that your account will use when connecting to networks
This can be over-ridden per network by using network settings
DefaultChanModes String The default channel modes that will be applied to empty channels when you join them
QuitMsg String The default quit message that will be shown when you disconnect the bouncer from IRC
This can be over-ridden per network by using network settings
Password String Changes the password for your account. See here for general password recommendations.
Timezone String The timezone for timestamps used in buffer playback messages (except for networks supporting the 'server-time' capability)
Example Values: Europe/Berlin, Europe/London, Australia/Brisbane, US/Eastern, Canada/Pacific, Asia/Tokyo
See the list of timezones for a full list of available timezones
TimestampFormat String The timestamp format for timestamps used in the buffer playback messages (except for networks supporting the 'server-time' capability)
Please see Timestamp Formats for a list of valid variables than can be used
StatusPrefix String The prefix for the status module and all other modules to be used. Changing this will change the way you query modules
Language String Changes the language used in some of the bouncers messages and the web interface. By default this is set to English
ClientEncoding String The Client encoding that will be used

Network Settings

To view the network settings for the network you are currently attached to, the following command can be used:

  /msg *controlpanel GetNetwork <variable>

To set a new value for an network you are currently attached to, the following command can be used:

  /msg *controlpanel SetNetwork <variable> <new value>

To view the network settings for another network on your account, the following command can be used:

  /msg *controlpanel GetNetwork <variable> $user <network name>

To set a new value for another network on your account, the following command can be used:

  /msg *controlpanel SetNetwork <variable> $user <network name> <new value>

The network settings (variables) can be used with these commands:

Variable Type Description
TrustAllCerts Bool Enable or Disable the validation of SSL certificates when connecting to a network.
Due to the amount of invalid/self-signed certificates on networks, it is recommended to keep this set to true
TrustPKI Bool Enable or Disable the validation of SSL certificates when connecting to a network.
Due to the amount of invalid/self-signed certificates on networks, it is recommended to keep this set to false
JoinDelay Integer The delay in seconds before channels are joined after the bouncer has reconnected to IRC
FloodBurst Integer The maximum amount of lines that the bouncer will send at once
The recommended value for this is 3 to 5. Other values may cause unexpected behaviour
FloodRate Integer The number of seconds each line from the bouncer will be sent after the FloodBurst limit has been hit
The recommended value for this is 1 to 3 seconds. Other values may cause unexpected behaviour
Nick String The default primary nickname that will be used when connecting to networks
AltNick String The default alternative nickname that will be used if your primary nickname is not available
Ident String The default ident that will be used when connecting to networks
RealName String The default realname that will be used when connecting to networks
Encoding String The network encoding that will be used
QuitMsg String The default quit message that will be shown when you disconnect the bouncer from IRC

Channel Settings

To view the channel settings for a given channel on a given network, the following command can be used:

  /msg *controlpanel GetChan <variable> $user <network name> <channel name>

To set a new value for a given channel on a given network, the following command can be used:

  /msg *controlpanel SetChan <variable> $user <network name> <channel name> <new value>

The channel settings (variables) can be used with these commands:

Variable Type Description
AutoClearChanBuffer Bool If set to true, the channel buffer this channel will automatically be cleared once it has been played back to the client
If set to false, the channel buffer for this channel will be kept and re-played each time the client reconnects
Detached Bool If set to true, the channel will be detached and not shown in the channel list to the client. It can be re-attached by using the join command
If set to false, the channel will be attached and shown in the channel list as normal
InConfig Bool If set to true, the channel will be saved to the bouncers config and you will be rejoined to the channel if you reconnect to the IRC network
If set to false, the channel will not be saved to the bouncers config and may be lost during bouncer restarts or when reconnected to the IRC network
BufferSize Integer The maximum number of buffer lines that will be kept for this specific channel (Maximum: 1000)
DefModes String The default modes that will be set on the channel when joined/rejoined if it is empty or you have the relevant channel permissions to do so
Key String The key for the channel (if the channel requires a keyword to join)

CTCP Replies

To list your CTCP replies, the following command can be used:

   /msg *controlpanel ListCTCPs

To add a CTCP reply, the following command can be used:

   /msg *controlpanel AddCTCP $user <ctcp> <reply>

To delete a CTCP reply, the following command can be used:

   /msg *controlpanel DelCTCP $user <ctcp>

Commonly used CTCP replies that are customisable with the above commands are as follows:

CTCP Reply Description
VERSION Normally sends a CTCP reply with the clients version
TIME Normally sends a CTCP reply with the clients current date and time
PING Normally sends a CTCP reply with the clients ping response time

Disconnect/Reconnecting to IRC

To reconnect to a specific IRC Network, the following command can be used:

   /msg *controlpanel Reconnect $me <network name>

To permanently disconnect from a specific IRC Network the following command can be used:

   /msg *controlpanel Disconnect $me <network name>

Both of the above commands can also me be used without specifying '$me' or a network name to disconnect from the currently attached network.