MCPcopy
hub / github.com/GtOkAi/ligar-cobranca

github.com/GtOkAi/ligar-cobranca @main sqlite

repository ↗ · DeepWiki ↗
23 symbols 35 edges 4 files 0 documented · 0%
README

📞 Ligar Cobrança

Ligar Cobrança

npm version license

Uma ferramenta CLI para fazer chamadas automáticas usando APIs de voz (Zenvia e Twilio). Após 7 anos, fiz uma atualização profunda devido a pedidos de suporte de pessoas com pouco ou nenhum conhecimento em programação.

Atualizei as dependências com falhas de segurança, o uso da API da TotalVoice que foi comprada pela ZENVIA, adicionei suporte à API da Twilio e deixei de forma nativa o loop, além de outras melhorias.

InstalaçãoComo UsarExemplosConfiguração

🚀 Instalação e Uso (Modo Fácil)

Para quem não tem conhecimento técnico, criei um arquivo automático.

  1. Baixe e instale o Node.js (versão LTS).
  2. Baixe este projeto (clique em Code > Download ZIP e extraia a pasta).
  3. Dentro da pasta, dê um duplo clique no arquivo iniciar.bat.

O sistema irá configurar tudo automaticamente na primeira vez e abrir o menu.

🚀 Instalação (Modo Desenvolvedor)

npm install -g ligar-cobranca

💻 Desenvolvimento

Para rodar o projeto localmente (sem instalar globalmente):

  1. Clone o repositório
  2. Instale as dependências:
npm install
  1. Execute em modo de desenvolvimento (com auto-reload):
npm run dev
  1. Ou execute o build e rode:
npm run build
npm start

⚙️ Configuração

Você pode configurar a ferramenta de duas maneiras:

1. Usando o Assistente (Recomendado)

Na primeira vez que você executar a ferramenta, ela irá guiá-lo através de um assistente interativo que ajudará você a escolher o provedor e configurar as credenciais. Basta executar:

ligar-cobranca

E seguir as instruções na tela.

2. Configuração Manual

Se preferir, você pode criar manualmente um arquivo .env na raiz do projeto.

Para Zenvia:

ZENVIA_TOKEN=seu_token_aqui
ZENVIA_PHONE_NUMBER=seu_numero_de_origem

Para Twilio:

TWILIO_ACCOUNT_SID=seu_account_sid
TWILIO_AUTH_TOKEN=seu_auth_token
TWILIO_FROM=seu_numero_twilio_ou_verificado

🎯 Como Usar

Modo Interativo

ligar-cobranca

O modo interativo é perfeito para quem não está familiarizado com comandos de linha. Ele guia você passo a passo através de um assistente amigável:

  1. Provedor: Escolha entre Zenvia ou Twilio
  2. Credenciais: Insira o token (Zenvia) ou as credenciais serão lidas do .env (Twilio)
  3. Tipo de Chamada: Escolha entre chamada única ou múltipla
  4. Número de Destino: Digite o número no formato internacional (ex: +5511999999999)
  5. Número de Origem: Opcional, digite ou pressione Enter para usar o padrão configurado
  6. Mensagem: Escolha entre mensagem padrão ou digite uma personalizada
  7. Voz: Selecione uma das 4 vozes disponíveis
  8. Velocidade: Escolha entre 5 níveis de velocidade
  9. Gravar: Decida se deseja gravar a chamada
  10. Quantidade: Defina quantas chamadas deseja fazer (1-999)
  11. Debug: Ative o modo debug se precisar de mais informações

Modo CLI

ligar-cobranca --para=NUMERO_DESTINO [opções]

📋 Opções

Opção Descrição Padrão
--provider Provedor de API (zenvia ou twilio) zenvia (se não detectado auto)
--para Número de destino -
--numeros Números de destino (separados por vírgula) -
--de Número de origem Do .env conforme provedor
--texto Mensagem para ser convertida em voz "Alô? Alô? Alô? Alô? Alô?"
--voz Voz a ser utilizada 0 (Ricardo)
--velocidade Velocidade da voz (1-5) 3 (Normal)
--gravar Gravar a chamada false
--quantidade Quantidade de chamadas (1-999) 1
--debug Ativar modo debug false

