Un botón de llamada en tu web, atendido por el agente
Un cliente WebRTC permite a un visitante llamar al agente desde el navegador. Tu backend pide a la plataforma una contraseña temporal, se la pasa a la página, y la página inicia la llamada con un script. La clave secreta nunca llega al navegador.
Crear el cliente
En Telefonía › Clientes WebRTC elige el agente y lista los dominios donde se usará el botón, con localhost para pruebas locales. Obtienes el nombre del cliente (wc_…) y una clave secreta (wk_…), que se muestra una sola vez.
1. Tu backend pide una contraseña temporal
La contraseña vale 60 segundos y para una sola llamada.
curl -X POST https://developers.swissai.dev/api/webrtc/token \
-H "X-Api-Key: wk_tu_clave_secreta" \
-H "Content-Type: application/json" \
-d '{"client": "wc_3f9a1c2b7d4e", "identity": "visitor-1842"}'
// 200
{ "wss": "wss://pbx.swissai.dev:8089", "domain": "pbx.swissai.dev",
"user": "w4c1f09ab37de5521", "pass": "…", "target": "sip:ag_7f3a2b91@pbx.swissai.dev", "expires_in": 60 }
2. La página inicia la llamada
Carga el script y pásale la respuesta tal cual. onState recibe connecting, calling, connected e idle; onError el motivo cuando la llamada no puede empezar.
<button id="call">Llámanos</button>
<script src="https://developers.swissai.dev/js/call.js"></script>
<script>
document.getElementById('call').onclick = async () => {
const params = await (await fetch('/call-token', { method: 'POST' })).json(); // tu backend
SwissCall.start(params, { onState: s => console.log(s), onError: m => alert(m) });
};
</script>
Mismo agente, mismas herramientas, también por texto
El agente detrás del botón es el mismo que contesta el teléfono, con su prompt y sus herramientas. Con el mismo nombre de cliente y la misma clave, tu backend también puede enviarle mensajes de texto mediante la API de chat y leer las llamadas y costes del cliente con GetCalls. Ambas llamadas se prueban desde el área de pruebas del panel, con el código para copiar.
Preguntas frecuentes
¿Por qué la contraseña viene de mi backend?
Porque la clave secreta debe quedarse en el servidor. La página solo ve una contraseña válida 60 segundos y para una llamada.
¿Qué navegadores funcionan?
Cualquier navegador moderno con WebRTC y acceso al micrófono, en escritorio y móvil.
¿Las llamadas desde el navegador cuestan lo mismo que las telefónicas?
Sí. Cuentan como minutos del plan como cualquier otra llamada.
Páginas relacionadas
- Una URI SIP para cada agente de voz
- Herramientas: el agente llama a tus endpoints HTTP
- Atención al cliente de primer nivel por teléfono, atendida por un agente IA
Pruébalo con tus propias llamadas
Crea una cuenta, configura el agente en el panel y llámalo desde el navegador. Prueba gratuita de 30 días con 100 minutos, sin tarjeta.
Empezar gratisHablar con el agente de demostración