[M1] Enregistrement EventBus + option annotation Matrix (SF-M1-06, ST-M1-06) #19

Closed
opened 2026-04-06 01:34:38 +00:00 by charles · 0 comments
Owner

Contexte

Le module STT doit s'enregistrer auprès de l'EventBus pour écouter les événements m.room.message de type m.audio/m.voice (ST-M1-06). Il doit aussi proposer de stocker la transcription comme annotation Matrix (MSC proposé) ou uniquement en local (SF-M1-06).

Critères d'acceptation

  • SttExtension implémente le trait Extension et s'enregistre auprès de l'EventBus au démarrage
  • on_sync_event intercepte les m.room.message avec msgtype: m.audio ou m.voice
  • Si auto_transcribe = true, déclenche le pipeline automatiquement
  • Option dans les préférences : stocker la transcription comme annotation Matrix (via MSC) ou local uniquement
  • En mode "local uniquement" : la transcription est cachée dans SQLite avec event_id comme clé (déjà couvert par #7)
  • En mode "annotation Matrix" : envoi d'un événement de relation sur le message audio (format MSC à définir)

Notes techniques

  • Dépend de #2 (fractal-ext / EventBus), #7 (pipeline audio), #8 (TranscriptWidget)
  • Le MSC pour les annotations de transcription est expérimental — implémenter d'abord le mode local, annoter le code avec un TODO pour le mode Matrix
## Contexte Le module STT doit s'enregistrer auprès de l'EventBus pour écouter les événements `m.room.message` de type `m.audio`/`m.voice` (ST-M1-06). Il doit aussi proposer de stocker la transcription comme annotation Matrix (MSC proposé) ou uniquement en local (SF-M1-06). ## Critères d'acceptation - [ ] `SttExtension` implémente le trait `Extension` et s'enregistre auprès de l'`EventBus` au démarrage - [ ] `on_sync_event` intercepte les `m.room.message` avec `msgtype: m.audio` ou `m.voice` - [ ] Si `auto_transcribe = true`, déclenche le pipeline automatiquement - [ ] Option dans les préférences : stocker la transcription comme annotation Matrix (via MSC) ou local uniquement - [ ] En mode "local uniquement" : la transcription est cachée dans SQLite avec `event_id` comme clé (déjà couvert par #7) - [ ] En mode "annotation Matrix" : envoi d'un événement de relation sur le message audio (format MSC à définir) ## Notes techniques - Dépend de #2 (fractal-ext / EventBus), #7 (pipeline audio), #8 (TranscriptWidget) - Le MSC pour les annotations de transcription est expérimental — implémenter d'abord le mode local, annoter le code avec un TODO pour le mode Matrix
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
charles/my-fractal#19
No description provided.