Chitchatter, um cliente de comunicação para criar chats P2P

chitchatter, uma ferramenta de comunicação p2p

O Chitchatter foi projetado para não ter um operador de serviço central e nunca armazenar dados de comunicação.

Faz pouco o nascimento de um novo projeto foi anunciado que está desenvolvendo um aplicativo para criar chats P2P descentralizados, cujos participantes interagem diretamente uns com os outros sem acessar servidores centralizados.

O nome deste projeto é conversa fiada e o programa é projetado como uma aplicação web rodando em um navegador, o código é escrito em TypeScript e distribuído sob a licença GPLv2.

Sobre o bate-papo

conversa fiada é uma ferramenta de comunicação de código aberto, que foi projetado com segurança e privacidade em mente.

Alguns serviços são necessários para estabelecer uma conexão ponto a ponto, mas o aplicativo é baseado na comunicação direta ponto a ponto tanto como seja possível. Os serviços usados ​​pelo aplicativo não estão associados ao projeto Chitchatter e estão disponíveis publicamente para todos.

Aplicação permite gerar um id de bate-papo exclusivo que pode ser compartilhado com outros participantes para começar a conversar. Qualquer servidor público que suporte o protocolo WebTorrent pode ser usado para negociar uma conexão de bate-papo.

Uma vez que a conexão é negociada, canais de comunicação criptografados diretos são criados conectando os usuários usando a tecnologia WebRTC, que fornece meios prontos para acessar nós operando atrás de tradutores de endereços (NATs) e ignorando firewalls corporativos usando os protocolos STUN e TURN.

Chitchatter é um aplicativo de comunicação totalmente do lado do cliente. Ele usa servidores WebTorrent e STUN/TURN externos de propósito geral para a comunicação necessária, mas não há servidor de API Chitchatter.

Recursos internos que se destacam no repositório do projeto, são mencionados:

  • Código totalmente aberto (licenciado sob GPL v2)
  • P2p
  • Sempre que possível, caso contrário, o Open Relay é usado para garantir uma conexão ponto a ponto confiável
  • Criptografia (via WebRTC)
  • Não requer um servidor
  • Servidores WebTorrent públicos são usados ​​apenas para handshake inicial ponto a ponto
  • Efêmero
  • O conteúdo da mensagem nunca é preservado no disco
    descentralizado
  • Não há servidor de API. Tudo o que é necessário para o Chitchatter funcionar é a disponibilidade do GitHub para ativos estáticos e servidores de retransmissão públicos WebTorrent e STUN/TURN para comunicação ponto a ponto.
  • auto-hospedável
  • Sem análise, rastreamento ou telemetria.
  • O Chitchatter começou com o aplicativo Create React. A magia das redes seguras não seria possível sem o Trystero.

Cabe mencionar que o conteúdo da conversa não é salvo no disco e é perdido após o fechamento do aplicativo. Ao conversar, você pode usar a marcação Markdown e incorporar arquivos de mídia.

Os planos futuros incluem bate-papos protegidos por senha, chamadas de voz e vídeo, compartilhamento de arquivos, prompts de digitação e a capacidade de visualizar as mensagens postadas antes de um novo membro entrar no bate-papo.

Quanto aos interessados ​​em poder testar ou conhecer este projeto, podem experimentar a demo oferecida no link a seguir

Hospede seu próprio bate-papo do Chitchatter

Para aqueles que estão interessados ​​em poder auto-hospedar o projeto, eles devem seguir as instruções compartilhadas abaixo. A primeira coisa é obter o código-fonte, que você pode fazer de o seguinte link.

Supondo que você pretenda hospedar o Chitchatter nas páginas do GitHub, você deve alterar o arquivo propriedade em package.json para qualquer URL a partir do qual a instância do Chitchatter está hospedada. Isso será algo como https://github_user_or_org_name.github.io/chitchatter/.

Depois disso, uma chave secreta de ação do GitHub deve ser definida (em https://github.com/github_user_or_org_name/chitchatter/settings/secrets/actions).

E com isso, quando ele está hospedado nas páginas do GitHub e a configuração acima foi feita, o ambiente de produção é atualizado.

Quanto à configuração de tempo de execução, você pode fazer isso nos arquivos de configuração que estão em /src/config e aqui você pode modificar a configuração do matchmaking e do servidor de retransmissão.

Por fim, se você tiver interesse em saber mais sobre o assunto, pode consultar os detalhes no link a seguir.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.