update tutorial

pull/5/head
Mallory Hancock 2017-10-31 10:27:33 -07:00
parent 90ee813844
commit a3784102e5
2 changed files with 20 additions and 30 deletions

View File

@ -4,7 +4,7 @@ a pluggable irc bot framework in python
## Tutorial ## Tutorial
### Installation ### Installation
``` ```
$ pip install git+git://github.com/archangelic/pinhook.git $ pip install pinhook
``` ```
### Creating the Bot ### Creating the Bot

View File

@ -11,7 +11,7 @@ Installation
:: ::
$ pip install git+git://github.com/archangelic/pinhook.git $ pip install pinhook
Creating the Bot Creating the Bot
~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~
@ -29,22 +29,19 @@ To create the bot, just create a python file with the following:
) )
bot.start() bot.start()
This will start a basic bot and look for plugins in the plugins This will start a basic bot and look for plugins in the 'plugins'
directory to add functionality. directory to add functionality.
Optional arguments are: Optional arguments are: \* ``port``: choose a custom port to connect to
the server (default: 6667) \* ``ops``: list of operators who can do
- ``port``: choose a custom port to connect to the server (default: things like make the bot join other channels or quit (default: empty
6667) list) \* ``plugin_dir``: directory where the bot should look for plugins
- ``ops``: list of operators who can do things like make the bot join (default: "plugins")
other channels or quit (default: empty list)
- ``plugin_dir``: directory where the bot should look for plugins
(default: “plugins”)
Creating plugins Creating plugins
~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~
In your chosen plugins directory (“plugins” by default) make a python In your chosen plugins directory ("plugins" by default) make a python
file with a function. You can use the ``@pinhook.plugin.register`` file with a function. You can use the ``@pinhook.plugin.register``
decorator to tell the bot the command to activate the function. decorator to tell the bot the command to activate the function.
@ -62,23 +59,18 @@ The function will need to be structured as such:
The function will need to accept a single argument in order to accept a The function will need to accept a single argument in order to accept a
``Message`` object from the bot. ``Message`` object from the bot.
The ``Message`` object has the following attributes: The ``Message`` object has the following attributes: \* ``cmd``: the
command that triggered the function \* ``nick``: the user who triggered
- ``cmd``: the command that triggered the function the command \* ``arg``: all the trailing text after the command. This is
- ``nick``: the user who triggered the command what you will use to get optional information for the command \*
- ``arg``: all the trailing text after the command. This is what you ``channel``: the channel where the command was initiated \* ``ops``: the
will use to get optional information for the command list of bot operators \* ``botnick``: the nickname of the bot
- ``channel``: the channel where the command was initiated
- ``ops``: the list of bot operators
- ``botnick``: the nickname of the bot
The plugin function **must** return one of the following in order to The plugin function **must** return one of the following in order to
give a response to the command: give a response to the command: \* ``pinhook.plugin.message``: basic
message in channel where command was triggered \*
- ``pinhook.plugin.message``: basic message in channel where command ``pinhook.plugin.action``: CTCP action in the channel where command was
was triggered triggered (basically like using ``/me does a thing``)
- ``pinhook.plugin.action``: CTCP action in the channel where command
was triggered (basically like using ``/me does a thing``)
Examples Examples
-------- --------
@ -87,6 +79,4 @@ There are some basic examples in the ``examples`` directory in this
repository. repository.
For a live and maintained bot running the current version of pinhook see For a live and maintained bot running the current version of pinhook see
`pinhook-tilde`_. `pinhook-tilde <https://github.com/archangelic/pinhook-tilde>`__.
.. _pinhook-tilde: https://github.com/archangelic/pinhook-tilde