Skip to main content

Chat bot that can look up ticket numbers on bugtrackers and return their names

Project description

Chiron

Chiron is a chatbot that listens for messages containing ticket numbers, looks up the ticket in an appropriate bugtracker, and responds with the ticket title and URL. Over time, the definition of "bugtracker" has broadened -- it includes actual bugtrackers like Debathena's, but also MIT class numbers and Bible verses.

It supports running as both a zephyrbot (MIT's chat system) and a Zulip bot.

CircleCI GitLab CI

Features

  • Supports "tickets" in more than two dozen different "bugtracker" instances --- see bugtrackers.txt for a list
  • Generic support for projects using
    • Trac
    • Jira
    • Github Issues
    • Bugzilla
  • Responds to both personal and class/stream messages
    • For personal messages, will reply-all when there are multiple recipients

Running

For Zulip support, install using the zulip extra, and then run ./main.py --protocol=zulip, which will use your ~/.zuliprc. Subscriptions are managed through the usual Zulip mechanisms.

For zephyr support, Chiron requires Evan Broder's python-zephyr -- requirements.zephyr.txt may be useful -- and must be run with tickets so that it can sub to incoming zephyrs. You may find k5start helpful for keeping current tickets available.

If you just run it with ./main.py, it will subscribe to zephyr personals only with some default bugtrackers.

Primary production deployment

Alex Dehnert runs the primary Chiron instance for zephyr, and is generally happy to add additional matchers, fetchers, or classes. To request changes, please file an issue (or pull request) on Github, zephyr him, or send mail to chiron@mit.edu.

He also runs instances on some private Zulip realms.

Private deployments

If you want to run your own private production Chiron instance, you can also do that. By default, main.py will only sub to personals. You can pass the --class option one or more times to tell it to sub to specific classes. Additionally, when run with the --default-classes option it will sub to a variety of default classes. Feel free to crib from main.py in setting up your own Chiron instance, or run it subbed only to personals. However, please ensure that if you run a Chiron instance that subs to non-personals, it listens on different classes and/or uses different matchers than the primary instance, so that users don't receive multiple replies to their zephyrs. (Using the --class option and not --default-classes is an easy way to accomplish this.)

Deploying on scripts

The setup used for running the production zephyr instance on scripts.mit.edu is in the deploy directory. It may be a decent reference for deploying your own copy of Chiron or other similar zephyrbots.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chiron-bot-adehnert-0.9.1.tar.gz (19.7 kB view details)

Uploaded Source

Built Distribution

chiron_bot_adehnert-0.9.1-py3-none-any.whl (21.8 kB view details)

Uploaded Python 3

File details

Details for the file chiron-bot-adehnert-0.9.1.tar.gz.

File metadata

  • Download URL: chiron-bot-adehnert-0.9.1.tar.gz
  • Upload date:
  • Size: 19.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for chiron-bot-adehnert-0.9.1.tar.gz
Algorithm Hash digest
SHA256 31485b982653cbde3a54a070f392b43cc990b9554d7f6b288a6d945befafd93f
MD5 5cf8a21676e4b3f72128408d649d8209
BLAKE2b-256 dc92ed782f22270e806b53e55b0d4fd330fa598783fb00f0442cfc6768f66f5d

See more details on using hashes here.

File details

Details for the file chiron_bot_adehnert-0.9.1-py3-none-any.whl.

File metadata

  • Download URL: chiron_bot_adehnert-0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 21.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

File hashes

Hashes for chiron_bot_adehnert-0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2a1ea616de8b523f3b774614ada4d2600978bee12f2da71fec02a13205558f0c
MD5 03c5fe8299cb234017f7e0f000b0b68b
BLAKE2b-256 ea4b1e7b6f52981f65940fd869ed7507b1facf1d704d7b68eccafb5db7b22138

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page