Vozes Disponíveis

  • 0 - Ricardo (BR)
  • 1 - Vitória (BR)
  • 2 - Joey (EN)
  • 3 - Maxim (RUS)

Nota para Twilio: Temporariamente, todas as vozes podem ser redirecionadas para uma voz padrão ("Alice") para garantir compatibilidade em contas Trial ou que não tenham o Amazon Polly ativado.

Velocidades

  • 1 - Muito lento (0.5x)
  • 2 - Lento (0.75x)
  • 3 - Normal (1x)
  • 4 - Rápido (1.5x)
  • 5 - Muito rápido (2x)

💡 Exemplos

Chamada Única (Zenvia)

ligar-cobranca --provider=zenvia --para=+5511999999999 --voz=0

Chamada Única (Twilio)

ligar-cobranca --provider=twilio --para=+5511999999999 --texto="Teste Twilio"

Múltiplas Chamadas

ligar-cobranca --numeros=+5511999999999,+5511888888888 --quantidade=5

Chamada com Mensagem Personalizada

ligar-cobranca --para=+5511999999999 --texto="Olá, isso é um teste" --voz=1

Modo Debug

ligar-cobranca --para=+5511999999999 --debug

⚠️ Importante

  • O número de origem (--de) deve estar no formato internacional (ex: +5511999999999)
  • Para Twilio, certifique-se de ter TWILIO_ACCOUNT_SID e TWILIO_AUTH_TOKEN no .env
  • Twilio: O número de origem (TWILIO_FROM ou --de) deve ser verificado na sua conta Twilio ou comprado nela. Caso contrário, a chamada falhará com erro 21210.
  • Zenvia: O número de origem (ZENVIA_PHONE_NUMBER ou --de) deve ser um número válido e autorizado na sua conta Zenvia. Se usar um número aleatório, a chamada pode falhar (Erro de BINA).
  • Para múltiplas chamadas, forneça pelo menos 2 números
  • A quantidade de chamadas deve estar entre 1 e 999
  • A gravação de chamadas depende do suporte da API escolhida
  • Suporte completo para números internacionais (formato: +55DDDNUMERO)
  • Ciclo da Chamada: O sistema é programado para encerrar a ligação automaticamente após o término da mensagem de áudio.
  • Contas Trial (Twilio):
  • Limitação de Texto: Em contas Trial, a Twilio pode bloquear o texto personalizado e tocar apenas a mensagem padrão "You have a trial account...". Para que o texto personalizado funcione corretamente, talvez seja necessário fazer o upgrade da conta.

🔍 Modo Debug

Use a opção --debug para ver logs detalhados do processo, incluindo: - Detalhes da requisição à API - Resposta do servidor - Informações de progresso - Erros detalhados (se houver)

ligar-cobranca --para=+5511999999999 --debug

📝 Licença

MIT


⚠️ Aviso Legal

Não sou responsável pelo uso que você faz desta ferramenta. Use com responsabilidade e de acordo com as leis locais.

Core symbols most depended-on inside this repo

debugLog
called by 22
src/cobranca.js
executarChamadas
called by 3
src/cli.js
formatarNumero
called by 2
src/cobranca.js
_interopRequireDefault
called by 2
src/cli.js
interactiveMode
called by 2
src/cli.js
salvarToken
called by 1
src/cobranca.js
getProvider
called by 1
src/cobranca.js
makeMultipleCalls
called by 1
src/cobranca.js

Shape

Function 14
Method 5
Class 4

Languages

TypeScript100%

Modules by API surface

src/cli.js8 symbols
src/cobranca.js6 symbols
src/providers/TwilioProvider.js5 symbols
src/providers/ZenviaProvider.js4 symbols

Dependencies from manifests, versioned

@babel/cli7.24.0 · 1×
@babel/core7.24.0 · 1×
@babel/preset-env7.24.0 · 1×
axios1.6.7 · 1×
boxen4.2.0 · 1×
chalk4.1.2 · 1×
colors1.4.0 · 1×
dotenv16.4.5 · 1×
inquirer8.2.6 · 1×
nodemon3.1.0 · 1×
ora5.4.1 · 1×
ramda0.29.1 · 1×

For agents

$ claude mcp add ligar-cobranca \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact