My App
Telegram Bot

Owner controls

STOP and UNDO are bare-uppercase keywords sent in a private chat with the bot, not slash commands. /showlimits reads back the dashboard's rate limits and…

Owner controls

STOP and UNDO are bare-uppercase keywords sent in a private chat with the bot, not slash commands. /showlimits reads back the dashboard's rate limits and blocks. The rest of this chapter — User Limits, the Twitter whitelist, Owner Notifications, and Transfer Bot Ownership — is dashboard-only.

STOP and UNDO

STOP and UNDO are bare-uppercase keywords, not slash commands. Neither is listed in Telegram's own / command menu — both have to be typed from memory, exactly as shown, with nothing else in the message.

Where they work

SettingValue
Chat typeA private chat (DM) with the bot only. Sent in a group, supergroup, or channel, neither keyword matches anything.
SenderThe bot's owner, or a Memescale platform admin. A Telegram group's own admins do not qualify from this alone — the check has nothing to do with any group's admin list.
MatchingCase-insensitive — stop, Stop, and STOP all match. The message has to be exactly that word: extra words, punctuation, or trailing text stop the match.

STOP

Sending STOP replies Notifications have been disabled. You can re-enable them anytime with /start. This is a single master switch, separate from the three Owner Notifications toggles below — while it's off, none of the owner's dashboard-triggered DMs go out, regardless of what those three toggles say.

/start, sent by the owner in the same private chat, turns it back on. The very first time the owner ever runs /start, the bot also replies with the line that documents this relationship: Notifications on. You'll get pings here for rate limits, profile changes, and other key events. Reply STOP to mute, /start to re-enable. Every /start after that re-arms notifications silently, with no confirmation text of its own.

UNDO

UNDO is wired to reverse the single most recently remembered change to the Command Changes or Rate Limits & Blocks toggle (see Owner notifications, below). It replies with one of these:

UNDO's replies

ConditionReply
No change is rememberedNo recent notification changes to undo.
A remembered change is restoredNotification changes have been undone.
The bot isn't linked to a dashboard accountCouldn't undo that here — manage notifications at memescale.ai/dashboard.
The restore call fails for any other reasonCouldn't undo that — manage notifications at memescale.ai/dashboard.

UNDO has nothing to undo today

Toggling Command Changes or Rate Limits & Blocks from Settings → Notifications does not arm this. As shipped, sending UNDO always gets the first reply above.

/showlimits

/showlimits prints every blocked user and every rate-limited user configured for the bot — the same data as Management → User Limits, read back into the chat. It shares STOP and UNDO's private-chat, owner-or-platform-admin restriction, but it is a real slash command: the leading / is optional, an @botusername suffix is accepted, and matching is case-insensitive.

What it prints

InputOutput
No restrictions on the bot<b>User Restrictions</b> No restrictions configured for this bot.
2 blocked users, 1 rate-limited user<b>User Restrictions for @examplebot</b> <b>Blocked Users:</b> @spammer1 @spammer2 <b>Rate Limited Users:</b> @chris -- 25 commands/day

Sent with Telegram's HTML parse mode, so the <b> tags shown above render as bold text rather than showing literally.

Rate limits and blocks

Management → User Limits lists every per-user restriction on a bot; its bot picker includes every bot on the account, Telegram or Twitter. Each restriction is one of two kinds, chosen from a Restriction Type dropdown:

Restriction kinds

Dropdown labelTable labelLimit column shows
Rate LimitRate Limited{n}/day
BlockBlocked-

Rate Limit is the default kind for a new restriction.

Adding a restriction

  1. Click Add Restriction.
  2. Enter Username (a leading @ is accepted and stripped). This field becomes read-only once you reopen an existing restriction to edit it — only a new restriction can set the username.
  3. Pick Restriction Type: Rate Limit or Block.
  4. Rate Limit only: set Daily Limit — an integer, minimum 1, no maximum. It defaults to 50.
  5. Pick Restriction Duration (see below). It defaults to Permanent, and reopening an existing restriction to edit it always resets this field to Permanent on screen, regardless of what's actually stored until you change it again.
  6. Click Add Restriction (the button reads Save Changes when editing).
  • Permanent (no expiry) — default
  • 1 hour
  • 1 day
  • 3 days
  • 7 days

Limit

The dropdown offers exactly these five values. The API behind it will also accept a custom duration up to 157,680,000 seconds (~5 years), but nothing in the dashboard UI reaches that path — every save from Management → User Limits uses one of the five above.

