Introducing The Master Bot - OnBots Redefined!
As we proceed with hubots coupled with tools to make our tasks easier in the form of chatting, we realised that there needs to be someone who should do the management activity for the other bots and voila! Say hello to the Master Bot
, the bot for managing all other bots. This bot is designed to let you manage all your other bots and gather consolidated information about them by just chatting with it. Sounds fun? Let us dig deep into how this works:
1)You will need the masterbot and the OnBots services running in your servers.
Your Masterbot and OnBots services should be running on the same server. This is because the Master needs to interact with the Kubernetes Environment for fetching data and doing management activities for the bots. If both are not in same machine, even if you have ports opened and allow connection between the servers, kubernetes will block the master from accessing it.
2) Connect it to slack, Hipchat or mattermost
3) Now you can interact with the bot through commands
Let us have a look at what are all the commands supported by our Master Bot:
Commands | Description |
---|---|
getDeployedBots | get list of all deployed bots |
getBots | get bot types available in onBots |
getConfig Template <botname> | get Json template for adding a particular type of bot |
addBot <json_fileid> | adds a bot with the given configuration in Json file |
getBotDetails <botname> | get configuration and other details for a bot |
getLogs <botname> | get deployment logs of the given bot |
getChatlog <botname> | get chat logs of the given bot |
stop <botname> | stop an active bot if it is running |
restart <botname> | restart the bot with the details stored in mongodb |
getHitmiss <botname> | get hit-miss ratio of conversations of the given bot |
getMetrics <botname> | get system metrices for the given bot |
editbot <botname> <json_fileid> | edit the bot configuration details in mongodb from the given json file |
tail <number_of_lines> <botname> | To get last <number_of_lines> of the logs of <botname> |
delete <botname> | delete the bot |
container status <botname> | give the container status in which the bot is deployed |
help | list all the commands the master can perform |
Now, the question is how do you get master to be deployed in your environment? :fearful: Fear not, here's your guide to get the master working in your server:
Bots that can be deployed using the masterbot: (Learn more about each of them by clicking on the bot name)
Every Bot has default Help command, which will explain users about what the bot can actually do by giving list of Commands and Actions. In case Bot does not understand user commands then bot can guide users with default replies.
0 Comments