Fernschreiber

Rating: 
4.89655
Your rating: None Average: 4.9 (58 votes)

Fernschreiber is a Telegram client for Salifish OS

Fernschreiber (German for teleprinter, teletypewriter, teletype or TTY) connects you with the Telegram network. It's still in an early development phase, but it already supports many of the most popular features such as:

  • Chat list in order of last received message
  • Two-step authentication
  • Read standard text messages, pictures, videos. animated GIFs, animated and non-animated stickers, voice notes, locations, venues, polls and documents
  • Displays web page previews
  • Send text messages, stickers, reply to messages, attachments: images, videos, documents, polls, voice notes, locations (yes, more to come ;))
  • Edit messages
  • Delete messages
  • Search chats and messages
  • Display sent/read state of messages
  • Notifications
  • Contact support and device contacts synchronization
  • Secret chats
  • Mute/unmute chats
  • Join/leave chats
  • Pinned messages
  • Forward messages
  • Chat information page
  • @-mentioning support, use @<username> in the message field to search!
  • Easy emoji selection, use :<keyword> in the new message field to search for them!
  • Open chat from external link (integration in Sailfish OS open-with menu)
  • A lot of eye candy (yes, you get the complete set of emojis for example) ;)

Have fun with Fernschreiber!

Issues and Feature Requests

Known bugs/issues and feature requests are available at https://github.com/Wunderfitz/harbour-fernschreiber/issues. In case you would like to report a bug or post a feature request, please do it there. Be sure to explain the bug or feature request in detail, that makes it easier to sort and prioritize.

Open Source and Contribution

Feedback about Fernschreiber is always appreciated (good, bad, improvement/feature ideas etc.). 

You can contribute with a translation, a new feature or even a bugfix. The sources are on GitHub at https://github.com/Wunderfitz/harbour-fernschreiber. Please acknowledge the GNU GPLv3 before contributing/forking. Thanks to all new and especially to the existing contributors!

Screenshots: 

Keywords:

Application versions: 
AttachmentSizeDate
File harbour-fernschreiber-0.1-6.armv7hl.rpm11.8 MB20/09/2020 - 22:09
File harbour-fernschreiber-0.2-1.armv7hl.rpm6.12 MB30/09/2020 - 22:53
File harbour-fernschreiber-0.2-1.i486.rpm6.29 MB30/09/2020 - 22:53
File harbour-fernschreiber-0.3-2.armv7hl.rpm5.9 MB19/10/2020 - 00:09
File harbour-fernschreiber-0.3-2.i486.rpm6.08 MB19/10/2020 - 00:09
File harbour-fernschreiber-0.4-2.armv7hl.rpm5.93 MB11/11/2020 - 20:19
File harbour-fernschreiber-0.4-2.i486.rpm6.15 MB11/11/2020 - 20:19
File harbour-fernschreiber-0.4.1-1.i486.rpm6.14 MB12/11/2020 - 23:58
File harbour-fernschreiber-0.4.1-1.armv7hl.rpm5.93 MB12/11/2020 - 23:58
File harbour-fernschreiber-0.5-2.armv7hl.rpm5.98 MB01/12/2020 - 01:18
File harbour-fernschreiber-0.5-2.i486.rpm6.19 MB01/12/2020 - 01:18
File harbour-fernschreiber-0.5.1-2.i486.rpm6.2 MB05/12/2020 - 01:00
File harbour-fernschreiber-0.5.1-2.armv7hl.rpm5.99 MB05/12/2020 - 01:00
File harbour-fernschreiber-0.6-66.armv7hl.rpm6.48 MB05/01/2021 - 23:42
File harbour-fernschreiber-0.6-66.i486.rpm6.62 MB05/01/2021 - 23:42
File harbour-fernschreiber-0.6.1-3.i486.rpm6.63 MB06/01/2021 - 23:44
File harbour-fernschreiber-0.6.1-3.armv7hl.rpm6.48 MB06/01/2021 - 23:44
File harbour-fernschreiber-0.7-4.armv7hl.rpm5.74 MB06/02/2021 - 01:33
File harbour-fernschreiber-0.7-4.i486.rpm6.03 MB06/02/2021 - 01:33
File harbour-fernschreiber-0.8-1.i486.rpm6.04 MB23/02/2021 - 00:20
File harbour-fernschreiber-0.8-1.armv7hl.rpm5.75 MB23/02/2021 - 00:20
File harbour-fernschreiber-0.8.1-2.armv7hl.rpm5.75 MB02/03/2021 - 00:20
File harbour-fernschreiber-0.8.1-2.i486.rpm6.03 MB02/03/2021 - 00:20
File harbour-fernschreiber-0.8.2-1.i486.rpm6.04 MB03/03/2021 - 01:19
File harbour-fernschreiber-0.8.2-1.aarch64.rpm5.72 MB03/03/2021 - 01:19
File harbour-fernschreiber-0.8.2-1.armv7hl.rpm5.75 MB03/03/2021 - 01:19
File harbour-fernschreiber-0.9-3.aarch64.rpm5.73 MB30/05/2021 - 20:28
File harbour-fernschreiber-0.9-3.armv7hl.rpm5.75 MB30/05/2021 - 20:28
File harbour-fernschreiber-0.9-3.i486.rpm6.04 MB30/05/2021 - 20:28
Changelog: 

