insobot internals: Anatomy of a Module

Alex Baines  — 2 months, 3 weeks ago
With the introduction of project lifecycles here on Handmade Network, I've set insobot to "complete", since I believe it has reached quite a stable state. Although "complete" implies an end, I definitely don't want to abandon insobot or this project page; I'll keep posting updates here if any new significant developments happen.

I also thought it could be nice to start a new series of blog posts talking about the technical details of the project, for when I'm in the mood to write but haven't made any changes. Maybe they could even prove useful to ...
Read More →


Over the last month or so, I've been working on two projects related to insobot, though the bot itself has not seen any significant changes.

It's no secret that the Handmade Network team is planning a chat system reunification after the great IRC/Discord split, and this comes in the form of a third system, Matrix, that can hopefully accommodate everyone. Instead of quoting xkcd 927, I took the opportunity to start the first of the two projects, Morpheus.

Morpheus was designed initially as a way for insobot to continue operations if/when the Matrix switch-over happens. It ...
Read More →


Last update I left off mentioning my intentions for improving the help system, and early last month that was implemented in the form of every command gaining a usage / description accessible via \help.

I also wrote a few user guides, the first of which explains the basics necessary for using the bot in your own channel as well as the help system.
The second explains the alias and PSA systems that are probably two of the more useful features available. At some point I'll probably write a few more guides for some of the remaining modules, I'm thinking ...
Read More →


Not a huge amount has changed since the last update, the main thing is probably that insobot now has a twitter account.

As I mentioned back then, I wanted to add some more parsing logic to the schedule-website-updating-via-twitter thing. While doing that I thought it would be nice if the bot acknowledged when it had found a schedule with a reply tweet, so that's now what it does. I'm using @ChronalDragon's ~twc for this, which made things a lot easier than if I were handling twitter's Oauth signature nightmare myself.

The parsing improvements mean it ...
Read More →


This is a quick-ish blog with a rundown of recent changes, and upcoming plans.

Last month, shortly after insobot joined HMN, Miblo made a request for poll functionality and mod_poll was created. It was quite rote, and so did not take long to get an initial version up and running.

The current version is mostly the same, but now saves polls locally across module reloads and has a private message confirmation for !vote. Hopefully it's useful; I was considering a web interface to it, but I think Strawpoll already handles that better than I could. They do have an ...
Read More →


insobot: it's official

Alex Baines  — 9 months, 2 weeks ago
If you've been in the handmade network IRC, or a Twitch channel of someone related to the network, then you may have had the pleasure (or indeed, misfortune) of coming into contact with an IRC bot known as insobot.

I started this project in October of 2015 after having watched Handmade Hero and interacting with the community surrounding that series. Initially, it was just a simple markov chain bot and nothing else - inspired totally by ChronalDragon's chronal_robot that was once present in his own Twitch channel.

Since then, insobot has been rewritten in C99 and rearchitected around shared ...
Read More →