Módulo TS3 para WHMCS + TSDNS

Boa noite pessoal! Victor novamente para trazer mais uma novidade supimpa para vocês. Dessa vez é algo que é único no mercado livre do WHMCS e de muita procura.

Foram inúmeras as vezes que vi pessoas pedindo e perguntado sobre módulos de Team Speak 3 para WHMCS e as respostas geralmente eram as mesmas: “Apenas comprando amigão; Estou procurando também, tenho um mas sem TSDNS”. E justamente, existe um módulo do gênero, porém ele é pago.

Foi ai que eu pensei: vou fazer um módulo de TS3 para ajudar a galera, mesmo não usando diariamente, mas não sabendo muito bem o funcionamento do sistema em sí, mergulhei nessa ideia, tive ajuda de um amigo chamado Edsandro, dono da CTSHost, o mesmo me explicou direitinho como funciona os servidores de TS3 e o TSDNS.

Comecei o módulo por volta das 17:00 do dia 08/01/2017 e acabei mais ou menos às 21:00, então, foi relativamente rápida a produção do plugin, não encontrei problemas muito grandes para o desenvolvimento do mesmo.

Ele encontra-se estável, fiz todos os testes e arrumei todos os problemas que encontrei, mas, não significa que não há outros bugs que com o tempo irei arrumando conforme a galera for usando e reportando.

Já aviso que se for arrumar bugs, fazer melhorias ou modificá-lo, você deverá compartilhar essas modificações, assim como explica a licença que virá dentro do módulo, então galera, não vamos privatizar o código, vamos uns ajudar o outro e fazer do mundo um lugar melhor, pense bem, dediquei horas nesse módulo para compartilhar com vocês.

Vou apresentar algumas funcionalidades que eu inclui no sistema e no TSDNS, fiz tudo que achei necessário para um bom funcionamento, está básico, mas completo.

  • O cliente pode definir seu TSDNS (seucliente.seuhost.com.br);
  • O Cliente pode configurar o Nome do servidor;
  • Os slots são por opções configuráveis, o que dá mais liberdade para quem vende;
  • Multi TSDNS (o cliente pode escolher dentre vários subdomínios definidos);
  • Tudo é feito por campos personalizados, facilitando a modificação e a inserção de serviços manuais;
  • Quando o serviço é ativado o módulo cria o servidor e configura o TSDNS;
  • Quando os serviço é suspenso, o servidor é desligado;
  • Quando o serviço é tirado da suspensão o servidor liga;
  • O administrador pode ligar, desligar e gerar token novo;
  • Ao terminar o serviço do cliente, o servidor é excluído;
  • É pronto para vários servidores de TS (vários IPS diferentes);
  • A porta é gerada automática, para não ter conflitos;
  • Mostra o número de usuários conectados e o máximo;
  • Mostra o uptime do servidor (bom para saber se houve quedas);
  • Mostra o token para o cliente;
  • O cliente pode renovar o token;
  • Mostra o IP Personalizado para o cliente (TSDNS);
  • O cliente pode ligar e desligar o servidor.

Bom, que eu me lembre de funcionalidades é isso, mas sem mais enrolação, vamos aprender a colocar essa belezinha para funcionar.

Configurando o domínio do TSDNS

Primeiramente, vamos configurar o domínio do seu TSDNS, você pode configurar 1, ou vários, esse tutorial será feito com base no CPanel, mas não quer dizer que não irá funcionar com qualquer outro gerenciador de DNS. Precisamos também de uma máquina VPS para o TSDNS, pode ser a mesma onde o TS3 fica, não vai usar muitos recursos, uma maquina com Debian 7 ou 8 e 256mb de memória é o suficiente.

  1. Vamos acessar seu CPanel e clicar no ícone de “Editor avançado de zona de DNS”;
  2. Nessa parte, faremos a seguinte configuração:

Onde pede o IP do TSDNS, você vai colocar o IP da VPS que eu tinha solicitado anteriormente, vamos configurá-la no próximo passo.

Instalando o DNS

Vamos instalar o TSDNS na maquina, primeiramente precisamos do Node.JS nessa VPS, vou fazer o tutorial em cima do Debian 8, mas não significa que não funcionará em outros Linux e até mesmo no Windows.

  1. Vamos instalar o Node.JS, porém ele não está catalogado no repositório do sistema, então executaremos o seguinte comando no console da sua VPS:

    curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -
    sudo apt-get install -y nodejs
  2. Beleza, está instalado, agora vamos baixar o TSDNS do repositório oficial da CompuLabs:

    cd /home/
    wget https://github.com/compulabsbr/tsdns-nodejs/archive/master.zip
    unzip master.zip
    cd tsdns-nodejs-master/
    npm install
  3. Após o termino, vamos abrir o arquivo config.json e configurar da seguinte forma:

    Onde eu peço sua key, escreva algo aleatório com letras minúsculas e números, apenas.
  4. Pronto, agora vamos instalar o screen para que o TSDNS fique executando sem parar, mesmo quando sairmos do console:

    apt-get install screen -Y
  5. Agora vamos iniciar uma screen nova com o comando:

    screen

    Aceite os termos com o enter.

  6. Vamos iniciar o servidor de TSDNS:

    cd /home/tsdns-nodejs-master/
    node server.js
  7. Para saber se o servidor ligou corretamente, ele deve aparecer uma tela assim:
  8. Aperte ctrl + z para sair dessa tela sem fechar o TSDNS.

