Project

General

Profile

FAQ » History » Version 22

David Demelier, 09/05/2019 01:59 PM

1 1 David Demelier
h1. FAQ
2
3
{{>toc}}
4
5
h2. Is SSL supported?
6
7 14 David Demelier
Yes.
8 1 David Demelier
9
h2. Why plugins are not loaded per server?
10
11 16 David Demelier
This is a good question.
12
13
I thought a lot about using plugin per server at first, this will add more flexibility about using different plugin configuration per server but will also be a huge pain to maintain for the user. Because a lot of people will use an only one irccd instance and server, I prefer to keep plugins globally and not per server basis.
14 1 David Demelier
15 22 David Demelier
This also means that by default, all plugins will be enabled on all servers and channels but it can be easily filtered with the irccd rule system.
16 20 David Demelier
17
Example:
18
19
<pre><code class="ini">
20
# Create a whitelist for plugin 'xyz'.
21
[rule]
22
plugins = xyz
23
action = drop
24
25
# Re-enable 'xyz' on desired channels.
26
[rule]
27
servers = "myserver"
28
channels = "#mychannel"
29
plugins = xyz
30
action = accept
31
</code></pre>
32
33 14 David Demelier
h2. Why JavaScript instead of (insert my favorite language here)?
34 1 David Demelier
35 14 David Demelier
Because JavaScript is a very light language easy to embed. The irccd implementation uses "duktape":http://duktape.org.
36 9 David Demelier
37
See also question below.
38 1 David Demelier
39
h2. Do you plan to add (my language)?
40
41 14 David Demelier
No, there are plenty of bots which support your language.
42 1 David Demelier
43
h2. Is it possible to combine commands like @!foo !bar@?
44
45 14 David Demelier
Absolutely no, and will never. The special "onCommand":http://projects.malikania.fr/irccd/api/event/onCommand.html event is dedicated to specific plugin.
46 2 David Demelier
47 14 David Demelier
Internally, when a user writes a message like @!stats hello@ (assuming that command char is '!'), then irccd will search for the plugin *stats* and pass the trailing text to the plugin command.
48 4 David Demelier
49 14 David Demelier
In that way, the plugins will never conflict on onCommand. This security is called plugin namespaces.
50
51 5 David Demelier
By the way, this does not make sense and I don't know many bot which support this “feature”.
52
53 7 David Demelier
h2. Is it possible to integrate plugin dependencies?
54
55 14 David Demelier
No, plugins should be independant.
56 7 David Demelier
57 15 David Demelier
There are no ways to require a plugin. However, you can still verify if a plugin is loaded via the "Irccd.Plugin.info":http://projects.malikania.fr/irccd/api/module/Irccd.Plugin/function/info.html function and eventually load it using "Irccd.Plugin.load":http://projects.malikania.fr/irccd/api/module/Irccd.Plugin/function/load.html.
58 7 David Demelier
59 12 David Demelier
h2. Does irccd support DCC?
60 10 David Demelier
61
Not at the moment.
62
63 11 David Demelier
h2. What if I use a specific encoding?
64
65
Irccd is encoding agnostic just as the IRC protocol. If the server send UTF-8 messages, then irccd will pass these UTF-8 encoded messages to the plugins.
66
67 13 David Demelier
h2. The bot does not connect to the Freenode server!
68
69
Be sure to set a different identity (with different nickname **and** username) because **irccd** is a registered nickname.
70
71 2 David Demelier
h2. What does irccd drink?
72
73 6 David Demelier
Irccd only drinks white beer and French cognac.