Messages

Live

Message, media and button editor

Complete Defendy editor reference for greetings, farewells, rules and reputation notifications: formatting, variables, media, previews, protection and inline buttons.

The editor is shared by greetings, farewells, rules and reputation notifications. Each phrase is stored separately and can be enabled, selected as the default, or included in random rotation.

Text and length

StateMaximum visible length
Text only4,096 characters
Text with photo, video or GIF1,024 caption characters

The counter measures the visible result, not markup. In greetings and farewells, {rules} is counted after the rules text is inserted. A phrase cannot be saved if that expanded text exceeds the limit. {rules} is forbidden inside the rules themselves to prevent recursion.

Formatting controls

ControlResult
B, I, U, SBold, italic, underline and strikethrough.
</> and code blockInline monospace or a separate preformatted block.
Quote / expandable quoteStandard or collapsible Telegram quote.
SpoilerHides a fragment until tapped.
A / 𝙼Full-width or decorative monospace text.
inv, , , Invisible separator, line break, bullet or list dash.
LinkApplies a URL to selected text. javascript: and data: are rejected.
Inserts a Telegram premium emoji available to the group.

The editor reports malformed or incompatible markup before save. Insert template variables with the chips below the field to avoid spelling errors.

Greeting, farewell and rules variables

VariableReplacement
{name}Member display name.
{username}@username when present.
{mention}Clickable member mention.
{group}Group name.
{member_count}Current member count. Legacy aliases {members_count} and {membercount} also work.
{rules}Active rules text. Use in greetings or farewells, never inside the rules.

Reputation notifications use a separate set: target ({mention}, {name}, {username}), voter ({voter_mention}, {voter_name}), change and total ({delta}, {rating}), rank ({rank_emoji}, {rank_name}), and {group}. Overtake messages use {overtaken_mention}, {overtaken_name} and {position} instead of voter data.

Media

TypeFormatsMaximum size
PhotoJPEG, PNG, WebP10 MB
AnimationGIF10 MB
VideoMP4, WebM50 MB

Adding media changes the text limit to 1,024 characters. “Caption above media” changes caption placement. When replacing a file, wait for the new preview before saving.

Sending options

SettingDefaultEffect
Disable link previewOffStops Telegram from expanding a web link into a card. Unavailable when media is attached.
Caption above mediaOffPlaces the caption before the attachment. Visible only for a phrase with media.
Protect contentOffAsks Telegram to prevent forwarding and saving. Stored per phrase.
Active phraseOn for a used phraseAn inactive phrase stays saved but is not sent.
Default phraseIndex 0 when rotation is offUsed when random phrase selection is disabled.

Inline buttons

You can create up to 8 rows with up to 8 buttons per row.

FieldLimitMeaning
Button text64 charactersUser-facing label.
URL typeURL up to 2,048 charactershttps://, http://, tg:// or @username. The WebApp converts usernames into Telegram links.
Popup type200 charactersShort toast after a tap.
Alert type200 charactersModal alert after a tap.
Copy type256 charactersText Telegram copies for the user.
StyleDefault, primary, success, dangerStandard, blue, green or red in supported Telegram clients.

Do not put secrets in popup, alert or copied text. Button payloads are stored with the phrase and are visible to group administrators.

Safe verification

  1. Create one test phrase and keep the others inactive.
  2. Check preview, expanded variable length and every button.
  3. Send it in a test group. The WebApp preview is representative, but the Telegram client performs the final rendering.
  4. Enable random rotation only after each phrase has been tested.

Need help?

If a setting behaves differently than expected, contact support.@ubotz