updated readme

This commit is contained in:
topkecleon 2015-07-10 23:43:30 -04:00
parent f42864cac5
commit 294ca0319a
4 changed files with 226 additions and 9 deletions

182
README.md
View File

@ -4,24 +4,190 @@ The plugin-wielding, multi-purpose Telegram bot.
Public bot runs on [@mokubot](http://telegram.me/mokubot).
Requires lua-socket and lua-sec. [dkjson](https://github.com/LuaDist/dkjson/) is provided.
Edit config.json with your bot API key, and other API keys if desirable.
Plugins which require an API key are disabled by default.
##Plugins
`lua bot.lua`
<table>
<thead>
<tr>
<td>about.lua</td>
<td>/about</td>
<td>Information about the bot</td>
</tr>
<tr>
<td>8ball.lua</td>
<td>/8ball</td>
<td>Magic 8-ball</td>
</tr>
<tr>
<td>bandersnatch.lua</td>
<td>/bandersnatch</td>
<td>Benedict Cumberbatch name generator</td>
</tr>
<tr>
<td>bible.lua</td>
<td>/bible &lt;verse&gt;</td>
<td>King James Version</td>
</tr>
<tr>
<td>btc.lua</td>
<td>/btc &lt;currency&gt; [amount]</td>
<td>Bitcoin prices and conversion</td>
</tr>
<tr>
<td>calc.lua</td>
<td>/calc &lt;expression&gt;</td>
<td>Solve math expression and convert units</td>
</tr>
<tr>
<td>commit.lua</td>
<td>/commit</td>
<td>http://whatthecommit.com</td>
</tr>
<tr>
<td>dice.lua</td>
<td>/roll [arg]</td>
<td>Roll a die. Accepts D&amp;D notation</td>
</tr>
<tr>
<td>dogify.lua</td>
<td>/dogify &lt;lines/separatedby/slashes&gt;</td>
<td>Create a doge image</td>
</tr>
<tr>
<td>echo.lua</td>
<td>/echo &lt;text&gt;</td>
<td>Repeat a string</td>
</tr>
<tr>
<td>fortune.lua</td>
<td>/fortune</td>
<td>Random fortunes</td>
</tr>
<tr>
<td>gSearch.lua</td>
<td>/google &lt;query&gt;</td>
<td>Google Search</td>
</tr>
<tr>
<td>gMaps.lua</td>
<td>/loc &lt;location&gt;</td>
<td>Google Maps search</td>
</tr>
<tr>
<td>gImages.lua</td>
<td>/images &lt;query&gt;</td>
<td>Google Images search</td>
</tr>
<tr>
<td>giphy.lua</td>
<td>/giphy [query]</td>
<td>Giphy search or random</td>
</tr>
<tr>
<td>hackernews.lua</td>
<td>/hackernews</td>
<td>Top stories from Hackernews</td>
</tr>
<tr>
<td>help.lua</td>
<td>/help [command]</td>
<td>List commands</td>
</tr>
<tr>
<td>hex.lua</td>
<td>/hex &lt;number&gt;</td>
<td>Convert to and from hexadecimal</td>
</tr>
<tr>
<td>imdb.lua</td>
<td>/imdb &lt;movie | TV series&gt;</td>
<td>IMDb movie/television info</td>
</tr>
<tr>
<td>pokedex.lua</td>
<td>/dex &lt;pokemon&gt;</td>
<td>Pokedex!</td>
</tr>
<tr>
<td>pun.lua</td>
<td>/pun</td>
<td>Puns</td>
</tr>
<tr>
<td>reddit.lua</td>
<td>/reddit [r/subreddit | query]</td>
<td>Posts from reddit</td>
</tr>
<tr>
<td>remind.lua</td>
<td>/remind &lt;delay&gt; &lt;message&gt;</td>
<td>Set a reminder for yourself or a group</td>
</tr>
<tr>
<td>slap.lua</td>
<td>/slap [victim]</td>
<td>Slap someone!</td>
</tr>
<tr>
<td>time.lua</td>
<td>/time &lt;location&gt;</td>
<td>Get the time for a place</td>
</tr>
<tr>
<td>urbandictionary.lua</td>
<td>/ud &lt;term&gt;</td>
<td>Urban Dictionary search</td>
</tr>
<tr>
<td>weather.lua</td>
<td>/weather &lt;location&gt;</td>
<td>Get the weather for a place</td>
</tr>
<tr>
<td>whoami.lua</td>
<td>/who</td>
<td>Get user and group IDs</td>
</tr>
<tr>
<td>xkcd.lua</td>
<td>/xkcd [search]</td>
<td>xkcd strips and alt text</td>
</tr>
</tbody>
</table>
##Setup
Requires Lua, lua-socket and lua-sec. [dkjson](http://github.com/LuaDist/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](http://telegram.me/botfather) to run this bot. telegram-cli is not required.
###Configuration
Most config.json entries are self-explanatory.
Giphy key provided is the public test key, and is subject to rate limitation.
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.
TIME_OFFSET is the time difference, in seconds, between your system clock. It is often necessary for accurate output of the time plugin.
TIME_OFFSET is the time difference, in seconds, between your system clock. It is sometimes necessary for accurate output of the time plugin. Default at 0 (duh).
"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:
`"123456789": "foobar"`
`"55994550": "topkecleon"`
ID number must be a string.
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
Please do not private message me for support. I will probably block you.
For support for otouto as well as general Lua and bot assistance, please join the [CIS Bot Development](http://telegram.me/joinchat/05fe39f500f8f1b2d1548147a68acd2a) group. After you read the rules and the pastebin, I will assist you there.

View File

@ -70,6 +70,10 @@ function bot_init()
print('Help message generated!\n')
print('username: @'..bot.username)
print('name: '..bot.first_name)
print('ID: '..bot.id)
is_started = true
end

View File

@ -41,7 +41,7 @@
"xkcd.lua"
],
"people": {
"0": "nickname",
"55994550": "topkecleon",
}
}

47
config.json.default Normal file
View File

@ -0,0 +1,47 @@
{
"BOT_API_KEY": "",
"BIBLIA_API_KEY": "",
"GIPHY_API_KEY": "dc6zaTOxFJmzC",
"TIME_OFFSET": 0,
"admins": [
0
],
"plugins": [
"about.lua",
"8ball.lua",
"admin.lua",
"bandersnatch.lua",
"btc.lua",
"calc.lua",
"chatter.lua",
"commit.lua",
"dice.lua",
"dogify.lua",
"echo.lua",
"fortune.lua",
"gImages.lua",
"giphy.lua",
"gMaps.lua",
"gSearch.lua",
"hackernews.lua",
"help.lua",
"hex.lua",
"imdb.lua",
"personality.lua",
"pokedex.lua",
"pun.lua",
"reaction.lua",
"reddit.lua",
"remind.lua",
"slap.lua",
"time.lua",
"urbandictionary.lua",
"weather.lua",
"whoami.lua",
"xkcd.lua"
],
"people": {
"55994550": "topkecleon",
}
}