FaqBot: An Open-Source Email Answering Tool from HackMIT

28 October 2018 ยท 2 mins

Open Source on GitHub

We at HackMIT get a lot of emails. It gets very overwhelming very quickly. We noticed that a lot of our emails were asking the same questions, and we were simply copying previous responses and editing a few words to answer most emails.

We tried a lot of email management tools, but all of them either required using a complicated user interface or required installing a chrome extension that slowed Gmail down even more.

And hence faqbot was born! We designed faqbot such that it can be used right from your favorite email client.

This is how faqbot works,

We also made sure faqbot is modular and hackable, making it easy for anyone to add features and modules and hook into the API. Here is an example module that simply counts the number of emails received with the @faqbot trigger.

class Stats(Feature):
    def triggered_callback(body, argv, reply_object):
        # Let's simply increment our counter.
        with Store(STORE) as s:
            s["num_emails"] += 1

We wrote a bunch of add-on modules that made our task at HackMIT much easier.

Smart Reply

This module downloads all past faqbot usages and trains a model to figure out an email to template mapping. If it's confident about its prediction, it will send an automatic email.

Visa Letters

HackMIT brings in participants from around the globe. This means we need to verify and give out official letters as a proof that they are accepted into HackMIT. We added a faqbot module that automatically generates Visa letters from a given template, filling in relevant details and sending a PDF,

Quill Integration

HackMIT uses our open-source Quill registration system. A lot of hackers email us saying that their college doesn't give them educational email addresses required for signing up on quill. In this case, we ask for their identification and then white-list their email on quill. Our quill faqbot module allows us to white-list someone right from the inbox!

Control Panel

faqbot provides a web-based control panel to quickly change settings and enable/disable modules.

We've used faqbot since HackMIT 2017 and used it 431 times for the last HackMIT. We hope that faqbot can take care of a big chunk of email management stress so you can focus on making your event great.

If you think your organization could use faqbot, head on over to our open-source repository and get started. If you end up using our software or have any questions or comments, feel free to let us know!

Shreyas Kapur's Blog