Telegram Video Guide

Operator handbook · Current version

From one idea to a finished video

Learn how to submit a creative brief in Telegram, write reliable prompts, track progress, and receive the final video—while reducing scene jumps, identity drift, and disappearing objects.

Current limitationTelegram is designed for “text brief → automatic finished video.” It does not currently bind attached images, videos, or tokens such as @image1 as generation assets. Use the web canvas when exact character, scene, product, or asset-version references are required.

01 · Quick start

Send a creative brief
In a private chat, send it directly. In a group, write @bot_username before the brief.
Select generation settings
Choose language, subtitles, aspect ratio, narration, music, and total duration from the option panel.
Confirm the estimate
Review the estimated cost, then select “Start generation.”
Track and receive
Send “status”; mention the bot first in a group. The finished video or download notice will be sent to Telegram.
Telegram bot showing its cost estimate and video-generation option buttons

This panel appears after submission

  1. The message confirms receipt and shows the estimated cost.
  2. Select dialogue language, subtitle language, aspect ratio, narration, music, and duration.
  3. Narration is off by default. Turn it on only when needed. The screenshot shows the manually enabled state.
  4. Select Start after checking everything, or Cancel to stop without generating.

Minimum recommended brief

Copy and send to the bot
Title: The Red Umbrella
Topic: On a rainy night, a young convenience-store clerk finds a customer's red umbrella, runs to the door, returns it to an elderly man, and receives a warm smile.
Use the buttons for technical settingsDo not repeat language, subtitle, aspect ratio, narration or music in the brief. Duration is the exception - see "Which duration wins" below. If text and buttons disagree, the instructions may conflict.

02 · Common interactions

ActionPurpose
Send a brief directly in private chatCreate a video task
@bot_username + creative briefCreate a task in a group
Send “status”List active tasks

Reply to a task notification and ask for its status to inspect that task. Mention the bot first in a group. Failed tasks provide a “Generate again” button.

03 · Recommended prompt structure

You are writing a creative brief, not the final provider prompt. The system develops the brief, storyboard, character and scene anchors, then compiles an execution prompt for every shot.

High-quality brief template
Title (required): a short name shown in the project list and canvas
Topic (required): character + location + trigger + main action + result

Everything below is optional; the system fills it in when omitted:
Style: one style ID
Story progression: opening…; turn…; ending…
Characters: appearance, clothing, unique features, fixed props
Scene: stable landmarks, furniture positions, inside/outside relationship
Must remain unchanged: identities, clothing, props, scene, spatial relationships
Must appear: required images or text
Dialogue: exact required line; omit when unnecessary
Emotion / pacing: visible performance and rhythm changes
Audience: target audience
Platform: TikTok / YouTube / Reels
Acceptance criteria: only non-negotiable final-video requirements
Only title and topic are requiredEvery other field is optional. The system can generate the style, story progression, characters, scene, audience, and normal acceptance checks. Only specify hard requirements such as exact brand text, dialogue, object count, or ending hold time.

A template you can copy as-is

General template
Title: Messi vs Ronaldo playing badminton
Style: Live-Action Cinematic
Content: The two rally across the net in an indoor hall, from the serve to the smash, ending with a handshake.

Three lines is enough. For Style, use a name from "Available styles" below. For Content, just say what happens, in order — you do not need to write faces, camera moves or lighting yourself, the system fills those in.

Content is capped at roughly 4,000 characters: that is Telegram's single-message limit, anything longer will not send. Also one message is one job — splitting a script across two messages creates two unrelated projects.

Script too long to send? @ the bot in the group and attach the file to that same message. (Sending files in private chats is not supported yet.) .docx, .txt and .md are accepted, up to 2MB and 40,000 characters, with no 4,000-character limit. Bold, headings and tables in Word are flattened to plain text - the storyboard model reads words, not formatting. PDF is not supported: its extracted text often comes out in the wrong order, and a scrambled script is worse than no script.

Which duration wins

What you sendDuration comes from
A one-line idea ("Monkey King wishes the family a happy new year")The seconds you picked on the buttons
A script or shot list (scenes, dialogue, action - or shot numbers and timecodes)However long your own content runs; the button value is overridden

To pin it down exactly, put a line such as Total duration: about 90 seconds at the top of the document - more reliable than letting the system estimate. The ceiling is 10 minutes.

Why it works this wayYou paste a 4,000-character script while the buttons still show the default 60 seconds. Compressing the script would mean cutting your own scenes. What you wrote is what you want.

Available styles

live-action-cinematic

Live-action cinematic

Narrative shorts and film-like scenes

live-action-documentary

Live-action documentary

Observational and natural

commercial-luxury

Luxury commercial

Products, brands, and materials

cartoon-2d

2D cartoon

Flat animation and illustration

cartoon-3d

3D cartoon

Dimensional stylized characters

cg-photoreal

Photoreal CG

Realistic CG and surreal imagery

Choose one style onlyDo not mix live-action cinematic, 2D cartoon, and photoreal CG in the same style field.

