SDK React Native
SDK ElevenAgents: distribuisci in pochi minuti agenti vocali interattivi e personalizzati per app React Native.
Consulta la panoramica di ElevenAgents per una spiegazione di come funziona ElevenAgents.
Installazione
Installa il pacchetto e le relative dipendenze nel tuo progetto React Native.
Puoi trovare un’app di esempio che usa questo SDK con Expo qui
Stai effettuando l’aggiornamento da una versione precedente? Esegui npx skills add elevenlabs/packages per installare la
skill elevenlabs:sdk-migration per il tuo agente di coding IA, che automatizza le modifiche agli import,
il wrapping di ConversationProvider e gli aggiornamenti delle API.
Requisiti
- React Native con dipendenze LiveKit
- Permessi del microfono configurati per la tua piattaforma
- Compatibilità con Expo (solo development build)
- React Native 0.79.0+ oppure Metro configurato per risolvere
"exports"dipackage.jsonnelle versioni precedenti
Questo SDK è stato progettato e sviluppato per l’uso con il framework Expo. A causa della dipendenza dall’implementazione WebRTC di LiveKit, richiede development build e non può essere usato con Expo Go.
@elevenlabs/react-native risolve il proprio entry point React Native tramite il campo
"exports" di package.json. Metro risolve
"exports" per impostazione predefinita solo a partire da Metro 0.82.0, incluso in React Native
0.79.0 (rilasciato l’8 aprile 2025). Se
usi una versione di React Native precedente alla 0.79, imposta resolver.unstable_enablePackageExports = true nel tuo metro.config.js affinché questo pacchetto venga risolto correttamente:
Configurazione
Configurazione del provider
Avvolgi la tua app con ConversationProvider per abilitare le funzionalità di ElevenAgents.
@elevenlabs/react-native riesporta ConversationProvider e tutti gli hook da
@elevenlabs/react. L’API è identica a quella dell’SDK React per il web: consulta la documentazione
dell’SDK React per il riferimento API completo.
Utilizzo
Tutti gli hook dell’SDK React sono disponibili tramite @elevenlabs/react-native:
useConversation— hook pratico che combina tutti gli stati e i metodiuseConversationControls— metodi di azione (startSession, endSession ecc.)useConversationStatus— stato della connessioneuseConversationInput— stato di disattivazione dell’audiouseConversationMode— stato di conversazione/ascoltouseConversationFeedback— disponibilità e invio dei feedbackuseConversationClientTool— registrazione dinamica degli strumenti clientuseRawConversation— istanza della conversazione non elaborata
Avvio di una conversazione
Per agenti privati, autenticazione, strumenti client, override e tutte le altre funzionalità, consulta la documentazione dell’SDK React.
Esempio di implementazione
Ecco un esempio completo di un componente React Native che usa l’SDK ElevenLabs Agents:
Considerazioni specifiche per piattaforma
iOS
Assicurati che i permessi del microfono siano configurati correttamente nel tuo Info.plist:
Android
Aggiungi i permessi del microfono al tuo android/app/src/main/AndroidManifest.xml:
Valuta di richiedere i permessi runtime prima di avviare una conversazione: