2012-04-02 19:03:24 +02:00
# CloudBot/DEV
2011-11-21 00:24:54 +01:00
2012-02-29 03:00:12 +01:00
## About
2012-02-29 03:47:11 +01:00
2012-02-29 06:13:46 +01:00
CloudBot is a Python IRC bot very heavily based on [Skybot ](http://git.io/skybot ) by [rmmh ](http://git.io/rmmh ).
2012-02-28 10:03:52 +01:00
2012-02-29 03:14:30 +01:00
### Goals
2012-02-29 20:45:18 +01:00
* Easy to use wrapper
* Intuitive configuration
* Fully controlled from IRC
* Fully compatable with existing skybot plugins
2012-02-29 03:14:30 +01:00
* Easily extendable
2012-02-29 05:38:44 +01:00
* Thorough documentation
2012-02-29 03:14:30 +01:00
* Cross-platform
* Muti-threaded, efficient
2012-02-29 03:34:36 +01:00
* Automatic reloading
* Little boilerplate
2011-11-21 00:24:54 +01:00
2012-06-09 21:21:48 +02:00
## Getting and using CloudBot
### Download
2012-02-29 03:47:11 +01:00
2012-09-04 00:16:56 +02:00
Get CloudBot at [https://github.com/ClouDev/CloudBot/zipball/develop ](https://github.com/ClouDev/CloudBot/zipball/develop "Get CloudBot from Github!" ).
2012-02-29 03:20:15 +01:00
Unzip the resulting file, and continue to read this document.
2012-02-28 09:48:46 +01:00
2012-06-09 21:21:48 +02:00
### Install
2012-02-29 03:47:11 +01:00
2012-09-04 00:16:56 +02:00
Before you can run the bot, you need to install a few Python modules. These are `lXML` and `Enchant` . These can be installed with `pip` (The Python package manager), or `easy_install` (A more basic version of `pip` ):
2012-02-28 09:48:46 +01:00
2012-09-04 00:16:56 +02:00
`[sudo] pip install lxml pyenchant`
2012-02-28 09:48:46 +01:00
2012-06-09 21:19:16 +02:00
or
2012-02-28 19:33:35 +01:00
2012-09-04 00:16:56 +02:00
`[sudo] easy_install lxml pyenchant`
2012-02-28 11:10:17 +01:00
2012-09-04 00:16:56 +02:00
#### How to install `pip`
2012-02-28 19:33:35 +01:00
2012-06-09 21:19:16 +02:00
```shell
curl -O http://python-distribute.org/distribute_setup.py
python distribute_setup.py
easy_install pip
```
2012-02-28 19:33:35 +01:00
2012-06-09 21:19:16 +02:00
(If you use Windows and don't want to set up pip, you can also find `exe` installers on the internet.)
2012-02-28 09:48:46 +01:00
2012-06-09 21:21:48 +02:00
### Run
2012-05-09 23:36:30 +02:00
Once you have installed the required dependencies, there are two ways you can run the bot:
2012-06-09 21:21:48 +02:00
#### Launcher
2012-05-09 23:36:30 +02:00
2012-09-04 00:16:56 +02:00
**Note:** Due to some issues with the launcher we recommend you run he bot manually as detailed below.
2012-05-09 23:36:30 +02:00
The launcher will start the bot as a background process, and allow the bot to close and restart itself. This is only supported on unix-like machines (not Windows).
2012-06-09 21:24:03 +02:00
For the launcher to work properly, install `screen` , or `daemon` (daemon is recommended):
2012-03-02 01:16:14 +01:00
2012-05-09 23:49:29 +02:00
`apt-get install screen`
2012-03-02 01:16:14 +01:00
2012-05-09 23:49:29 +02:00
`apt-get install daemon`
2012-03-02 01:16:14 +01:00
2012-05-09 23:36:30 +02:00
Once you have installed either `screen` or `daemon` , run the start command:
2011-11-21 00:24:54 +01:00
2012-03-02 01:16:14 +01:00
`./cloudbot start`
2012-02-02 17:49:12 +01:00
2012-05-09 23:36:30 +02:00
It will generate a default config for you. Once you have edited the config, run it again with the same command:
2012-02-23 03:35:40 +01:00
2012-03-02 01:16:14 +01:00
`./cloudbot start`
2011-11-21 00:24:54 +01:00
2012-05-09 23:36:30 +02:00
This will start up your bot as a background process. To stop it, use `./cloudbot stop` . (Config docs at the [wiki ](http://git.io/cloudbotircconfig ))
2012-06-09 21:21:48 +02:00
#### Manually
2012-05-09 23:36:30 +02:00
2012-08-21 00:12:25 +02:00
To manually run the bot and get console output, run it with:
2012-05-09 23:36:30 +02:00
`python bot.py`
On Windows you can usually just double-click the `bot.py` file to start the bot, as long as you have Python installed correctly.
2012-06-09 21:21:48 +02:00
(note: running the bot without the launcher breaks the start and restart commands)
## Getting help with CloudBot
2011-11-21 00:24:54 +01:00
2012-06-09 21:21:48 +02:00
### Documentation
2012-02-29 02:54:07 +01:00
2012-03-05 04:13:19 +01:00
To configure your CloudBot, visit the [Config Wiki Page ](http://git.io/cloudbotircconfig ).
2012-02-29 02:54:07 +01:00
2012-03-05 04:13:19 +01:00
To write your own plugins, visit the [Plugin Wiki Page ](http://git.io/cloudbotircplugins ).
2012-02-29 02:54:07 +01:00
2012-03-05 04:13:19 +01:00
More at the [Wiki Main Page ](http://git.io/cloudbotircwiki ).
2012-02-29 02:54:07 +01:00
2012-06-09 21:21:48 +02:00
### Support
2012-02-29 03:47:11 +01:00
2012-04-13 19:33:12 +02:00
The developers reside in [#CloudBot ](irc://irc.esper.net/cloudbot ) on [EsperNet ](http://esper.net ) and would be glad to help you.
2012-02-29 03:47:11 +01:00
2012-02-29 21:26:07 +01:00
If you think you have found a bug/have a idea/suggestion, please **open a issue** here on Github.
2012-02-29 03:47:11 +01:00
2012-06-09 21:21:48 +02:00
### Requirements
2012-02-28 10:12:46 +01:00
2012-08-21 00:12:25 +02:00
CloudBot runs on **Python** *2.7.x* . It is developed on **Ubuntu** *12.04* with **Python** *2.7.3* .
2012-02-28 10:03:52 +01:00
2012-09-04 00:16:56 +02:00
It **requires the Python module** `lXML` , and `Enchant` is needed for the spellcheck plugin.
2012-02-28 09:56:16 +01:00
2012-08-21 00:12:25 +02:00
The programs `daemon` or `screen` are recomended for the launcher to run optimaly.
2012-02-29 03:00:12 +01:00
2012-08-21 00:12:25 +02:00
**Windows** users: Windows compatibility with the launcher and some plugins is **broken** (such as ping), but we do intend to add it.³
2012-02-29 03:00:12 +01:00
2012-06-09 21:21:48 +02:00
## Example CloudBots
2012-02-29 03:00:12 +01:00
2012-06-09 21:21:48 +02:00
The developers of CloudBot run two CloudBots on [Espernet ](http://esper.net ).
2012-02-29 03:20:15 +01:00
2012-09-19 03:05:05 +02:00
They can both be found in [#CloudBot ](irc://irc.esper.net/cloudbot "Connect via IRC to #CloudBot on irc.esper.net" ).
2012-02-28 09:57:35 +01:00
2012-08-21 00:12:25 +02:00
**mau5bot** is the semi-stable bot, and runs on the latest stable development version of CloudBot. (mau5bot is running on **Ubuntu Server** *12.04* with **Python** *2.7.3* )
2012-03-02 01:59:25 +01:00
2012-09-19 03:05:05 +02:00
**neerbot** is unstable bot, and runs on the `HEAD` of the `develop` branch. (neerbot is running on **Debian** *Wheezy/Testing* with **Python** *2.7.2* )
2011-11-21 11:51:21 +01:00
2012-02-29 03:00:12 +01:00
## License
2012-06-09 21:21:48 +02:00
2012-02-29 21:26:07 +01:00
CloudBot is **licensed** under the **GPL v3** license. The terms are as follows.
2012-02-28 10:15:13 +01:00
2012-04-02 19:03:24 +02:00
CloudBot/DEV
2011-11-21 11:53:32 +01:00
2012-05-16 23:46:41 +02:00
Copyright © 2011-2012 Luke Rogers / ClouDev - < [cloudev.github.com](http://cloudev.github.com)>
2011-11-21 11:51:21 +01:00
CloudBot is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
CloudBot is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
2012-02-29 02:54:07 +01:00
along with CloudBot. If not, see < http: / / www . gnu . org / licenses / > .
2012-03-02 01:24:13 +01:00
2012-03-04 02:33:38 +01:00
## Notes
2012-03-02 01:27:00 +01:00
2012-03-04 02:32:58 +01:00
³ eventually