¡Así! Asegúrate de que estás usando la URL que te di. ![]()
Aquí están mis resultados antes y después:
(Tenga en cuenta también que el único reproductor de .mp3 incrustado que no muestra la duración del clip es el grabado en Windows, tanto antes como después).
ANTES:
DESPUÉS:
¡Avísame si quieres que haga más pruebas!
Me funciona en iPad y iPhone, también en DiscourseHub. La duración del clip aparece al reproducirlo.
¡Gracias por tus comentarios, Jakke!
También, gracias a @denvergeeks, he corregido dos problemas y él confirmó que todo ahora funciona perfectamente.
Voy a hacer un PR pronto. ![]()
Hice el PR ![]()
Posibles características para otros PRs:
- Añadir soporte para chat
- Añadir soporte para pausa/reanudar
Qué genialidad

Aquí hay una idea loca: ¿un botón de transcripción de IA para archivos de audio .mp3 subidos en el editor? De esa manera, un usuario podría (ahora) grabar una publicación en el editor, y también hacerla legible en texto y buscable.
¿Qué se necesitaría para incluir la capacidad de OpenAI/Whisper?
O, en las opciones desplegables de IA que aparecen al seleccionar el archivo en el editor…
…podría incluir una opción de Transcribir texto
¡Esa sería una característica interesante y útil! ![]()
Verificaré la viabilidad otro día.
¡Muy apreciado en este!
Si se implementa en Chat, la transcripción automática en línea también podría incluir traducciones.
Actualicé este componente en el sistema.
https://github.com/paviliondev/discourse-voice-recorder
Probé en Firefox/Safari/Chrome en Mac y en iPhone.
Muestra esto, no graba.
¿Alguien podría confirmarlo? Gracias…
¿Puedes revisar la consola del navegador si ves errores?
En este punto, significa que algo está bloqueando la carga del script de la biblioteca.
Acabo de instalar la TC desde el repositorio de paviliondev, tal como se indica arriba.
Todo funciona en mi instancia de Discourse. Aquí hay un video…
(Y no aparecen errores en la consola en ningún paso de la creación/carga/reproducción).
este es discourse 3.2.1 alojado en communiteq
load-script.js:43 Se denegó la carga del script ‘https://www.mydiscoursesite.com/uploads/db9860/original/3X/c/f/cf579d0503105d41f84653929d510e17f12d9f5b.js’ porque viola la siguiente directiva de Política de Seguridad de Contenido:
"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/
Puedo reproducirlo.
Una configuración introducida recientemente permite que scripts externos se ejecuten dinámicamente sin configuración manual.
No está disponible en 3.2.

Definitivamente no es una buena idea permitir el directorio “/uploads”.
Sin embargo, como solución alternativa, permitir solo las URL debería estar bien.
Si vas a la configuración del componente:
Puedes hacer clic derecho en cada enlace para copiar y pegarlos en la configuración content security policy script-src.
No sé si hay una mejor manera de manejar el problema de CSP aquí desde un componente temático. ![]()
gracias @Arkshine
en la consola, vi estos 2 js en la url de /uploads/, y los agregué a la 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
confirmé el permiso del navegador para grabar.
luego, cada vez que inicio una grabación, se produce un error con una url diferente, ¿parece que el id se genera sobre la marcha?
https://www.site.com/8f955841-9b8b-4857-8549-ac57ee0e4517
https://www.site.com/d43014ac-e80d-4879-83a2-bd046d43a25c
…
agregar estas urls no ayuda, parece que se generan para cada grabación… ?
¿Puede intentar agregar script-src: blob: en content security policy script-src, también, por favor?
¡funciona, gracias @Arkshine!
esperando la grabación de voz en el chat ![]()
No tuve este error, aparentemente porque ya tenía blob: como una entrada en content security policy script src porque el plugin de @peter.be lo había requerido y desde que eliminé ese plugin no había eliminado blob: como una entrada en content security policy script src, por lo que ya estaba allí, como se muestra a continuación…\n\n
\n\n¿También es necesario agregarmp3 a la lista de extensiones autorizadas en la configuración de administración de Discourse? Yo también tengo eso ya de antes…\n\n
Solo para pensar: CSP tiene tendencia a romper cosas de forma grave, y por eso es bastante habitual usar reglas que son prácticamente comodines — y entonces CSP pierde totalmente su propósito.
¿Y bien?











