Blog Updates

nothing_is_not_taken — 19/04/2025 14:32

https://lingo-echo.eu/

Lingo Echo – Your Multilingual Twitch Chat Assistant

Lingo Echo is a Twitch bot that automatically translates chat messages into your preferred language.

Looking for streamers interested in testing a translation bot for their Twitch streams. Have you ever had a viewer start chatting in a language you don’t understand? This bot is designed to solve that problem. It will quietly chill in your stream until a message needs to be translated.

nothing_is_not_taken — 19/04/2025 22:40

Added an option to ignore (not translate) specific languages to prevent the bot from posting too much. For example, if you stream in English and German and want to translate all messages that are not in English or German into English, you can now do it using "Advanced options".

nothing_is_not_taken — 20/04/2025 09:31 --MAJOR UPDATE--

Update 20.04: Lingo Echo now ignores:

(I am still not sure what I want to do with that.)

nothing_is_not_taken — 20/04/2025 11:47

Added a simulator to the project's web site.

nothing_is_not_taken — 21/04/2025 12:56

Update 21.04:

nothing_is_not_taken — 21/04/2025 14:15

Added a variety of downloadable banners streamers can use on their Twitch page.

nothing_is_not_taken — 21/04/2025 17:22

Implemented handling for an edge case where Lingo_Echo might appear in multiple active streams simultaneously (e.g., raids, co-streams, guest appearances), preventing duplicate translation messages.

nothing_is_not_taken — 21/04/2025 18:02

Started counting the number of streamers who install the bot, as well as the total number of messages that required translation. Numbers displayed on the web site. Note: Feature removed.

nothing_is_not_taken — 21/04/2025 18:43

Update 21.04:
Now ignoring messages from:

streamelements, nightbot, moobot, streamlabs, soundalerts, frostyToolsDotCom, TangiaBot, Sery_Bot, Fossabot, WizeBot, OWN3D, Botisimo, DeepBot, Xanbot, Coebot, UltimateTwitchBot, WinterBot, Cloudbot, PokemonCommunityGame

nothing_is_not_taken — 22/04/2025 16:04

Update 22.04: Fixed a bug that prevented Cyrillic messages from being translated.

nothing_is_not_taken — 22/04/2025 22:33

Update 22.04: Anonymized logging implemented.
Logging is only occasionally used when necessary for troubleshooting. In production usage, messages are stored only until translated.

        [2025-04-22T20:27:18.887Z]: "Tünaydın"
        Status: Translated
        Language Detected: Turkish
        Translation: Good afternoon
        Sent: true

        [2025-04-22T20:27:37.743Z]: "午安"
        Status: Translated
        Language Detected: Chinese
        Translation: Good afternoon
        Sent: true

        [2025-04-22T20:27:51.150Z]: "शुभ दोपहर"
        Status: Translated
        Language Detected: Hindi
        Translation: Good afternoon
        Sent: true

        [2025-04-22T20:28:06.949Z]: "Добар дан"
        Status: Translated
        Language Detected: Serbian
        Translation: Good afternoon
        Sent: true
      
nothing_is_not_taken — 28/04/2025 14:16

Update 28.04:

nothing_is_not_taken — 28/04/2025 21:12

Corrected a bug where messages containing only @username were attempted to be translated. Sometimes this led to unwanted translations.

nothing_is_not_taken — 29/04/2025 09:58

Update 29.04: A 5-second cooldown has been implemented for identical message content. Repeated messages within a short time frame do not require separate translations. This may be adjusted or removed based on feedback.

nothing_is_not_taken — 30/04/2025 14:19 --MAJOR UPDATE--

Update 30.04: Added an option to shoutout streamers using !LingoSO @user. Initially, shoutouts are in English only. Future versions will support shoutouts in the selected translation language.

nothing_is_not_taken — 01/05/2025 00:45

Update 01.05: Lingo shoutouts are now delivered in the selected translation language.

nothing_is_not_taken — 04/05/2025 01:04

Started counting the number of shoutouts on the web page when streamers use !lingoso @user.
Note: Feature retired.

nothing_is_not_taken — 08/05/2025 00:22

Update 08.05:

nothing_is_not_taken — 10/05/2025 13:41

Update 10.05: Added per-user translation caching with customizable TTL. This reduces redundant GPT calls for repeated messages. Cached translations are delivered but not counted in web statistics.

nothing_is_not_taken — 10/05/2025 23:11

Update 11.05:

nothing_is_not_taken — 17/05/2025 18:41

Update 17.05: Clarified the description and purpose of advanced configuration options, as users found them unclear.

nothing_is_not_taken — 26/05/2025 14:08

Update 26.05: To prevent failures when joining large numbers of channels, a 10-second delay is now added after every 20 channel joins.

nothing_is_not_taken — 29/05/2025 01:02

Update 29.05: Fixed a bug that allowed double translations in shared chats when both streamers were using Lingo_Echo simultaneously.