0.9

0.8.2

  • Prepare aarch64 build
  • Updated Polish translation - thanks to atlochowski

0.8.1

  • Fix: Show active sessions button only when authenticated - thanks to monich
  • Fix: Show newly registered contact as simple message
  • Updated translations for Finnish, Polish, Russian, Spanish - thanks to all contributors

0.8

  • Tap on a sticker to show overlay with the corresponding sticker set
  • Sticker set overlay allows to uninstall it
  • Redesign sticker picker, improve loading time
  • Additional context menu to prevent the normal one from becoming too big, see https://github.com/Wunderfitz/harbour-fernschreiber/issues/216
  • Manage all Telegram sessions for current user (see About -> Active Sessions)
  • Forward message now directly available in (additional) context menu
  • Use different background colors for muted chats - thanks to monich
  • Enable storage optimizer per default
  • [SFOS 4] Disable contacts sync as no longer possible, see https://forum.sailfishos.org/t/4-0-1-45-non-jailed-contacts-sqlite-datab...
  • Fix: Found private chats no longer appear automatically in the chat list
  • Fix: Stickers can now be sent as replies
  • Fix: Message sticker highlight and click behavior now aligned with other message types - thanks to monich
  • Fix: Don't auto-scroll if context menu is opened, see https://github.com/Wunderfitz/harbour-fernschreiber/issues/139
  • Fix: Deleted in-reply-to messages are now shown with a placeholder, see https://github.com/Wunderfitz/harbour-fernschreiber/issues/374
  • Fix: Sort text replacements better to avoid overlaps in case of special characters, see https://github.com/Wunderfitz/harbour-fernschreiber/issues/334
  • Fix: Trigger mark-as-read (almost) immediately after opening chat (plus configurable delay)
  • Fix: [SFOS 4] Documents app can no longer access all directories, always download before calling it
  • Fix: [SFOS 4] Forwarding a message no longer causes the page stack to become invalid (navigating back was no longer working)
  • Several translations updated - thanks to all contributors

0.7

  • Massively extended bot support - thanks to jgibbon
  • Option to change first name, last name, username
  • Add and delete profile pictures
  • Set personal privacy options
  • Pin/unpin chat
  • Option for online-only mode
  • Option to logout - thanks to santoshmanikandan
  • Option to override notification sound settings - thanks to monich
  • Option to disable delay for marking messages as read
  • Show channel members if authorized - thanks to monich
  • New UX for audios, voice notes and documents - thanks to jgibbon
  • Updated Fernschreiber logo - thanks to monich
  • Better loading/preview image - thanks to jgibbon
  • New pinned chat icon - thanks to jgibbon
  • Add explanations to quiz - thanks to jgibbon
  • Real estate optimizations for chat list - thanks to jgibbon
  • Nice landscape layout for settings page - thanks to monich
  • Full width for channel messages - thanks to jgibbon
  • Architecture changes and improvements to message type handling - thanks to jgibbon
  • Update channel message count in real time - thanks to monich
  • Fix: Get sound back for notifications
  • Fix: Chat muted icon always visible in list
  • Fix: Mark older messages as read once a reply has been sent
  • Fix: No longer display own messages as unread
  • Fix: Initial scroll position now normally on the first unread message
  • Fix: Improve sent/read indicator handling
  • Fix: Don't let context menu be wider than its combo box - thanks to monich
  • Fix: Images couldn't be clicked at the complete width - thanks to jgibbon
  • Fix: Don't retry downloading files too often - thanks to monich
  • A lot more fixes - thanks to monich and jgibbon
  • New Slovak translation - thanks to okruhliak
  • Several translations updated - thanks to all contributors

