mirror of
https://github.com/TheFunny/TelegramTwitterMediaBot.git
synced 2026-09-23 23:32:05 +00:00
feat(commands): /test sends the media, /debug takes over the parse report
- `/test <url>` now runs the ordinary link pipeline and actually sends the media, but with the chat's post-send actions suppressed: no channel forward, no edit-before-forward prompt. It is the same code path as a normal link (same caption/format handling, link cache, retries, dead-letter notification), so "does this link work?" is answered by the send itself. - `/debug <url>` keeps what `/test` used to do: fetch and reply with the HTML parse report, sending/caching/forwarding nothing. - `urls::url_media` takes a `PostSend` mode (`FromChat` for the URL workers, `Suppressed` for `/test`); `build_send_task` maps it to the task's `edit_before_forward`/`forward_channel_id`. Notification ids stay set in both modes, so a queued retry still reports a dead-letter to the chat. - `/test` rejects an unsupported URL with the same message the old parse-only command used (the URL flow would otherwise ignore it silently). - Report builder renamed `test_parse_report` -> `debug_report` (with the cap constant), `parse_test_arg` -> `parse_arg_remainder` (now shared by both commands). README/README.en command tables and AGENTS.md updated; `/help` descriptions come from the enum. Tests: +3 (normal flow still honours the chat's settings, `/test` sends with them suppressed and keeps the cache entry, `build_send_task` mode mapping). The suppression test was verified to fail when the mode is ignored. fmt/clippy clean, 73 + 69 tests pass.
This commit is contained in:
+2
-1
@@ -114,7 +114,8 @@ Telegram only accepts ports 443/80/88/8443.
|
||||
| `/set_format <site> <format>` | Customize the caption format for one site. Sites: `twitter` / `bsky` / `pixiv` / `misskey`. Placeholders: `{url}` `{author}` `{author_url}` `{title}` `{tags}` |
|
||||
| `/clear_cache [link]` | Clear the link cache (admin only); with a link only that entry, otherwise everything |
|
||||
| `/bot_dict` | Show the current chat state (debugging; admin only) |
|
||||
| `/test <link>` | Debug: parse a link and report the parse result only (site, title, author, tags, media list) — no media is sent |
|
||||
| `/test <link>` | Parse a link and send its media; no channel forward, no edit-before-forward prompt (send only) |
|
||||
| `/debug <link>` | Debug: parse a link and report the parse result only (site, title, author, tags, media list) — no media is sent |
|
||||
|
||||
Link processing works only in private chats; commands work in any chat.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user