nothing_is_not_taken — 30/05/2025 12:51 --MAJOR UPDATE--

Update 30.05: Created a "Guess the Number" minigame for Lingo_Echo. Great for fast giveaways!

nothing_is_not_taken — 05/06/2025 11:53

Update 05.06: Made readability improvements to the "Guess the Number" chat minigame.

nothing_is_not_taken — 05/06/2025 15:39

Update 05.06: Now ignoring messages from additional known bots including:

        'blerp', 'kofistreambot', 'botrixoficial', 'creatisbot', 'lurxx',
        'streamstickers', 'diex', 'sigurniv', 'wzbot', 'botbandera',
        'boomhoursgames', 'pukiyopop', 'trackerggbot', 'overlayexpert',
        'jeetbot'
      

Full updated bot ignore list now includes 40+ entries.
Website updated accordingly.

nothing_is_not_taken — 05/06/2025 16:13

Site updated to reflect new features using annotated image examples.

nothing_is_not_taken — 06/06/2025 19:14 --MAJOR UPDATE--

Update 06.06: Created a Navy-themed Hangman-style minigame for World of Warships streams.

nothing_is_not_taken — 08/06/2025 23:32 --MAJOR UPDATE--

Update 08.06: Implemented Franc to detect the language of messages that could not be recognized by the existing preprocessing system.

Updated logging format:

        [2025-06-08T21:12:33.590Z] 📝 "ach ne doch nicht"
        🔍 Reason: Skipped by Franc detection
        🌐 Detected: German
        💬 Translation: 
        📡 Sent: false
        🌐 RAW Franc: 
        🛠️ Franc skip

        [2025-06-08T21:12:36.507Z] 📝 "schade"
        🔍 Reason: Skipped by Franc detection
        🌐 Detected: German
        💬 Translation: 
        📡 Sent: false
        🌐 RAW Franc: 
        🛠️ Franc skip
      
nothing_is_not_taken — 13/06/2025 23:32

Update 13.06: Now correctly handles messages written with upside-down characters.

Characters handled: 'ɐ', 'q', 'ɔ', 'p', 'ǝ', 'ɟ', 'ƃ', 'ɥ', 'ᴉ', 'ı', 'ɾ', 'ʞ', 'l', 'ɯ', 'u', 'o', 'd', 'b', 'ɹ', 's', 'ʇ', 'n', 'ʌ', 'ʍ', 'x', 'ʎ', 'z'

nothing_is_not_taken — 15/06/2025 19:10 --MAJOR UPDATE--

Update 15.06: Lingo_Echo now answers when someone speaks to it using @Lingo_Echo.

        You: @Lingo_Echo What is the capital of France?
        🤖 Lingo Echo: Paris.
      
nothing_is_not_taken — 15/06/2025 21:53

Site updated to reflect new features using visuals and annotations.

nothing_is_not_taken — 16/06/2025 14:08

Update 16.06:

nothing_is_not_taken — 17/06/2025 02:22

Update 17.06: Implemented a spam blacklist to ignore messages containing phrases like boostcatch, quickboost, or cheapest viewers.

Until a better solution is automated, this list will be updated manually.

nothing_is_not_taken — 18/06/2025 17:01 --MAJOR UPDATE--

Update 18.06: Lingo_Echo is now context-aware when replying to @Lingo_Echo messages.

The bot uses recent Twitch chat activity to provide more accurate answers. This feature is experimental and may be reverted.

nothing_is_not_taken — 19/06/2025 18:46

Update 19.06: Lingo_Echo now recognizes the streamer and the current game being played.

This improves its ability to respond meaningfully when asked questions about the stream or streamer. This implementation is also experimental and may be rolled back.

nothing_is_not_taken — 20/06/2025 13:32

Update 20.06: Updated the Terms of Service and Privacy Policy at the bottom of the page on lingo-echo.eu.

nothing_is_not_taken — 20/06/2025 13:59

Bug fix: Removed a bug which caused repeating-letter messages (e.g., "aaaaaaaa") to be translated unnecessarily.

nothing_is_not_taken — 22/06/2025 00:54

Update 22.06: Lingo_Echo will now ignore messages written in Braille-style Unicode used in ASCII copypasta art.

nothing_is_not_taken — 23/06/2025 04:12 --MAJOR UPDATE --

Update 23.06: Streamers can now tell Lingo_Echo to ignore viewers by username using "Advanced Options".
Bug fix: Web site remembers user's preferences and does not revert back to defaults any more.

nothing_is_not_taken — 24/06/2025 02:52

Update 24.06: The bot now joins only channels that are currently "live" and automatically leaves them when the stream ends. A 5-minute grace period is applied to avoid disconnecting due to brief stream interruptions or drops.

Minor web site changes.

nothing_is_not_taken — 26/06/2025 12:08

Update 26.06: Lingo Echo will no longer translate messages with only one character difference.
For example: Hallo → Hello.
Such messages are self-evident, and translating them seems unnecessary.

