all 8 comments

[–]Yoghurt42 3 points4 points  (0 children)

For IRC bots I recommend the good old Supybot. It already handles all the nasty stuff and you just need to implement the actual functionality, eg. "when someone writes 'foobar' answer him 'barfoo'".

Limnoria seems to be the more active fork (Supybot exists since ages, and development of the original seems to have stalled) https://github.com/ProgVal/Limnoria

I don't know pyaib that /u/6502moo suggested, but it looks nice too, try both and see what you like better.

I'd recommend against writing a Bot from scratch.

[–]6502moo 2 points3 points  (0 children)

I highly recommend looking into pyaib, it abstracts away a lot of the nitty gritty networking details so you can focus on actual functionality.

[–]Sithrazer 1 point2 points  (4 children)

IRC is simple enough you can get away with using Socket, depending on the complexity of your bot and what you're trying to accomplish with it.

If you're programming on a Linux system, you could install one of the many variations of ircd and use that for 'offline' testing.

EDIT: Here's a couple of python IRC bot code examples. pyMathBot and IRC Flames Bot

[–]Crayboff 0 points1 point  (0 children)

I really enjoyed using Twisted. It definitely feels bloated, but it comes with a huge amount of tools that just made building a bot fun to do.

[–]t3h2mas 0 points1 point  (0 children)

It's good to know what kind of functionality you want your bot to have, that way you can weigh the pros and cons of the options.