Aller au contenu
Nouveau : le SDK Node dialpress. Routez le SIP comme avec Express et placez un agent sur n’importe quel appel.Commencer
DialPress
DialPress
Media Streams

L’audio en direct de chaque appel, dans votre code

Ouvrez l’audio d’un appel et recevez la voix de l’appelant au fil de ses paroles. Restituez de l’audio en temps réel. Construisez pipelines vocaux, bots et analyses sans exploiter de serveur média.

Un bot vocal IAbot.js
const dialpress = require('dialpress') const bot = dialpress() bot.invite('/ai/:name', async (req, res) => { await res.answer() const media = await res.media({ sampleRate: 16000 }) media.on('audio', (pcm) => stt.write(pcm)) // caller voice llm.on('reply', async (t) => media.play(await tts(t))) vad.on('speech', () => media.clear()) // barge-in res.on('dtmf', (d) => d === '0' && res.handoff('/internal/0', { summary: llm.summary() })) }) bot.connect({ address: 'agi.dialpress.ai', pathPrefixes: ['/ai'] })

En bref

Bidirectionnel

Lisez l’audio de l’appelant et restituez le vôtre sur le même flux.

Brut

Des trames PCM 16 bits, prêtes pour la reconnaissance vocale.

Interruptible

Videz l’audio en file d’attente dès que l’appelant coupe la parole au bot.

Ouvrir

Le SDK Node pour les apps sur la passerelle, WebSockets pour tout langage.

Un seul appel ouvre l’audio

Dans le SDK dialpress, res.media() renvoie le flux audio de l’appel. Envoyez le PCM de l’appelant à la reconnaissance vocale, renvoyez votre synthèse vocale et appelez clear() pour l’interruption. Des marqueurs vous indiquent quand un extrait a fini d’être joué.

Un bot vocal IAbot.js
const dialpress = require('dialpress') const bot = dialpress() bot.invite('/ai/:name', async (req, res) => { await res.answer() const media = await res.media({ sampleRate: 16000 }) media.on('audio', (pcm) => stt.write(pcm)) // caller voice llm.on('reply', async (t) => media.play(await tts(t))) vad.on('speech', () => media.clear()) // barge-in res.on('dtmf', (d) => d === '0' && res.handoff('/internal/0', { summary: llm.summary() })) }) bot.connect({ address: 'agi.dialpress.ai', pathPrefixes: ['/ai'] })
DialPress voice waveform on ink

Ou diffusez vers n’importe quel service

Les flux média WebSocket envoient l’audio d’un appel vers votre service. DialPress peut aussi se connecter au vôtre avec une poignée de main signée : seule votre stack reçoit l’audio.

Ce que les équipes construisent avec

01

Bots vocaux

Reconnaissance vocale, LLM et synthèse vocale en boucle, avec une prise de parole que vous contrôlez.

02

Transcription en direct

Transcrivez les appels en temps réel et affichez-les à la personne en ligne.

03

Analyses en temps réel

Repérez mots-clés, sentiment ou formules de conformité pendant que l’appel est encore en cours.

04

Enregistrement

Dupliquez les appels vers un enregistreur via SIPREC, avec pause et reprise pour les moments sensibles.

Questions fréquentes

Quel format audio vais-je recevoir ?

PCM 16 bits dans les deux sens.

Quelles langues puis-je utiliser ?

Le SDK est destiné à Node.js et TypeScript. Les flux WebSocket fonctionnent depuis n’importe quel langage.

Ai-je besoin de mon propre serveur média ?

Non. La passerelle ancre le média et livre le flux à votre code.

Comment gérer les interruptions ?

Appelez clear() sur le flux. L’audio en file d’attente s’arrête aussitôt et l’appelant est entendu.

Écoutez votre premier appel en code.

npm install dialpress et ouvrez res.media() sur votre prochain appel.