adamkain Posted June 2, 2017 Share Posted June 2, 2017 É @gofas, eu tbm acho que atualizar o módulo é mais viável... Mas nesse caso que eu postei, parece que o erro está na chamada da API e não no retorno dela como vc comentou... Eu até tentei corrigir seu módulo, mas o erro está no arquivo /includes/api/getclientsdetails.php que é encriptado e não dá pra editar... 0 Quote Link to comment Share on other sites More sharing options...
gofas Posted June 2, 2017 Share Posted June 2, 2017 11 minutos atrás, adamkain disse: É @gofas, eu tbm acho que atualizar o módulo é mais viável... Mas nesse caso que eu postei, parece que o erro está na chamada da API e não no retorno dela como vc comentou... Eu até tentei corrigir seu módulo, mas o erro está no arquivo /includes/api/getclientsdetails.php que é encriptado e não dá pra editar... O nosso módulo não possui nenhum arquivo com esse nome/caminho nem arquivos encriptados, acho que vc está confundindo o meu módulo com algum outro do mercado. 0 Quote Link to comment Share on other sites More sharing options...
adamkain Posted June 2, 2017 Share Posted June 2, 2017 Não @gofas... É o seu sim!!! Eu até abri um tópico de suporte na página do seu módulo...https://gofas.net/foruns/topico/problema-getresponseformat-no-hook/ No arquivo includes\hooks\gofas_hash_email.php - Versão 2.1 Na linha 45 $getClientValues['clientid'] = $user_id; // $user_id = 1 $getClientValues['stats'] = true; $getClientValues['responsetype'] = 'json'; $getClientResults = localAPI( 'getclientsdetails', $getClientValues, $whmcsAdmin ); Se eu colocar logo abaixo um var_dump($getClientResults); die(); Era pra imprimir o array que vc falou, correto??? Que seria a resposta da localAPI->getclientdetails Mas isso não acontece e ocorre a exceção que está nesse print...https://prnt.sc/ff5qqv 0 Quote Link to comment Share on other sites More sharing options...
gofas Posted June 3, 2017 Share Posted June 3, 2017 Sim, includes\hooks\gofas_hash_email.php é do meu módulo. As versões 7.2.1 e 7.2.2 do WHMCS introduziram alguns bugs, entre eles, houve alteração na estrutura dos arrays retornados pela requisição remota à API interna do WHMCS, mas o que fez o autologin parar de funcionar foi por quê e a ação “GetClientsDetails” da função localAPI() (simplesmente) não funciona mais, pois provavelmente a estrutura da requisição foi alterada, mas os desenvolvedores do WHMCS ainda não atualizaram a documentação nem mencionaram nada sobre esse assunto nos canais da empresa. Como esse módulo é de extrema importância para algumas instalações WHMCS que administramos para nossos clientes, atualizamos ele há alguns minutos, agora o autologin conecta-se diretamente ao banco de dados utilizando as funções do Laravel framework para obter os dados do cliente e verificar o URL gerado dinamicamente, evitando erros devido as alterações nas funções da API interna do WHMCS. Você já pode baixar a versão 2.2 do módulo nesse link. ps.: var_dump($getClientResults) imprime o array diretamente na página administrativa que o e-mail está sendo disparado, para evitar essa "deselegância", o módulo possui a tag {$debug} que ao ser adicionada ao template de e-mail, adiciona ao corpo do e-mail uma representação json dos array retornados. 0 Quote Link to comment Share on other sites More sharing options...
edvan Posted June 3, 2017 Author Share Posted June 3, 2017 19 horas atrás, adamkain disse: Parece ter um bug no uso da localAPI nessa versão 7.2.2 @edvan De acordo com a documentação nesse linkhttps://developers.whmcs.com/api-reference/getclientsdetails/ Essa forma de usar a API Local, não está funcionando. $command = 'GetClientsDetails'; $postData = array( 'clientid' => '1', 'stats' => true ); $adminUsername = 'ADMIN_USERNAME'; // Optional for WHMCS 7.2 and later $results = localAPI($command, $postData, $adminUsername); print_r($results); Ele retorna um erro antes desse print_r($results);https://prnt.sc/ff5qqv Mesmo se adicionar a chave 'responsetype' => 'json' Ocorre a exceção do print $command = 'GetClientsDetails'; $postData = array( 'clientid' => '1', 'stats' => true, 'responsetype' => 'json' ); Essa forma de usar a localAPI é utilizada no auto login 2.1 do @gofas E com isso, parou de funcionar o envio de qualquer email que passe pelo hook. Eu abri um ticket no WHMCS e estou aguardando ainda... Foi corrigido no dia 01/06. No link https://forum.whmcs.com/showthread.php?129786-CORE-11346-Call-to-a-member-function-getResponseFormat()-on-null-Error&p=519034#post519034 você poderá baixar o hotfix. 0 Quote Link to comment Share on other sites More sharing options...
adamkain Posted June 3, 2017 Share Posted June 3, 2017 8 horas atrás, gofas disse: Sim, includes\hooks\gofas_hash_email.php é do meu módulo. As versões 7.2.1 e 7.2.2 do WHMCS introduziram alguns bugs, entre eles, houve alteração na estrutura dos arrays retornados pela requisição remota à API interna do WHMCS, mas o que fez o autologin parar de funcionar foi por quê e a ação “GetClientsDetails” da função localAPI() (simplesmente) não funciona mais, pois provavelmente a estrutura da requisição foi alterada, mas os desenvolvedores do WHMCS ainda não atualizaram a documentação nem mencionaram nada sobre esse assunto nos canais da empresa. Como esse módulo é de extrema importância para algumas instalações WHMCS que administramos para nossos clientes, atualizamos ele há alguns minutos, agora o autologin conecta-se diretamente ao banco de dados utilizando as funções do Laravel framework para obter os dados do cliente e verificar o URL gerado dinamicamente, evitando erros devido as alterações nas funções da API interna do WHMCS. Você já pode baixar a versão 2.2 do módulo nesse link. ps.: var_dump($getClientResults) imprime o array diretamente na página administrativa que o e-mail está sendo disparado, para evitar essa "deselegância", o módulo possui a tag {$debug} que ao ser adicionada ao template de e-mail, adiciona ao corpo do e-mail uma representação json dos array retornados. Sim @gofas, eu vi na sua documentação como usar a {$debug}, mas com essa exception o email não chega a ser enviado e só exibe igual no print q mandei. Ou seja, para descobrir onde estava o problema, eu usei essa var_dump seguido com die; Mas enfim, sua solução de conectar diretamente ao banco com "use WHMCS\Database\Capsule;" tbm foi muito boa. Valeu pela rápida resposta man... 4 horas atrás, edvan disse: Foi corrigido no dia 01/06. No link https://forum.whmcs.com/showthread.php?129786-CORE-11346-Call-to-a-member-function-getResponseFormat()-on-null-Error&p=519034#post519034 você poderá baixar o hotfix. Poxa, show de bola @edvan Quando abri um ticket pra vc, eles ainda não haviam postado esse hotfix. Mas blz man...Muito obrigado. 0 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.