Command: deploy#
Summary#
Command | Default Level | Global Only? |
---|---|---|
deploy | 500 | yes |
Description#
- Deploys a new bot from IRC, with the given primary channel
- Configures eggdrop
- Configures Armour
- Starts eggdrop
- Creates automatic cronjob entry to check every 5 mins and restarts -- if
cfg(deploy:cron)
is enabled - Supports optional custom settings using deployment *.ini file syntax
- Uses settings from the current bot if no custom settings are specified
Usage#
- Sets the given channel name as the primary channel (
chan:def
) - Settings are optional. Unspecified settings will be obtained from the current bot.
- Any setting found in
deploy/*.ini
files can be utilised. - Any settings which have multi word values must be wraped in curly braces along with the setting.
Supported Settings
Available Settings#
The below deploy/*.ini
format settings can be specified with the deploy
command:
Setting | Description |
---|---|
botname | IRC nickname |
altnick | Alternative IRC nickname when primary is unavailable |
realname | IRC realname (gecos) |
prefix | The character used for public commands |
chan:report | Optional bot logging channel, showing command usage and diagnostics. Best to be an unregistered bot channel |
ban | Determines how Armour will set bans. Either chan (server) or X |
network | Name of the IRC network |
servers | Space delimited list of IRC servers to connect to |
net-type | Eggdrop setting containing the IRC network type. Can often be the same as the network value |
ircd | Type of ircd software. 1 (ircu: Undernet/Quakenet), 2 (IRCnet, EFnet) |
znc | Set 1 if connecting via a ZNC bouncer, or 0 if not. |
offset | Relative timezone offset from UTC |
listenport | Port to accept telnet and botnet connections on |
vhost4 | IPv4 address to bind to for outgoing IPv4 server connections |
vhost6 | IPv6 address to bind to for outgoing IPv6 server connections |
auth:user | Username for GNUWorld (X) authentication or nickname for NickServ |
auth:pass | Password for authentiation using auth:user |
auth:totp | Secret key for 2FA when authenticating with GNUWorld (X) |
auth:hide | Set 1 to hide hostname on ircu networks (via usermode +x ), or 0 if not |
auth:rand | Set 1 to set random nickname until authenticated with services, or 0 if not |
auth:wait | Set 1 to wait to join channels until authenticated with services and host is hidden, or 0 if not |
servicehost | The hostname of network service clients (e.g., undernet.org ) |
auth:mech | Mechanism for authentication. Specify gnuworld or nickserv |
auth:serv:nick | Nickname for authentiation service. e.g., X or NickServ |
auth:serv:host | Authentication service server address (e.g., channels.undernet.org ) |
register | Set 1 to allow users to self-register their own bot users with register command, or 0 if not |
register:inchan | If register is enabled, this setting can contain space delimited channels the user msut be in before register can work. Leaving this empty allows all clients to register if register is set. |
portscan | Set 1 to enable the port scanner, or 0 if not |
oidentd | Set 1 to have eggdrop utilise oidentd configuration, or 0 if not |
username | Username (ident) for eggdrop to use, if oidentd not enabled |
Examples#
Deploy testBot
with existing settings:
Empus | y deploy testBot #armour
@yolk | done! new bot testBot running (PID: 5000) -- initialise via: /msg testBot hello
Deploy testBot2
with multiple custom setting overrides:
Empus | y deploy testBot2 #test prefix=t username=bot
@yolk | done! new bot testBot2 running (PID: 5002) -- initialise via: /msg testBot2 hello
Deploy testBot3
with more custom setting overrides, including multi word value:
Empus | y deploy testBot3 #test prefix=t {realname=I am a bot!} vhost6=2607:f8b0:4007:818::2004 servers=irc6.undernet.org
@yolk | done! new bot testBot3 running (PID: 5003) -- initialise via: /msg testBot3 hello
Initialisation#
Once the newly deployed bot is online, you must initialise it by adding yourself to eggdrop and Armour:
Step 1#
Add self to eggdrop via: /msg testBot hello
-- | Msg(Empus) -> testbot: hello
-- | testBot (armour@172.16.164.1): Hi Empus! I'm testBot, an eggdrop bot.
-- | testBot (armour@172.16.164.1): I'll recognize you by hostmask '*!*empus@172.16.164.*' from now on.
-- | testBot (armour@172.16.164.1): YOU ARE THE OWNER ON THIS BOT NOW
-- | testBot (armour@172.16.164.1): As master you really need to set a password: with /MSG testBot pass <your-chosen-password>.
-- | testBot (armour@172.16.164.1): All major commands are used from DCC chat. From now on, you don't need to use the -m option when starting the bot. Enjoy !!!
Step 2#
Set password via: /msg testBot pass <password>
-- | Msg(Empus) -> testbot: pass myP@ssw0d!
-- | testBot (armour@172.16.164.1): Success! Armour has been loaded. You must now create yourself in the Armour database.
-- | testBot (armour@172.16.164.1): /msg testBot inituser <user> [account]
-- | testBot (armour@172.16.164.1): ... where <user> is your desired bot username (e.g., Empus), and [account] is your network username for autologin.
-- | testBot (armour@172.16.164.1): Password set to: 'myP@ssw0d!'.
Step 3#
Add self to Armour via /msg testBot inituser <user> [account]
-- | Msg(Empus) -> testbot: inituser Empus Empus
-- | testBot (armour@172.16.164.1): newuser created! please login: /msg testBot login Empus myP@ssw0d!
--> | testBot (armour@172.16.164.1): has joined #armour
Step 4#
Login and prove Armour load via: /msg testBot login <user> <password>
-- | Msg(Empus) -> testbot: login empus myP@ssw0d!
-- | testBot (armour@172.16.164.1): login successful. 0 unread notes.
@Empus | t say hello
testBot | hello
Related Commands#
Command | Description |
---|---|
cmds | List commands available to user |
die | Kill the bot process |
help | View the help for a given command |
jump | Reconnect or change connected server |
rehash | Reload script and plugins |
status | Displays bot status including connection info |
update | Check and optionally install script updates |