Creating Your Own Bot From Scratch

This document outlines the steps required to create your first bot with Rocket.Chat.

Steps to Create a Bot

1. Create a bot user

In order to talk to your chatbot, there must be a user account pre-configured on the Rocket.Chat server that the bot can use to log in.
To add user accounts you need to have admin privileges:
  • On the top bar, click the three dots (Options) and then click Administration
  • Select Users from the left sidebar
  • Click + (Add User) button in the right sidebar
  • In the profile window that appears, fill in the Name, Username, Email, and Password fields
  • Enable Verified toggle under the Email field
  • Disable Require password change toggle under the Password field
  • Select bot from the Add Role dropdown menu and click Add Role button to the right
  • Disable Join default channels and Send welcome email checkboxes
  • Click Save
Once saved, the bot's credential will be configured with the HAT_USER and ROCKETCHAT_PASSWORD environmental variables of your bot.
To avoid creating multiple accounts for bot emails, you can use a Gmail +address alias. For example: [email protected]. See this issue for more.

2. Code your bot

To make the process of coding a bot easier and faster, you may want to check our existing guides below to deploy a basic bot instance quickly. As an advanced alternative, you can create your bot from the scratch using your favorite framework.
Developing a Hubot can serve as a good entry point in learning chatbot principles.

3. Talk to your bot

If the bot is configured to listen to direct messages (RESPOND_TO_DM=true), and messages are prepended with BOT_NAME or a preconfigured BOT_ALIAS, the bot will usually respond to all messages addressed directly to the bot user (depending on the particular bot framework).