Telegram Bot that lets the user subscribe to subreddit galleries to retrieve random static images from them. Powered by Google App Engine.
MIT - Feel free to use and edit.
List of all available commands:
- /help - display help text
- /list - list subscriptions
- /add id - subscribe to a subreddit
- /del id - delete the subscription to a subreddit
- /delall - delete all subscriptions
- /pozo - get a random image from a random subscription
- /pozo id - get a random image from a given subreddit
-
Message @botfather https://telegram.me/botfather with the following text:
/newbot
If you don't know how to message by username, click the search field on your Telegram app and type@botfather
, you should be able to initiate a conversation. Be careful not to send it to the wrong contact, because some users has similar usernames tobotfather
. -
@botfather replies with
Alright, a new bot. How are we going to call it? Please choose a name for your bot.
-
Type whatever name you want for your bot.
-
@botfather replies with
Good. Now let's choose a username for your bot. It must end in
bot. Like this, for example: TetrisBot or tetris_bot.
-
Type whatever username you want for your bot, minimum 5 characters, and must end with
bot
. For example:whateversamplebot
-
@botfather replies with:
Done! Congratulations on your new bot. You will find it at telegram.me/whateversamplebot. You can now add a description, about section and profile picture for your bot, see /help for a list of commands.
Use this token to access the HTTP API: 123456789:AAG90e14-0f8-40183D-18491dDE
For a description of the Bot API, see this page: https://core.telegram.org/bots/api
-
Note down the 'token' mentioned above.
-
Type
/setprivacy
to @botfather. -
@botfather replies with
Choose a bot to change group messages settings.
-
Type
@whateversamplebot
(change to the username you set at step 5 above, but start it with@
) -
@botfather replies with
'Enable' - your bot will only receive messages that either start with the '/' symbol or mention the bot by username. 'Disable' - your bot will receive all messages that people send to groups. Current status is: ENABLED
-
Type
Disable
to let your bot receive all messages sent to a group. This step is up to you actually. -
@botfather replies with
Success! The new status is: DISABLED. /help
-
Click
Create Project
-
Type the project name, whatever you want. For example:
octopus-gorilla-123
. Make sure the Project ID is also the same. -
Clone this repository. If you don't understand what I am saying, click the
Download ZIP
button on the lower-right of this page, and extract the ZIP file. -
Copy
app.yaml.example
intoapp.yaml
. Open the file and change theYOUR_APP_ID_HERE
to the Project ID you set on step 16, and save the file. -
Copy
pozo.cfg.example
intopozo.cfg
. Open the file and change theYOUR_TELEGRAM_TOKEN
to the token you get from @botfather at step 6. -
Download Google App Engine SDK for Python from https://cloud.google.com/appengine/downloads and install it.
-
Deploy the application
appcfg.py --oauth2 update /path/to/pozo-bot
-
Open your browser and go to https://
project-id
.appspot.com/me (replaceproject-id
with the Project ID you set on step 16). -
Wait until you see a long text with
"ok": true
and your bot's name. This could take a minute or so, please reload if it does not succeed. -
Now, go to https://
project-id
.appspot.com/set_webhook?url=https://project-id
.appspot.com/webhook (replace bothproject-id
s with the Project ID you set on step 16). -
You should see
Webhook was set
. -
Open your Telegram client and send any to your bot (type @
your-bot-username
at the search field to initiate the conversation).