# ANN: Butler 1.9 released

**URL:** <https://www.ruby-forum.com/t/ann-butler-1-9-released/124711>\
**Category:** Ruby\
**Created:** [January 1, 2008, 5:22pm UTC](https://www.ruby-forum.com/t/ann-butler-1-9-released/124711 "2008-01-01T17:22:34Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![apeiros](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/838e76/32.png) [@apeiros](https://www.ruby-forum.com/u/apeiros)\
**Post date:** [January 1, 2008, 5:22pm UTC](https://www.ruby-forum.com/t/ann-butler-1-9-released/124711/1 "2008-01-01T17:22:34Z")

</div>

Butler - the IRC bot with class - version 1.9 has just been released.  
Butler is an IRC bot written in Ruby. Features include a comfortable  
plugin API with some DSL support to enable quick writing of plugins,  
thorough localization support,  
an access framework that bases on deny-per-default with hierarchical  
privileges, user and roles. A configuration framework, user-sessions  
(users can be recognized as the same user even if they leave visible  
range of the bot), flood controls, automatic paging of answers.  
Butler also comes with an administration tool to create, start, stop,  
update and delete individual bots, view their logfiles and more.

The 1.9 series marks the beta series of butler2. There are still some  
known bugs, but as a whole the bot runs stable (my own instance ran 4  
months straight, with the exceptions of restarts after updates).  
Help with development is welcome, especially creating new plugins and  
testing.  
Also butler currently does not work on windows. If anybody is interested  
in porting butler to work on windows too, it would be much appreciated.

More information about butler can be found on its website[1] and project  
site[2], there’s also a quickstart guide[3] to get butler up and running  
within minutes. The first steps of a plugin writing tutorial is also  
online[4] and will be expanded within the next few days.

Butlers code is dual licensed under GPLv2 and the ruby license.

Have fun with it 🙂

Regards  
Stefan

[1] [http://butler.rubyforge.org](http://butler.rubyforge.org) - butlers website  
[2] [http://rubyforge.org/projects/butler](http://rubyforge.org/projects/butler) - the project site  
[3] [http://butler.rubyforge.org/manual/quickstart.html](http://butler.rubyforge.org/manual/quickstart.html) - quickstart  
guide  
[4] [http://butler.rubyforge.org/manual/tutorial/plugins/tutorial\_00.html](http://butler.rubyforge.org/manual/tutorial/plugins/tutorial_00.html)

- plugin tutorial

---

<div class="post-metadata">

**Author:** ![apeiros](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/838e76/32.png) [@apeiros](https://www.ruby-forum.com/u/apeiros)\
**Post date:** [January 1, 2008, 5:43pm UTC](https://www.ruby-forum.com/t/ann-butler-1-9-released/124711/2 "2008-01-01T17:43:59Z")

</div>

Oh and not to forget - if you use butler, don’t forget to visit us in  
#butler on [irc.freenode.org](http://irc.freenode.org).

Regards  
Stefan

---

<div class="post-metadata">

**Author:** ![apeiros](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/838e76/32.png) [@apeiros](https://www.ruby-forum.com/u/apeiros)\
**Post date:** [January 1, 2008, 5:46pm UTC](https://www.ruby-forum.com/t/ann-butler-1-9-released/124711/3 "2008-01-01T17:46:22Z")

</div>

Hi,

On 1-Jan-08, at 11:22 AM, Stefan R. wrote:

> Butler - the IRC bot with class - version 1.9 has just been released.  
> Butler is an IRC bot written in Ruby.

Being one of those who are mostly/completely/almost-wilfully ignorant  
of IRC related stuff, I had no idea what an IRC bot was.

For others like me, this will help:

[http://en.wikipedia.org/wiki/IRC\_bot](http://en.wikipedia.org/wiki/IRC_bot)

then, of course, this:

[http://en.wikipedia.org/wiki/Internet\_Relay\_Chat](http://en.wikipedia.org/wiki/Internet_Relay_Chat)

Anyway, after reading these these I can begin to appreciate what  
you’ve done. So…

Congratulations!

Sounds like a fun and useful project. What kind of things are you  
doing with it?

Cheers,  
Bob

* * *

Bob H. – tumblelog at  
[http://www.recursive.ca/so/](http://www.recursive.ca/so/)  
Recursive Design Inc. – weblog at  
[http://www.recursive.ca/hutch](http://www.recursive.ca/hutch)  
[http://www.recursive.ca/](http://www.recursive.ca/) – works on  
[http://www.raconteur.info/cms-for-static-content/home/](http://www.raconteur.info/cms-for-static-content/home/)

---

<div class="post-metadata">

**Author:** ![apeiros](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/838e76/32.png) [@apeiros](https://www.ruby-forum.com/u/apeiros)\
**Post date:** [January 1, 2008, 6:28pm UTC](https://www.ruby-forum.com/t/ann-butler-1-9-released/124711/4 "2008-01-01T18:28:44Z")

</div>

Bob H. wrote:

> Anyway, after reading these these I can begin to appreciate what  
> you’ve done. So…
> 
> Sounds like a fun and useful project. What kind of things are you  
> doing with it?
> 
> Cheers,  
> Bob

Hey, thanks for the links and the compliment! I completly forgot about  
including some information about IRC itself 🙂  
I originally wrote butler out of need for a bot with good  
multilingualization and a plugin API that didn’t require you to write  
basic functionality yourself.  
For the future I intend to use the bot as a support tool in IRC channels  
for my projects. Things like statistics, canned replies, announcements,  
FAQ & knowledge bases and whatever you can think of 🙂  
IRC itself is very nice as a direct support medium. You can discuss  
stuff without the delay mails and forums have (though of course they are  
useful too, especially if you can’t manage to be online at the same time  
with your talk partner or to reach a broader audience).

Regards  
Stefan

---

<div class="post-metadata">

**Author:** ![apeiros](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/838e76/32.png) [@apeiros](https://www.ruby-forum.com/u/apeiros)\
**Post date:** [January 1, 2008, 8:13pm UTC](https://www.ruby-forum.com/t/ann-butler-1-9-released/124711/5 "2008-01-01T20:13:25Z")

</div>

Bob H. wrote:

> IRC is circa 1988. My start in sofware is circa 1977. I live email and  
> usenet 🙂
> 
> Why do you prefer IRC over the various alternatives, and I’m thinking  
> of jabber/xmpp here? I see, from some quick googling, that there’s  
> plenty of partisanship. I understand what you are doing, and the  
> alternatives will say they can do the same thing. So I’m interested in  
> what _you_ think and why – you’ve actually invested in your decision  
> so, to me, that is more than enough to make your opinion interesting.
> 
> Cheers,  
> Bob

Mostly due to the way IRC is used. IRC is used more in multiway  
communications while Jabber and other IMs usually are used for 1:1  
discussions. Take #ruby-lang for example - roughly 400 people in there.  
I prefer IRC because it is more direct, more immediate. That doesn’t  
mean I use it exclusively. IRC, E-Mail and forums have each as said  
distinctive advantages.

Regards  
Stefan

---

<div class="post-metadata">

**Author:** ![apeiros](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/838e76/32.png) [@apeiros](https://www.ruby-forum.com/u/apeiros)\
**Post date:** [January 1, 2008, 7:33pm UTC](https://www.ruby-forum.com/t/ann-butler-1-9-released/124711/6 "2008-01-01T19:33:29Z")

</div>

On 1-Jan-08, at 12:28 PM, Stefan R. wrote:

> Hey, thanks for the links and the compliment! I completly forgot about  
> including some information about IRC itself 🙂  
> I originally wrote butler out of need for a bot with good  
> multilingualization and a plugin API that didn’t require you to write  
> basic functionality yourself.  
> For the future I intend to use the bot as a support tool in IRC  
> channels  
> for my projects. Things like statistics, canned replies,  
> announcements,  
> FAQ & knowledge bases and whatever you can think of 🙂

Okay, that’s obviously handy.

> IRC itself is very nice as a direct support medium. You can discuss  
> stuff without the delay mails and forums have (though of course they  
> are  
> useful too, especially if you can’t manage to be online at the same  
> time  
> with your talk partner or to reach a broader audience).

IRC is circa 1988. My start in sofware is circa 1977. I live email and  
usenet 🙂

Why do you prefer IRC over the various alternatives, and I’m thinking  
of jabber/xmpp here? I see, from some quick googling, that there’s  
plenty of partisanship. I understand what you are doing, and the  
alternatives will say they can do the same thing. So I’m interested in  
what _you_ think and why – you’ve actually invested in your decision  
so, to me, that is more than enough to make your opinion interesting.

Cheers,  
Bob

> ## Regards Stefan
> 
> Posted via [http://www.ruby-forum.com/](http://www.ruby-forum.com/).

* * *

Bob H. – tumblelog at  
[http://www.recursive.ca/so/](http://www.recursive.ca/so/)  
Recursive Design Inc. – weblog at  
[http://www.recursive.ca/hutch](http://www.recursive.ca/hutch)  
[http://www.recursive.ca/](http://www.recursive.ca/) – works on  
[http://www.raconteur.info/cms-for-static-content/home/](http://www.raconteur.info/cms-for-static-content/home/)

---

<div class="post-metadata">

**Author:** ![apeiros](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/838e76/32.png) [@apeiros](https://www.ruby-forum.com/u/apeiros)\
**Post date:** [January 1, 2008, 8:33pm UTC](https://www.ruby-forum.com/t/ann-butler-1-9-released/124711/7 "2008-01-01T20:33:15Z")

</div>

At my current project we have a Campfire bot. (Campfire ~= essentially  
IRC in a Web browser). He’s hooked into Cruise Control for continuous  
integration so he basically pops in every couple minutes with the  
latest commit message and an alert if the build borks.

He’s not really a bot, though, because he doesn’t do anything  
interactive. Initially I set him up as a bot just to test logging in,  
posting to the chat room, receiving input, etc. There’s an  
unbelievably easy gem called Tinder that does all the heavy lifting  
for you. His “hello world” was the ability to respond to the sentence  
“Surely you’re not serious” by saying “I am serious, and don’t call me  
Shirley.”

Chatbots are loads of fun. I once wrote a chatbot in Python to  
generate pornographic sentences and named her after a friend who  
seemed to have a mild form of Tourette’s. Then I IMed the actual human  
and introduced to her to the tourettebot and they got along really  
well.

One obvious use for a chatbot, if the chatroom’s organized around a  
Ruby project, is to hook it into ri. Similarly I have a feeling that  
if you were to write a chatbot which googled the Rails documentation  
it would be tremendously useful.

–  
Giles B.

Podcast: [http://hollywoodgrit.blogspot.com](http://hollywoodgrit.blogspot.com)  
Blog: [http://gilesbowkett.blogspot.com](http://gilesbowkett.blogspot.com)  
Portfolio: [http://www.gilesgoatboy.org](http://www.gilesgoatboy.org)  
Tumblelog: [http://giles.tumblr.com](http://giles.tumblr.com)
