Babble Chat

Há algum plano para tornar o Babble um dos plugins oficialmente suportados (Plugin directory | Discourse - Civilized Discussion)? Se não, por quê?

1 curtida

Não há nenhum plano para fazer isso. Achamos que o Discourse, quando usado em conjunto com um software de chat, é adequado, desde que você trate o chat como memória de curto prazo e o Discourse como memória de longo prazo.

Além disso, o chat tende a ter uma baixa relação sinal-ruído, o que contradiz diretamente nosso objetivo de aumentar a qualidade das conversas, priorizando parágrafos em vez de palavras isoladas.

5 curtidas

Obrigado, Justin. Você tem algum exemplo ou orientação sobre as melhores práticas para combinar o Discourse com o chat? Entendo que o chat tem baixa relação sinal-ruído, mas para nossa startup, ele será uma parte importante do quebra-cabeça. Agradeço desde já.

1 curtida

Olá, ótimo plugin! Com certeza será muito útil no meu site.

Só um pensamento. Essa interface de chat se comporta de um jeito um pouco estranho no celular, porque não leva em consideração a altura do teclado quando o usuário está digitando. Talvez fosse interessante ter uma opção para que as mensagens do chat apareçam, por padrão, na parte inferior da janela de chat, e não na superior (como a maioria dos aplicativos de mensagens)? Isso faria com que as novas respostas continuassem visíveis no celular quando uma conversa está apenas começando.

Trabalho fantástico, de qualquer forma. Ainda estou explorando, mas até agora foi uma ótima descoberta.

1 curtida

Muito disso depende de estabelecer uma cultura. Incentivar comportamentos como postar transcrições ou resumos do chat no Discourse, mover discussões mais longas para o Discourse, manter uma base de conhecimento em tópicos e criar links para eles, etc. Se vocês tratarem o chat como se a informação não existisse após um dia, essa mentalidade, em última análise, ajuda.

5 curtidas

E aí, pessoal,

Fiz algumas correções aqui, incluindo ajustes nas funcionalidades de emojis e anexos para que funcionem com a versão mais recente do Discourse, corrigi o problema em que o cartão de usuário não aparecia ao clicar em menções ou avatares de usuários, evitei que as imagens se estiquessem horizontalmente ao expandir o chat e também corrigi algumas deprecições.

8 curtidas

Olá…

Como posso substituir o botão Mensagem, ao clicar no usuário, para abrir o PM do Babble em vez da tela padrão “Iniciar uma mensagem”?

  1. Meus usuários têm uma solicitação de recurso que facilitaria a usabilidade.

Temos 2 salas de chat e nossos usuários adorariam ter uma maneira mais rápida de alternar entre elas.
Que tal adicionar setas fa-chevron para a esquerda e para a direita ao lado do nome da sala de chat para alternar rapidamente para a próxima/antiga sala de chat?

  1. Atualmente, usuários sem acesso a nenhuma sala de chat veem as configurações do Babble em suas preferências de usuário. Seria melhor removê-las se o Discourse oferecer essa possibilidade.

  2. Definir avatares personalizados para cada sala de chat individual seria uma grande ajuda.

1 curtida

Há alguma atualização sobre isso? Alguém pode me ajudar?

Você descobriu uma maneira de resolver aquele último bug que mencionou? Também estou vendo as mensagens privadas aparecerem na pesquisa quando estou no modo anônimo. Estou assumindo que apenas as duas pessoas que realmente tiveram a conversa conseguiriam ler as mensagens (espero!!), mas isso definitivamente adiciona muito ruído para um novo observador da comunidade que possa estar se perguntando sobre todos os tópicos aleatórios com “números”.

Adoraria saber se você descobriu como contornar isso ou se você simplesmente não está usando o recurso de mensagens privadas?

Parei de usar o babble depois de escrever aquele post. Não tenho certeza do status atual.

Entendido. cc: @gdpelican se tiver tempo para dar uma olhada!

Avatar do poster ausente, acho que isso é devido à atualização recente no Discourse…

1 curtida

No meu celular, o botão Babble aparece perfeitamente no cabeçalho:

Mas no meu computador, ele aparece em algum lugar no meio da página e fica assim:
image.

