Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yagop/telegram-bot
UNMAINTAINED - A Telegram Bot based on plugins
https://github.com/yagop/telegram-bot
Last synced: 2 months ago
JSON representation
UNMAINTAINED - A Telegram Bot based on plugins
- Host: GitHub
- URL: https://github.com/yagop/telegram-bot
- Owner: yagop
- License: gpl-2.0
- Archived: true
- Created: 2014-06-30T10:34:41.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2018-10-14T09:09:36.000Z (about 6 years ago)
- Last Synced: 2024-07-31T12:07:27.848Z (5 months ago)
- Language: Lua
- Homepage:
- Size: 1.17 MB
- Stars: 850
- Watchers: 64
- Forks: 504
- Open Issues: 116
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-telegram-bots - telegram-bot
README
:warning: UNMAINTAINED / DEPRECATED :warning:
============
This proyect is no longer active since [Telegram Bot API](https://core.telegram.org/bots/api/) creation. It's better using the API rather than telegram-bot, almost every feature on Telegram-cli is available on API. You can use [node-telegram-bot-api](https://github.com/yagop/node-telegram-bot-api) Node.js module if you want. Or search your favourite one [here](https://www.reddit.com/r/TelegramBots/comments/4ly273/updated_collection_of_api_wrappers/).telegram-bot
============[![https://yago.me/tg-bot](https://img.shields.io/badge/💬_Telegram-Bot_Dev._Group-blue.svg)](https://yago.me/tg-bot) [![https://telegram.me/Yago_Perez](https://img.shields.io/badge/💬_Telegram-Yago__Perez-blue.svg)](https://telegram.me/Yago_Perez) [![https://gitter.im/yagop/telegram-bot](https://img.shields.io/badge/💬_Gitter-Join_Chat-green.svg)](https://gitter.im/yagop/telegram-bot)
[![Donate button](https://img.shields.io/badge/Red_Cross-donate-yellow.svg)](https://www.icrc.org/ "Donate to Red Cross Society")A Telegram Bot based on plugins using [tg](https://github.com/vysheng/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/0FGUvU0.png) ![http://i.imgur.com/zW7WWWt.png](http://i.imgur.com/zW7WWWt.png) ![http://i.imgur.com/zW7WWWt.png](http://i.imgur.com/kPK7paz.png)
Bot Commands
------------
Name
Description
Usage
9gag.lua
9GAG for telegram
!9gag: Send random image from 9gag
boobs.lua
Gets a random boobs or butts pic
!boobs: Get a boobs NSFW image. :underage:
!butts: Get a butts NSFW image. :underage:
btc.lua
Bitcoin global average market value (in EUR or USD)
!btc [EUR|USD] [amount]
bugzilla.lua
Lookup bugzilla status update
/bot bugzilla [bug number]
calculator.lua
Calculate math expressions with mathjs API
!calc [expression]: evaluates the expression and sends the result.
channels.lua
Plugin to manage channels. Enable or disable channel.
!channel enable: enable current channel
!channel disable: disable current channel
danbooru.lua
Gets a random fresh or popular image from Danbooru
!danbooru - gets a random fresh image from Danbooru :underage:
!danboorud - random daily popular image :underage:
!danbooruw - random weekly popular image :underage:
!danboorum - random monthly popular image :underage:
dogify.lua
Create a doge image with words.
!dogify (words/or phrases/separated/by/slashes) - Create a doge image with the words.
download_media.lua
When bot receives a media msg, download the media.
echo.lua
Simplest plugin ever!
!echo [whatever]: echoes the msg
eur.lua
Real-time EURUSD market price
!eur [USD]
expand.lua
Expand a shorten URL to the original.
!expand [url]
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.
gnuplot.lua
Gnuplot plugin
!gnuplot [single variable function]: Plot single variable function.
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
hackernews.lua
Show top 5 hacker news (ycombinator.com)
!hackernews
hello.lua
Says hello to someone
say hello to [name]
help.lua
Help plugin. Get info from other plugins.
!help: Show list of plugins.
!help all: Show all commands for every plugin.
!help [plugin name]: Commands for that plugin.
id.lua
Know your id or the id of a chat members.
!id: Return your ID and the chat id if you are in one.
!id(s) chat: Return the IDs of the chat members.
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]
isup.lua
Check if a website or server is up.
!isup [host]: Performs a HTTP request or Socket (ip:port) connection
!isup cron [host]: Every 5mins check if host is up. (Requires privileged user)
!isup cron delete [host]: Disable checking that host.
location.lua
Gets information about a location, maplink and overview
!loc (location): Gets information about a location, maplink and overview
magic8ball.lua
Magic 8Ball
!magic8ball
media.lua
When user sends media URL (ends with gif, mp4, pdf, etc.) download and send it to origin.
meme.lua
Generate a meme image with up and bottom texts.
!meme search (name): Return the name of the meme that match.
!meme list: Return the link where you can see the memes.
!meme listall: Return the list of all memes. Only admin can call it.
!meme [name] - [text_up] - [text_down]: Generate a meme with the picture that match with that name with the texts provided.
!meme [name] "[text_up]" "[text_down]": Generate a meme with the picture that match with that name with the texts provided.
minecraft.lua
Searches Minecraft server and sends info
!mine [ip]: Searches Minecraft server on specified IP and sends info. Default port: 25565
!mine [ip] [port]: Searches Minecraft server on specified IP and port and sends info.
pili.lua
Shorten an URL with pili.la service
!pili [url]: Short the url
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 disable [plugin] chat: disable plugin only this chat.
!plugins reload: reloads all plugins.
qr.lua
Given a text it returns a qr code
!qr [text] : returns a black and white qr code
!qr "[background color]" "[data color]" [text] : returns a colored qr code (see !help qr to see how specify colors).
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.
roll.lua
Roll some dice!
!roll d
|
d
rss.lua
Manage User/Chat RSS subscriptions.
!rss: Get the rss subscriptions.
!rss subscribe (url): Subscribe to that url.
!rss unsubscribe (id): Unsubscribe of that id.
!rss sync: Sync the rss subscriptios now. Only sudo users can use this option.
search_youtube.lua
Search video on YouTube and send it.
!youtube [term]: Search for a YouTube video and send it.
set.lua
Plugin for saving values. get.lua plugin is necessary 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
steam.lua
Grabs Steam info for Steam links.
tex.lua
Convert LaTeX equation to image
!tex [equation]: Convert LaTeX equation to image
time.lua
Displays the local time in an area
!time [area]: Displays the local time in that area
translate.lua
Translate some text
!translate text. Translate the text to English.
!translate target_lang text.
!translate source,target text
tweet.lua
Random tweet from user
!tweet id [id]: Get a random tweet from the user with that ID
!tweet id [id] last: Get a random tweet from the user with that ID
!tweet name [name]: Get a random tweet from the user with that name
!tweet name [name] last: Get a random tweet from the user with that name
twitter.lua
When user sends twitter URL, send text and images to origin. Requires OAuth Key.
twitter_send.lua
Sends a tweet
!tw [text]: Sends the Tweet with the configured account.
version.lua
Shows bot version
!version: Shows bot version
vote.lua
Plugin for voting in groups.
!voting reset: Reset all the votes.
!vote [number]: Cast the vote.
!voting stats: Shows the statistics of voting.
weather.lua
weather in that city (Madrid is default)
!weather (city)
webshot.lua
Take an screenshot of a web.
!webshot [url]
wiki.lua
Searches Wikipedia and send results
!wiki [terms]: Searches wiki and send results
!wiki_set [wiki]: sets the wikimedia site for this chat
!wiki_get: gets the current wikimedia site
xkcd.lua
Send comic images from xkcd
!xkcd (id): Send an xkcd image and title. If not id, send a random one
youtube.lua
Sends YouTube info and image.
[Installation](https://github.com/yagop/telegram-bot/wiki/Installation)
------------
```bash
# Tested on Ubuntu 14.04, for other OSs check out https://github.com/yagop/telegram-bot/wiki/Installation
sudo apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev make unzip git redis-server g++ libjansson-dev libpython-dev expat libexpat1-dev
``````bash
# After those dependencies, lets install the bot
cd $HOME
git clone https://github.com/yagop/telegram-bot.git
cd telegram-bot
./launch.sh install
./launch.sh # Will ask you for a phone number & confirmation code.
```Enable more [`plugins`](https://github.com/yagop/telegram-bot/tree/master/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 the bot and edit if necessary.
Run it as a daemon
------------
If your Linux/Unix comes with [upstart](http://upstart.ubuntu.com/) you can run the bot by this way
```bash
$ 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](https://telegram.me/yago_perez) but if you have an issue please [open](https://github.com/yagop/telegram-bot/issues) one.[Join](https://telegram.me/joinchat/ALJ3izwBCNXSswCHOKMwGw) on the TelegramBot Discussion Group.