Sim, e é uma diferença sutil por design. A suposição aqui é que a maioria dos usuários lendo este tópico/post não precisa necessariamente saber imediatamente que “este post está vindo de um usuário de fora desta comunidade”. É interessante saber como administrador ou como alguém que implementa o recurso, mas a maioria das pessoas quer focar no conteúdo. Portanto, optamos por ser relativamente discretos sobre os tecnicismos do ActivityPub de uma postagem.
Então meus usuários são diferentes. Eles definitivamente queriam saber. Mas isso deve ser um exemplo de diferenças culturais e como nós, finlandeses, estamos próximos do comportamento antissocial (por criadores de conteúdo americanos, porque não temos nenhuma habilidade para bate-papo nos EUA
).
Mas foi relativamente fácil de ajustar usando CSS, então os padrões estão bons (e uma solução está aqui caso alguém se pergunte a mesma coisa).
Respondi do Mastodon a uma postagem do Discourse e a resposta não aparece no Discourse. É um bug, ou talvez tal funcionalidade ainda não tenha sido implementada, ou talvez não esteja planejado implementar tal funcionalidade?
É um bug ou outra coisa. Acabei de ter uma discussão em que o tópico foi publicado no Mastodon, recebi um comentário de lá, respondi ao tópico e isso também ficou visível lá.
Pergunta padrão: você usa a versão mais recente?
Sim, instalei o plugin recentemente, embora tenha tido que usar este fork (PR pendente) para fazê-lo funcionar: GitHub - kuba-orlik/discourse-activity-pub: Adds ActivityPub support to Discourse.
Olá, você pode ajudar a responder algumas perguntas vagamente relacionadas à moderação, que não consegui encontrar respostas, por favor?
- Uma vez que uma postagem foi federada, ela pode ser moderada pelos administradores locais? Quero dizer, editada, ocultada, excluída…
- O que acontece se a postagem for editada na instância de origem? Ela é atualizada na instância federada?
- Se os moderadores quiserem contatar o usuário federado usando a opção de denúncia ou mensagem/chat, podem? Ou esses usuários remotos não são usuários reais na instância local?
- Se eu tenho uma conta com o mesmo nome de usuário e endereço de e-mail em duas instâncias federadas, elas ainda serão consideradas duas contas diferentes em cada instância, certo? Não há como ‘mesclá-las’.
- sim
- sim (ou deveria)
- não, mas você pode excluir um ator problemático (em Mastodon outros usuários podem reportar, mas o que acontece depende do administrador no final)
- Discourse nunca vê e-mails através do ActivityPub. Em vez disso, pode haver vários
icaria@…onde a “parte do domínio”, nomes das instâncias, muda, e todas essas contas ainda são de propriedade da mesma pessoa. Você não pode mesclar essas contas porque então você estaria na verdade banindo servidores para obter tópicos/posts.
Ok, habilitamos o plugin em nossa instância, criamos um ator conectado a uma tag e federamos nossa primeira postagem para o Fediverse. Muito empolgante! E impressionante.
Algumas perguntas (que podem ser sugestões de recursos ausentes, mas ainda estou tentando entender o que está disponível):
Como um usuário do Discourse vendo o tópico federado, há alguma maneira de obter um link para o toot (mensagem) correspondente no Mastodon, para impulsioná-lo facilmente lá? Não consegui encontrá-lo no pequeno log adicionado ao tópico:
Como um usuário do Mastodon vendo um toot vindo do Discourse, existe uma maneira fácil de encontrar a conta do Mastodon do ator para seguir? Eles podem ver a conta do remetente, mas não a do ator. Se eles seguirem o link para o fórum, não consegui encontrar uma maneira de deduzir como encontrar o ator.
Por que o plugin está impulsionando todas as respostas, em vez de deixá-las serem apenas respostas, as respostas típicas de “público silencioso”? Esses impulsos criam muito ruído extra para aqueles que seguem o ator no Mastodon.
O que deve acontecer quando um usuário do Mastodon iniciar uma nova postagem (não uma resposta) e mencionar a conta do ator ou a conta de um usuário do Discourse?
Finalmente, isso não parece normal, e estamos recebendo muitos deles (mais de cem em poucas horas)
Job exception: stack level too deep
activesupport-7.2.2.1/lib/active_support/core_ext/object/blank.rb:166:in `present?'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/json_ld.rb:57:in `base_object_id'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/json_ld.rb:58:in `base_object_id'
(snip, dezenas destes)
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/json_ld.rb:58:in `base_object_id'
/var/www/discourse/plugins/discourse-activity-pub/app/jobs/discourse_activity_pub_process.rb:25:in `process_id'
/var/www/discourse/plugins/discourse-activity-pub/app/jobs/discourse_activity_pub_process.rb:8:in `execute'
/var/www/discourse/app/jobs/base.rb:316:in `block (2 levels) in perform'
rails_multisite-6.1.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
rails_multisite-6.1.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'
/var/www/discourse/app/jobs/base.rb:303:in `block in perform'
/var/www/discourse/app/jobs/base.rb:299:in `each'
/var/www/discourse/app/jobs/base.rb:299:in `perform'
sidekiq-7.3.9/lib/sidekiq/processor.rb:220:in `execute_job'
sidekiq-7.3.9/lib/sidekiq/processor.rb:185:in `block (4 levels) in process'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:180:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
/var/www/discourse/lib/sidekiq/pausable.rb:132:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
sidekiq-7.3.9/lib/sidekiq/job/interrupt_handler.rb:9:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
sidekiq-7.3.9/lib/sidekiq/metrics/tracking.rb:26:in `track'
sidekiq-7.3.9/lib/sidekiq/metrics/tracking.rb:134:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:173:in `invoke'
sidekiq-7.3.9/lib/sidekiq/processor.rb:184:in `block (3 levels) in process'
sidekiq-7.3.9/lib/sidekiq/processor.rb:145:in `block (6 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/job_retry.rb:118:in `local'
sidekiq-7.3.9/lib/sidekiq/processor.rb:144:in `block (5 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/config.rb:39:in `block in <class:Config>'
sidekiq-7.3.9/lib/sidekiq/processor.rb:139:in `block (4 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/processor.rb:281:in `stats'
sidekiq-7.3.9/lib/sidekiq/processor.rb:134:in `block (3 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/job_logger.rb:15:in `call'
sidekiq-7.3.9/lib/sidekiq/processor.rb:133:in `block (2 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/job_retry.rb:85:in `global'
sidekiq-7.3.9/lib/sidekiq/processor.rb:132:in `block in dispatch'
sidekiq-7.3.9/lib/sidekiq/job_logger.rb:40:in `prepare'
sidekiq-7.3.9/lib/sidekiq/processor.rb:131:in `dispatch'
sidekiq-7.3.9/lib/sidekiq/processor.rb:183:in `block (2 levels) in process'
sidekiq-7.3.9/lib/sidekiq/processor.rb:182:in `handle_interrupt'
sidekiq-7.3.9/lib/sidekiq/processor.rb:182:in `block in process'
sidekiq-7.3.9/lib/sidekiq/processor.rb:181:in `handle_interrupt'
sidekiq-7.3.9/lib/sidekiq/processor.rb:181:in `process'
sidekiq-7.3.9/lib/sidekiq/processor.rb:86:in `process_one'
sidekiq-7.3.9/lib/sidekiq/processor.rb:76:in `run'
sidekiq-7.3.9/lib/sidekiq/component.rb:10:in `watchdog'
sidekiq-7.3.9/lib/sidekiq/component.rb:19:in `block in safe_thread'
Se você clicar no rótulo “Nota” nessa captura de tela, você obterá um link para o objeto Nota no Discourse, mas não tenho certeza se é isso que você quer. Você poderia explicar um pouco mais sobre o que você espera que aconteça? Talvez compartilhar uma pequena história de usuário sobre o que você espera fazer.
Você quer dizer o usuário do Discourse? Você não pode seguir usuários do Discourse atualmente.
Você poderia elaborar sobre o que você espera que aconteça aqui? Talvez com uma história de usuário.
Isso deve ser abordado quando isso for mesclado.
É? Ou é basicamente o mesmo que as perguntas anteriores sobre Job exception: stack level too deep?
De fato! Eu tinha perdido o relatório anterior. PR chegando em breve.
Acontece, muita coisa para dar conta ![]()
Obrigado.
Claro!
Como um usuário do Discourse que também tem uma conta no Mastodon, vejo um novo tópico federado no meu Discourse e quero impulsioná-lo rapidamente (compartilhá-lo novamente) da minha conta do Mastodon, para que todos os meus seguidores do Mastodon saibam sobre ele e talvez respondam de suas contas do Mastodon, trazendo muito feedback federado para o tópico no Discourse (e talvez alguns deles que não conheciam o fórum se juntem ao Discourse como resultado!)
Ok, para fazer isso, o usuário precisa encontrar facilmente um URL que possa colar na caixa de pesquisa do cliente Mastodon, que servirá o toot (mensagem) federado correspondente à postagem do Discourse.
Não consigo encontrar este URL na interface do Discourse. A única maneira fácil de impulsionar uma postagem federada do Discourse que encontrei até agora é seguir o ator do Discourse e ter a postagem na minha linha do tempo do Mastodon. Isso é bom para aqueles que já seguem o ator, mas não para aqueles usuários do Discourse que ainda não seguem o ator.
Espero ter conseguido explicar o problema e não confundir mais as coisas.
Postarei a história de usuário sobre o impulsionamento contínuo mais tarde, após entender melhor o comportamento atual.
Se entendi direito, você mal consegue encontrar alguma coisa dessa forma no Mastodon.
Para mim, a questão desse tipo é a própria conversa. Como tudo são reboosts, preciso encontrar a primeira postagem antes de conseguir o tópico inteiro, porque os comentários de um reboost nunca são mostrados aos seguidores. Assim, essa conversa desaparecerá.
E se eu der reboost em um comentário do Discourse, ele será mostrado por um “user-actor” que não pode ser seguido.
Isso, e a falta definitiva de (hash)tags são os principais pontos de interrogação agora — para mim, de qualquer forma.
Ok, encontrei o link que eu queria… nas respostas, mas não na postagem principal:
Nas respostas, é o ícone da federação no canto superior direito, ao lado de “22h” nesta captura de tela.
Se você clicar nele, obterá esta caixa de diálogo:
Que de fato aponta para a resposta no Mastodon: icaria36 🎶: "@icaria36@the.socialmusic.network This is a test …" - SoNoMu
Estou sentindo falta do ícone e link equivalentes para a postagem principal. Provavelmente está em algum lugar óbvio, mas não consigo encontrar. ![]()
EDIT:
Ah, espere, esse link aparece apenas para postagens vindas do Mastodon, não para postagens nativas do Discourse. Acabei de perceber que o pequeno ícone tem uma versão azul e uma verde para diferenciar isso. Azul-verde não é uma boa combinação de cores para distinguir um ícone tão pequeno. Meu monitor de desktop é muito bom, não tenho daltonismo, e ainda assim só percebi a diferença agora, ao olhar detalhadamente para esses ícones.
Para mim, um grande problema é que…
Como um usuário do Mastodon respondendo a uma postagem federada do Discourse, quero receber uma notificação do Mastodon se alguém responder à minha postagem ou me mencionar no Discourse.
No momento, as respostas dos usuários do Discourse aos posts dos usuários do Mastodon provavelmente serão perdidas pelos usuários do Mastodon que estão sendo respondidos, porque eles não veem notificações, mesmo quando foram respondidos ou mencionados. Isso torna as conversas reais ainda mais difíceis do que já são no Mastodon — porque você nem sabe que alguém respondeu ao seu comentário. Novamente, a menos que eu esteja perdendo alguma coisa.
MAS, por favor, encare tudo isso simplesmente como feedback para melhorias. Este plugin já é impressionante, nós o manteremos e ficaremos felizes em ajudar relatando problemas e testando novos recursos. Muito obrigado @angus e equipe!
Qual é a diferença entre “Publicar” e “Entregar”? Aqui está uma captura de tela de “Administração de Tópico”, de um tópico já publicado, mas com uma postagem… não entregue? A postagem já está federada corretamente no Mastodon, e eu me pergunto o que acontece quando o administrador clica em “Entregar Postagem nº 1”.
Tanto a publicação quanto a entrega acontecem automaticamente se você postar em uma categoria ou tag do ActivityPub (com as configurações relevantes). A distinção entre os dois, e esses controles de administrador, são para flexibilidade e casos de uso específicos.
Publicar = a postagem está disponível no fediverso.
Entregar = a postagem é entregue aos seguidores do(s) ator(es) relevante(s).
Essa ação permite que você entregue a mesma postagem sempre que quiser, inclusive depois que ela já foi entregue. Existem vários casos de uso para isso, por exemplo:
-
Você publicou inicialmente um tópico sem entregar todas as postagens do tópico aos seus seguidores (porque não queria enviar spam para eles). Você pode então entregar postagens individuais.
-
A postagem foi publicada antes de um novo conjunto de seguidores seguir seu ator. Você pode entregar a mesma postagem novamente.
Se você clicar em “Informações do Tópico” para esse tópico, deverá ver que a postagem já foi entregue se a postagem já estiver federada no Mastodon.
Ok, agora temos uma história de usuário real de um usuário real que explica muito bem o problema.
Se quisermos compartilhar uma postagem federada específica para o Fedi, alguém sabe como fazemos isso? Eu tentei:
- olhar o perfil de @fediverse@the.socialmusic.network - nenhuma postagem visível
- olhar meu próprio perfil do socialmusic - nenhuma postagem visível
- olhar no fórum do Discourse por um botão de “compartilhar”: a URL não é reconhecida pela pesquisa do Masto
Fui eu! Obrigado por este plugin interessante, estamos gostando de mexer com Federação em nosso fórum.
Tive algumas perguntas e peço desculpas se isso já foi abordado antes (pesquisei no fórum, mas não vi nada).
- No lado do Mastodon/etc., como são tratadas as postagens privadas, apenas para seguidores e não listadas?
- Para um usuário com foco em privacidade, digamos alguém que executa o Gotosocial, como suas respostas federadas são tratadas?
Estou pensando particularmente em questões de consentimento: se alguém prefere não ter suas postagens pesquisáveis em um fórum público. Eles podem não estar cientes de que o tópico ao qual estão respondendo é publicamente visível no Discourse. As postagens dos usuários do Discourse são bem marcadas, mas se eu responder a um usuário AP no mesmo tópico, posso não perceber que originalmente é um tópico do Discourse.