Instalação do módulo

Vamos agora para a parte que interessa, o módulo para WHMCS que deixa tudo funcionando redondinho. Para baixar o módulo, preencha o formulário abaixo para recebe-lo em seu email:





Após baixar o módulo, siga esse tutorial abaixo para finalizar a configuração do módulo +  TSDNS

  1. Descompacte o módulo e coloque em modules/servers/;
  2. Crie um Servidor com o módulo Ultimate TS3;
  3. Configure da seguinte forma:
  4. Crie uma opção configurável com o nome “Slots” (primeira letra maiúscula para funcionar) e coloque como quantidade;
  5. Crie um produto, na aba configurações do módulo deixe assim:
  6. Ainda no produto, na aba campos personalizados, deixe assim, exatamente assim, até as letras maiúsculas e minúsculas;
  7. Adicione as opções configuráveis ao produto e coloque para “Configurar o produto automaticamente assim que receber o primeiro pagamento”;
  8. Pronto, módulo instalado e funcionando.

FAQ

  • Meu módulo não pego, o que eu faço?
    Libere ou peça para liberar no firewall da hospedagem o IP do seu servidor de TS3 e de TSDNS.
  • Esse módulo funciona o TSDNS?
    Sim.
  • Preciso configurar esse TSDNS no servidor do TS3?
    Não, ele é totalmente independente.

Pontos finais

Bom galera, é isso, espero ter ajudado vocês, qualquer dúvida, problema ou bug que venha a surgir, postem ai nos comentários. Valeu!


16 Comentários

Em 09/01/2017 às 08:16 Pedro Henrique disse:

Parabéns Vitor, Sempre trazendo conteúdo bom! E ajudando o Próximo

Em 03/02/2017 às 05:43 Weslley disse:

Tem skype:

Em 04/02/2017 às 16:31 Heior disse:

estou tendo esse erro poderia me ajuda ?
module.js:489
throw err;
^
SyntaxError: /home/tsdns-nodejs-master/config.json: Unexpected string
at Object.parse (native)
at Object.Module._extensions..json (module.js:486:27)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object. (/home/tsdns-nodejs-master/server.js:2:14)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)

    Em 06/02/2017 às 18:11 Victor Hugo disse:

    Pode mandar uma print do seu config.json? Creio que o problema seja nele.

Em 20/04/2017 às 00:13 Eduardo Vilhalba disse:

Estou tendo um erro e gostaria de uma ajuda,
eu consegui instalar e configurar o servidor até ai tudo bem.
Mas quando eu vou na área do cliente só aparece um botão para ligar o servidor e em cima deste botão esta escrito “null”

    Em 20/04/2017 às 11:44 Victor Hugo disse:

    Isso ocorre pois o WHMCS não conseguiu conectar ao servidor do TS3, tente liberar o IP no Firewall.

Em 22/04/2017 às 01:29 Daniel Araujo disse:

Olá, gostaria de saber se existe algum modo de importar os servers já existentes para o WHMCS utilizando este módulo.

Em 11/05/2017 às 22:36 Wesley disse:

ainda funciona?

Em 11/05/2017 às 22:37 Wesley disse:

estou usando uma versao anterior do whcms 6.11 funciona tudo ou so partes?

Em 17/06/2017 às 22:42 Dyego disse:

Olá, deu esse erro na VPS:
***************************************************************
events.js:85
throw er; // Unhandled ‘error’ event
^
Error: listen EADDRINUSE
at exports._errnoException (util.js:746:11)
at Server._listen2 (net.js:1158:14)
at listen (net.js:1184:10)
at net.js:1282:9
at dns.js:85:18
at process._tickCallback (node.js:355:11)
at Function.Module.runMain (module.js:503:11)
at startup (node.js:129:16)
at node.js:814:3
***************************************************************
Está criando o servidor de teamspeak 3 normal, mas o tsdns não funciona.
E outra coisa, da pra colocar um limite da porta que o módulo deve usar? Pois meu servidor tem muitas portas bloqueadas, só funciona as portas de 9000~9999

    Em 19/06/2017 às 12:06 Victor Hugo disse:

    Tente liberar o ip e as portas no firewall da hospedagem.

Comentar

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Dúvidas?

Podemos ajudar você
© 2014-2019 CompuLabs - Todos os direitos reservados.