Um botão de chamada no seu site, atendido pelo agente
Um cliente WebRTC permite a um visitante ligar ao agente a partir do browser. O seu backend pede à plataforma uma palavra-passe temporária, entrega-a à página, e a página inicia a chamada com um script. A chave secreta nunca chega ao browser.
Criar o cliente
Em Telefonia › Clientes WebRTC escolha o agente e liste os domínios onde o botão será usado, com localhost para testes locais. Obtém o nome do cliente (wc_…) e uma chave secreta (wk_…), mostrada apenas uma vez.
1. O seu backend pede uma palavra-passe temporária
A palavra-passe é válida por 60 segundos e para uma única chamada.
curl -X POST https://developers.swissai.dev/api/webrtc/token \
-H "X-Api-Key: wk_a_sua_chave_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. A página inicia a chamada
Carregue o script e passe-lhe a resposta tal como está. onState recebe connecting, calling, connected e idle; onError o motivo quando a chamada não pode começar.
<button id="call">Ligue-nos</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(); // o seu backend
SwissCall.start(params, { onState: s => console.log(s), onError: m => alert(m) });
};
</script>
Mesmo agente, mesmas ferramentas, também em texto
O agente por trás do botão é o mesmo que atende o telefone, com o seu prompt e as suas ferramentas. Com o mesmo nome de cliente e a mesma chave, o seu backend também pode enviar-lhe mensagens de texto através da API de chat e ler as chamadas e os custos do cliente com GetCalls. Ambas as chamadas podem ser experimentadas na área de testes do painel, com o código para copiar.
Perguntas frequentes
Porque é que a palavra-passe vem do meu backend?
Porque a chave secreta tem de ficar no servidor. A página só vê uma palavra-passe válida por 60 segundos e para uma chamada.
Que browsers funcionam?
Qualquer browser moderno com WebRTC e acesso ao microfone, em desktop e móvel.
As chamadas pelo browser custam o mesmo que as telefónicas?
Sim. Contam como minutos do plano como qualquer outra chamada.
Páginas relacionadas
- Um URI SIP para cada agente de voz
- Ferramentas: o agente chama os seus endpoints HTTP
- Apoio ao cliente de primeira linha ao telefone, atendido por um agente IA
Experimente com as suas próprias chamadas
Crie uma conta, configure o agente no painel e ligue-lhe a partir do browser. Teste gratuito de 30 dias com 100 minutos, sem cartão.
Começar gratuitamenteFalar com o agente de demonstração