04 · Workflow and cost

  1. Send the creative brief; mention the bot first in a group.
  2. Select language, subtitles, ratio, narration, music, and duration.
  3. Review the cost estimate and confirm.
  4. Telegram automatically advances the remaining production gates.
  5. Send “status” to check progress.
  6. Use “Generate again” after a failure.
  7. Videos up to 50 MB are sent directly; larger files use a web download notice.
Check before startingThere is currently no in-progress cancellation button in Telegram. Automatic retries and manual regeneration may incur real costs.

05 · Private menu: subtitles and bound assets

Subtitle style and bound assets are per user. What you set and what you bind is used only for the videos you start — nobody else in the group sees it or is affected by it.

All of it lives in private chat. Message the bot /start (or /menu) to open the menu:

ButtonWhat it does
Subtitle settingsSize, colour, position and weight, with a live preview image
Bind a characterSend a photo plus a name; mention that name in a script and this look gets used
Bind a logoSend a mark plus a name; wherever a brand mark belongs, that artwork is copied
What have I boundLists the characters and logos you have bound

/characters jumps straight to that list.

You have to message the bot firstA Telegram bot cannot open a private chat with you. Until you have messaged it once, the subtitle panel and the binding flows have nowhere to go. So the first time you @ it in a group you get one message with an Open private chat button — one tap and you are in. It appears once per person, it is not a gate, and videos generate fine whether you use it or not.
The private menu opened by /start

Subtitle style

Four settings. Tap one to cycle to its next value; the preview image updates immediately.

SettingValues
SizeSmall / Medium / Large
ColourWhite on black / Yellow on black / White on navy / Black on white / Green on black
PositionBottom / Very bottom / Middle / Top
WeightRegular / Bold / Black

Colour is given as a fill-and-outline pair on purpose: white on white is no outline at all, which disappears over a bright background. Bold is the default because thin strokes are hard to read over real footage.

Changes apply to new videos onlyEach video snapshots the requester’s style at the moment generation starts. Change your style later and an older video keeps the look it was made with, even if it is re-assembled.
The subtitle panel and its preview image

06 · Binding characters and logos

Binding a character

Send a photo in private chat; the image caption is the character’s name. From then on, mentioning that name in a script uses this look.

  • What is stored is an illustrated portrait, not your original photo. The real photo touches a model once, at upload. Every video and every shot afterwards uses the illustration. The original is kept only for review and never takes part in generation.
  • Two conversion routes are tried in order, stopping at the first success: coloured-pencil redraw (the reliable one); failing that, a vision model describes the appearance in words and the portrait is drawn from text alone (less like the person by then, but the broad features survive). If neither works the character is not created — send a different photo.
  • Up to 5 characters per person. Delete one to make room.
  • Uploading generates an image and therefore costs money, so you must have appeared in a whitelisted group before you can upload.
A real person’s photo will be rejected in live-action stylesThe provider’s input moderation blocks a recognisable real person. This has nothing to do with fame — a photo of yourself is blocked just the same. To use a bound look in a live-action style, use an illustration, an original character design or a fictional face; real photos suit 3D and cartoon styles better. When it is blocked, the error names the exact image — see the next section.
Sending a photo to bind a character, and the reply

Binding a logo

Same flow: send the mark plus a name. Two differences:

  • Logos are not redrawn; the original goes into the library. Characters are redrawn to keep a real face out of the model; a logo is the opposite — it has to be copied stroke for stroke.
  • Wherever a brand mark, end card or product plate belongs, the artwork from your file is used instead of the model inventing lettering.

Logos are also capped at 5 per person.

07 · Checking that a character was recognised

The confirmation panel — the one with the Start button — carries a line like this:

Bound assets to be used: Messi, PG logo

That line is the recognition result. Matches are ticked by default and you can change them on the panel: untick a wrong match, tick something that should be used but was not matched. Both directions work.

The bound-assets line on the confirmation panel

A miss is usually a name mismatch

Matching is a substring match: the name you bound has to appear in your script text. The usual trap is that naming and writing are different habits — you bind PG logo but the script says “PG advert” or “PG brand mark”, and the exact words “PG logo” never appear.

Generic suffixes (logo, mark, brand, portrait, look and the Chinese equivalents) are now stripped and retried, so that example does match. The sturdier habit is to bind under the word you actually write with — just PG.

Also, only assets mentioned in the script travel with that video. Your whole library is never attached.

When the provider rejects it

If a bound look fails input moderation, the error names the image:

Rejected: Messi. The provider judged this image may contain a real person.
Resending the same image will fail the same way — it has to be replaced:
use a non-photographic portrait for this character, or drop the binding.
This failure is not retried automaticallyThe same image would be sent again and rejected again; retrying only wastes time. Replace the image, or untick that binding on the confirmation panel, and start again.

08 · Admin setup

  1. Open /settings in the web app.
  2. Enter TELEGRAM_BOT_TOKEN.
  3. Add permitted private or group chat IDs to TELEGRAM_ALLOWED_CHAT_IDS. An empty list permits nobody.
  4. Save and restart the service.
  5. Allow outbound access to api.telegram.org.
Run one bot process onlyMultiple workers may poll the same Telegram update, creating duplicate tasks and duplicate charges.
Copied