Gostaria que o botão aparecesse como ícone no cabeçalho no meu computador também.
Como posso fazer isso?

1 curtida

Acredito que isso possa ser um novo recurso. Se me lembro bem, na mesma época em que seu próprio avatar ficou oculto, outra mudança também ocorreu: suas mensagens agora estão alinhadas à direita.
(E talvez os fundos das mensagens não fossem azuis, mas não consigo lembrar se foi esse o caso.)

Então, ocultar seu próprio avatar pode ser um recurso para deixar mais claro quais são as suas próprias mensagens.

Não sei se algo mudou recentemente, mas após reconstruir o Discourse, a função de busca parou de funcionar. Isso causou um erro interno do servidor para tudo que era digitado na caixa de busca.

Verifiquei os logs e foi isso que encontrei:

image

Cliquei nele:

plugins/babble/app/models/search.rb:3:in `execute'

app/controllers/search_controller.rb:132:in `query'

actionpack (6.0.3.2) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'

actionpack (6.0.3.2) lib/abstract_controller/base.rb:195:in `process_action'

actionpack (6.0.3.2) lib/action_controller/metal/rendering.rb:30:in `process_action'

actionpack (6.0.3.2) lib/abstract_controller/callbacks.rb:42:in `block in process_action'

activesupport (6.0.3.2) lib/active_support/callbacks.rb:112:in `block in run_callbacks'

app/controllers/application_controller.rb:340:in `block in with_resolved_locale'

i18n (1.8.5) lib/i18n.rb:313:in `with_locale'

app/controllers/application_controller.rb:340:in `with_resolved_locale'

activesupport (6.0.3.2) lib/active_support/callbacks.rb:121:in `block in run_callbacks'

activesupport (6.0.3.2) lib/active_support/callbacks.rb:139:in `run_callbacks'

actionpack (6.0.3.2) lib/abstract_controller/callbacks.rb:41:in `process_action'

actionpack (6.0.3.2) lib/action_controller/metal/rescue.rb:22:in `process_action'

actionpack (6.0.3.2) lib/action_controller/metal/instrumentation.rb:33:in `block in process_action'

activesupport (6.0.3.2) lib/active_support/notifications.rb:180:in `block in instrument'

activesupport (6.0.3.2) lib/active_support/notifications/instrumenter.rb:24:in `instrument'

activesupport (6.0.3.2) lib/active_support/notifications.rb:180:in `instrument'

actionpack (6.0.3.2) lib/action_controller/metal/instrumentation.rb:32:in `process_action'

actionpack (6.0.3.2) lib/action_controller/metal/params_wrapper.rb:245:in `process_action'

activerecord (6.0.3.2) lib/active_record/railties/controller_runtime.rb:27:in `process_action'

actionpack (6.0.3.2) lib/abstract_controller/base.rb:136:in `process'

actionview (6.0.3.2) lib/action_view/rendering.rb:39:in `process'

rack-mini-profiler (2.0.4) lib/mini_profiler/profiling_methods.rb:104:in `block in profile_method'

actionpack (6.0.3.2) lib/action_controller/metal.rb:190:in `dispatch'

actionpack (6.0.3.2) lib/action_controller/metal.rb:254:in `dispatch'

actionpack (6.0.3.2) lib/action_dispatch/routing/route_set.rb:50:in `dispatch'

actionpack (6.0.3.2) lib/action_dispatch/routing/route_set.rb:33:in `serve'

actionpack (6.0.3.2) lib/action_dispatch/journey/router.rb:49:in `block in serve'

actionpack (6.0.3.2) lib/action_dispatch/journey/router.rb:32:in `each'

actionpack (6.0.3.2) lib/action_dispatch/journey/router.rb:32:in `serve'

actionpack (6.0.3.2) lib/action_dispatch/routing/route_set.rb:834:in `call'

lib/middleware/omniauth_bypass_middleware.rb:68:in `call'

rack (2.2.3) lib/rack/tempfile_reaper.rb:15:in `call'

rack (2.2.3) lib/rack/conditional_get.rb:27:in `call'

rack (2.2.3) lib/rack/head.rb:12:in `call'

lib/content_security_policy/middleware.rb:12:in `call'

