File: index.rst

package info (click to toggle)
errbot 6.2.0%2Bds-7
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 3,856 kB
  • sloc: python: 11,572; makefile: 163; sh: 97
file content (132 lines) | stat: -rw-r--r-- 3,473 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
Errbot
======

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

The goal of the project is to make it easy for you to write your own plugins so you
can make it do whatever you want: a deployment, retrieving some information online,
trigger a tool via an API, troll a co-worker,...

Errbot is being used in a lot of different contexts: chatops (tools for devops), chatroom engagement,
home security, socials platform (such as Slack, Discord, IRC), etc.

Screenshots
-----------

.. image:: _static/screenshots/thumb_slack.png
   :target: _static/screenshots/slack.png
   :alt: Showing output of the built-in help command in Slack

.. image:: _static/screenshots/thumb_telegram.png
   :target: _static/screenshots/telegram.png
   :alt: Errbot running on Telegram showing the !help command

Simple to build upon
--------------------

Extending Errbot and adding your own commands can be done by creating a plugin, which
is simply a class derived from :class:`~errbot.botplugin.BotPlugin`.
The docstrings will be automatically reused by the :ref:`\!help <builtin_help_function>`
command::

    from errbot import BotPlugin, botcmd

    class HelloWorld(BotPlugin):
        """Example 'Hello, world!' plugin for Errbot."""

        @botcmd
        def hello(self, msg, args):
            """Say hello to the world."""
            return "Hello, world!"

Once you said "!hello" in your chatroom, the bot will answer "Hello, world!".

Batteries included
------------------

We aim to give you all the tools you need to build a customized bot safely, without
having to worry about basic functionality. As such, Errbot comes with a wealth of
features out of the box.

.. toctree::
  :maxdepth: 2

  features


Sharing
-------

One of the main goals of Errbot is to make it easy to share your plugin with others as well.

Errbot features a built-in *repositories command* (`!repos`) which can be used to
install, uninstall and update plugins made available by the community. Making your
plugin available through this command only requires you to publish it as a publicly
available Git repository.

You may also discover plugins from the community on our `plugin list`_ that we update from plugins found on github.


Community
---------

You can interact directly with the community online from the "Open Chat"
button at the bottom of this page. Don't be shy and feel free to ask any question
there, we are more than happy to help you.

If you think you hit a bug or the documentation is not clear enough,
you can `open an issue`_ or even better, open a pull request.


User guide
----------

.. toctree::
  :maxdepth: 2

  user_guide/setup
  user_guide/administration
  user_guide/plugin_development/index
  user_guide/flow_development/index
  user_guide/backend_development/index
  user_guide/storage_development/index
  user_guide/sentry


Getting involved
----------------

.. toctree::
  :maxdepth: 3

  contributing


API documentation
-----------------

.. toctree::
  :maxdepth: 3

  errbot


Release history
---------------

.. toctree::
  :maxdepth: 2

  changes


License
-------

Errbot is free software, available under the GPL-3 license. Please refer to the
:download:`full license text <gpl-3.0.txt>` for more details.

.. _`GitHub page`: http://github.com/errbotio/errbot/
.. _`plugin list`: https://github.com/errbotio/errbot/wiki
.. _`open an issue`: https://github.com/errbotio/errbot/issues