Sobre este projeto
it-programming / web-development
Aberto
Passo a Passo Detalhado para Integração do Twilio com o Sistema
Este documento detalha todo o processo que precisa ser implementado para integrar o Twilio com o sistema já existente, que cadastra números de telefone, realiza cobranças de planos e gerencia o banco de dados.
Objetivo do Projeto:
Chamadas para o número Twilio reproduzam mensagens de voz pré-gravadas.
Somente números cadastrados com crédito ativo possam realizar chamadas.
Após o uso do crédito, o número seja bloqueado automaticamente até que novos créditos sejam adquiridos.
Créditos sejam atualizados automaticamente após confirmação de pagamento no sistema existente.
Etapas do Projeto:
1. Configuração do Twilio
Adquirir um número no Twilio:
Obtenha um número de telefone para uso no Brasil e configure-o para aceitar chamadas de voz.
Criar um Webhook para Gerenciar Chamadas:
Configure o número para redirecionar chamadas para um webhook no sistema existente.
2. Desenvolvimento do Webhook
Objetivo: Receber chamadas, verificar o status do número no banco de dados e retornar uma resposta adequada.
Fluxo:
Receber a chamada e capturar o número do chamador.
Consultar o banco de dados para verificar créditos e status do número.
Reproduzir a mensagem pré-gravada ou bloquear a chamada conforme o status do número.
3. Integração com o Banco de Dados
Consulta de Créditos:
O webhook deve consultar a tabela do banco de dados para verificar se o número que está ligando possui créditos ativos.
Exemplo de consulta sql:
select creditos from usuarios where numero_telefone = 'numero_do_chamador';
atualização de créditos:
após a reprodução da mensagem, o sistema deve reduzir o crédito do número em 1 e bloquear o número caso os créditos cheguem a zero.
Exemplo de atualização:
update usuarios set creditos = creditos - 1 where numero_telefone = 'numero_do_chamador';
4. Configuração de Mensagens Pré-gravadas
Grave mensagens personalizadas (em formato MP3 ou WAV) que serão reproduzidas para os usuários.
Hospede os arquivos em um servidor público (AWS S3, Google Cloud Storage ou outro serviço).
Certifique-se de que as URLs desses arquivos estão acessíveis para o Twilio.
5. Sincronização com o Sistema de Pagamento
Atualizar Créditos Automaticamente:
Configure o sistema de pagamento (ex.: Stripe, PayPal) para enviar webhooks para o sistema quando um pagamento for confirmado.
O sistema deve processar o webhook e adicionar créditos ao banco de dados.
Exemplo de Atualização de Créditos:
update usuarios set creditos = creditos + novos_creditos where numero_telefone = 'numero_do_cliente';
6. Testes e Validação
Testar os cenários:
Chamada de número com crédito ativo.
Chamada de número sem crédito.
Adição de créditos via sistema de pagamento.
Alta carga de chamadas simultâneas.
7. Documentação e Entrega
Fornecer documentação detalhada contendo:
Configurações do Twilio e URLs do webhook.
Código desenvolvido para integração.
Instruções para manutenção e atualização do sistema.
Resumo das Habilidades Necessárias para o Freelancer:
Experiência com Twilio para configurar números, webhooks e trabalhar com TwiML.
Conhecimento sólido em banco de dados (SQL) para consultas e atualizações relacionadas a créditos.
Desenvolvimento backend para implementar a lógica do webhook e integrar o sistema de pagamento.
Capacidade de hospedar e gerenciar arquivos de áudio para as mensagens pré-gravadas.
Habilidades de teste e depuração para validar o funcionamento completo do sistema.
Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Bug ou alteração pequena
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho especificações
Disponibilidade requerida Conforme necessário
Integrações de API Outros (Outras APIs)
Funções necessárias Desenvolvedor
Prazo de Entrega: Não estabelecido
Habilidades necessárias