Telegram Bot Plugin

Introduction

This plugin allows you to build Telegram bots by sending messages, photos, music to a chat with the user.

Prerequisites

You must have an account with Telegram to interact with the Telegram API. Create your development account: https://core.telegram.org/

How to setup

After installing the plugin, please insert your API key in all the parameter fields that you see on the plugin tab.
Image without caption
:::hint The steps on how to get the Key are presented on the Demo page.​
You will not be able to receive updates using getUpdates for as long as an outgoing webhook is set up. For details please check here: https://core.telegram.org/bots/api#getting-updates :::

Webhook setup

  1. Go to Tab Settings - > API -> and click on “Enable Workflow API and backends workflows ” and "Enable Data API" to open the application for external connections
Image without caption
3. Click on the pages menu - “Backend workflow” and go to “API workflow” page
Image without caption
Image without caption
4. Add a new endpoint and type a name for it (this will be the webhook for Telegram to which it'll connect to - https://core.telegram.org/bots/webhooks)
Image without caption
5. Click on the endpoint and then click “detect data”
Image without caption
6. Copy the link
Image without caption
7. Install postman on your computer and then import the collection:
javascript
{ "update_id": 1234567, "message": { "message_id": 751, "from": { "id": 12122121, "is_bot": false, "first_name": "Me", "last_name": "&", "username": "&&&&", "language_code": "en" }, "chat": { "id": -104235244275, "title": "Some group", "type": "supergroup" }, "date": 1579999999, "text": "Hi!" } }
8. In the call that you see replace the URL with the one you copied from the detect data and initialize the call.
Image without caption
9. You should see a success confirmation in the postman window.
Image without caption
10. On the Telegram side use setwebhook call to tell Telergram which URL should be used for webhooks (Note: it’s the same that you used in postman but without “initialize” at the end on the Telegram side). More info on how to work with Telegram webhooks (https://core.telegram.org/bots/api#setwebhook and here https://core.telegram.org/bots/webhooks)
When using sendmessage (https://core.telegram.org/bots/api#sendmessage) call you have a few options for the replymarkupfield (which is optional)
**Main options are: **1. inline keyboard (shows buttons right next to the message) here is a sample syntax
{ “inline_keyboard”: [[ { “text”: “I’m ready, let’s get started”, “callback_data”: “readytostart” }] ] } you can add more buttons in a row and have a few rows of buttons
2. custom keyboard (shows custom keyboard with buttons instead of the regular keyboard) sample syntax { “keyboard”: [[ { “text”: “Done” }] ],“one_time_keyboard”:true } same here, you can add more buttons in a row and have a few rows of buttons
You're all set to send and receive data from Telegram​
:::hint To see how the Webhook is set on the Demo page please check backend workflows.​ :::

Changelogs

Update 19.05.2022 - Version 1.9.0

  • added - new calls to receive and download the photo from the users

Update 7.07.2022 - Version 1.10.0

  • added - added new action "Send Poll"

Update 08.11.22 - Version: 1.11.0.

  • Fixed "Send Message" action

Demo to preview the settings:

:::hint Try Telegram Bot: telegram.me/zenifybot :::

Helpful?