Skip to main content

Telegram

Telegram for fancy-flow — as four imported, versioned packages, one per runtime. Not vendored source: a copy cannot be upgraded, and third-party APIs change.

Runtime Package Install
Authoring surface (every host) @particle-academy/telegram-ui npm install @particle-academy/telegram-ui
Node @particle-academy/telegram-js npm install @particle-academy/telegram-js
PHP 8.4+ particle-academy/telegram-php composer require particle-academy/telegram-php
Python 3.11+ fancy-telegram pip install fancy-telegram

The ui package is the editor surface and is React on every host — a PHP or Python project installs it and its own runtime package, and never the js one.

What it costs you

One dependency: @particle-academy/fancy-connector-core (or particle-academy/fancy-connector-core on Composer), which the js and php packages pull in themselves. The Python package has zero runtime dependencies.

No Telegram SDK. Plain HTTP, deliberately: a vendor SDK is third-party code subject to the kit's full approval bar, and one per provider is hundreds of dependencies nobody is tracking.

Setting it up

Everything below is generated from provider/manifest.json, so it cannot disagree with what the packages do.

Credentials

A Telegram connection holds 1 value.

Every value here is account scope: one per connected account, not one per installation.

Field Scope Secret Where it comes from
Bot token per connected account secret From @BotFather — 123456:ABC-DEF… . A bot registered in the test environment is a DIFFERENT bot with a different token; the same token does not reach both.

The estate

Telegram has a test estate on the same host, reached with credentials from a SEPARATE test account you register. Selecting sandbox mode uses those credentials.

Telegram's test environment is a genuinely SEPARATE ACCOUNT: you create a new account inside it and register a new bot there, so the sandbox credential is a different token rather than the same one pointed elsewhere. The /test path segment is how you reach it; the account is what makes it separate. Flood limits are NOT relaxed there, so it is a place to test, not a place to hammer.

What it can do

Triggers

get_updates — Telegram message

Start a run when a Telegram bot receives an update (long polling, not a webhook).

Polls Telegram, no more often than every 1 seconds.

You have to set this up with the provider first:

The host polls getUpdates on a schedule and persists the offset cursor between calls, passing the last cursor back in — Telegram queues nothing once an offset has acknowledged it, so a lost cursor is lost updates. getUpdates and setWebhook are MUTUALLY EXCLUSIVE for one bot: a host running both gets neither.

Run it before you have credentials

Every operation ships a faker, whether or not Telegram has a sandbox. Set a node's mode to fake and it returns the shape Telegram actually publishes — the same field names, deterministically — so you can wire the downstream nodes before touching an account, a key, or a network.

This repository is generated

provider/ is the source. Everything under packages/ is emitted from it and must not be hand-edited — CI regenerates and diffs on every push, and the next protocol sync destroys anything it finds. See AGENTS.md.

Two namespaces, which do not match on purpose

The repo is github.com/Fancy-Friends/telegram; the packages publish under particle-academy. Nothing derives one from the other — the names come from weaver's friends.json and nowhere else.

Licence

MIT.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fancy_telegram-0.3.0.tar.gz (17.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fancy_telegram-0.3.0-py3-none-any.whl (18.7 kB view details)

Uploaded Python 3

File details

Details for the file fancy_telegram-0.3.0.tar.gz.

File metadata

  • Download URL: fancy_telegram-0.3.0.tar.gz
  • Upload date:
  • Size: 17.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.15

File hashes

Hashes for fancy_telegram-0.3.0.tar.gz
Algorithm Hash digest
SHA256 b8f364e5b6b18467a2eac3813a8743e4af423721f5181b03543a43d833ef6d84
MD5 fe6e478c2cd7288b0b4c80e5074adb03
BLAKE2b-256 fda5c0512e84d1b25849c65e6a9f048bfdacc11dbc4b1dd57faf1048b94e94c3

See more details on using hashes here.

File details

Details for the file fancy_telegram-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: fancy_telegram-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 18.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.15

File hashes

Hashes for fancy_telegram-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 76e06cee9bee124fc4f67c0b09337a18feaef1ff1d9d180d90f208a426dc1bac
MD5 c784e333535b9820e95aee615f5b6945
BLAKE2b-256 4c526644e7814ca72e8183e62b442d2c36e523705362961e546978595adf9f7c

See more details on using hashes here.

Release history Release notifications | RSS feed

0.3.1

2 files

This release

0.3.0 This release

2 files

0.2.0

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page