Der erste Mikubot
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
2015-03-02 20:12:41 +01:00
bot Controll HTTP errors downloading images 2015-02-28 14:22:53 +01:00
data data is the new res folder 2015-01-06 21:04:45 +01:00
etc Configure and install upstart script 2014-12-17 21:31:52 +01:00
libs mimetype lib 2015-02-15 16:51:37 +01:00
plugins giphy sends original if downsized doesn't exists 2015-02-28 12:30:58 +01:00
tg@01f5d9a3b6 updated tg 2015-02-02 22:39:51 +01:00
.gitignore data is the new res folder 2015-01-06 21:04:45 +01:00
.gitmodules back to vysheng/tg 2014-09-04 01:11:24 +02:00
launch.sh Dont send dialog_list query 2015-02-15 12:12:52 +01:00
LICENSE LICENSE name and year 2015-03-02 20:12:41 +01:00
README.md HTML table formatted 2015-02-19 21:54:55 +01:00

telegram-bot

A Telegram Bot based on plugins using tg.

Multimedia

  • When user sends image (png, jpg, jpeg) URL download and send it to origin.
  • When user sends media (gif, mp4, pdf, etc.) URL download and send it to origin.
  • When user sends twitter URL, send text and images to origin. Requires OAuth Key.
  • When user sends youtube URL, send to origin video image.

http://i.imgur.com/0FGUvU0.png http://i.imgur.com/zW7WWWt.png http://i.imgur.com/zW7WWWt.png

Bot Commands

Name Description Usage
9gag.lua 9GAG for telegram !9gag: Send random image from 9gag
btc.lua Bitcoin global average market value (in EUR or USD) !btc [EUR|USD] [amount]
echo.lua Simplest plugin ever! !echo [whatever]: echoes the msg
eur.lua EURUSD market value !eur [USD]
fortunes_uc3m.lua Fortunes from Universidad Carlos III !uc3m
get.lua Retrieves variables saved with !set !get (value_name): Returns the value_name value.
giphy.lua GIFs from telegram with Giphy API !gif (term): Search and sends GIF from Giphy. If no param, sends a trending GIF.
!giphy (term): Search and sends GIF from Giphy. If no param, sends a trending GIF.
google.lua Searches Google and send results !google [terms]: Searches Google and send results
gps.lua generates a map showing the given GPS coordinates !gps latitude,longitude: generates a map showing the given GPS coordinates
hello.lua Says hello to someone say hello to [name]
help.lua Help plugin. Get info from other plugins. !help: Show all the help
!help md: Generate a GitHub Markdown table
images.lua When user sends image URL (ends with png, jpg, jpeg) download and send it to origin.
imdb.lua Imdb plugin for telegram !imdb [movie]
img_google.lua Search image with Google API and sends it. !img [term]: Random search an image with Google API.
invite.lua Invite other user to the chat group !invite name [user_name]
!invite id [user_id]
location.lua Gets information about a location, maplink and overview !loc (location): Gets information about a location, maplink and overview
media.lua When user sends media URL (ends with gif, mp4, pdf, etc.) download and send it to origin.
ping.lua If domain is offline, send msg to peer
plugins.lua Plugin to manage other plugins. Enable, disable or reload. !plugins: list all plugins
!plugins enable [plugin]: enable plugin
!plugins disable [plugin]: disable plugin
!plugins reload: reloads all plugins
quotes.lua Quote plugin, you can create and retrieves random quotes !addquote [msg]
!quote
rae.lua Spanish dictionary !rae [word]: Search that word in Spanish dictionary. Powered by https://github.com/javierhonduco/dulcinea
set.lua Plugin for saving values. get.lua plugin is necesary to retrieve them. !set [value_name] [data]: Saves the data with the value_name name.
stats.lua Plugin to update user stats. !stats: Returns a list of Username [telegram_id]: msg_num
time.lua Displays the local time in an area !time [area]: Displays the local time in that area
twitter.lua When user sends twitter URL, send text and images to origin. Requieres OAuth Key.
twitter_send.lua Sends a tweet !tw [text]: Sends the Tweet with the configured accout.
version.lua Shows bot version !version: Shows bot version
weather.lua weather in that city (Madrid is default) !weather (city)
xkcd.lua Send comic images from xkcd !xkcd (id): Send an xkcd image and tigle. If not id, send a random one
youtube.lua Sends YouTube info and image.

Installation

# Tested on Ubuntu 14.04, for other OSs check out https://github.com/vysheng/tg#installation
$ sudo apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev unzip git
$ cd /tmp
$ wget http://luarocks.org/releases/luarocks-2.2.0.tar.gz
$ tar -xzvf luarocks-2.2.0.tar.gz
$ cd luarocks-2.2.0/
$ ./configure
$ make && sudo make install
$ sudo luarocks install oauth
$ sudo luarocks install luasocket
# After those dependencies, lets install the bot
$ cd $HOME
$ git clone https://github.com/yagop/telegram-bot.git --recursive
$ cd telegram-bot/tg
$ ./configure && make && cd ..
$ ./launch.sh # Will ask you for a phone number & confirmation code.

Enable more plugins

See the plugins list with !plugins command.

Enable a disabled plugin by !plugins enable [name].

Disable an enabled plugin by !plugins disable [name].

Those commands require a privileged user, privileged users are defined inside data/config.lua (generated by the bot), stop de bot and edit if necessary.

Run it as a daemon

If your linux/unix comes with upstart you can run the bot by this way

$ sed -i "s/yourusername/$(whoami)/g" etc/telegram.conf
$ sed -i "s_telegrambotpath_$(pwd)_g" etc/telegram.conf
$ sudo cp etc/telegram.conf /etc/init/
$ sudo start telegram # To start it
$ sudo stop telegram # To stop it

Contact me

You can contact me via Telegram but if you have an issue please open one.