
Compartilhar:
Michael Crump trabalha na Vonage, na equipe de Experiências do Desenvolvedor, e é programador, YouTuber e palestrante frequente sobre diversos temas relacionados ao .NET e ao desenvolvimento em nuvem e de comunicações. Ele se dedica a ajudar os desenvolvedores a compreender os benefícios de cada um desses temas de maneira prática e direta.
Como fazer uma chamada telefônica com conversão de texto em fala usando Node.js
Tempo de leitura: 6 minutos
Introdução
A Voice API da Vonage é a maneira mais fácil de criar aplicativos de voz de alta qualidade na nuvem. Com a Voice API, você pode:
Crie aplicativos que se adaptem às tecnologias da web que você já utiliza.
Controle o fluxo de chamadas recebidas e realizadas em JSON com Objetos de Controle de Chamadas da Nexmo (NCCO). (Observação: a Nexmo agora é a Vonage).
Gravar e armazenar chamadas recebidas ou realizadas
Criar teleconferências
Envie mensagens com conversão de texto em fala em 40 idiomas, com diferentes gêneros e sotaques.
E muito mais!
Neste tutorial, você aprenderá a usar com segurança as Voice APIs da Vonage para criar uma chamada telefônica de saída com conversão de texto em fala usando o Node.js.
O código-fonte do aplicativo pode ser encontrado aqui.
Pré-requisitos
Antes de começar, certifique-se de ter o seguinte:
Node.js instalado. O Node.js é um ambiente de execução de JavaScript de código aberto e multiplataforma.
OPCIONAL - CLI do Vonage Depois de instalar o Node.js, instale a CLI digitando
npm install -g @vonage/cli. Essa ferramenta permite que você crie e gerencie suas Applications Vonage a partir de uma interface de linha de comando, em vez de usar o Portal do Desenvolvedor da Vonage.
Criar uma aplicação da Vonage com recursos de voz
Para usar a Voice API da Vonage, você precisará criar uma aplicativo Vonage no portal do desenvolvedor.
Você precisa de um aplicativo da Vonage, pois ele contém as informações de segurança e configuração necessárias para interagir com as Voice APIs da Vonage. Todas as solicitações à Voice API da Vonage exigem autenticação. É necessário gerar uma chave privada por meio da API do aplicativo, o que permite criar tokens JSON Web (JWT) para realizar as solicitações.
As chaves públicas e privadas associadas às Applications podem ser criadas por meio do Portal do Desenvolvedor da Vonage ou pela CLI da Vonage. Para os fins deste tutorial, usaremos o Painel de Controle do Desenvolvedor da Vonage.
O Painel do Desenvolvedor da Vonage
Depois de criar um Account, faça login no Painel do Desenvolvedor da Vonage e procure a seção “Aplicativos”e, a partir daí, crie um novo aplicativo. Dê um nome ao seu aplicativo, como OutboundCall, e clique em Gerar chave pública e privada. Isso solicitará que você baixe sua chave privada e preencherá a chave pública para você. Guarde essas informações em local seguro, pois qualquer pessoa com acesso a elas poderá usar sua Account!
OutboundCall.png
Role a página para baixo e certifique-se de que o Voice esteja ativada; então você poderá sair da Atender, Eventoe URLs de fallback em branco.
VoiceCapability.png
Imprensa Crie um novo aplicativo para continuar. Você também pode vincular um número, se quiser, mas isso não será necessário para este tutorial.
Configuração de um projeto Node.js
Agora que criamos nosso aplicativo Vonage Voice no painel do desenvolvedor e geramos nosso par de chaves pública/privada, vamos ver como devemos configurar nosso aplicativo Node.js.
Comece abrindo uma janela de comando/terminal, criando um diretório de trabalho e, em seguida, inicialize um projeto Node.js.
Precisamos instalar também o Node Vonage Server SDK.
Crie um index.js arquivo e inicialize o SDK da Vonage e as credenciais com o código a seguir:
const {
Vonage
} = require('@vonage/server-sdk');
const credentials = {
applicationId: 'VONAGE_APPLICATION_ID',
privateKey: "./private.key",
};
const options = {};
const vonage = new Vonage(credentials);Substitua o VONAGE_APPLICATION_ID pelo ID do aplicativo fornecido para o aplicativo Vonage que você criou no painel do desenvolvedor. Certifique-se de que a privateKey tenha o caminho para a chave privada baixada anteriormente. Observação: copiei meu arquivo private.key para a raiz do meu aplicativo e posso acessá-lo especificando que a privateKey é igual a ./private.key.
Para ligar para um número usando a Voice API, vamos usar o método vonage.voice.createOutboundCall da biblioteca Vonage para Node.js. Esse método aceita objetos como parâmetros, contendo informações sobre o destinatário, o remetente e o texto a ser reproduzido.
Para a Voice API, precisaremos especificar um destinatário, um remetente e o NCCO que queremos enviar.
Por fim, o objeto de conteúdo aceita um tipo de texto e uma mensagem de texto. A função de retorno de chamada retorna um objeto de erro e um objeto de resposta, e registraremos mensagens sobre o sucesso ou a falha da operação.
vonage.voice.createOutboundCall({
to: [{
type: 'phone',
number: YOUR_NUMBER
}],
from: {
type: 'phone',
number: VONAGE_VIRTUAL_NUMBER
},
ncco: [{
"action": "talk",
"text": "You are listening to a test text-to-speech call made with the Vonage Voice API",
}]
})
.then(resp => console.log(resp))
.catch(err => console.error(err));
Substituir SEU_NÚMERO por um número de telefone no qual você possa atender imediatamente. O VONAGE_VIRTUAL_NUMBER deve ser o seu número virtual, que você encontra no seu painel de controle. Você pode personalizar o objeto NCCO com parâmetros opcionais com diversas vozes, por idioma, gênero e até mesmo sotaque.
Observe que poderíamos hospedar o objeto NCCO no GitHub, por exemplo, declarando um ANSWER_URL com o seguinte e removendo o ncco por um answer_url conforme mostrado abaixo:
const ANSWER_URL = 'https://raw.githubusercontent.com/nexmo-community/ncco-examples/gh-pages/text-to-speech.json'
...
answer_url: [ANSWER_URL] Executar o aplicativo
Digite o seguinte no prompt do comando/terminal para executar o aplicativo:
node index.jsSeu telefone deve tocar; você ouvirá uma voz lendo o texto que especificamos, e a chamada será encerrada. Observe que pode ocorrer algum atraso, dependendo da operadora de telefonia à qual você estiver se conectando.
Conclusão
Agora que você aprendeu a fazer uma chamada de saída com a Voice API da Vonage e o Node.js, pode ouvir o áudio em diferentes idiomas ou sotaques ou personalizar ainda mais o texto falado ainda mais para encontrar a opção certa para o seu negócio.
Se você tiver dúvidas ou sugestões, junte-se a nós no Slack dos desenvolvedores da Vonage ou me envie um tweet no Twitter, e eu entrarei em contato com você. Mais uma vez, obrigado pela leitura, e nos vemos no próximo artigo!
Compartilhar:
Michael Crump trabalha na Vonage, na equipe de Experiências do Desenvolvedor, e é programador, YouTuber e palestrante frequente sobre diversos temas relacionados ao .NET e ao desenvolvimento em nuvem e de comunicações. Ele se dedica a ajudar os desenvolvedores a compreender os benefícios de cada um desses temas de maneira prática e direta.