0.6.1

  • Show indicator for pinned chats
  • Use highlightBackgroundColor and align size for all chat attributes (unread messages, secret chat, pinned chat)
  • Fix: Chat list order of sequence was wrong in some circumstances
  • Fix: Make video (fullscreen) page work again
  • Fix: Add build requirements for Qt Multimedia and Qt Positioning
  • Updated translations for Finnish and Swedish - thanks to jorm1s and eson57

0.6

  • Filter chat list (tap on title bar to open search field) - thanks to the entire dev team for the great discussion and contributions to the layout :)
  • Search for public chats (see pulley menu on overview page)
  • Search for chat messages (see pulley menu on chat page)
  • Support sending voice notes
  • Support sending locations
  • Add message draft support - thanks to jgibbon
  • Basic bot messages support (reply markup) - thanks to jgibbon
  • Add 'Mark chat as read/unread' option
  • Add download option to audio messages (voice notes, music...)
  • Introduce proper text if other people added/removed a person from a chat
  • Tweaks to poll layout - thanks to monich
  • New option to keep message input focused after message was sent - thanks to jgibbon
  • Send message button now removed if Send-message-by-enter option is enabled (and no attachment is set) - thanks to santhoshmanikandan
  • Performance and code optimizations (architecture, startup, JS components) - thanks to monich and jgibbon
  • Improve readability in light ambiences
  • Upgrade to TDLib 1.7
  • Fix: Only show reply to option for messages that can be replied to - thanks to monich
  • Fix: Emoji positioning in multi-line texts - thanks to monich
  • Fix: Left-over @-mention notifications when all messages in chat are read
  • Fix: Occasional crashes on opening poll context menu - thanks to monich
  • Fix: Don't display in-reply-to section if message wasn't found
  • Several translations updated - thanks to all contributors

0.5.1

  • Add verification badge to verified chats - thanks to monich
  • Improve preview of wide images - thanks to monich
  • Fix: Editing functionality (was broken with newlines and didn't update correctly)
  • Fix: Show single message in a chat if on receiving side
  • Allow any screen orientation for picker dialogs - thanks to monich
  • Fix: Long tap on image preview items - thanks to monich and jgibbon
  • Press effect for image preview items - thanks to monich
  • Fix: Chat Page flickable misplaced under some circumstances
  • Fix: Short text for 'myself' short messages of channels in chat list
  • Several translations updated - thanks to all contributors

0.5

  • Support secret chats
  • Support Telegram contacts & synchronization with local contacts DB on request
  • Initiate private & secret chats from contact
  • Support pinned messages
  • Always position chat at last read state, even if unread message count is >50
  • Support message forwarding - thanks to jgibbon
  • Support multiple message selection - thanks to jgibbon
  • Support @-mentioning in message input field - simply type '@' followed by the name to properly mention somebody
  • Support video notes
  • Better notification handling - thanks to monich
  • Better chat permission handling - thanks to jgibbon
  • Chat information attached to chat page - thanks to jgibbon
  • Display message sent/received indicator in chat list
  • Display pinned/in-reply-to message on tap as overlay
  • Support for TDLib storage optimizer - thanks to monich
  • Switch from elide truncation mode to fade out
  • Switch to generic file picker for documents
  • Localization improvements (e.g. plural handling) - thanks to jgibbon
  • Logging/debugging improvements - thanks to monich and jgibbon
  • Several performance improvements - thanks to monich and jgibbon
  • Make emojis a little bigger and change alignment to address display issues (only a workaround as it seems to be a QML bug, but we need to use what we have...)
  • Fix: Wrong space allocation for some web page previews
  • Fix: Display correct chat photo - thanks to monich
  • Fix: Message pending indicator though message was sent successfully
  • Fix: Mute chats that have never been muted before
  • Fix: Truncate username correctly if it's very long
  • Several translations updated - thanks to all contributors

0.4.1

  • Several translations updated - thanks to all contributors

0.4

  • Support for animated stickers - thanks to monich
  • Chat information page (members, picture(s), settings...) - thanks to jgibbon
  • Support for polls - thanks to jgibbon
  • Code & performance optimizations - thanks to monich and jgibbon
  • Improve chat scroll position on open - thanks to jgibbon
  • Start chats from @-mention or name
  • Integration in Sailfish OS open with menu
  • Join and leave chats
  • Fixes and improvements to notifications - thanks to monich
  • Differentiate between simple and normal messages in chats - thanks to jgibbon
  • Switch to SVG icons - thanks to jgibbon
  • Mark all messages as read - thanks to jgibbon
  • Copy message to clipboard - thanks to chstem
  • New sticker icon - thanks to jgibbon
  • Fixes to link and HTML entity handling
  • Switch message sent date display on tap (... ago <-> Monday, ...)
  • Many translations updated - thanks to all contributors
  • Swedish translation - thanks to eson57

0.3

  • Support for sending stickers
  • Search for emojis from message input field, use :<keyword> to start searching
  • New icon/logo - thanks to iamnomeutente
  • Option to customize non-graphical notification feedback - thanks to monich
  • Add user registration - thanks to jgibbon
  • Don't show irrelevant groups - thanks to monich
  • Display information about forwarded messages
  • Option to avoid displaying stickers like images - thanks to monich
  • Fix: Don't reset edit/in-reply-to mode after focus change
  • Fix: Display caption for documents
  • Fix: Reserve some space for lazy loaded elements
  • Fix: Don't display error message in case of repeated download of the same file
  • New translations (Finnish, Italian, Russian), thanks to jorm1s, iamnomeutente, arustg and monich
  • That was quite a lot - I hope I didn't forget anything. If I did, big sorry and please let me know!

0.2

  • Support sending images, videos and documents
  • Support receiving locations and venues - thanks to jgibbon
  • Performance improvements for chat list, new sorting algorithm and much more - thanks to monich
  • Performance improvements for chat, lazy loading for most UI elements
  • Cover page improvements - thanks to jgibbon
  • Fix handling of "<>" in messages
  • Differentiate text between other people and current user ("You have..." vs. "Somebody has...")
  • Support for the Jolla Tablet
  • New translations (Chinese, Hungarian, Polish, Spanish) - thanks to dashinfantry, edp17, atlochowski, GNUuser

0.1

  • Initial Release

Comments

slava's picture

Oh, Telegram requires you to distribute your credentials in plaintext? That's silly. I didn't expect that from a company involved in an encryption/privacy/security business. I'm starting to doubt that everything else in Telegram is as secure as they claim :|

Sure, I won't post your "credentials" to github or any other place where they can be indexed by search engines.

WerkWolf's picture

Maybe they should integrate your Foil functionality into TDLib - or I should do it to protect these "credentials". ;)

