Naar de hoofdinhoud

Releases

Entergram-update, week van 25 juni 2026: stabiliteit, proxytools en meer dan 25 fixes

Denis, CEO van Entergram
Denis 25 jun 2026 6 min leestijd
Wekelijkse Entergram-update van 25 juni 2026 met stabiliteitsverbeteringen, proxytools en meer dan 25 bugfixes
Releases

Dit was een week van diep engineeringwerk bij Entergram. We hebben twee nieuwe infrastructuurfuncties uitgebracht, de stabiliteit voor workspaces met veel volume flink verbeterd en meer dan 25 bugs opgelost in berichten, verbindingsbeheer, onboarding, facturatie en de CRM-tabel. Hier is alles wat er is uitgekomen.


Nieuw: proxytools voor beheerders

Proxygebruik per route en een statische proxypool

Beheerders kunnen proxyverkeer nu toewijzen aan specifieke routes en gekoppelde accounts. Zo zie je welke verbindingen de meeste proxybandbreedte gebruiken. Daarnaast kun je nu vaste statische proxy's toewijzen aan afzonderlijke routes. Dat is handig als je voor bepaalde Telegram-accounts een voorspelbaar, stabiel IP-adres nodig hebt in plaats van een roterende pool.

Proxy-healthmonitor in het beheerpaneel

Een achtergrondproces test nu regelmatig elke proxy en werkt de status bij. Het beheerpaneel toont dus de echte verbindingsstatus. Je ziet haperende proxy's voordat ze je gebruikers ongemerkt raken, in plaats van problemen pas te ontdekken via supporttickets.


Prestaties: sneller en stabieler voor grote workspaces

ws-v2 gestabiliseerd voor workspaces met veel volume

Grote workspaces, met honderden chats verspreid over veel gekoppelde accounts, hadden last van zware blokkering van de main thread en trage browsers. Deze week hebben we de ws-v2-verbindingsengine grondig aangepast: pieken in account.bind worden afgeremd en aanroepen van folder.chats.fetch worden gespreid. Het resultaat: een QA-sessie die eerder 692 lange taken en ongeveer 166 seconden blokkering van de main thread opleverde, laadt nu probleemloos.

Badges "Reconnect Required" verschijnen niet meer onterecht

Accounts in drukke workspaces toonden de badge "Reconnect Required / Disconnected" (opnieuw verbinden vereist), ook als de MTProto-sessie op de backend nog gewoon actief was en verkeer afhandelde. Operators die op Reconnect klikten, veroorzaakten onnodige nieuwe logins en liepen soms tegen de FLOOD_WAIT-limieten van Telegram aan voor dat telefoonnummer. De badge verschijnt nu alleen nog bij een echt verbindingsprobleem.


Fixes: berichten en chat

Audioberichten spelen weer af. Inkomende spraakberichten faalden zonder foutmelding: de afspeelknop deed niets. Opgelost voor alle chattypes. (DEV-133)

Fouten "Socket closed" opgelost. Verschillende workspaces kregen harde verbindingsverbrekingen met een contextfout in chat.subscribe. De onderliggende logica voor het herstellen van de socketverbinding is nu stabiel. (DEV-120)

Geschiedenis van supergroepen en kanalen laadt correct. Navigeren in supergroepen leidde tot fouten "Invalid realtime command payload" op het pad history.around wanneer de frontend peer-hints (entity_class_name) meestuurde die de gateway niet herkende. Opgelost in de gatewaylaag. (DEV-168, PRODUCT-121)

De pagina bevriest niet meer tijdens het chatten of doorsturen. Een reeks problemen waarbij de pagina bevroor en opnieuw laadde terwijl operators midden in een gesprek zaten, is opgelost. (DEV-143)

Onlinestatus is consistent. De aanwezigheidsindicator in de chattabel en die in de header van de chatter haalden hun gegevens uit verschillende bronnen. Ze delen nu één bepaalde aanwezigheidsstatus. (DEV-186)

Juiste afzendernamen in groepschats. Berichtballonnen in groepsgesprekken toonden soms de verkeerde Telegram-gebruikersnaam boven het bericht. Opgelost in zowel het pad chat_list.window.snapshot als live_chat_list.delta. (DEV-192)

Aantallen ongelezen berichten blijven kloppen. In verschillende situaties telde de badge voor ongelezen berichten te veel, bijvoorbeeld 5 ongelezen na het versturen van 2 berichten. De teller stemt nu correct af na het opnieuw verbinden. (DEV-135)

Dubbele berichtballonnen opgelost. Als twee of meer gekoppelde accounts dezelfde chat deelden, kon hetzelfde bericht twee keer verschijnen in het geopende gesprek. Dit was een bug in het ontdubbelen bij het renderen in de frontend, geen probleem met het samenvoegen van accounts. Opgelost. (DEV-183)

Terugvalafzender en reactie-actoren opgelost. De chatgeschiedenis toonde soms other als afzenderlabel bij inkomende berichten, en pop-ups met reacties bleven hangen op "Loading reactions." Beide zijn opgelost. (DEV-156)

Chats blijven in de mapweergave nadat je hebt geantwoord. Mappen met de instelling "Exclude read chats" (gelezen chats uitsluiten) verwijderden chats zodra een operator antwoordde, waardoor het gesprek midden in een sessie verdween. Mappen houden beantwoorde chats nu vast tot je weg navigeert. (DEV-178)

MCP verstuurt naar nieuwe contacten. De MCP-integratie gaf een fout bij het versturen van een bericht naar een Telegram-contact waarmee je nog nooit had gechat. Een eerste bericht versturen werkt nu correct. (DEV-141)


