SDKsExemples

Exemples

Application minimale (React)

Exemple avec TranscriptionProvider, TranscriptionButton et useTranscription. Les props optionnelles (thème, presets, interimStreaming, etc.) sont décrites dans les pages Apparence, Presets et Connexion et flux.

'use client';
 
import {
  TranscriptionProvider,
  TranscriptionButton,
  useTranscription,
} from '@ephia/transcribe-sdk';
import '@ephia/transcribe-sdk/dist/styles.css';
 
export function TranscriptionDemo({ token }: { token: string }) {
  return (
    <TranscriptionProvider>
      <TranscriptionButton
        token={token}
        endUserId="user-123"
        theme="dark"
        variant="standard"
      />
      <TranscriptPanel />
    </TranscriptionProvider>
  );
}
 
function TranscriptPanel() {
  const {
    chunks,
    isRecording,
    isConnected,
    error,
    errorCode,
    streamingWarning,
    clear,
  } = useTranscription();
 
  return (
    <div>
      <p>
        {isConnected ? 'Connecté' : 'Déconnecté'}
        {isRecording ? ' · Enregistrement' : ''}
      </p>
      {error && (
        <p role="alert">
          {error} ({errorCode})
        </p>
      )}
      {streamingWarning && (
        <p role="status">{streamingWarning.message}</p>
      )}
      <button type="button" onClick={clear}>
        Effacer la transcription
      </button>
      <div>
        {chunks.map((c) => (
          <p key={c.id}>
            [{c.status}] {c.text}
          </p>
        ))}
      </div>
    </div>
  );
}

Ressources