A bot to help newcomers onboard OS projects! It's awesome!
Clone or download
Latest commit 1de93b6 Nov 10, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.ci ci: Add repository check to semaphore scripts Oct 17, 2018
.github .github: Add PR template Jun 1, 2017
.moban.dt Use gitignore and requirements templates Jun 21, 2018
answers answers/requirements.txt: Remove unused nltk Sep 20, 2018
docs docs/answers.rst: Add docs regarding answers Aug 25, 2017
err-backend-gitter @ 1edb492 err-backend-gitter: Bump up to latest commit Jun 6, 2018
plugins labhub.py: Add error message when nick is empty Nov 6, 2018
tests labhub.py: Add error message when nick is empty Nov 6, 2018
utils DefaultConfigMixin: Modify implementation Aug 12, 2018
.coafile .coafile: Add the PyUnusedCodeBear to the file Jul 18, 2018
.editorconfig .moban.yml: Add .editorconfig Nov 11, 2018
.gitignore .moban.yml: Add .editorconfig Nov 11, 2018
.gitmodules .gitmodules: Change the url to http May 21, 2017
.moban.yaml .moban.yml: Add .editorconfig Nov 11, 2018
.nocover.yaml setup.cfg: Use template Aug 9, 2018
.rultor.yml rultor.yml: Run check maintainership script Dec 3, 2017
.travis.yml .travis.yml: Install coala-bears master Aug 13, 2018
Dockerfile Deprecate COBOT_ROOT May 26, 2018
ISSUE_TEMPLATE.md ISSUE_TEMPLATE.md: Create with basic instructions May 2, 2018
LICENSE Initial commit May 9, 2017
README.md README.md: Update BOT_ADMINS description Oct 24, 2018
config.py config.py: Blacklist from-somewhere-else user Oct 26, 2018
requirements.txt requirements.txt: Use most recent IGitt version Oct 26, 2018
setup.cfg .moban.yml: Add .editorconfig Nov 11, 2018
test-requirements.txt .moban.yml: Add .editorconfig Nov 11, 2018
webservices.raml webservices.raml: Remove comment about merged todo Aug 19, 2018

README.md

corobo

Codecov branch Semaphore branch Gitter Room

About

corobo is a Python based chatbot that could be connected to many messaging platforms including Slack, HipChat, Telegram, IRC, XMPP, Tox, Campfire, Gitter, Skype. Check all the backends available here

This repository is mainly a collection of plugins that are written for errbot. Errbot is a Python based chatbot framework.

As described on Errbot website:

Errbot is a chatbot, a daemon that connects to your favorite chat service and brings your tools into the conversation.

It handles sending messages to correct rooms/person, receiving messages, calling your command routines on matching commands, etc. These command routines are added by writing plugins, which are collected and loaded by Errbot when it is ran.

Features

Read more about what corobo could do for you here.

Environment Variables

  1. BOT_ROOT - absolute path of the project root.
  2. BOT_PREFIX - prefix to use for issuing bot commands.
  3. BOT_ADMINS - Space separated list of admins of the errbot instance.
  4. ROOMS - Space separated list of rooms to join on startup. e.g. ROOMS="coala/coala coala/coala/corobo"
  5. BACKEND - Backend to use. Default is Text, or Gitter when BOT_TOKEN is set.
  6. BOT_TOKEN - Token used to connect to the backends - Mandatory for backends except Text.
  7. GH_TOKEN - GitHub personal access token to create issues, invite people to org, assign and unassign issues, etc. - Mandatory for LabHub to work for GitHub.
  8. GL_TOKEN - GitLab personal access token to create, assign, unassign issues, etc. - Mandatory for LabHub to work for GitLab.
  9. GH_ORG_NAME - Name of github organization - Mandatory for LabHub GitHub
  10. GL_ORG_NAME - Name of gitlab organization - Mandatory for LabHub GitLab
  11. WA_TOKEN - wolframalpha APP_ID to access wolfram API.
  12. IGNORE_USERNAMES - space separated list of usernames to ignore messages from.

Environment Variables for answers microservice

  1. ANSWER_END - Endpoint of answers microservice(in answers/ directory). It is exposed at port 8000.

Setup without docker

  1. Install the dependencies pip install -r requirements.txt
  2. Set environment variables mentioned above if required export COBOT_TOKEN=..., or edit config.py
  3. Run errbot

Setup with docker

  1. Grab the image docker pull meetmangukiya/corobo
  2. Run the image :D:
    docker run --rm -e COBOT_TOKEN="this-is-chatbot-token" \
                    -e COBOT_PREFIX="gitmate" \
                    -e BOT_ADMINS="sils meetmangukiya" \
                    -e BACKEND="Slack" \
                    -e GH_TOKEN="this-is-the-bots-github-token" \
                    -e GL_TOKEN="this-is-the-bots-gitlab-token" \
                    -e GH_ORG_NAME="gitmate" \
                    -e GL_ORG_NAME="gitmate" \
                    meetmangukiya/corobo
    

Under Brewing

There are a few plugins that may be coala specific. But we are working on making it more configurable and adaptable for other orgs.