Fixes: verbindings- en sessiebeheer

Vastgelopen sessies herstellen automatisch. Door een bug in de capaciteitslogica voor routes van de session-agent (observeRoutes) startten sommige sessies niet meer opnieuw nadat ze waren gestopt. Getroffen accounts toonden nats: no responders bij elk verzoek voor geschiedenis of mappen, en de agent herstarten hielp niet. Deze starvation-bug is opgelost: vastgelopen sessies komen nu vanzelf weer tot leven. (DEV-139)

Het ws-v2-verbindingsvenster geeft geen stortvloed aan 400-fouten meer. Door een timingprobleem bleef de pollinglus voor het koppelen van accounts een niet-bestaand ID van een authenticatiesessie opvragen. Dat leverde honderden meldingen API request failed: 400 op in één sessie. Opgelost in de levenscyclus van de polling. (DEV-181)

De status van de proxyverbinding klopt in Settings. De proxy-indicator bleef op "loading" hangen zodra je de pagina Settings (instellingen) bezocht, ook bij gezonde verbindingen. Hij toont nu de werkelijke live status. (DEV-154)


Fixes: workspace en onboarding

Gebruikers kunnen betrouwbaar lid worden van workspaces. Een React-crash door een maximale updatediepte (#185) trad op zodra een nieuwe gebruiker na het lid worden op de CRM-chattabel terechtkwam. De oorzaak was een constante arrayreferentie die steeds opnieuw werd aangemaakt in de definitie van CHAT_PAGE_SIZE_OPTIONS. Die staat nu buiten de rendercyclus. (DEV-165, DEV-167)

Uitnodigingen accepteren tijdens onboarding werkt weer. Gebruikers die tijdens de onboarding een uitnodigingslink voor een workspace plakten, konden het proces afronden zonder echt lid te worden van die workspace. Ze kwamen dan in een lege persoonlijke workspace terecht, waarna de app crashte bij het navigeren naar Settings → Chat Table. De logica voor het accepteren van uitnodigingen en het doorsturen is nu correct. (DEV-170)

Verwijderde gebruikers komen niet meer terug. Workspaceleden die waren verwijderd of zelf waren vertrokken, werden bij elke paginavernieuwing opnieuw toegevoegd via een verouderde sessie van een onboarding-uitnodigingslink. Het endpoint /api/onboarding controleert nu eerst de lidmaatschapsstatus voordat iemand opnieuw wordt toegevoegd. (DEV-175)


Fixes: accountinstellingen

Een verzoek om je e-mailadres te wijzigen kun je annuleren. De annuleerknop voor een openstaande e-mailwijziging was niet aan een actie gekoppeld, dus klikken deed niets. Hij annuleert het openstaande verzoek nu correct. (DEV-137)

Geselecteerde chats zijn zichtbaar in het lichte thema. Bij het selecteren van chatrijen in het witte of lichte thema was de markering onzichtbaar of nauwelijks zichtbaar door een ontbrekende contrasttoken. Opgelost. (DEV-157)


Fixes: facturatie en abonnementen

Eigenaren in een proefperiode kunnen seats kopen zonder vast te lopen op een foutmelding. Een aanroep van purchaseSeat() voordat de eigenaar een actief betaald abonnement heeft, geeft 400 OWNER_SUBSCRIPTION_REQUIRED terug. Eigenaren in een proefperiode zien nu een duidelijke melding om eerst een abonnement af te sluiten, met een directe link naar de abonnementspagina. (DEV-174)

Abonnementen afsluiten werkt betrouwbaar. Een reeks 401/403-authenticatieconflicten bij het afrekenen, veroorzaakt doordat de sessie ongeldig werd tijdens de doorverwijzing naar Stripe, is opgelost. (DEV-172)


Fixes: CRM-tabel

Media en video spelen af zonder rate-limitfouten. Het endpoint /api/realtime/media viel onder een algemene rate limiter van 20 verzoeken per minuut. Bij het streamen van video doet de browser meerdere byte-range-verzoeken voor hetzelfde bestand, waardoor de limiter binnen een seconde werd geactiveerd. Mediaverzoeken slaan de algemene limiter nu over. (DEV-152)

Zoeken is volledig en consistent. Sommige zoekopdrachten gaven onvolledige resultaten of de fout "Telegram Search is unavailable" bij de eerste zoekopdracht. Volgende zoekopdrachten naar dezelfde term werkten wel. Opgelost: de resultaten komen nu bij het eerste verzoek correct terug. (DEV-136)

"Time since first incoming message" telt vanaf Telegram, niet vanaf het openen van de app. Deze speciale kolom (tijd sinds het eerste inkomende bericht) begon te tellen vanaf het moment dat je Entergram opende, in plaats van vanaf het moment dat Telegram het bericht voor het eerst ontving. De bron van de tijdstempel is nu correct. (DEV-162)


Changelog

De volledige changelog voor v0.16.0 en alle eerdere releases vind je op de pagina Wat is er nieuw van Entergram.

Denis, CEO van Entergram
Denis

Medeoprichter en CEO van Entergram

Denis is medeoprichter en CEO van Entergram. Hij gebruikt Telegram al jaren, leidt de productstrategie en schrijft over de operationele en productkeuzes achter Telegram CRM, automatisering en werken met meerdere accounts.

25 jun 2026 · 6 min leestijd

Meer artikelen van Denis

Klaar om je Telegram-workflow te verbeteren?

Verspil geen lead meer. Verlies geen bericht meer.

Begin met Entergram