Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/skibz/tfbot

a hubot-based irc bot designed to be used with skibz/tflobby
https://github.com/skibz/tfbot

Last synced: about 2 months ago
JSON representation

a hubot-based irc bot designed to be used with skibz/tflobby

Awesome Lists containing this project

README

        

# tfbot

tfbot is a chat bot built on the [Hubot][hubot] framework. It was initially generated by [generator-hubot][generator-hubot] and has been configured to run on Ubuntu.

[hubot]: http://hubot.github.com
[generator-hubot]: https://github.com/github/generator-hubot

### Running tfbot Locally

You can test your hubot by running the following.

You can start tfbot locally by running:

$ bin/hubot --name tfbot --alias !

You'll see some start up output about where your scripts come from and a
prompt:

[Sun, 04 Dec 2011 18:41:11 GMT] INFO Loading adapter shell
[Sun, 04 Dec 2011 18:41:11 GMT] INFO Loading scripts from /home/tomb/Development/hubot/scripts
[Sun, 04 Dec 2011 18:41:11 GMT] INFO Loading scripts from /home/tomb/Development/hubot/src/scripts
tfbot>

Then you can interact with tfbot by typing `tfbot help`.

tfbot> tfbot help

tfbot> animate me - The same thing as `image me`, except adds a few
convert me to - Convert expression to given units.
help - Displays all of the help commands that Hubot knows about.
...

### Scripting

An example script is included at `scripts/example.coffee`, so check it out to
get started, along with the [Scripting Guide](https://github.com/github/hubot/blob/master/docs/scripting.md).

For many common tasks, there's a good chance someone has already one to do just
the thing.

### hubot-scripts

There will inevitably be functionality that everyone will want. Instead
of writing it yourself, you can check
[hubot-scripts][hubot-scripts] for existing scripts.

To enable scripts from the hubot-scripts package, add the script name with
extension as a double quoted string to the `hubot-scripts.json` file in this
repo.

[hubot-scripts]: https://github.com/github/hubot-scripts

### external-scripts

Hubot is able to load scripts from third-party `npm` package. Check the package's documentation, but in general it is:

1. Add the packages as dependencies into your `package.json`
2. `npm install` to make sure those packages are installed
3. Add the package name to `external-scripts.json` as a double quoted string

You can review `external-scripts.json` to see what is included by default.

## Persistence

If you are going to use the `hubot-redis-brain` package
(strongly suggested), you will need to set an environment variable to configure.

$ export REDIS_URL=redis://localhost:1234/hubot

If you don't require any persistence feel free to remove the
`hubot-redis-brain` from `external-scripts.json` and you don't need to worry
about redis at all.

## Adapters

Adapters are the interface to the service you want your hubot to run on. This
can be something like Campfire or IRC. There are a number of third party
adapters that the community have contributed. Check
[Hubot Adapters][hubot-adapters] for the available ones.

If you would like to run a non-Campfire or shell adapter you will need to add
the adapter package as a dependency to the `package.json` file in the
`dependencies` section.

Once you've added the dependency and run `npm install` to install it you can
then run hubot with the adapter.

% bin/hubot -a

Where `` is the name of your adapter without the `hubot-` prefix.

[hubot-adapters]: https://github.com/github/hubot/blob/master/docs/adapters.md

## Deploying

An Ubuntu Upstart script has been included. There's not much to it.