Componente de Gravador de Voz

Assim! Certifique-se de que você está usando o URL que eu te dei. :+1:

5 curtidas

Aqui estão meus resultados antes e depois:

(Observe também que o único player de .mp3 incorporado que não mostra a duração do clipe é o gravado no Windows, tanto antes quanto depois.)

ANTES:

DEPOIS:

Me avise se você gostaria que eu fizesse mais testes!

2 curtidas

Funciona para mim usando iPad e iPhone, no DiscourseHub também. O comprimento de um clipe aparece ao reproduzir.

3 curtidas

Obrigado pelo feedback, Jakke!

Também, obrigado a @denvergeeks, corrigi dois problemas e ele confirmou que tudo agora funciona perfeitamente.

Vou fazer um PR em breve. :+1:

5 curtidas

Eu fiz o PR :+1:

Possíveis recursos para outros PRs:

  • Adicionar suporte para chat
  • Adicionar suporte para pausar/retomar
10 curtidas

Que demais

3 curtidas

Aqui está uma ideia maluca: um botão de transcrição de IA para arquivos de áudio .mp3 carregados no compositor? Dessa forma, um usuário poderia (agora) gravar uma postagem no compositor, e também torná-la legível em texto e pesquisável.

O que seria necessário para incluir a capacidade do OpenAI/Whisper?

Ou, nas opções do menu suspenso de IA que aparecem ao selecionar o arquivo no compositor…

…poderia incluir uma opção Transcrever Texto

8 curtidas

Essa seria uma funcionalidade interessante e útil! :+1:

Vou verificar a viabilidade outro dia.

8 curtidas

Altamente apreciado nisso!

3 curtidas

Se implementado no Chat, a transcrição automática inline também poderia incluir traduções.

5 curtidas

Eu atualizei este componente no sistema.
https://github.com/paviliondev/discourse-voice-recorder

Tentei no Firefox/Safari/Chrome no Mac e no iPhone.
Ele mostra isto, não grava.
Alguém poderia confirmar, obrigado…

2 curtidas

Você pode verificar o console do navegador se houver erros?

Neste ponto, isso significa que algo está bloqueando o carregamento do script da biblioteca.

3 curtidas

Acabei de instalar o TC do repositório paviliondev recém-instalado, conforme link acima.

Tudo está funcionando na minha instância do Discourse. Aqui está um vídeo…

(E nenhum erro aparece no console em nenhuma etapa de criação/upload/reprodução.)

4 curtidas

Este é o Discourse 3.2.1 hospedado no communiteq
load-script.js:43 Recusou-se a carregar o script ‘https://www.mydiscoursesite.com/uploads/db9860/original/3X/c/f/cf579d0503105d41f84653929d510e17f12d9f5b.js’ porque viola a seguinte diretiva da Política de Segurança de Conteúdo:
"script-src
https://www.mydiscoursesite.com/logs/
https://www.mydiscoursesite.com/sidekiq/
https://www.mydiscoursesite.com/mini-profiler-resources/
https://www.mydiscoursesite.com/assets/
https://www.mydiscoursesite.com/extra-locales/
https://www.mydiscoursesite.com/highlight-js/
https://www.mydiscoursesite.com/javascripts/
https://www.mydiscoursesite.com/plugins/
https://www.mydiscoursesite.com/theme-javascripts/
https://www.mydiscoursesite.com/svg-sprite/

2 curtidas

Eu consigo reproduzir.

Uma configuração introduzida recentemente permite que scripts externos sejam executados dinamicamente sem configuração manual.
Não está disponível na versão 3.2.

image

Definitivamente não é uma boa ideia permitir o diretório “/uploads”.
No entanto, como uma solução alternativa, permitir apenas os URLs deve ser aceitável.

Se você for às configurações do componente:

Você pode clicar com o botão direito em cada link para copiar e colar na configuração content security policy script-src.

Não sei se há uma maneira melhor de lidar com a questão do CSP aqui a partir de um componente de tema. :thinking:

1 curtida

obrigado @Arkshine

no console, eu vi esses 2 js em url /uploads/ e adicionei à lista de “content security policy script src”

https://www.site.com/uploads/db9860/original/3X/c/f/cf579d0503105d41f84653929d510e17f12d9f5b.js
https://www.site.com/uploads/db9860/original/3X/a/2/a25eb4ec6c9652e57eefc81bc25c81105232369b.js

confirmei a permissão do navegador para gravação.
então, toda vez que inicio uma gravação, ocorre um erro com uma URL diferente, parece que o ID é gerado dinamicamente?

https://www.site.com/8f955841-9b8b-4857-8549-ac57ee0e4517
https://www.site.com/d43014ac-e80d-4879-83a2-bd046d43a25c

adicionar essas URLs não ajuda, parece que é gerado para cada gravação…?

1 curtida

Posso tentar adicionar script-src: blob: em content security policy script-src, também, por favor?

3 curtidas

funciona, obrigado @Arkshine!

ansioso pela gravação de voz no chat :slight_smile:

4 curtidas

Eu não tive este erro, aparentemente porque eu já tinha blob: como uma entrada em content security policy script src porque o plugin do @peter.be o exigia e, desde que removi esse plugin, não removi blob: como uma entrada em content security policy script src, então já estava lá, como abaixo…\n\n

\n\nTambém é necessário adicionar mp3 à lista de extensões autorizadas nas configurações de administrador do Discourse? Eu também já tenho isso de antes…\n\n

3 curtidas

Apenas para pensar: CSP tem a tendência de quebrar coisas seriamente e, por causa disso, é bastante comum usar regras que são praticamente curingas — e então CSP perde totalmente sua utilidade.

E aí?

2 curtidas