slava's picture

Hmm, why are these static libraries being installed?

[root@Sailfish ~]# ls -la `rpm -ql harbour-fernschreiber | grep 'a$'`
-rw-r--r--    1 root     root        198354 Sep 20 19:34 /usr/share/harbour-fernschreiber/lib/libtdactor.a
-rw-r--r--    1 root     root        130292 Sep 20 19:34 /usr/share/harbour-fernschreiber/lib/libtdclient.a
-rw-r--r--    1 root     root      36924996 Sep 20 19:34 /usr/share/harbour-fernschreiber/lib/libtdcore.a
-rw-r--r--    1 root     root        463938 Sep 20 19:34 /usr/share/harbour-fernschreiber/lib/libtddb.a
-rw-r--r--    1 root     root       2049692 Sep 20 19:34 /usr/share/harbour-fernschreiber/lib/libtdjson_private.a
-rw-r--r--    1 root     root          5596 Sep 20 19:34 /usr/share/harbour-fernschreiber/lib/libtdjson_static.a
-rw-r--r--    1 root     root        886524 Sep 20 19:34 /usr/share/harbour-fernschreiber/lib/libtdnet.a
-rw-r--r--    1 root     root       1044752 Sep 20 19:34 /usr/share/harbour-fernschreiber/lib/libtdsqlite.a
-rw-r--r--    1 root     root       1277968 Sep 20 19:34 /usr/share/harbour-fernschreiber/lib/libtdutils.a
[root@Sailfish ~]#
WerkWolf's picture

They all belong to TDLib. I simply integrated the result of a standard TDLib build to the lib directory. If you have any tips if some of them can be omitted, I'm always open to feedback.

slava's picture

Another option would be to link tdlib statically and not bundle any libs at all. That's what I would try first, actually. The purpose of shared libraries is.... egh... to share them, right? If you're not sharing it, then there's no point in making it shared. Linking it statically gives the linker a much better chance to drop unused and duplicate code.

slava's picture

How about only including what's needed into the package? Like

