Multi purpose telegram bot written in MoonScript/lua and licenced under the GNU General Public License.
Table of Contents
- Setup
- Ranks
- Telegram Cli
- Database
- Plugins
- Support and development
- Special thanks to
- Collaborators
- Other projects
Clone Jack !
cd $HOME
git clone https://github.com/Imandaneshi/jack-telegram-bot.git
cd jack-telegram-botinstall it!
chmod +x install.sh
./install.sh
Add your bot token in config.moon
telegram_api_key: "Your bot token here"Add your telegram id to admins table in config.moon
admins: {
110626080
123456789
--your id
}Run it !
chmod +x run.sh
./run.sh
Use ./run.sh --help for available options
| Ranks | Permissions |
|---|---|
| Admin | Has access to everything |
| Premium | Has access to premium feature |
| Normal user | Has access to public feature |
| Blacklisted | Bot will ignore blacklisted users |
If it's first time you are installing telegram-cli
You should have libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson-dev libpython-dev make installed
You can install them by
sudo apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson-dev libpython-dev make
Install telegram-cli using ./install.sh
Run it
./tg.sh
Enter your phone number and conformation code
And uncomment plugin telegramCli in config.moon
You can change port in tg.sh
You can send commands to telegram-cli using your api bot
Few examples
#tg msg user#id123456789 <text>
#tg msg channel#id123456789 <text>
#tg msg chat#id123456789 <text>
#tg resolve_username username
#tg chat_del_user chat#id123456789 user#id12345678
Jack uses redis as database
Here are the datas
Chats
bot:chats > List of all chats(groups,supergroups,privates)
bot:privates > List of all private chats
bot:groups > List of all groups
bot:supergroups > List of all supergroups
bot:inline_users > List of all inline users
chat_id info
bot:chats:chat_id
- title
- type
user_id info
bot:users:user_id
- first_name
- last_name
- username
These info will be updated on each msg
bot:total_inline_from_user:msg.from.id >
bot statistics
bot:total_messages > Number of total msgs bot received
bot:total_inlines > Number of total inline requests
chat_id msg statistics
bot:total_chat_msgs:chat_id > Number of total msgs bot received in chat_id
"bot:total_users_msgs_in_chat:chat_id:user_id" > Number of total msgs bot received in chat_id from user_id
chat_id members
bot:chatchat_id > list of chat_id members
How to backup,restore,secure,stablize redis DB
Plugins list
- 9gag
- Admin
- Anime
- Calculator
- Cat
- Chatter
- Code
- Currency
- Dogify
- Echo
- Giphy
- Github
- Help
- Imdb
- Ipinfo
- Lastfm
- Linkshortener
- lmgtfy
- Location
- Me
- Meme
- Moon
- Qrcode
- Reactions
- Remind
- Set
- Shell
- Slap
- Spotify
- Stats
- Sticker
- Talk
- Telegram-Cli
- Time
- Translate
- Time
- Translate
- Urban dictionary
- Weather
- Webshot
- Who
- Wikipedia
- Youtube
Send random image from 9gag
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Commands
/9gag
Plugin for admins
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| N | N | Y | Y |
Commands
/bot
Returns Bot status
/admin reload
Reloads bot
/plugins <Plugin_name> <chat_id> <true|false>
True will disable plugin
<Plugin_name>on chat<chat_id>
/blacklist <user_id>
This command will blacklist <user_id>
Can also be used by reply
/bc <chat_id> <text>
this command will send
<text>to<chat_id>Markdown is enabled
use @channel_username for sending msgs to channels
/broadcast <msg>
This command will send msg to all chats
/editmsg <new msg>
Edit message
Use in reply
Anime plugin (hummingbird.me)
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Commands
/anime search <anime name>
For searching
/anime pic <query>
Will search for query
/anime pic
Will send random anime pic
Returns solutions to math expressions
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Commands
/calc <expression>
Returns a cat
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | O | Y | Y |
Commands
/cat
Talk to bot in English !
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
bot_first_name, <text>
bot_username, <text>
jack, How are you ?
@imandabot, How are you ?
you can also trigger chatter plugin by talking to bot in private or replying on of its messages in groups
Send the code in image format with support for highlighter.
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | Y | N | N |
Commands
/code <language> <code>
Currency rate converter
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Commands
/cash <amount> <from> to <to>
Returns exchange rates for various currencies.
Create a doge image with you words
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/dogify <your/words/with/slashes>
Returns text
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Commands
/echo <text>
Markdown is enabled
Linux Fortunes
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | N | Y |
Commands
/fortunes
Retrieves variables saved with /set
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/return (value_name)
Returns a GIF from giphycom!
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | Y | Y | N |
Commands
/giphy
Returns a random GIF
/giphy <query>
Returns a GIF about
Returns info about GitHub repo
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Commands
/github <repo>
/gitrepo SEEDTEAM/TeleSeed
Google search
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Commands
/google <terms>
/g <terms>
About and greeting
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/about
Info about your bot
Hi bot_first_name
Bye bot_first_name
Returns info about other plugins
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| N | N | Y | Y |
Commands
/help
Will return a short list of plugins
/help all
Will return full list of plugins with their commands
/help <plugin_name>
Will return info about that plugin
Returns Info about movie from IMDB and its poster
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Commands
/imdb
Search users on instagram
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | Y | N | N |
Commands
/insta <username>
Return user info
Returns Given IP or domain info
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | Y | Y | Y |
Commands
/ip <IP|domain>
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | Y | Y | Y |
Commands
/lastfm
Returns what you are or were last listening to
/lastfm <username>
Returns what is or was last listening to
/lastfm set <username>
Will set your username
/lastfm rem
Will remove your username
Returns Shorten link
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | Y | Y | Y |
Commands
/shorten <url>
/shorten https://github.com/SEEDTEAM
Let me google that for you !
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Sends location data
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/loc <query>
/location <query>
Your profile in telegram !
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Commands
/me <parameter> <query>
/me facebook imandabot
/me <parameter> del
Will delete
/me
Will return your profile and msg Statistics
Can also be triggered by reply
Reactions
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Commands
/reactions
Returns list of reactions
Reminder
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/remind <delay (value|mh)> <text>
/remind 1h test
/remind 1m test
/remind 1h30m test
This plugin will save data in Redis(database) So It even works after Bot crashed or anything happen
Plugin for saving values
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/set <value_name> <data>
Run terminal commands
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| N | N | N | N |
Commands
/shell <Command>
/shell date
Slap someone
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/slap
By reply
/slap <name>
Spotify plugin
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | O | Y | Y |
Commands
/spotify get <track name(for search)>
Returns preview of that song (only 30 sec)
/spotify track <track name(for search)>
Returns track info and picture
/spotify album <album name(for search)>
Returns album info and picture
/spotify artist <artist name(for search)>
Returns artist info and picture
/spotify playlist <playlist name(for search)>
Returns playlist info and picture
Chat msg statistics
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/chatstats
Returns a list of members with their msg statistics
Return a sticker with your text
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/sticker <text>
Returns voice
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/tts <text>
Control a real telegram account
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| N | N | N | N |
Commands
/tg <Telegram-cli command
Returns the time, date, and timezone for the given location
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Commands
/time <location>
Yandex translate
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | Y | Y | Y |
/translate <language> <text>
Will translate text to language
/translate <language>
examples:
en for translating text to english
ar-en for translating text from arabic to english
You can use both
Can be used by replying to a msg
Returns the top definition from Urban Dictionary.
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/ud <query>
Returns the current weather
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | Y |
Commands
/weather <city>
Returns screen shot from given website
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | Y | Y | N |
Commands
/webshot <url>
Returns info about user and chat
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/who
Returns results from wikipedia.com
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | N | Y | N |
Commands
/wiki <query>
/wikipedia <query>
Returns results from youtube.com
| Listed | Requires API KEY | Enabled by default | inline |
|---|---|---|---|
| Y | Y | N | Y |
Commands
/youtube get <video name(for search)>
/youtube dl <video name(for download)>
Join our development group by sending /join 1047524697 to @TeleSeed
An advance Administration bot
Connects 2 groups or can be used to create a logging group
A Linux file manager telegram bot