Olá,
Hoje vamos ver como é simples transformar TEXTO EM VOZ no PHP e entregar em qualquer telefone fixo ou móvel, utilizando as APIs de Telefonia da DirectCall.
Para facilitar o entendimento, vamos criar um cenário: faz de conta que somos uma companhia de energia elétrica, e temos que avisar os clientes de um um bairro que os mesmos ficaram sem energia no próximo dia 25.
Seria muito fácil fazer este aviso por SMS, mas verificamos que 80% dos clientes na nossa base informaram apenas os seus telefones fixos, e é ai que entra o solução de envio de SMS para NÚMEROS FIXOS (Torpedo de voz).
O funcionamento é muito parecido com o envio de SMS de texto tradicional, precisamos apenas criar um arquivo em PHP para receber os números e o texto e enviar para a API que transforma o texto em áudio e entrega nos telefones (móveis ou fixos) indicados.
Ok, já temos o cenário, vamos operacionalizar isso:
Para começar, acesse este link para obter um acesso grátis para testar esta API (via usuário e senha de teste)
Depois disso vamos fazer uma função genérica para realizar as requisições por CURL, no PHP.
[php]
//Função para chamadas do CURL
function requisicaoApi($params, $endpoint){
$url = "http://api.directcallsoft.com/{$endpoint}";
$data = http_build_query($params);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$return = curl_exec($ch);
curl_close($ch);
// Converte os dados de JSON para ARRAY
$dados = json_decode($return, true);
return $dados;
}[/php]
Vamos supor que o meu software vai enviar os números concatenados por “;” e vamos receber via POST os dados.
[php]
// Recebemos os numero exemplo: 3333333333;2222222222
$numeros = $_POST[‘numeros’];
//Verifica $numeros se foi enviado
if(!isset($numeros)){
die("O paramentro ‘Numero’ não foi enviado, favor verificar");
}
[/php]
Agora vamos receber o TEXTO, que na API DirectCall vai ser transformado em áudio por um sistema de altíssima qualidade.
[php]
// Recememos os texto
$texto = $_POST[‘texto’];
//Verifica $numeros se foi enviado
if(!isset($texto)){
die("O paramentro ‘Texto’ não foi enviado, favor verificar");
}
[/php]
Pronto, já temos os números e o texto, agora precisamos solicitar para a API o access_tokem , que é a nossa chave de acesso aos métodos da API.
Para solicita o access_token a API você vai precisar ter em mãos o seu LOGIN e sua SENHA. Caso você ainda não seja cliente mas quer testar sem custo algum, então entre aqui e solicite o seu, o processo é automático e em menos de 3 minutos você já vai estar com seu LOGIN e SENHA.
[php]
// Login fornecido pela DirectCall
$LOGIN = "[email protected]";
// Senha fornecida pela DirectCall
$SENHA = "XXXXXXX";
// Requisitar o access_token
$dados = array(‘client_id’=>$LOGIN, ‘client_secret’=>$SENHA);
$req = requisicaoApi($dados, "request_token");
// access_token
$acess_token = $req[‘access_token’];
[/php]
Agora que já temos nosso access_token , podemos realizar o envio dos SMS de VOZ para nossos clientes.
[php]
// Nossa mensagem
$SMSvoz = "Olá cliente, gostaríamos de informar que no dia 25, das 10 as 14 horas, estaremos efetuando uma manutenção na rede, obrigado, empresa X!";
$data = array(
‘origem’=>"554199504077", //Nosso numero
‘destino’=>$numeros,
‘tipo’=>"voz",
‘access_token’ => $access_token,
‘texto’=>$SMSvoz
);
// realiza o envio
$req_sms = requisicaoApi($data, "sms/send");
echo $req_sms[‘msg’];
[/php]
Viu como foi fácil?
Confira abaixo como ficou o áudio do nosso SMS de VOZ.
[codepeople-html5-media-player id=1]
Agora vejamos como ficou nosso PHP completo.
[php]
// INICIO
function requisicaoApi($params, $endpoint){
$url = "http://api.directcallsoft.com/{$endpoint}";
$data = http_build_query($params);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$return = curl_exec($ch);
curl_close($ch);
// Converte os dados de JSON para ARRAY
$dados = json_decode($return, true);
return $dados;
}
// Recebemos os numero exemplo: 3333333333;2222222222
$numeros = $_POST[‘numeros’];
//Verifica $numeros se foi enviado
if(!isset($numeros)){
die("O paramentro ‘Numero’ não foi enviado, favor verificar");
}
// Recebemos os textos
$texto
= $_POST[‘texto’];
//Verifica $numeros se foi enviado
if(!isset($texto)){
die("O parametro ‘Texto’ não foi enviado, favor verificar");
}
// Login fornecido pela DirectCall
$LOGIN = "[email protected]";
// Senha fornecida pela DirectCall
$SENHA = "XXXXXXX";
// Requisitar o access_token
$dados = array(‘client_id’=>$LOGIN, ‘client_secret’=>$SENHA);
$req = requisicaoApi($dados, "request_token");
// access_token
$acess_token = $req[‘access_token’];
// Nossa mensagem
$SMSvoz = "Olá cliente, gostaríamos de informar que no dia 25, das 10 às 14 horas, estaremos efetuando uma manutenção na rede, obrigado, empresa X!";
$data = array(
‘origem’=>"554199504077", //Nosso numero
‘destino’=>$numeros,
‘tipo’=>"voz",
‘access_token’ => $access_token,
‘texto’=>$SMSvoz
);
// realiza o envio
$req_sms = requisicaoApi($data, "sms/send");
echo $req_sms[‘msg’];
// FIM
[/php]
Simples, prático e rápido! Qualquer dúvida ou sugestão, envie uma mensagem para o nosso setor de suporte, vamos ter prazer em ajudar!
Aproveitando: A API da Directcall pode ser configurada para entregar automaticamente o texto como SMS quando o telefone for móvel e como áudio quando o telefone for fixo. Pode ser configurada ainda para entregar a mensagem em um dia e horário agendado.
Links que complementam este post:
Onde obter um acesso grátis para testar esta API (pegue aqui o seu usuário e senha de teste).
Onde você pode contratar esta API (aqui você pode escolher um plano e contratar a solução via web).
Documentação completa sobre esta API (todos os parâmetros, códigos e endpoints da API, em ambiente Wiki).
Veja também as APPs da Directcall
Elas podem reduzir o tempo da implantação de recursos de telefonia, para o DESENVOLVEDOR.
As APPs são aplicações construídas a partir das APIs com recursos que visam facilitar a experiência do usuário, o teste grátis online para o usuário e a compra online das APIs disponibilizadas no seu software, para o usuário do seu software
– Estas APPs prometem livrar o desenvolvedor do suporte para o usuário testar e comprar online as APIs da Directcall.
Por exemplo: APP MENU
Facilita Ligação, SMS, etc., a partir dos números de telefone que constam nos relatórios e formulários de softwares em geral:
Outros links relacionados a este post que valem a pena ler:
Home – APIs da Directcall (APIs de telefonia que podem automatizar ligações, mensagens e histórico na camada back-end do seu software de vendas, suporte, gestão, calltracking, etc. Soluções personalizáveis para você customizar o seu software e otimizar seu rendimento).
Conheça as demais funcionalidades das APIs da Directcall (Permitem: Enviar SMS ou TORPEDO DE VOZ; Ligar a partir de um clique; Ligar e gravar; Gerenciar Linhas de telefone (DID); Consultar a bases de dados de portabilidade da telefonia Móvel e Fixa e etc.).
Playground Directcall (Facilita o teste das APIs da Directcall e avaliar online a linha de código que corresponde a cada funcionalidade, na linguagem de sua preferência).
APPs Directcall (Reduzem o tempo de implantação destas APIs para DESENVOLVEDORES. Facilitam a experiência do usuário final, o teste grátis e compra online das APIs disponibilizadas no seu software – No interesse de livrar o desenvolvedor de ter que prestar suporte para o entendimento e para a compra desta solução).