%{_datadir}/%{name}/images
%{_datadir}/%{name}/lib/libtdjson.so*
%{_datadir}/%{name}/qml
%{_datadir}/%{name}/translations

and ignoring everything else

WerkWolf's picture

Let's give it a try - seems to work here, so it might work for everybody...

nephros's picture

The installed footprint is quite big. Is there a reason the libraries are so large? (32mb libtdcore for example)

WerkWolf's picture

I simply took the sources from https://github.com/tdlib/td and built it according to the instructions without Link Time Optimization (LTO) to be sure that the build runs through smoothly and there are less side-effects. As also mentioned in their documentation LTO can significantly reduce binary size and improve performance, so this is something I consider enabling for the future. Probably that will reduce the footprint.

explit's picture

Bitte i486 version, Sebastian!

WerkWolf's picture

Need to reactivate my tablet - hopefully soon(tm).

Cryx's picture

XA2 - kann mich nicht einloggen. Hört nach Passworteingabe nicht auf zu laden. Neustart landet immer wieder direkt beim TFA-Passwort. Dass passiert srlvst dann, wenn ich die App lösche und neu installiere!

WerkWolf's picture

Bitte mal über das Terminal starten (falls Dev-Tools installiert) -> /usr/bin/harbour-fernschreiber, und die Ausgabe dann als GitHub-Issue eintüten. Wie das im Detail geht: https://together.jolla.com/question/103763/how-to-start-an-app-from-term...

Vor dem nächsten Versuch bitte noch /home/nemo/.local/share/harbour-fernschreiber löschen.

Cryx's picture

Komischerweise hat der erneute Programmstart nun mit der Registrierung neu begonnen und es hat geklappt. Unterschied zum Versuch davor: Mobilfunknetz statt WLAN...

edp17's picture

Congrats for the app! Is there a way to contribute with some translation?

WerkWolf's picture

Yes, please fork the project, create a translation file for your language and create a pull request for that. Example for Spanish: https://github.com/Wunderfitz/harbour-fernschreiber/pull/22

giskard's picture

It's very promising and already looking polished

Firefox84's picture

Nice Work Werkwolf, i will definately reinstall the app as soon as she offers most of the important funtions. But what you already see is awesome, and the best its native :)

ezameht's picture

Thank you so much. My Android-Support stopped working and this app saved me.

kempe's picture

Awesome job. Looks great

slava's picture

Not bad at all for the first release!

explit's picture

Like always: very good coded software! Thanks WerkWolf!

chris7chris's picture

Looks promising. Thank you! Think I'll delete Depecher.

kaulian's picture

Dont work for me after registrer my phone number

unknown:0 - [TDLibReceiver] Option updated:  "photo_sea
rch_bot_username" QVariant(QString, "bing")
[D] unknown:0 - [TDLibReceiver] Option updated:  "call_pack
et_timeout_ms" QVariant(double, 10000)
[D] unknown:0 - [TDLibReceiver] Option updated:  "animation
_search_bot_username" QVariant(QString, "gif")
[D] unknown:0 - [TDLibReceiver] Option updated:  "calls_ena
bled" QVariant(bool, false)
[D] unknown:0 - [TDLibReceiver] Option updated:  "t_me_url"
QVariant(QString, "https://t.me/")
[D] unknown:0 - [TDLibReceiver] Option updated:  "favorite_
stickers_limit" QVariant(double, 5)
[D] unknown:0 - [TDLibReceiver] Option updated:  "test_mode
" QVariant(bool, false)
[D] unknown:0 - [TDLibReceiver] Authorization state changed
:  "authorizationStateWaitRegistration"
[D] unknown:0 - [TDLibReceiver] Connection state changed:
"connectionStateConnecting"
[D] unknown:0 - [TDLibReceiver] Connection state changed:
"connectionStateReady"
[W] unknown:67 - file:///usr/share/harbour-fernschreiber/qm
l/pages/CoverPage.qml:67: Error: Cannot assign [undefined]
to int
[D] unknown:0 - [TDLibReceiver] Option updated:  "unix_time
" QVariant(double, 1.60063e+09)
WerkWolf's picture

Please open an issue on GitHub and please also be sure to include (or attach) the complete log. Thanks!

Bocephus's picture

Yottagram is already better. Why not cooperate with the Yottagram dev on development?

apozaf's picture

OMFG, you really are a hell of a dev. Fantastic, chapeau!

carlosgonz's picture

Thank you so much. Great name.

Bramba's picture

Simply amazing! Thank you very much for your efforts! :-)

Pages