Stimmenrekorder-Komponente

So! Stellen Sie sicher, dass Sie die von mir angegebene URL verwenden. :+1:

5 „Gefällt mir“

Hier sind meine Vorher- und Nachher-Ergebnisse:

(Beachten Sie auch, dass der einzige eingebettete .mp3-Player, der nicht die Dauer des Clips anzeigt, der unter Windows aufgenommene ist, sowohl davor als auch danach.)

VORHER:

NACHHER:

Lassen Sie mich wissen, wenn Sie weitere Tests wünschen!

2 „Gefällt mir“

Bei mir funktioniert es auf dem iPad und iPhone, auch auf DiscourseHub. Die Länge eines Clips wird beim Abspielen angezeigt.

3 „Gefällt mir“

Danke für das Feedback, Jakke!

Außerdem danke an @denvergeeks, ich habe zwei Probleme behoben und er hat bestätigt, dass jetzt alles perfekt läuft.

Ich werde bald einen PR erstellen. :+1:

5 „Gefällt mir“

Ich habe den PR erstellt :+1:

Mögliche Funktionen für andere PRs:

  • Unterstützung für Chat hinzufügen
  • Unterstützung für Pause/Fortsetzen hinzufügen
10 „Gefällt mir“

Solche Großartigkeit

3 „Gefällt mir“

Hier ist ein verrückter Gedanke – ein KI-Transkriptions-Button für hochgeladene .mp3-Audiodateien im Composer? Auf diese Weise könnte ein Benutzer (jetzt) einen Beitrag im Composer aufzeichnen und ihn auch lesbar und durchsuchbar machen.

Was wäre nötig, um die OpenAI/Whisper-Funktionalität zu integrieren?

Oder in den KI-Dropdown-Optionen, die beim Auswählen der Datei im Composer erscheinen…

…könnte eine Option Text transkribieren enthalten.

8 „Gefällt mir“

Das wäre eine interessante und hilfreiche Funktion! :+1:

Ich werde die Machbarkeit an einem anderen Tag prüfen.

8 „Gefällt mir“

Sehr geschätzt!

3 „Gefällt mir“

Wenn in Chat implementiert, könnte die Inline-Automatische Transkription auch Übersetzungen beinhalten.

5 „Gefällt mir“

Ich habe diese Komponente im System aktualisiert.
https://github.com/paviliondev/discourse-voice-recorder

Getestet unter Firefox/Safari/Chrome auf Mac und iPhone.
Es zeigt dies an, es nimmt nicht auf.
Könnte das jemand bestätigen? Danke…

2 „Gefällt mir“

Können Sie die Browserkonsole überprüfen, ob Fehler angezeigt werden?

Zu diesem Zeitpunkt bedeutet dies, dass etwas das Laden des Bibliotheksskripts blockiert.

3 „Gefällt mir“

Ich habe gerade das TC frisch aus dem Paviliondev-Repository installiert, wie oben verlinkt.

Alles funktioniert in meiner Discourse-Instanz. Hier ist ein Video…

(Und es erscheinen keine Fehler in der Konsole bei keinem Schritt des Erstellens/Hochladens/Abspielens.)

4 „Gefällt mir“

Dies ist Discourse 3.2.1, gehostet auf Communiteq

load-script.js:43 Weigerung, das Skript ‘https://www.mydiscoursesite.com/uploads/db9860/original/3X/c/f/cf579d0503105d41f84653929d510e17f12d9f5b.js’ zu laden, da es gegen die folgende Content Security Policy-Direktive verstößt:
"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 „Gefällt mir“

Ich kann es reproduzieren.

Eine kürzlich eingeführte Einstellung ermöglicht die dynamische Ausführung externer Skripte ohne manuelle Konfiguration.
Sie ist in 3.2 nicht verfügbar.

image

Es ist definitiv keine gute Idee, das Verzeichnis „/uploads“ zuzulassen.
Als Workaround ist es jedoch in Ordnung, nur die URLs zuzulassen.

Wenn Sie zu den Komponenteneinstellungen gehen:

Sie können mit der rechten Maustaste auf jeden Link klicken, um ihn zu kopieren und in die Einstellung content security policy script-src einzufügen.

Ich weiß nicht, ob es hier von einer Theme-Komponente aus eine bessere Möglichkeit gibt, das CSP-Problem zu lösen. :thinking:

1 „Gefällt mir“

Danke @Arkshine

In der Konsole habe ich diese 2 JS-Dateien unter der URL /uploads/ gesehen und zur Liste von „content security policy script src“ hinzugefügt.

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

Habe die Browser-Berechtigung für die Aufnahme bestätigt.
Dann, jedes Mal, wenn eine Aufnahme gestartet wird, tritt der Fehler mit einer anderen URL auf. Scheint, als ob die ID “on the fly” generiert wird?

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

Das Hinzufügen dieser URLs hilft nicht, es scheint, als ob sie für jede Aufnahme generiert werden…?

1 „Gefällt mir“

Können Sie bitte versuchen, script-src: blob: zu content security policy script-src hinzuzufügen?

3 „Gefällt mir“

Es funktioniert, danke @Arkshine!

Ich freue mich auf die Sprachaufzeichnung im Chat :slight_smile:

4 „Gefällt mir“

Ich hatte diesen Fehler nicht, anscheinend weil ich blob: bereits als Eintrag in content security policy script src hatte, da @peter.be’s Plugin dies erforderte und seit dem Entfernen dieses Plugins hatte ich blob: nicht aus dem Eintrag in content security policy script src entfernt, sodass es bereits vorhanden war, wie unten gezeigt…\n\n

\n\nMuss mp3 auch zur Liste der autorisierten Erweiterungen in den Discourse-Admin-Einstellungen hinzugefügt werden? Das habe ich auch schon vorher… \n\n

3 „Gefällt mir“

Nur zum Nachdenken: CSP hat die Tendenz, Dinge schlecht kaputt zu machen, und deshalb ist es ziemlich üblich, Regeln zu verwenden, die praktisch nur Platzhalter sind – und dann verliert CSP seine Idee total.

Also?

2 „Gefällt mir“