Ir para conteúdo
  • Cadastre-se

savio

Membro
  • Postagens

    19
  • Registro em

  • Última visita

Tudo que savio postou

  1. Olá! Acho que estou revivendo algo morto e enterrado, mas é por um bom motivo... para que precisa, coloquei o módulo no GitHub publicamente, porém há alguns bugs que notifiquei a kinghost pelo github também, vamos esperar que resolvam para eu corrigir os problemas. Módulo Integração WHMCS-Kinghost: https://github.com/abaif/whmcs-kinghost Bugs na api da kinghost: https://github.com/kinghost/API-PHP/issues Espero que aproveitem!
  2. Por favor me informem qual exatamente a mensagem exibida o tipo de login solicitado, tenho a solução mas estou cego pra ver a origem.. se puder mande um print. henrique, tem uma maneira mais eficiente e que consome menos recursos que alocar sessions, vou analisar o erro e disponibilizar a versão corretiva.
  3. Bom dia a todos, depois de muita ausência por vários motivos, retorno aqui no forum para esclarecer a situação atual do módulo. Desde dezembro não mexo neste módulo pois depois de muita instabilidade dos servidores kinghost decidi tirar meus sites de lá e coloquei tudo em DC próprio, por isto não há como eu continuar sozinho com este projeto, visto que não tenho mais revenda na kinghost para testar, o projeto ficou congelado, para que eu possa continuar e publicar uma versão estável, preciso da ajuda de alguém que tenha uma revenda e que possa ajudar no desenvolvimento deste módulo. Anexo a este post tem a última versão do módulo que estava desenvolvendo, desejo finalizar para não deixar um espaço vago com este projeto, mas como disse, preciso de auxilio. Quem puder ajudar com a revenda favor entrar em contato atraves de MP ou savio@saviobatista.com.br Anexo: [ATTACH]75[/ATTACH] (Descompacte na pasta: whmcs/modules/servers) kinghost.zip
  4. Acabei de ver o relatório do meu CRON, estou usando na revenda em ambiente de produção, e veja como foi o relatório quando um domínio deveria ser congelado mas não foi (pois ele não existe na revenda de fato) e outro que foi corretamente suspenso: 1 Services Suspended - Manual Suspend Required: XXXX - xxxxxxxxx.xxx (Service ID: XX - User ID: XX - Error: Domínio não encontrado na revenda.) - Suspended Service: XXXXXX - xxxxxxxxxxxxx.xxx (Service ID: XX - User ID: XX)
  5. - Você pode alterar e MUITO os dados de um cliente real da revenda por engano. - Você pode apagar um cliente real da revenda... - Não foi detectado, mas pode ocorrer a remoção de um domínio diferente da revenda no comando excluir conta. Creio que não haverá problemas, pois o script não "mata" o cron job, apenas lança uma advertência de erro, como se ele não conseguisse realizar a ação. Mas existe uma questão ainda, se o WHMCS estiver na kinghost, há um tempo limite de execução, se não me engano 20 segundos, isto pode tornar meio lento o resultado e se demorar muito na execução o cron da kinghost tenta executar novamente, começando do zero, o que pode fazer com que sejam lançadas cobranças duplicadas e outros mais. Estou usando numa revenda e ainda não tive este problema, mas a revenda só tem 40 clientes, então não fui capaz de atingir o limite. Fique tranquilo, pode dar dor de cabeça mas não faz chorar :-P 1 - Ter o WHMCS licenciado e em uso. 2 - Ter acesso a uma API de revenda (usuário e senha) da Kinghost. 3 - Módulo cURL habilitado no servidor, os servidores Kinghost tem habilitado por padrão. Estou já terminando o módulo, então nem testers são mais necessários. Agradeço o incentivo de todos e da kinghost que muito me auxiliou. Aguardem para a próxima semana o módulo final, caso nada de ruim aconteça.
  6. O htaccess só pode criar a mágica do redirecionamento, mas quem faz a validação é o php. Exemplo rápido: .htaccess: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ validausuario.php?usuario=$1 validausuario.php: <?php $usuario = (int)stripslashes($_GET['usuario']); //Faça o sql pra contagem de usuário de validação... $queryexemplo = mysql_query("SELECT COUNT(*) FROM usuarios WHERE id = $usuario"); $rexemplo = mysql_fetch_num($queryexemplo); //Condiciona o resultado... if($rexemplo[0]==1){//Se houver 1 usuário no bd de acordo com a consulta, //Redirecionamento válido... header('Location: index.php?usuario='.$usuario); }else{ //Página não encontrada header("HTTP/1.0 404 Not Found"); header("Status: 404 Not Found"); $_SERVER['REDIRECT_STATUS'] = 404; include('404.html'); exit(0); } Espero que seja útil :-]
  7. A porção básica do script está pronta. Em breve disponível no github, mas antes preciso de alguem pra me ajudar nos testes... Algum voluntário? Se não houver terei que realizá-los em tempo maior...
  8. Últimas Atualizações da Integração: Função CreateAccount: OK Função TerminateAccount: OK Função SuspendAccount: OK Função UnsuspendAccount: OK Função ChangePassword: Em Testes Finais Função ChangePackage: Em Testes Finais Função ClientArea: OK Função AdminLink: OK Função LoginLink: OK
  9. Valeu Rocha Neto! Fui omisso na última semana por razões pessoais, mas hoje volto a trabalhar na integração. Hoje o pessoal da Kinghost entrou em contato comigo e agora sim será bem mais prático finalizar este projeto. Quero agradecer pelo apoio da Kinghost e dizer que já tenho planejado o segundo item deste projeto: Pagamento via Boleto Kingbank. O sistema de boletos das revendas Kinghost. Mas será desenvolvido somente quando este projeto de integração estiver lançado e estável. Mais tarde posto atualizações da API.
  10. chuvadenovembro, por padronização dos módulos do WHMCS, este tipo de ação é somente no fluxo WHMCS -> Revenda, ou seja, cria no WHMCS e depois executa a ação de criar o cliente na revenda. Porém esta é apenas a ação inicial do módulo, básico, pois pretendo extendê-lo com muitas outras funções, como SSH e UniBOX. É que estou fazendo apenas o módulo inicial, depois que o finalizar, pretendo também implementar, por exemplo, o pagamento via Boleto Kingbank, aquele que você não precisa ter conta em banco, ou até mesmo o sistema de boletos que você poe seus dados e o boleto é gerado pela revenda. Mas como disse, vamos passo a passo pra evitar colapsos. Creio que o processo de importar Revenda -> WHMCS seja uma das primeiras modificações depois que o módulo estiver pronto, pois sei como seria complicado para alguns fazer tudo no braço.
  11. Atualizando funções: Change Password: OK (Falta corrigirem mais um BUG encontrado, mas já está driblado, novamente fiz algo que não recomendo, mas funciona!) Change Package: Em Produção (Mais um BUG, o sistema não aceitava todos os parametros, aguardando kinghost....) Agora faltam Suspend/Unsuspend e Change Package... Está tudo indo melhor do que eu esperava :)
  12. Create: OK (Funcionando e Testado, falta validações) Suspend: Quase (Algumas vezes ocorrem bugs muito estranhos, como falso positivo, estou esperando a resposta deles pra finalizar) Unsuspend: É a mesma função, mesma situação. Terminate: OK (Funcionando e Testado) Change Package: Não Fiz (É rápida pra fazer) Change Password: Em desenvolvimento (Outro BUG na API, estou na batalha de tickets) Sim, o público é bem reduzido exatamente pelo fato de não haver um método eficiente de fazer o gerenciamento e integração entre as ferramentas. Entre todos que conheci que usam revenda kinghost, a maioria usava os relatórios e boletos internos do painel pra gerenciamento financeiro, não sei como se mantinham assim mas era o que faziam. Já vi este tipo de situação antes, principalmente com este módulo open, tenho certeza que aparecerão muitos novos clientes desesperados por controle financeiro vendo uma solução prática a frente.
  13. Dermival, depende de alguns fatores como suporte da KingHost (para sanar alguns problemas na API como o bug encontrado ontem), evolução da API para algumas questões, tempo meu (vou me casar sabado e o tempo está ficando cada vez mais escasso), voluntários pra teste deste módulo, enfim, como eu disse antes, creio que em no máximo 2 semanas estará pronto para testes, depois de 2 semanas de testes (se houverem voluntários para reportar bugs e tudo mais), creio que com mais 1 semana de revisão estará pronto (em fase RC, Release Candidate). Ainda preciso analisar qual licença vou publicar.
  14. Olá chuvadenovembro, o grande fator deste módulo é o gerenciamento financeiro pela ferramente mais usada no mercado, o WHMCS, facilitando assim o SEU TRABALHO. Atualmente com uma revenda da kinghost e com o WHMCS, você faz tudo separadamente, ou seja, cobranças, financeiro, ticket... no WHMCS, e as contas de hospedagem, email, estatísticas... no painel. Com este módulo por exemplo, um visitante de seu site poderá contratar um plano de hospedagem e sua conta será criada no painel da kinghost, o dominio cadastrado, poupando você de vários minutos de sofrimento (em relação à tempo). Enfim, é um integrador entre o WHMCS (Sistema financeiro) e a revenda da Kinghost, onde você poderá automatizar e simplificar ações de controle de contas de hospedagem. Persiste ainda a necessidade de uso do painel de controle, pois como pode ser visto no site do WHMCS, não é foco desta ferramenta. Depois deste módulo, tenho intenção de continuar com o projeto, expandindo-o se houver apoio. Uma das possíveis ampliações seria um painel próprio e customizado.
  15. joaopaulo, é exatamente este tipo de pensamento que quero fugir! :) Eles tem uma equipe incrível de desenvolvedores PHP e por aí vai... não levariam 1 semana (indepentemente do tempo) pra fazer o que eu estou fazendo, mas o fato é que meu objetivo é fornecer uma solução prática e barata a todos. Então me perguntam onde eu teria lucro correto? Simples, OPEN-SOURCE! Suporte, instalação, adaptação, treinamento... tudo isto pode e deve ser levado em consideração quanto à busca pelo objetivo. Minha grande experiência é em desenvolvimento aplicado de soluções web, e sempre vejo pedidos para algo como este projeto que estou desenvolvendo, mas o interessante é que NENHUM cliente de fato contratou o serviço, é óbvio, uma solução deste tipo tem um valor considerável pela exclusividade e precisão, mas é inviável o desenvolvimento para vender poucas licenças. Por isto eu vejo nesta metodologia de negócio um ramo bem mais eficiente (para esta solução) a propagação open-source e lucro via serviços à venda de licenças e módulos. Eu acredito nesta visão e coloco em prática pois meu modelo de negócios é baseado no fator tempo de serviço e considero o desenvolvimento desta solução algo como um "cupom de descontos"... como você deve saber, é praticamente impossível impedir a pirataria, então ao invés de bloquear as licenças, ofereço algo mais avançado por um valor relativamente baixo. Lucro? Sim, pois o método de cálculo é bem diferente. Entendo perfeitamente seu ponto de vista e o aplico para algumas soluções que crio, mas esta especificamente já tive experiências que me levaram à esta ideia de projeto. Obrigado pelo incentivo!
  16. Dentre todas as funções de integração do WHMCS, as que vem no modelo, a unica que estou com problemas agora é a ChangePassword, que altera tudo no cadastro exceto a senha rsrs mas pelo que vi, não haverá tanto trabalho assim efetuar a integração... só melhorar o código e creio que em uma ou duas semanas já está pronta pra testes comerciais. Ainda não fiz a ChangePackage, to sem tempo e criatividade, mas não será problema usando a cabeça ;)
  17. Olá Edvan, Alejandro... consegui fazer muita coisa pra falar a verdade. É algo meio "bruto" mas parece funcionar legal (apesar que pode ser meio lento pra quem tem muitos cadastros), eu fiz mais duas funções aqui e em meus primeiros testes funcionaram legal... Suspender Conta: function kinghost_SuspendAccount($params) { require_once('api/Dominio.php'); $dominio = new Dominio($params["serverusername"],$params["serverpassword"]); $dominios = $dominio->getDominios();//Pega todos os dominios da revenda $ponteiro = false;//Inicializa o ponteiro que varre os dominios foreach($dominios['body'] as $i){if($i['dominio']==$params["domain"])$ponteiro = $i;}//Se o domínio é igual ao iterador, o ponteiro torna-se o domínio, é óbvio que faltam validações para tornar mais seguro, mas estou pensando no funcionamento primeiro... if(!$ponteiro) {//Se não houver domínio igual ao que tentou executar comando.... $result = "Domínio não encontrado na revenda."; } else {//Senão efetua o comando... $dados = $dominio->getDadosDominio($ponteiro['id']);//Lista os dados do domínio.... if($dados['ativo']==0){//A propriedade 'ativo' indica se o domínio está ou não congelado, é o referente à Suspend/Unsuspend do Cpanel... $result = "success";//Domínio já está bloqueado, então é sucesso.//Como ele já está congelado, então é redundante e exibe sucesso... }else{ /*Tive que fazer isto manualmente pois classe php não tem função implementada.*/ $dominio->doCall( 'dominio/status/'.$ponteiro['id'] , '' , 'PUT');//Esta chamada está na API da kinghost, mas não foi implementada como função da classe Dominio.php, por isto eu fiz a chamada suja... $acao = @json_decode($dominio->getResponseBody() , true);//Le resposta da chamada... if($acao['status']=='ok')$result = "success";//Se conseguiu efetuar a ação, retorna sucesso pois bloqueou a conta... else $result = $acao['body'];//Senão exibe a mensagem da API... } } return $result; } Assim fiz algumas dezenas de testes e pareceu funcionar bem, apenas que algumas vezes surtava e dava falso positivo. Mas como está em produção inicial creio que valha a pena.
  18. Parece que não estou com muito ibope né :P mas vamos assim mesmo... Enfim, hoje o Thiago da Kinghost corrigiu o bug no acesso à API e foi corrigido. Agora estou a 3 funções de concluir o módulo do WHMCS, em breve publicarei aqui freeware...
  19. Sobre o módulo: Estou corrigindo e progredindo com o desenvolvimento deste módulo agora com auxilio do pessoal, aguardem novidades. Em breve disponibilizarei aqui a versão de testes e um changelog, estamos entrando em fase final de produção!
×
×
  • Criar Novo...

Informação Importante

Concorda com os nossos termos?

-