Releases
Aggiornamento Entergram, settimana del 25 giugno 2026: stabilità, strumenti proxy e oltre 25 correzioni

È stata una settimana di ingegneria profonda in Entergram. Abbiamo rilasciato due nuove funzioni di infrastruttura, migliorato in modo netto la stabilità dei workspace con grandi volumi e chiuso oltre 25 bug tra messaggi, gestione delle connessioni, onboarding, fatturazione e tabella CRM. Ecco tutto quello che è arrivato.
Novità: strumenti proxy per gli amministratori
Uso dei proxy per route e pool di proxy statici
Gli amministratori ora possono attribuire il traffico proxy a route e account collegati specifici. Così vedi quali connessioni consumano più banda proxy. Inoltre puoi assegnare proxy statici dedicati a singole route: è utile quando ti serve un IP prevedibile e stabile per determinati account Telegram, invece di lasciare che il pool ruoti.
Monitor della salute dei proxy nel pannello di amministrazione
Un processo in background ora interroga periodicamente ogni proxy e ne aggiorna lo stato di salute. Il pannello di amministrazione mostra quindi lo stato reale della connettività. Puoi individuare i proxy degradati prima che colpiscano i tuoi utenti senza che nessuno se ne accorga, invece di scoprire i problemi dai ticket di assistenza.
Prestazioni: più veloce e più stabile per i workspace grandi
Stabilizzazione di ws-v2 per i workspace con grandi volumi
I workspace grandi, cioè quelli con centinaia di chat su molti account collegati, soffrivano di forti blocchi del thread principale e di rallentamenti del browser. Questa settimana abbiamo rivisto il motore di connessione ws-v2 per limitare le raffiche di account.bind e distribuire nel tempo le chiamate folder.chats.fetch. Il risultato: una sessione di QA che prima produceva 692 task lunghi e circa 166 secondi di blocco del thread principale ora si carica senza problemi.
I badge "Reconnect Required" non compaiono più a sproposito
Nei workspace molto attivi gli account mostravano i badge "Reconnect Required / Disconnected" (riconnessione necessaria / disconnesso) anche quando la sessione MTProto sul backend era attiva e gestiva traffico. Gli operatori che cliccavano su Reconnect causavano nuovi login inutili e, in alcuni casi, raggiungevano i limiti FLOOD_WAIT di Telegram sul numero di telefono. Ora il badge compare solo quando c'è un vero problema di connessione.
Correzioni: messaggi e chat
I messaggi audio si riproducono di nuovo. I messaggi vocali in arrivo fallivano senza segnalarlo e il pulsante di riproduzione non faceva nulla. Corretto in tutti i tipi di chat. (DEV-133)
Risolti gli errori "Socket closed". Diversi workspace subivano disconnessioni improvvise con un errore di contesto chat.subscribe. La logica di riconnessione del socket ora è stabile. (DEV-120)
La cronologia di supergruppi e canali si carica correttamente. La navigazione nei supergruppi generava errori "Invalid realtime command payload" sul percorso history.around quando il frontend inviava indizi sul peer (entity_class_name) che il gateway non riconosceva. Corretto a livello di gateway. (DEV-168, PRODUCT-121)
La pagina non si blocca più mentre chatti o inoltri. Risolta una serie di problemi di blocco e ricaricamento che colpivano gli operatori a metà conversazione. (DEV-143)
Lo stato online è coerente. L'indicatore di presenza nella tabella delle chat e quello nell'intestazione della chat leggevano da fonti diverse. Ora condividono un unico stato di presenza. (DEV-186)
Nomi dei mittenti corretti nelle chat di gruppo. Nei thread di gruppo i fumetti dei messaggi a volte mostravano lo username Telegram sbagliato sopra il contenuto. Corretto sia nel percorso chat_list.window.snapshot sia in live_chat_list.delta. (DEV-192)
I contatori dei non letti restano precisi. In vari casi il badge dei non letti contava troppo: per esempio, inviavi 2 messaggi e ne vedevi 5 segnati come non letti. Ora il contatore si riallinea correttamente dopo ogni riconnessione. (DEV-135)
Corretti i fumetti dei messaggi duplicati. Quando due o più account collegati condividevano la stessa chat, lo stesso messaggio poteva comparire due volte nel thread aperto. Era un bug di deduplicazione nel rendering del frontend, non un problema di unione tra account. Corretto. (DEV-183)
Risolti mittente di riserva e autori delle reazioni. A volte la cronologia della chat mostrava other come etichetta del mittente per i messaggi in arrivo, e i popup delle reazioni restavano fermi su "Loading reactions". Entrambi i problemi sono corretti. (DEV-156)
Le chat restano nella vista della cartella dopo la tua risposta. Le cartelle con l'opzione "Exclude read chats" (escludi chat lette) rimuovevano le chat nel momento in cui un operatore rispondeva, e la conversazione spariva a metà sessione. Ora le cartelle mantengono le chat a cui hai risposto finché non cambi vista. (DEV-178)
L'MCP invia messaggi ai nuovi contatti. L'integrazione MCP dava errore quando provavi a scrivere a un contatto Telegram con cui non avevi mai chattato. Ora anche i primi messaggi funzionano correttamente. (DEV-141)
Correzioni: connessioni e gestione delle sessioni
Le sessioni interrotte si ripristinano da sole. Un bug nella logica di capacità delle route del session agent (observeRoutes) impediva ad alcune sessioni di riavviarsi dopo essersi interrotte. Gli account colpiti mostravano nats: no responders a ogni richiesta di cronologia o di cartella, e riavviare l'agent non serviva. Il bug di starvation è risolto: le sessioni interrotte ora ripartono da sole. (DEV-139)
La finestra di connessione ws-v2 non genera più una pioggia di errori 400. Un problema di tempistica faceva sì che il ciclo di polling della connessione dell'account continuasse a interrogare un ID di sessione di autenticazione inesistente, producendo centinaia di notifiche API request failed: 400 in una sola sessione. Corretto nel ciclo di vita del polling. (DEV-181)
Lo stato della connessione proxy si vede correttamente in Settings. L'indicatore del proxy restava fermo su "loading" ogni volta che aprivi la pagina Settings (impostazioni), anche con connessioni funzionanti. Ora riflette lo stato reale in tempo reale. (DEV-154)
Correzioni: workspace e onboarding
Gli utenti entrano nei workspace in modo affidabile. Un crash di React per profondità massima di aggiornamento (#185) si verificava ogni volta che un nuovo utente arrivava sulla tabella delle chat del CRM dopo essere entrato nel workspace. La causa era un riferimento a un array costante ricreato a ogni render nella definizione di CHAT_PAGE_SIZE_OPTIONS; ora è definito fuori dal ciclo di render. (DEV-165, DEV-167)
Corretta l'accettazione degli inviti durante l'onboarding. Chi incollava un link di invito a un workspace durante l'onboarding poteva completare il percorso senza entrare davvero nel workspace di destinazione. Finiva invece in un workspace personale vuoto, e l'app andava in crash aprendo Settings → Chat Table. Ora la logica di accettazione dell'invito e il reindirizzamento sono corretti. (DEV-170)
Gli utenti rimossi non ricompaiono più. I membri del workspace che erano stati rimossi o che erano usciti venivano reinseriti a ogni aggiornamento della pagina tramite una vecchia sessione di link di invito dell'onboarding. L'endpoint /api/onboarding ora verifica lo stato di appartenenza prima di farli rientrare. (DEV-175)
Correzioni: impostazioni dell'account
Le richieste di cambio email si possono annullare. Il pulsante per annullare un cambio email in sospeso non era collegato a nessuna azione: cliccarlo non faceva nulla. Ora annulla correttamente la richiesta in sospeso. (DEV-137)
La selezione delle chat è visibile nel tema chiaro. Nel tema bianco/chiaro, selezionare le righe delle chat produceva evidenziazioni invisibili o quasi, per un token di contrasto mancante. Corretto. (DEV-157)
Correzioni: fatturazione e abbonamenti
Chi è in prova può acquistare posti senza finire in un vicolo cieco. Chiamare purchaseSeat() prima che il proprietario abbia un abbonamento a pagamento attivo restituisce 400 OWNER_SUBSCRIPTION_REQUIRED. Ora i proprietari in prova vedono un invito chiaro ad abbonarsi prima, con un collegamento diretto alla pagina dell'abbonamento. (DEV-174)
Gli acquisti degli abbonamenti funzionano in modo affidabile. Risolta una serie di conflitti di autenticazione 401/403 al checkout, causati dall'invalidazione della sessione durante il reindirizzamento a Stripe. (DEV-172)
Correzioni: tabella CRM
Media e video si riproducono senza errori di rate limit. L'endpoint /api/realtime/media era soggetto a un limitatore generico di 20 richieste al minuto. Lo streaming video nel browser invia più richieste byte-range per lo stesso file, e questo faceva scattare il limitatore in meno di un secondo. Ora le richieste dei media non passano dal limitatore generico. (DEV-152)
La ricerca è completa e coerente. Alcune ricerche restituivano risultati parziali o davano l'errore "Telegram Search is unavailable" alla prima query, mentre le ricerche successive dello stesso termine funzionavano. Corretto: ora i risultati arrivano correttamente alla prima richiesta. (DEV-136)
"Time since first incoming message" conta da Telegram, non dall'apertura dell'app. Questa colonna speciale (tempo dal primo messaggio in arrivo) faceva partire il conteggio da quando aprivi Entergram, invece che da quando Telegram aveva ricevuto il messaggio. Ora la fonte del timestamp è corretta. (DEV-162)
Changelog
Il changelog completo della v0.16.0 e di tutte le release precedenti si trova nella pagina delle novità di Entergram.
Vuoi migliorare il tuo lavoro su Telegram?
Non perdere un altro contatto. Non perdere un altro messaggio.
Inizia con Entergram


