Leon Atherton Leon is a developer at IDRsolutions and product manager for BuildVu. He oversees the BuildVu product strategy and roadmap in addition to spending lots of time writing code.

Making a Simple Basecamp Chatbot with NodeJS

1 min read

Creating a chatbot is a fun way to integrate external tool functionality within Basecamp. I recently created one to call the Bitbucket API, allowing us to configure branch permissions on repositories from within Basecamp.

I won’t go into detail about the Bitbucket side of things (it’s a bit of a niche use case!), but I will show you how easy it was to connect this up to Basecamp.

Prerequisites:

  • You need to be an administrator on your account to create a chatbot
  • For this guide you will need an understanding of NodeJS (the chat bot API itself is accessible from other languages too)

The Basecamp API documentation is on GitHub and there is also a page specifically for chatbots if you would like to build your own.

  1. Getting Started:

    To get started you need to create a chatbot within Basecamp. To do so, go to any campfire and add /integrations to the url.

    Basecamp Integrations Page

    Clicking Add a new chatbot will then take you to a page where you can give the chatbot a name, avatar, and (optional) https endpoint to send commands.

    Basecamp Chatbot Page

    Chatbots work both ways – you can have them automatically send messages to campfires (but not pings) such as when a critical service goes down, or you can make them interactive and have them answer to specific commands from a campfire or direct ping.

  2. The Code:

    Here is some example code that uses the standard https module. There is a little extra complexity with setting up an interactive chatbot as you are required to use an https endpoint (which means that you will need to configure SSL).
    The example below listens on port 8000, and responds to the command hello.

  3. Using the Chatbot:

    You can now call the chatbot using !name in a campfire, or by pinging the chatbot directly.

    Basecamp Chatbot Campfire
    Basecamp Chatbot Ping



Our software libraries allow you to

Convert PDF files to HTML
Use PDF Forms in a web browser
Convert PDF Documents to an image
Work with PDF Documents in Java
Read and write HEIC and other Image formats in Java
Leon Atherton Leon is a developer at IDRsolutions and product manager for BuildVu. He oversees the BuildVu product strategy and roadmap in addition to spending lots of time writing code.