Mercurial > irccd
annotate doc/src/irccd.conf.md @ 607:bb9771fb5f44
Docs: rework documentation
- Change directories,
- Remove handwritten manual pages.
author | David Demelier <markand@malikania.fr> |
---|---|
date | Fri, 08 Dec 2017 20:11:22 +0100 |
parents | |
children | 168ea30142d9 |
rev | line source |
---|---|
607
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 % irccd.conf |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 % David Demelier |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 % 2017-12-08 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 Both `irccd` and `irccdctl` use configuration file in a extended [INI][ini] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 format. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 # General syntax |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 The file syntax has following rules: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 1. Each option is stored in a section, |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 2. Some sections may be redefined multiple times, |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 3. Empty option must have quotes (e.g. `option = ""`). |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 # The @include statement |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 Irccd adds an extension to this format by adding an `@include` keyword which |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 let you splitting your configuration file. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 Note: this `@include` statement must be at the beginning of the file and must be |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 surrounded by quotes if the file name has spaces. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 You can use both relative or absolute paths. If relative paths are used, they |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 are relative to the current file being parsed. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 ## Example |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
30 @include "rules.conf" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 @include "servers.conf" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 [mysection] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 myoption = "1" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 # The list construct |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 When requested, an option can have multiples values in a list. The syntax uses |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 parentheses and values are separated by commas. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 If the list have only one value, you can just use a simple string. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 ## Examples |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 [rule] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 servers = ( "server1", "server2" ) |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
52 [rule] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 servers = "only-one-server" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
55 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
56 Note: spaces are completely optional. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
57 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 Options that have a default value are optional and can be omitted. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
59 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
60 # Identifiers |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
61 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
62 Some sections require an identifier (specified as id) as parameter. They must be |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 unique, not empty and can only contain characters, numbers, '-' and '_'. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
65 Example: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
66 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
67 - abc |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
68 - server-tz2 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
69 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
70 # The general section |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
71 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
72 This section contains global options that are used in the whole irccd |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
73 application. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
74 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
75 The available options: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
76 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
77 - **uid**: (string or number) the user id to use (Optional, default: none), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
78 - **gid**: (string or number) the group id to use (Optional, default: none), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
79 - **foreground**: (bool) set to true to not daemonize |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
80 (Optional, default: false) |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
81 - **pidfile**: (string) path to a file where to store the irccd pid |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
82 (Optional, default: none). |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
83 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
84 **Warning:** these options are available only if the system supports them. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
85 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
86 ## Example |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
87 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
88 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
89 [general] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
90 pidfile = "/var/run/irccd/pid" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
91 uid = "nobody" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
92 gid = 1002 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
93 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
94 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
95 # The logs section |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
96 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
97 This section can let you configure how irccd should log the messages. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
98 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
99 The available options: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
100 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
101 - **verbose**: (bool) be verbose (Optional, default: false), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
102 - **type**: (string) which kind of logging, console, file or syslog |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
103 (Optional, default: console). |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
104 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
105 The options for **file** type: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
106 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
107 - **path-logs**: (string) path to the normal messages, |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
108 - **path-errors**: (string) path to the error messages. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
109 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
110 **Note:** syslog is not available on all platforms. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
111 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
112 ## Example |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
113 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
114 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
115 [logs] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
116 type = file |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
117 verbose = true |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
118 path-logs = "/var/log/irccd/log.txt" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
119 path-errors = "/var/log/irccd/errors.txt" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
120 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
121 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
122 # The format section |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
123 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
124 The format section let you change the irccd's output. It uses the templates |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
125 system. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
126 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
127 Only one keyword is defined, `message` which contains the message that irccd |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
128 wants to output. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
129 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
130 **Note:** colors and attributes are not supported. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
131 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
132 The available options: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
133 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
134 - **debug**: (string) template to use to format debug messages |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
135 (Optional, default: none), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
136 - **info**: (string) template to use to format information messages |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
137 (Optional, default: none), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
138 - **warning**: (string) template to use to format warnings |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
139 (Optional, default: none). |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
140 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
141 ## Example |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
142 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
143 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
144 [format] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
145 debug = "%H:%M debug: #{message}" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
146 info = "%H:%M info: #{message}" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
147 warning = "%H:%M warning: #{message}" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
148 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
149 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
150 # The identity section |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
151 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
152 This section is completely optional, if you don't provide one, irccd will use a |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
153 default identity with your system account name as nickname and username. If |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
154 irccd was unable to get your account name, it uses **irccd** as a fallback. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
155 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
156 This section is redefinable, you can create one or more. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
157 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
158 The available options: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
159 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
160 - **name**: (id) the identity unique id, |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
161 - **nickname**: (string) the nickname |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
162 (Optional, default: system username if available or irccd), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
163 - **realname**: (string) the realname |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
164 (Optional, default: IRC Client Daemon), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
165 - **username**: (string) the username name |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
166 (Optional, default: system username if available or irccd), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
167 - **ctcp-version**: (string) what version to respond to CTCP VERSION |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
168 (Optional, default: IRC Client Daemon). |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
169 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
170 ## Example |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
171 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
172 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
173 [identity] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
174 name = "default" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
175 nickname = "jean" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
176 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
177 [identity] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
178 name = "development" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
179 nickname = "unstable" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
180 username = "un" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
181 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
182 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
183 # The server section |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
184 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
185 This section is used to connect to one or more server. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
186 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
187 This section is redefinable, you can create one or more. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
188 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
189 The available options: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
190 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
191 - **name**: (id) the unique id, |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
192 - **host**: (string) the server address, |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
193 - **port**: (int) the server port (Optional, default: 6667), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
194 - **identity**: (string) an identity to use |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
195 (Optional, default: irccd's default), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
196 - **password**: (string) an optional password |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
197 (Optional, default: none), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
198 - **join-invite**: (bool) join channels upon invitation |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
199 (Optional, default: false), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
200 - **channels**: (list) list of channels to auto join |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
201 (Optional, default: empty), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
202 - **command-char**: (string) the prefix for invoking special commands |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
203 (Optional, default: !), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
204 - **ssl**: (bool) enable or disable SSL (Optional, default: false), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
205 - **ssl-verify**: (bool) verify the SSL certificates |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
206 (Optional, default: true), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
207 - **reconnect**: (bool) enable reconnection after failure |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
208 (Optional, default: true), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
209 - **reconnect-tries**: (int) number of tries before giving up. A value of |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
210 -1 means indefinitely (Optional, default: -1), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
211 - **reconnect-timeout**: (int) number of seconds to wait before retrying |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
212 (Optional, default: 30), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
213 - **ping-timeout** (int) number of seconds before ping timeout |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
214 (Optional, default: 300). |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
215 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
216 **Note:** if a channel requires a password, add it after a colon |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
217 (e.g. "#channel:password"). |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
218 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
219 ## Example |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
220 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
221 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
222 [server] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
223 name = "local" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
224 host = "localhost" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
225 port = 6667 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
226 channels = ( "#staff", "#club:secret" ) |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
227 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
228 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
229 # The paths section |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
230 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
231 The paths section defines common paths used as defaults for all plugins. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
232 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
233 Any option in this section can be defined altough the following are used as |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
234 common convention used in all plugins: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
235 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
236 - **cache**: (string) path for data files written by the plugin, |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
237 - **data**: (string) path for data files provided by the user, |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
238 - **config**: (string) path for additional configuration from the user. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
239 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
240 For each of these paths, **plugin/name** is appended with the appropriate |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
241 plugin name when loaded. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
242 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
243 The section is redefinable per plugin basis using the `[paths.<plugin>]` syntax. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
244 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
245 ## Example |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
246 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
247 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
248 # |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
249 # Common for all plugins. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
250 # |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
251 # Example with ask plugin: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
252 # |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
253 # cache -> /var/cache/irccd/plugin/ask |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
254 # config -> /usr/local/etc/irccd/plugin/ask |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
255 # data -> /var/data/irccd/plugin/ask |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
256 # |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
257 [paths] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
258 cache = "/var/cache/irccd" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
259 config = "/usr/local/etc/irccd" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
260 data = "/var/data/irccd" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
261 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
262 # |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
263 # Explicit override for plugin hangman. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
264 # |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
265 [paths.hangman] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
266 config = "/etc/hangman" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
267 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
268 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
269 # The plugins section |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
270 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
271 This section is used to load plugins. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
272 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
273 Just add any key you like to load a plugin. If the value is not specified, the |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
274 plugin is searched through the standard directories, otherwise, provide the full |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
275 path (including the .js extension). |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
276 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
277 **Warning:** remember to add an empty string for searching plugins. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
278 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
279 ## Example |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
280 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
281 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
282 [plugins] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
283 history = "" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
284 myplugin = /tmp/myplugin.js |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
285 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
286 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
287 The `history` plugin will be searched while `myplugin` will be load from |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
288 **/tmp/myplugin.js**. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
289 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
290 # The transport section |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
291 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
292 This section defines transports, you may use sockets to do a basic IPC system |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
293 within irccd. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
294 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
295 With transports, you can may ask `irccd` to send a message, a notice or even |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
296 kicking someone from a channel. Irccd will also notify all clients connected to |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
297 this transport on IRC events. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
298 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
299 There are two type of listeners availables: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
300 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
301 1. Internet sockets, IPv4 and IPv6, |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
302 2. Unix sockets, based on files (not available on Windows). |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
303 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
304 The available options: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
305 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
306 - **type**: (string) type of listener "ip" or "unix". |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
307 - **password**: (string) an authentication password (Optional, default: none). |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
308 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
309 The options for **ip** type: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
310 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
311 - **port**: (int) port number, |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
312 - **address**: (string) address to bind or "\*" for any |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
313 (Optional, default: \*), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
314 - **family**: (list) ipv6, ipv4. Both are accepted (Optional, default: ipv4), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
315 - **ssl**: (bool) enable SSL (Optional, default: false), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
316 - **key**: (string) path to private key file (Optional, default: none), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
317 - **certificate**: (string) path to certificate (Optional, default: none). |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
318 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
319 The options for **unix** type: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
320 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
321 - **path**: (string) the file path to the socket. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
322 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
323 ## Example of internet transports |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
324 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
325 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
326 [transport] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
327 type = "ip" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
328 address = "*" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
329 family = ( "ipv4", "ipv6" ) |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
330 port = 9999 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
331 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
332 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
333 This will let you controlling irccd on port 9999 with both IPv4 and IPv6 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
334 families. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
335 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
336 **Warning**: consider using internet sockets with care, especially if you are |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
337 running your bot on a server with multiple users. If your bot has |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
338 operator rights and you bind on any address, almost every users |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
339 can do a kick or a ban. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
340 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
341 ## Example of unix transports |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
342 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
343 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
344 [transport] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
345 type = "unix" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
346 path = "/tmp/irccd.sock" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
347 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
348 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
349 This will let you controlling irccd on path **/tmp/irccd.sock**, the file is |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
350 automatically deleted when irccd starts, but not when it stops. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
351 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
352 # The rule section |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
353 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
354 The rule section is one of the most powerful within irccd configuration. It let |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
355 you enable or disable plugins and IRC events for specific criterias. For |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
356 instance, you may want to disable a plugin only for a specific channel on a |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
357 specific server. And because rules are evaluated in the order they are defined, |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
358 you can override rules. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
359 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
360 The available options: |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
361 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
362 - **servers**, (list) a list of servers that will match the rule |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
363 (Optional, default: empty), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
364 - **channels**, (list) a list of channel (Optional, default: empty), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
365 - **plugins**, (list) which plugins (Optional, default: empty), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
366 - **events**, (list) which events (e.g onCommand, onMessage, ...) |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
367 (Optional, default: empty), |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
368 - **action**, (string) set to **accept** or **drop**. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
369 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
370 ## Basic rules example |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
371 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
372 This first rule disable the plugin reboot on **all** servers and channels. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
373 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
374 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
375 [rule] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
376 plugins = "reboot" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
377 action = drop |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
378 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
379 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
380 This rule enable the reboot plugin again on the server **localhost**, |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
381 channel **#staff**. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
382 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
383 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
384 [rule] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
385 servers = "localhost" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
386 channels = "#staff" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
387 plugins = "reboot" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
388 action = accept |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
389 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
390 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
391 # Full example of configuration file |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
392 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
393 ```ini |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
394 # Add a transport that bind only to IPv6. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
395 [transport] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
396 type = ip |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
397 family = ipv6 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
398 port = 12000 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
399 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
400 # A transport that binds to both IPv4 and IPv6. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
401 [transport] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
402 type = ip |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
403 family = ( ipv4, ipv6 ) |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
404 port = 15000 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
405 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
406 # Identity reused by many servers. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
407 [identity] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
408 name = "myIdentity" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
409 nickname = "superbot" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
410 realname = "SuperBot v1.0" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
411 username = "sp" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
412 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
413 # A server. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
414 [server] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
415 name = "foo" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
416 host = "irc.foo.org" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
417 port = "6667" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
418 identity = myIdentity |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
419 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
420 # An other server. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
421 [server] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
422 name = "wanadoo" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
423 host = "chat.wanadoo.fr" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
424 port = "6667" |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
425 identity = myIdentity |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
426 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
427 # Load some plugins. |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
428 [plugins] |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
429 ask = "" # Search ask |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
430 myplugin = /path/to/myplugin.js # Use absolute path |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
431 ``` |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
432 |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
433 [ini]: https://en.wikipedia.org/wiki/INI_file |
bb9771fb5f44
Docs: rework documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
434 |