errbot #3

Supports: trusty
Add to new model

Description

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


juju-errbot

A reactive Juju charm layer used to build the errbot charm, which in turn can be used to deploy the errbot chat bot.

Getting started

sudo add-apt-repository ppa:juju/stable
sudo apt update
sudo apt install charm-tools
mkdir -p ~/charms/layers
cd !$
git clone https://github.com/1stvamp/juju-errbot.git
cd juju-errbot
charm build

Configuration

access_controls
(string) Python dict defining access controls for rooms, users and plugins/commands.
admins
(string) Comma separated list of bot admins.
alt_prefixes
(string) Comma separated list of alternative command prefixes to allow.
auto_install_plugin_deps
(boolean) If true, errbot will install plugin dependencies automatically.
backend
(string) The type of chat server errbot will connect with. Choose from: IRC, XMPP, Telgram, Hipchat, Slack, Text or Graphic.
IRC
chatroom_relay
(string) Python dict defining users whose output should be relayed to certain rooms, This can be useful with XMPP notifiers like for example the standard Altassian Jira which don't have native support for MUC.
chatrooms
(string) Comma separated list of room names to join.
compact_output
(boolean) If true table borders are not displayed in responses.
True
default_access_controls
(string) Python dict defining *default* access controls for commands/plugins. "{}" means allow all by default.
{}
divert_to_private
(string) Comma separated list of commands that should always be responded to in private, even if issued in multi-user chat.
enable_webserver
(boolean) Enable errbot's webserver, required for webhooks
True
fullname
(string) Full name for display in chatrooms, mostly important for Hipchat/XMPP which use it for connecting and joining rooms, if not set will default to nickname.
groupchat_nick_prefixed
(boolean) If true, responses in a multi-user chat can be directed at specific users.
True
hide_restricted_access
(boolean) If true, no error will be displayed if a user attempts a command they don't have access to.
hide_restricted_commands
(boolean) If true, commands restricted by access control will not show in help output.
hipchat_endpoint
(string) Optional Hipchat endpoint if using self-hosted Hipchat.
https://api.hipchat.com
hipchat_token
(string) API token for Hipchat if using group admin functions in plugins.
message_size_limit
(int) Optional message length, anything above will be broken up into smaller messages.
nagios_context
(string) Context for Nagios checks
errbot
nickname
(string) The bot's nickname.
errbot
nickserv_password
(string) Optional NickServ password, if using the IRC backend.
password
(string) Optional password to connect to the chat server with.
plugin_repos
(string) Python dict defining extra plugin repos to install.
{}
plugins_config
(string) Python dict defining plugin configuration.
{}
prefix
(string) Command prefix to use, e.g. if set to "!", !dosomething will run the dosomething command in a room or on private message to the bot.
!
prefix_optional_on_chat
(boolean) Whether to allow ommitting the prefix if talking in private chat.
True
reverse_chatroom_relay
(string) Python dict defining rooms to forward output to specific users. It can be useful if you client like gtalk doesn't support MUC correctly.
sentry_dsn
(string) A Sentry/Raven DSN to use for logging with getsentry.com or self-hosted Sentry.
server
(string) Server address/hostname to connect to the chat server with.
server_port
(int) Optional port number to connect to the chat server with.
server_tls
(boolean) If true, connect to the chat server with TLS/SSL.
True
suppress_cmd_not_found
(boolean) If true errbot will not display an error for unknown commands.
token
(string) Connection token for Slack and Telegram chat servers.
username
(string) Optional username to connect to the chat server with.
version
(string) errbot version to install