Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/stylesuxx/japybot
Jabber Bot with with easily extensible commands.
https://github.com/stylesuxx/japybot
Last synced: about 1 month ago
JSON representation
Jabber Bot with with easily extensible commands.
- Host: GitHub
- URL: https://github.com/stylesuxx/japybot
- Owner: stylesuxx
- Created: 2013-08-11T10:43:20.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2013-08-16T21:27:57.000Z (about 11 years ago)
- Last Synced: 2023-03-13T08:15:45.661Z (over 1 year ago)
- Language: Python
- Size: 359 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
japybot
=======Python Jabber Bot with with easily extensible Plugin System.
# Usage
python bot.py -h
usage: bot.py [-h] [-s [SERVER]] [-r [ROOM]] [-n [NICK]] [-p [PASS]] [--reg]
JID PASS ADMIN [ADMIN ...]Python Jabber Bot.
positional arguments:
JID [email protected]
PASS The password
ADMIN The bots adminsoptional arguments:
-h, --help show this help message and exit
-s [SERVER] The conference server
-r [ROOM] The room to join
-n [NICK] The nick for the room
-p [PASS] The password for the room
--reg Register Jid if available# Plugins
There are two types of Plugins:
* Commands: are invoked via a command string and possible parameters
* Parsers: are called for each messageCommands are only invoked if the command string is found on the beginning of the stanza.
Parsers work the same as commands except that every message is passed to them for further procession.
All the Plugins are loaded from the plugin directory when the bot starts up. Until the next reload command the same instance of each plugin is used to process messages and commands.
All zip files in the Plugins directory are extracted and deleted when the plugins are loaded.
This basically means that updating a plugin is as easy as putting the zipped plugin in the plugin folder and then starting or reloading the bot.
Check out the plugins description property if you want to learn more about each plugin.