lib/middleware/anonymous_cache.rb:336:in `call'

rack (2.2.3) lib/rack/session/abstract/id.rb:266:in `context'

rack (2.2.3) lib/rack/session/abstract/id.rb:260:in `call'

actionpack (6.0.3.2) lib/action_dispatch/middleware/cookies.rb:648:in `call'

actionpack (6.0.3.2) lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'

activesupport (6.0.3.2) lib/active_support/callbacks.rb:101:in `run_callbacks'

actionpack (6.0.3.2) lib/action_dispatch/middleware/callbacks.rb:26:in `call'

actionpack (6.0.3.2) lib/action_dispatch/middleware/actionable_exceptions.rb:17:in `call'

actionpack (6.0.3.2) lib/action_dispatch/middleware/debug_exceptions.rb:32:in `call'

actionpack (6.0.3.2) lib/action_dispatch/middleware/show_exceptions.rb:33:in `call'

logster (2.9.1) lib/logster/middleware/reporter.rb:43:in `call'

railties (6.0.3.2) lib/rails/rack/logger.rb:37:in `call_app'

railties (6.0.3.2) lib/rails/rack/logger.rb:28:in `call'

config/initializers/100-quiet_logger.rb:19:in `call'

config/initializers/100-silence_logger.rb:31:in `call'

actionpack (6.0.3.2) lib/action_dispatch/middleware/remote_ip.rb:81:in `call'

actionpack (6.0.3.2) lib/action_dispatch/middleware/request_id.rb:27:in `call'

lib/middleware/enforce_hostname.rb:22:in `call'

rack (2.2.3) lib/rack/method_override.rb:24:in `call'

actionpack (6.0.3.2) lib/action_dispatch/middleware/executor.rb:14:in `call'

rack (2.2.3) lib/rack/sendfile.rb:110:in `call'

actionpack (6.0.3.2) lib/action_dispatch/middleware/host_authorization.rb:76:in `call'

rack-mini-profiler (2.0.4) lib/mini_profiler/profiler.rb:321:in `call'

message_bus (3.3.1) lib/message_bus/rack/middleware.rb:61:in `call'

lib/middleware/request_tracker.rb:176:in `call'

railties (6.0.3.2) lib/rails/engine.rb:527:in `call'

railties (6.0.3.2) lib/rails/railtie.rb:190:in `public_send'

railties (6.0.3.2) lib/rails/railtie.rb:190:in `method_missing'

rack (2.2.3) lib/rack/urlmap.rb:74:in `block in call'

rack (2.2.3) lib/rack/urlmap.rb:58:in `each'

rack (2.2.3) lib/rack/urlmap.rb:58:in `call'

unicorn (5.6.0) lib/unicorn/http_server.rb:632:in `process_client'

unicorn (5.6.0) lib/unicorn/http_server.rb:728:in `worker_loop'

unicorn (5.6.0) lib/unicorn/http_server.rb:548:in `spawn_missing_workers'

unicorn (5.6.0) lib/unicorn/http_server.rb:144:in `start'

unicorn (5.6.0) bin/unicorn:128:in `<top (required)>'

vendor/bundle/ruby/2.6.0/bin/unicorn:23:in `load'

vendor/bundle/ruby/2.6.0/bin/unicorn:23:in `<main>'

Removi o Babble, reconstruí e a função de busca voltou a funcionar perfeitamente.

Por favor, corrigam esse erro.

4 curtidas

Curioso sobre as experiências de quem executa o plugin Babble junto com o Matterbridge + Matterbabble em serviços de chat de terceiros.

Você consegue sincronizar com sucesso seus chats do Babble com outros serviços de chat, como Slack, Discord, Matrix, etc.?

Acabei de passar por isso também. Reconstruir após remover o babble corrigiu a pesquisa no meu site também.

1 curtida

@gdpelican estamos enfrentando o mesmo problema (a pesquisa retorna erro interno do servidor). Poderia dar uma olhada quando tiver um tempo? Nossa comunidade tem usuários de chat muito dedicados, então eles estão bastante tristes porque desativamos o Babble até que o problema seja resolvido.

1 curtida

O mesmo aqui — e usamos o Babble de forma bastante intensiva