Está disponível uma nova versão da plataforma de comunicação descentralizada Jami, lançada sob o codinome «Maloya». O projeto visa criar um sistema de comunicações que opere em modo P2P, permitindo não apenas a comunicação em grandes grupos, mas também a realização de chamadas individuais, oferecendo um alto nível de privacidade e segurança. O Jami, anteriormente conhecido como Ring e SFLphone, faz parte dos projetos GNU e é distribuído sob a licença GPLv3. Compilações binárias foram preparadas para GNU/Linux (Debian, Ubuntu, Fedora, SUSE, RHEL, etc.), Windows, macOS, iOS, Android e Android TV.
Ao contrário dos clientes de comunicação tradicionais, o Jami é capaz de transmitir mensagens sem recorrer a servidores externos, organizando uma conexão direta entre os usuários com o uso de criptografia de ponta a ponta (End-to-end, onde as chaves estão apenas no lado do cliente) e autenticação baseada em certificados X.509. Além da troca segura de mensagens, o programa permite realizar chamadas de voz e vídeo, criar teleconferências, trocar arquivos e organizar o compartilhamento de arquivos e do conteúdo da tela.
Inicialmente, o projeto foi desenvolvido como um telefone de software baseado no protocolo SIP, mas já não se limita a isso, adotando um modelo P2P, enquanto mantém a compatibilidade com SIP e a possibilidade de realizar chamadas através deste protocolo. O programa suporta vários codecs (G711u, G711a, GSM, Speex, Opus, G.722) e protocolos (ICE, SIP, TLS), garantindo criptografia segura para vídeo, voz e mensagens. Entre as funções de serviço, destacam-se o encaminhamento e a retenção de chamadas, gravação de chamadas, histórico de chamadas com busca, controle automático de volume e integração com os catálogos de endereços GNOME e KDE.
Para identificar um usuário no Jami, é utilizado um mecanismo global de autenticação de contas descentralizado, baseado na implementação de uma agenda de contatos na forma de blockchain (aplicando conhecimentos do projeto Ethereum). Um identificador de usuário (RingID) pode ser utilizado simultaneamente em vários dispositivos e permite contatar o usuário independentemente de qual dispositivo esteja ativo, sem a necessidade de manter identificadores diferentes no smartphone e no PC. A agenda de contatos, responsável por transmitir nomes em RingID, é armazenada em um grupo de nós suportados por vários participantes, incluindo a possibilidade de rodar seu próprio nó para manter uma cópia local da agenda global (o Jami também implementa uma agenda interna separada, suportada pelo cliente).
Para endereçar usuários no Jami, é utilizado o protocolo OpenDHT (tabela hash distribuída), que não requer a utilização de registros centralizados com informações sobre usuários. O Jami é fundamentado em um processo em segundo plano chamado jami-daemon, que é responsável por gerenciar conexões, organizar a comunicação e trabalhar com vídeo e áudio. A interação com o jami-daemon é feita através da biblioteca LibRingClient, que serve de base para construir o software do cliente e oferece toda a funcionalidade típica, não vinculada à interface do usuário e plataformas. Em cima do LibRingClient, os aplicativos do cliente são diretamente criados, o que permite uma criação e manutenção relativamente simples de diferentes interfaces.
No novo lançamento:
- Aplicativo cliente unificado para plataformas GNU/Linux e Windows (em breve também para macOS), que oferece uma nova interface aprimorada baseada em Qt, remodelada para simplificar a realização de chamadas individuais e conferências. Adicionada a capacidade de alterar o microfone e o dispositivo de saída sem interromper a chamada. Melhoradas as ferramentas para fornecer compartilhamento de tela.

- A estabilidade foi aprimorada e as funcionalidades relacionadas a conferências e reuniões foram expandidas. Foi implementado o suporte à designação de moderadores de conferência, que podem definir a disposição dos vídeos dos participantes na tela, conceder a palavra aos palestrantes e interromper participantes quando necessário. De acordo com os testes realizados, o Jami pode ser utilizado confortavelmente para conferências com até 20 participantes (em breve, esse número será elevado para 50).

- Foi anunciada a suspensão do desenvolvimento do cliente para GNU/Linux com interface baseada em GTK (jami-gnome). Por um tempo, o jami-gnome ainda será mantido, mas eventualmente o trabalho será interrompido em favor do cliente baseado em Qt. Caso apareçam entusiastas dispostos a assumir o cliente GTK, o projeto está pronto para oferecer essa oportunidade.
- O cliente para macOS agora suporta plugins.
- A funcionalidade do plugin 'GreenScreen', que utiliza métodos de aprendizado de máquina para ocultar ou substituir o fundo durante chamadas de vídeo, foi aprimorada. Na nova versão, foi adicionada a opção de desfocar o fundo, para que outros não vejam o que está acontecendo ao redor do participante.

- Foi adicionado um novo plugin 'Watermark', que permite exibir seu logotipo ou qualquer imagem sobre o vídeo, além de incorporar data e hora.

- Adicionado o plugin 'AudioFilter' para adicionar um efeito de reverberação ao áudio.
- O cliente para iOS foi reformulado, com uma interface completamente nova e melhorias na redução do consumo de energia. A estabilidade do cliente para macOS foi aprimorada.

- Aprimorado servidor o gerenciamento de contas JAMS (Jami Account Management Server), permitindo a gestão centralizada das contas de uma comunidade ou organização local, mantendo a natureza descentralizada da rede. O JAMS pode ser utilizado para integração com LDAP e Active Directory, gerenciamento de agenda de contatos e aplicação de configurações específicas para grupos de usuários.
- O suporte total ao protocolo SIP foi restaurado, permitindo a conexão a redes GSM e a qualquer provedor de serviços SIP.
Fonte: opennet.ru





