Welcome to UnGarage’s documentation!
This is a guide on how I’m managing the irc bot UnGarage for la Quadrature du
Net (and many others that I’ve deployed
afterwards). My constrain are the modular, changing and original requests of a
strange mustache owner.
Therefor I was in need of a very flexible framework than can catch up with this
The result of this work make an heavy use of the UNIX principle of a collection
of small reusable tools. Because of this I can’t release a source code so I’m
releasing this documentation.
Using this method is:
- a very high flexibility, you’ll be able to modify, stop, restart and change
every part of it independently at any time
- it is language agnostic, program it in whatever you desire (but you’ll very
likely need at least a bit of shell script to glue everything together)
- make the problem of creating a multitasking IRC boot so simple and elegant
- very simple to use and maintained ... once you dig in it (I found this
easy but this isn’t the common way of approaching this kind of problem)
- might be a bit hard for other people to help you or understand your work for
the same reason than described in the previous point
- is annoying if you need to relaunch everything (eg: server reboot) but I
think I’m about to solve this problem (using supervisord) but I’m still experimenting
- can also help to solve other problem than building an irc (this is
basically a rediscovery of the Unix way of doing things to handle stream of
textual datas) and is also possible for xmpp by replace ii with jj
You can find the source of this documentation here (github), just send a pull request or open bugs there.
This doc is in the process of a rewriting, everything after this might
be a bit outdated (but still works)