Short: Unofficial native Telegram chat client Uploader: michele.dipace@kaffeine.net (Michele Dipace) Author: Michele Dipace Type: comm/tcp Version: 0.0.99 Replaces: comm/tcp/TelegramAmiga-MOS.lha Architecture: ppc-morphos Requires: MorphOS 3.x with its TCP/IP stack WHAT IS THIS? ------------- Unofficial Telegram Amiga: it uses the Telegram API and is part of the Telegram ecosystem, but it is not made by Telegram. Telegram Amiga brings real, live Telegram chat to the Amiga -- not through a gateway, a proxy service or a web wrapper, but by speaking Telegram's own MTProto protocol natively, from scratch, on your machine. You sign in to your normal Telegram account, your chat list appears, and you talk to people (and they talk back) on hardware that may well be older than they are. Everything is built in: RSA, Diffie-Hellman, AES, SHA and the SRP two- factor login are implemented inside the program. Zero external dependencies -- no MUI, no ixemul.library, no AmiSSL, no TCP helper beyond your system's own bsdsocket stack. One program, two faces, one engine and one saved login: TelegramAmiga - the native Intuition/GadTools GUI: chat list with real profile-picture avatars, message bubbles, scrollbars, mouse wheel, context menus. This package ships its icon. The same binary also runs a full-screen text/console client from a Shell -- the manual gives the command line. WHAT CAN I ACTUALLY DO WITH IT? ------------------------------- Read and send messages in private chats, groups and channels. Download a received file (right-click -> Download) or send one from disk, up to 250 MiB on this build, including files over 10 MiB. Photos appear immediately as blurred previews, refine from a bounded download and reuse decoded pixels from disk when reopened. Click one for a larger progressive viewer, or disable inline loading on a slower machine and open only the images you choose. Forward one message to Saved Messages in a click, or choose another destination through chat search. Use the pinned Saved Messages chat as a cloud transfer drawer between the Amiga and your phone or PC. Reply to a specific message (right-click it). Edit or delete your own messages. See real delivery state: one tick = sent, two blue ticks = read, updating live. See who is typing. Search for chats. Send messages from your desk at work and find the conversation already synced when you get home to the Amiga -- and the other way round. Message times follow your Amiga clock. Unread badges and your chat order survive restarts. The window remembers where you left it, and can open on its own screen if you prefer a dedicated page for chatting. GETTING STARTED --------------- 1. Copy this drawer to a WRITABLE volume (not from the archive directly). 2. Double-click TelegramAmiga (or TelegramAmiga-TUI on very low-end setups). 3. First run walks you through the normal Telegram login: phone number, the code Telegram sends you, and your cloud password if you use two-factor. That is all -- next time it goes straight to your chats. The login is stored in telegram-auth.bin next to the program. Treat that file like a house key: NEVER copy it around or share it -- anyone who has it has your Telegram session. Full EN and IT manuals are in the archive, including per-platform notes and troubleshooting. WHAT IS NEW IN 0.0.99 --------------------- ADDED - "Support development..." in the window's Telegram menu, after Help: it says where to support my work on Patreon and opens the link, or copies it when no OpenURL command is there. Voluntary, nothing changes without it, and it never shows on its own. The text client has the same two lines at the end of /help. - More reactions than the ten of the grid. When a chat allows more, the grid's last cell is an arrow that opens every reaction it allows, ten to a row: in a chat that allows all, the 69 free reactions in Telegram's order, and a group's own list whole instead of cut to ten. The text client's /react takes every standard reaction by name, and /reactions lists the names. - Hide message, after a user asked to get rid of posts that do not interest them in groups. Telegram lets nobody delete someone else's message for themselves in a supergroup, so in a group or a channel the right-button menu of someone else's message offers Hide message: it leaves the transcript and stays out on every reload, kept in data/telegram-hidden-msgs.txt (the newest 256). "Show hidden messages" in the chat's menu in the list brings them back. In a basic group the client also asks Telegram to delete it for this account, so it goes from one's other devices too, and that cannot be undone. The text client has /hide, on the last message received or on an id, and /unhide. - /ring in the text client, for the open chat: /ring on lets a group or a channel ring, /ring off makes it quiet again, the same choice as "Enable ring" in the window's chat menu and kept in the same file, so it holds in both. Since 0.0.98 groups start quiet, and the 68000 build, which has only the text client, had no way to wake one. In a direct chat on and off unmute and mute it, and /ring alone says what the chat does now, Telegram's own mute and /bell included. - /ids in the text client, after a user asked what to put where /react wants a message id: the text client never showed one. Switched on, each message starts with its number, like #4821, which /react, /forward and /forwardto take; off by default, so the lines stay as they were. And /react no longer needs the number: without one it takes the last message received from the others, never one's own, so /react heart is enough. - 38 more emoji on the sheet, from the same Noto Emoji set: the free reactions that were missing, among them the exploding head, the clown, the whale, the trophy, the ghost, the unicorn and the three monkeys. They show in messages and reactions, join the end of the emoji panel, and read as short words in the text client, like (unicorn) or o7. CHANGED - The hint a lone / shows in the text client lists every command /help does, on four lines of at most 64 columns. It had fallen behind: /reactions, /ids, /hide, /ring and older ones like /swap and /diff were missing, and its second line ran past 80 columns. - More contrast in the dark colours, same hues, after a user asked for no dark blue on black. The selected chat takes the desktop's selection blue, and on it the time and preview are drawn in the full text colour. Sender names in groups take a lighter shade of their avatar colour, the incoming bubbles and the side panel stand a little further from the window, the read ticks are lighter on one's own bubble, and the unread badge is a brighter blue with a white number. FIXED - A message's right-button menu acts on the message it was opened on. It remembered the message by its row, and in a chat with a full transcript every new message moves each row up by one, so a message arriving while the menu or the reaction grid was open turned the choice to the message below: a reaction landed there, and when that message already carried the same reaction of yours, it was taken away instead. Reply, Edit, Delete, Download and Copy could miss in the same way. The menu now finds its message again by id, and closes when that message is no longer loaded. - Reactions on a photo, a file or a message with a link preview stay shown. The history reader stops at such a message's media, short of its reactions, and passed that unread field on as "no reactions": each refresh of the chat wiped the reactions just added, and reopening the chat showed none, though Telegram and the other clients had them. The history now leaves such a message's reactions as they are, and the periodic reactions poll asks Telegram for them once, the user's own messages included. Opening a chat asks at once instead of waiting for the poll's twenty seconds, and the answer shows on the same tick. - Smoother round shapes on true-colour screens: the reaction chips, the unread badges, the jump button and the initials discs. Their edge was a one-pixel ring halfway between the shape and the background, with the shape one pixel inside it, which read as a dark rim along the straight sides. Each edge pixel now takes the share of it the true circle covers, in quarters, and the shape keeps its full size. Paletted screens keep the hard edge. A COMMUNITY PROJECT ------------------- MIT licensed, non-commercial, written for the love of the platform. Bug reports and wishes are very welcome -- testers on real hardware (A1200s, A4000s, Pegasos, Sam, FPGA machines) are what moves this project forward. The icon is our own design. Carlo Spadoni optimised it for each system, put it on a standard drawer for the drawer icon, and let me ship his versions. Source + issues: https://github.com/kaffeine1/telegram-amiga Development diary: https://androidlab.it/en/telegram-amiga-mtproto-client-development-diary/ Support my work on Patreon (voluntary; no subscription is required to use this software): https://www.patreon.com/c/kaffeine1