Mikubot 2 - Neu & besser
This repository has been archived on 2021-04-24. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
topkecleon a1a4978a1b config, locale in lua
personality.lua -> interactions.lua
innumerable improvements
2015-07-15 02:15:23 -04:00
loc config, locale in lua 2015-07-15 02:15:23 -04:00
plugins config, locale in lua 2015-07-15 02:15:23 -04:00
.gitignore config, locale in lua 2015-07-15 02:15:23 -04:00
bindings.lua config, locale in lua 2015-07-15 02:15:23 -04:00
bot.lua config, locale in lua 2015-07-15 02:15:23 -04:00
config.lua.default config, locale in lua 2015-07-15 02:15:23 -04:00
dkjson.lua dkjson now required and included 2015-07-07 23:24:40 -04:00
LICENSE Initial commit 2015-07-02 17:39:19 -04:00
README.md config, locale in lua 2015-07-15 02:15:23 -04:00
utilities.lua initial commie bastard 2015-07-02 18:15:52 -04:00

otouto

The plugin-wielding, multi-purpose Telegram bot.

Public bot runs on @mokubot.

To start, send "/start" or say "Hello, otouto."

##Plugins

help.lua /help [command] List commands
about.lua /about Information about the bot
gSearch.lua /google <query> Google Search
gImages.lua /images <query> Google Images search
reddit.lua /reddit [r/subreddit | query] Posts from reddit
giphy.lua /giphy [query] Giphy search or random
xkcd.lua /xkcd [search] xkcd strips and alt text
gMaps.lua /loc <location> Google Maps search
imdb.lua /imdb <movie | TV series> IMDb movie/television info
urbandictionary.lua /ud <term> Urban Dictionary search
hackernews.lua /hackernews Top stories from Hackernews
time.lua /time <location> Get the time for a place
weather.lua /weather <location> Get the weather for a place
calc.lua /calc <expression> Solve math expression and convert units
dice.lua /roll [arg] Roll a die. Accepts D&D notation
remind.lua /remind <delay> <message> Set a reminder for yourself or a group
8ball.lua /8ball Magic 8-ball
bandersnatch.lua /bandersnatch Benedict Cumberbatch name generator
bible.lua /bible <verse> King James Version
btc.lua /btc <currency> [amount] Bitcoin prices and conversion
commit.lua /commit http://whatthecommit.com
dogify.lua /dogify <lines/separatedby/slashes> Create a doge image
echo.lua /echo <text> Repeat a string
fortune.lua /fortune Random fortunes
hex.lua /hex <number> Convert to and from hexadecimal
pokedex.lua /dex <pokemon> Pokedex!
pun.lua /pun Puns
slap.lua /slap [victim] Slap someone!
whoami.lua /who Get user and group IDs

##Setup

Requires Lua, lua-socket and lua-sec. dkjson is provided. Written for Lua 5.2 but will probably run on 5.3.

You must have a Telegram bot and auth token from the BotFather to run this bot. telegram-cli is not required.

###Configuration

To begin, copy config.lua.default to config.lua and add the relevant information.

Most config.lua entries are self-explanatory.

Add your bot API key, and other API keys if desirable. The plugins which require API keys that are not provided are disabled by default. The provided Giphy key is the public test key, and is subject to rate limitaton.

The "fortune.lua" plugin requires the fortune program to be installed on the host computer.

"time_offset" is the time difference, in seconds, between your system clock. It is sometimes necessary for accurate output of the time plugin.

"admins" table includes the ID numbers, as integers, of any privileged users. These will have access to the admin plugin and any addition privileged commands.

"people" table is for the personality plugin: ["55994550"] = "topkecleon"

ID number must be a string. The second string is the nickname to be given to the identified user when a personality greeting is triggered.

To run:

lua bot.lua

##Support

Do not private message me for support.

For support for otouto as well as general Lua and bot assistance, please join the CIS Bot Development group. After you read the rules and the pastebin, I will assist you there.