Daily Limit and other rules

SettingValue
Daily Limit minimum1. Both the form and the server reject anything lower: Daily limit must be an integer >= 1.
Daily Limit maximumNone.
UsernameTrimmed, lower-cased, leading @ stripped. No length or character check.
Duplicate usernameBlocked before it reaches the server: Restriction already set for @{username} on this bot.
Expired restrictionsHidden from the list entirely — not shown, not marked expired.
DeletingTrash icon → confirm dialog Delete Restriction: Are you sure you want to remove the restriction for @{username}? This action cannot be undone.

Every save from the pencil-edit path — Restriction Type, Daily Limit, or Restriction Duration changed, then Save Changes clicked — appends one entry to that restriction's edit history, even if the values end up unchanged from before. Each entry records an ordinal (1st_Edit, 2nd_Edit, and so on), a timestamp, and the restriction's previous type, daily limit, and expiry. A clock icon next to the username — shown only once at least one edit exists — opens an Edit History popup listing every entry.

Note

Deleting a restriction here asks for confirmation. Deleting a Twitter whitelist entry, below, does not.

Twitter whitelist

The Whitelist tab (/dashboard/whitelist) is Twitter-only — it isn't part of the Telegram tab set. It controls which X accounts can trigger a Twitter bot by @mentioning it; a mention from anyone not on the list is filtered out at X itself, with no cost and no delivery to the bot.

Whitelist rules

SettingValue
Handle pattern^[a-z0-9_]{1,15}$, checked after the handle is trimmed, its leading @ stripped, and it's lower-cased. The dashboard and the server enforce the identical pattern.
Cap200 handles. The add button disables itself at the cap, title="Max 200 reached".
AddingBulk-paste only — there is no single-add path.
RemovingOne click on a row's trash icon. No confirmation dialog.

The add button reads AddUsers — one word, no space between "Add" and "Users".

Adding handles

  1. Click AddUsers. A portal titled Add Users to Whitelist opens.
  2. Paste handles into the textarea — one per line, or comma/space-separated. A leading @ is optional.
  3. The preview updates live: how many are new, how many are already on the list, and how many are rejected (shown as chips, up to 8 new / 6 rejected, with a +n more overflow past that).
  4. Click Add {n} user(s) — the button's own count tracks what you've typed.

The portal's own placeholder text, parsed

InputOutput
Placeholder shown in the textarea@alice @bob charlie, dave eve
Parses to5 new: alice, bob, charlie, dave, eve — 0 rejected

One handle per line and comma/space-separated handles on one line both work, and both appear in this same placeholder.

Limit

Pasting more than the remaining room replies Combined list would exceed 200 entries (current: {n}, adding: {m}) and saves nothing. The portal's footer always shows the total a save would produce: After save: {n} / 200 whitelisted.

Owner notifications

Settings → Notifications, on-screen title Owner Notifications, controls which dashboard edits DM the bot's owner. Bots with no Telegram bot on the account see No Telegram Bots — "Owner notifications are only available for Telegram bots." Exactly three toggles exist, every one ON by default:

Owner Notifications toggles

LabelDescriptionDefault
Command ChangesDM the owner when text or button commands are added, edited, or removed.ON
Rate Limits & BlocksDM the owner when rate limits or blocked users change.ON
Profile ChangesDM the owner when the bot's profile (name, bio, avatar) changes.ON

Each card reads Notifications On or Notifications Off.

Two of the DMs these toggles gate

InputOutput
Rate Limits & Blocks — adding a Rate Limit restriction➕ <b>Rate Limit Set</b> User: @chris Daily Limit: 25 prompts/day
Command Changes — turning Admin Moderation on🛡️ <b>Moderation Updated</b> Ban: Enabled Mute: Enabled

Moderation's own DM is gated by Command Changes, not Rate Limits & Blocks — see the Moderation chapter.

STOP overrides all three

The STOP keyword, above, silences every owner DM regardless of these three toggles; /start re-arms it. These three only decide which categories fire once that master switch is on.

Transfer Bot Ownership

Dashboard → Profile → Advanced Bot Settings → Transfer Bot Ownership moves a Telegram bot to a different Telegram account and is permanent: the current owner loses access immediately, and only the new owner can manage the bot from then on. Changing your own Telegram @username needs no transfer — ownership already follows your account.

On this page