Dopo un anno di sviluppo, è stata pubblicata la versione 0.4 del client di comunicazione Dino, che supporta chat, chiamate audio, videochiamate, videoconferenze e scambio di messaggi di testo utilizzando il protocollo Jabber/XMPP. Il programma è compatibile con diversi client e server XMPP, è orientato a garantire la riservatezza delle comunicazioni e supporta la crittografia end-to-end. Il codice del progetto è scritto in Vala utilizzando il toolkit GTK e viene distribuito sotto la licenza GPLv3+.
Per stabilire la connessione viene utilizzato il protocollo XMPP e le estensioni XMPP standard (XEP-0353, XEP-0167), che consentono di effettuare chiamate tra Dino e qualsiasi altro client XMPP che supporti le specifiche corrispondenti. Ad esempio, è possibile eseguire videochiamate crittografate con le applicazioni Conversations e Movim, così come chiamate non crittografate con l'applicazione Gajim. La crittografia end-to-end delle comunicazioni e l'autenticazione avvengono attraverso l'estensione XMPP OMEMO basata sul protocollo Signal.
Nel nuovo rilascio:
- È stata aggiunta la supporto per le reazioni, che consente all'utente di rispondere rapidamente a un messaggio con un emoji appropriato, ad esempio esprimere emozioni (🤯), accordo (👍️) o disapprovazione (👎️) senza dover digitare testo.
- Nei gruppi chat, nello scambio diretto di messaggi e nei canali è stata aggiunta la supporto per la risposta diretta, legata a un messaggio specifico e che consente di passare rapidamente alla sua visualizzazione.
- Si è effettuato il passaggio da GTK3 a GTK4 e alla libreria libadwaita, che offre widget e oggetti pronti per la costruzione di applicazioni, in linea con le nuove raccomandazioni delle linee guida GNOME HIG (Human Interface Guidelines). L'interfaccia utente è adattata per funzionare correttamente su schermi di qualsiasi dimensione, compresi i piccoli schermi dei dispositivi mobili.

Le principali funzionalità di Dino e le estensioni XEP supportate:
- Chat multiutente con supporto a gruppi privati e canali pubblici (nei gruppi è possibile comunicare solo con le persone incluse nel gruppo su argomenti di vario genere, mentre nei canali gli utenti possono comunicare solo su temi specifici);
- Utilizzo di avatars;
- Gestione dell'archivio messaggi;
- Marcatura dell'ultimo messaggio ricevuto e letto nelle chat;
- Allegare file e immagini ai messaggi. I file possono essere trasferiti sia direttamente da client a client, sia caricandoli su un server e fornendo un link tramite il quale un altro utente potrà scaricare quel file;
- Supporto per il trasferimento diretto di contenuti multimediali (audio, video, file) tra i client utilizzando il protocollo Jingle;
- Supporto per i record SRV per stabilire una connessione cifrata diretta utilizzando TLS, oltre all'invio tramite server XMPP;
- Crittografia tramite OMEMO e OpenPGP;
- Distribuzione di messaggi tramite abbonamento (Publish-Subscribe);
- Notifica sullo stato di digitazione del messaggio da parte di un altro utente (è possibile disattivare l'invio di notifiche di digitazione in relazione a chat o singoli utenti);
- Consegna ritardata dei messaggi;
- Segnalibri per vari servizi e risorse, memorizzati su server;
- Notifica di avvenuta consegna del messaggio;
- Strumenti di ricerca avanzati per i messaggi e filtri per l'output nella cronologia delle comunicazioni;
- Supporto per operare in un'unica interfaccia con più account, ad esempio, per separare le comunicazioni lavorative da quelle personali;
- Funzionamento in modalità offline con invio effettivo dei messaggi scritti e ricezione dei messaggi accumulati non appena si stabilisce la connessione di rete; server Supporto SOCKS5 per l'instradamento di connessioni P2P dirette;
- Supporto per il formato XML vCard.
- Dopo oltre un anno di sviluppo, è stato pubblicato il rilascio del client di comunicazione Dino 0.3, che supporta la partecipazione a chat e lo scambio di messaggi utilizzando il protocollo Jabber/XMPP.

Fonte: opennet.ru