Added !LingoGA command for giveaways.
Usage:
!LingoGA OPEN — resets and opens a giveaway.
!LingoGA CLOSE — closes the giveaway and draws the winner.

nothing_is_not_taken — 27/06/2025 18:19

Update 27.06: Streamers can now turn the AI conversations with Lingo_Echo on and off.

nothing_is_not_taken — 29/06/2025 00:41

Update 29.06: The bot is now translating "said in" part of the sentence.
So, in German streams it will no longer say "@User123 said in English [Guten Tag]".
Instead it will be "@User123 sagte auf Englisch [Guten Tag]"

Implemented for French, Spanish, German and Italian streams.

nothing_is_not_taken — 06/07/2025 23:52

Update 06.07: Lingo Echo is now more “paranoid” about talking to other AI bots and will detect and exit such conversations more quickly.

The conversation command @Lingo_Echo now also pulls the streamer's status (partner/affiliate/regular) and the number of viewers in the stream. This slightly improves the bot’s awareness of the situation in the stream.

nothing_is_not_taken — 13/07/2025 19:29 --MAJOR UPDATE--

Update 13.07: Added support for Lingo_Echo Overlay to be added as a browser source in OBS.

So far I only added two commands to see how it works.
This feature is in early development.
Expect issues.

nothing_is_not_taken — 15/07/2025 15:46

Update 15.07: The Overlay will now react to a larger number of Twitch chat events.

Added an option to test if the overlay is working in the streaming software using the "Test" button. It will display an image and play a sound if properly installed.
Overlay feature is still in early development.
Expect issues.

Added a 1 second cooldown to conversation per user (@Lingo_Echo) to prevent the bot answering questions when shared Twitch chat is enabled.

Minor website improvements.

nothing_is_not_taken — 17/07/2025 15:22

Update 17.07: First overlay minigame added.

Triggered by !dragon. It will output in chat even if the overlay is not installed.
Expect issues.

Up to five viewers join forces to battle a dragon, with one emerging as the legendary hero.

nothing_is_not_taken — 21/07/2025 01:08

Update 21.07: Several minor updates.

Lingo Echo now announces when it enters the stream. There is a 10h cooldown for this command.

Added new overlay animations and games.
Fixed a bug in Dragon Quest where fast !join commands from multiple users did not register.
Updated Dragon Quest graphics.
Minor overlay animation postitions and size adjustmens.
Minor updates to the web site.
Minor personality adjustments to the bot for @Lingo_Echo command.
Overlays are now out of "beta". Any such references removed.

nothing_is_not_taken — 23/07/2025 23:00

Update 23.07: Miscellaneous.

Tried to better explain overlay installation using OBS as an example. This change is visible once the streamer clicks "Connect with Twitch". I am not sure how happy I am with it. I might change it.

Added new overlay-specific commands.

Slight personality adjustments to the bot.

Optimised code to reduce latency. This was needed to keep up with the increase of concurrent users. It will require further optimisations in the future.

nothing_is_not_taken — 27/07/2025 17:15

Update 27.07: Ogre Defence mini-game.

Ogre Defence mini-game is now playable with installed overlay. Viewers fire arrows to kill an ogre before he reaches the end of the screen.
Planning to expand this game further. I have some more ideas for it.

nothing_is_not_taken — 01/08/2025 23:40

Update 01.08: Hardware upgrade.

Hardware upgrade. Memory and CPU.

nothing_is_not_taken — 05/08/2025 15:38

Update 05.08: Stream vision.

Lingo Echo now supports vision by periodically capturing stream screenshots for all live channels. When someone uses @lingo_echo, the latest image is "viewed", allowing the bot to respond based on what’s visually happening on stream. Screenshots are used exclusively for @lingo_echo interactions, and automatically deleted when the stream goes offline.

For transparency, the current screenshot used by the bot may be added to each streamer's preferences page - allowing them to see exactly what Lingo Echo "sees" when generating a response. I'll think about this one.

Note: the feature does not work for streams where content is intended for certain audiences.

nothing_is_not_taken — 08/08/2025 11:40

Update 08.08: Miscellaneous.

Added the !clipit command:
This command allows moderators and broadcasters to create a 30-second clip instantly.
Note: Streamers will need to reconnect and reauthorize via the Lingo Echo page to grant clip permissions.

Bot "personality" adjustments.

Code optimisations particulary regarding image handling.

Translation trigger adjusted making it a bit more sensitive. This is to avoid known issue when translations sometimes did not trigger when needed.

Switched to a new AI model. Tweeks will be needed, as the logic of the new model is sligtly different.

Hardware upgrade (Internet speed).

Updated ToS and Privacy Policy to reflect changes regarding bot vision.

nothing_is_not_taken — 09/08/2025 19:32

Update 05.08: WebSocket connection bug fixed.

Fixed a bug that sometimes caused overlay commands to fail because the overlay lost its WebSocket connection to the server.