Voice
Tu connectes ton compte Twilio, tu importes un numero, tu charges une liste de prospects, tu cliques Lancer. Kernel compose, transcrit en live, detecte les objections, te souffle la reponse. Tout reste sur ton compte Twilio (BYO).
Vue d'ensemble
Voice est BYO Twilio. Tu gardes le controle de ton sous-compte, de tes bundles regulatory, de ton billing Twilio. Kernel orchestre par dessus : dialer, scripts, dispositions, transcripts, coaching IA, analytics.
L'architecture est webhook simple : pas de SIP trunk, pas de softphone proprietaire. Le numero appelle, Twilio frappe ton webhook Kernel, Kernel repond avec du TwiML, le call est routed dans le navigateur via Twilio Voice SDK. Tu parles avec ton micro, tu entends avec tes ecouteurs.
Conformite RGPD/CNIL native : annonce d'enregistrement automatique au debut du leg prospect, DTMF 9 pour opt-out + ajout DNC, retention configurable des recordings (30 a 365 jours), zone Twilio Ireland (IE1) recommandee pour les donnees UE.
Ce que le module fait
BYO Twilio (Bring Your Own)
Tu connectes ton propre compte Twilio dans /settings/voice. Kernel ne facture pas les minutes : tu payes Twilio directement. Kernel facture seulement l'overlay (coaching IA, transcription, storage). Tu peux disconnect a tout moment.
- Account SID + API Key Sid + Secret (tu crees l'API Key dans Console Twilio)
- Region : ie1 (Ireland) recommandee pour RGPD
- Bundle regulatory FR National Business obligatoire pour acheter des 09 (cold outbound B2B)
- TwiML App auto-creee par Kernel (un seul clic dans le panel BYO)
Configuration webhook automatique
Tu n'as PAS a configurer manuellement les webhooks sur Twilio Console. A l'import, Kernel PUT sur IncomingPhoneNumbers et set : VoiceUrl, VoiceMethod, StatusCallback, StatusCallbackMethod, VoiceApplicationSid.
- VoiceUrl : https://kernel.freelance-os.fr/api/voice/voice-app/connect
- StatusCallback : https://kernel.freelance-os.fr/api/voice/webhooks/status
- HTTP method : POST sur les deux
- VoiceApplicationSid : lie a la TwiML App du workspace
Dialer dans le navigateur (Voice SDK)
Pas d'app native a installer. Tu ouvres /voice/run dans Chrome ou Safari, le SDK Twilio s'enregistre, ton micro et tes ecouteurs deviennent ton telephone. WebRTC sous le capot. Compatible Bluetooth.
Scripts et objections live
Tu definis tes scripts d'ouverture, tes reponses aux objections recurrentes, tes scripts de closing dans /voice/scripts. Pendant l'appel, le script de la phase courante s'affiche avec interpolation des variables (prenom, entreprise, etc.). Les objections sont detectees par IA en temps reel et la reponse t'est soufflee.
Dispositions et pipeline
A la fin de chaque appel, tu poses une disposition (Connected/Voicemail/No answer/Wrong number/DNC/Booked, etc.). Les dispositions sont configurables par workspace. Les transcripts et les dispositions remontent dans le CRM et dans /voice/analytics.
Analytics et coaching
KPIs en haut (calls, contacts, bookings, talk time), funnel par disposition, heatmap par heure, talk ratio (tu parles trop ou tu ecoutes assez), top performing openers, top failing objections. Le coaching IA propose des ajustements de script base sur les outliers.
Quotas et billing
Voice est inclus dans les plans Pro et Agency. Quotas mensuels : minutes outbound, transcription, coaching IA. La page /settings/billing/usage montre le breakdown avec un filtre par serviceGroup pour isoler le voice.
Comment on l'utilise
- 01
Cree ton compte Twilio
Va sur twilio.com/try-twilio. Email pro + telephone perso pour la verif 2FA. Quand on te demande Region, choisis Ireland (ie1) si tu es en Europe. Recharge $20 minimum pour debloquer les achats de numeros.
- 02
Cree ton Regulatory Bundle FR National Business
Console Twilio > Phone Numbers > Regulatory Compliance > Bundles > Create. Pour la France et le cold outbound B2B, choisis : Country=France, Number Type=National (couvre les 09), End User Type=Business. Upload Kbis + adresse societe. Approbation en quelques heures a 2 jours. Note le Bundle SID (BUxxx).
- 03
Achete un numero
Console > Phone Numbers > Buy a number > Country=France, Type=Local. Selectionne le bundle approuve a l'etape 2. Assign ton address SID. Confirme. Cout typique : ~$1.35/mois + ~$0.013/min outbound. Note le PN SID (PNxxx) depuis Active numbers.
- 04
Cree une API Key dans Twilio
Console > Account > API Keys & Tokens > Create API Key. Type=Standard. Region=Ireland si applicable. Copie le SID (SKxxx) et le Secret. ATTENTION le secret n'est affiche qu'une seule fois.
- 05
Connecte Twilio a Kernel
Va sur /settings/voice dans Kernel. Onglet BYO Twilio. Colle : Account SID (ACxxx), API Key SID (SKxxx), API Key Secret. Region=ie1, Edge=dublin. Click "Tester la connexion" puis "Sauvegarder". Click "Creer automatiquement la TwiML App" : Kernel cree l'app avec les bons webhooks et la lie au workspace.
- 06
Importe le numero achete
Toujours sur /settings/voice. Click "Provisionner un numero" > step Import (auto-selectionne si compte IE1). Colle le PN SID (PNxxx) + label (ex: "Cold outbound FR"). Click Importer. Kernel fetch le numero, set les webhooks via API, persiste en DB. Le numero apparait dans la liste avec status=active.
- 07
Configure les dispositions et scripts
Va sur /voice/scripts. Cree au moins : 1 script d'ouverture, 3 reponses aux objections les plus frequentes, 1 script de closing. Active les variables {{firstName}} {{company}} pour personnalisation. Va sur /voice/settings pour valider les dispositions par defaut.
- 08
Charge ta liste de prospects
Va sur /voice/lists > Create list. Soit tu uploades un CSV (e164, first_name, last_name, company), soit tu pioches depuis le CRM (filtre par tag ou stage). Le systeme deduplique contre DNC automatiquement.
- 09
Lance ton premier appel
Va sur /voice/run. Selectionne la liste, accepte les permissions micro/casque du navigateur. Click Start. Le dialer compose, la consent announcement passe, tu entends le prospect. ScriptPanel affiche l'opener. Parle. Si objection, le banner Live Signals apparait avec la reponse suggeree.
- 10
Mesure et itere
Apres 20-50 appels, va sur /voice/analytics. Regarde le talk ratio, le top opener, les objections qui te bloquent. Ajuste tes scripts. Refais une session. Iterate.
Apercu
Routes dans Kernel
- /settings/voice
- /voice/run
- /voice/lists
- /voice/scripts
- /voice/analytics
- /voice/settings