Hoje em dia a utilização de um código de identificação (chamarei de PIN para simplificar) para fins de validação/ativação de recursos é bastante comum seja em webmail, internet banking e etc… Algumas empresas de hospedagem utilizam esse PIN seja no atendimento online (chat) ou telefone, pensando nisso resolvi implementar no WHMCS. A príncipio utilizei uma programação em PHP mas otimizei o código para utilização via Smarty o que a meu ver gerou um excelente resultado! Uma explicação rápida, o PIN será gerado apartir do ID do cliente por ser um código único para cada cliente, em seguida iremos gerar um MD5 e efetuar algumas personalizações para exibir o PIN ao cliente/admin.
É possível gerar o PIN com N resultados, mas vou estabelecer 2 padrões: por data (diário, mensal ou anual) ou PIN único ( será sempre o mesmo código e nunca será alterado ).
Iremos inserir o código em 2 lugares ( no admin e no painel cliente )… detalhe você precisa saber qual theme/tema esta utilizando. No exemplo abaixo a cada mês (%m) será gerado um novo PIN com 6 dígitos dígitos!
– Admin WHMCS
Estou utilizando o Blend que fica localizado em /meuadmin/templates/blend/ editarei o arquivo clientssummary.tpl procure a linha 37 e insira:
[code lang=”html”]
<div class="clientssummarybox">
<div class="title">PIN</div>
{assign var=’pin’ value=$smarty.now|date_format:"%m"|cat:$clientsdetails.userid}
<center>
<h1><b>
{$pin|md5|regex_replace:"/[^0-9]/":""|truncate:6:""}
</b></h1>
</center></div>
[/code]
– Cliente WHMCS
Já para o cliente, utilizei o Default que está localizado em /meuwhmcs/templates/default/ editamos o clientareahome.tpl e apartir da linha 37 inserimos o código:
[code lang=”php”]
<div class="alert alert-info">
Código PIN:{assign var=’pin’ value=$smarty.now|date_format:"%m"|cat:$clientsdetails.userid}<b>
{$pin|md5|regex_replace:"/[^0-9]/":""|truncate:6:""}
</b></div>
[/code]
Confira o resultado final ( lado esquerdo admin / direito painel do cliente )
Algumas Personalizações:
Como altero a quantidade de dígitos: Altere o truncate de 6 para quantidade que desejar.
Alterar o período de geração do PIN: Diário vá em date_format e substitua o atributo %m para %d ou para anual altere para %Y
PIN Único: Remova o atributo $smarty.now|date_format:”%m”|cat:
Gostaria que o PIN fosse alfa-númerico: Remova o atributo regex_replace:”/[^0-9]/”:””|
Poderia enviar o PIN no e-mail de boas vindas ( Client Signup Email ): Sim, edite o template Client Singnup Email e insira:
[code lang=”php”]
<br>PIN: {assign var=’pin’ value=$smarty.now|date_format:"%m"|cat:$client_id}
{$pin|md5|regex_replace:"/[^0-9]/":""|truncate:6:""}
[/code]
Observação: Se você estiver utilizando o PIN por data, lembre-se que a cada mês o PIN é alterado automaticamente. Essa opção seria interessante para quem utiliza o PIN único ou coloque uma observação informando ao cliente que o PIN é válido mensalmente!
É possível visualizar o PIN no ticket via ADMIN? Sim, o código é diferente! Edite o arquivo viewticket.tpl localizado em /meuadmin/templates/blend/ e altere a linha 188 para:
[code lang=”php”]
{assign var=’pin’ value=$smarty.now|date_format:"%m"|cat:$userid}
– PIN<b>
{$pin|md5|regex_replace:"/[^0-9]/":""|truncate:6:""}</b>
[/code]
Demonstração:
Para facilitar sua vida e não ter desculpas, estou disponibilizando os arquivos já modificados/testados na versão 5.1.3 para os templates admin WHMCS ( blend, original e v4 ) e para o painel do cliente WHMCS (classic, default e portal). Agora ficou fácil, faça o download do , descompacte e envie o arquivo de acordo com seu template ( admin/cliente ).
Se você utiliza uma versão do WHMCS inferior a 5.X.X não conseguirá utilizar o PIN por data, apenas por PIN único. Exemplo:
[code lang=”html”]
{assign var=’pin’ value=$clientsdetails.userid}
[/code]
Gostou? Comente!
Deseja fazer alguma doação? Clique aqui
Agradeço desde já as empresas que fizeram doação:
– Flávio – https://www.lim-apo.com.br/
Edvan, Funcionou perfeitamente, segunda feira, irei realizar a Doação… Perfeito.
Quero saber se é possível fazer um hook ou algo assim, para poder usar o PIN no campo de Busca do admin.
Por exemplo, quando um cliente liga ao invés de ele informar o nome, informar o PIN dele.
Blz, não é possível.
Você terá que obrigatoriamente acessar o perfil/profile do cliente.
Edvan, Funcionou perfeitamente, segunda feira, irei realizar a Doação… Perfeito.
Quero saber se é possível fazer um hook ou algo assim, para poder usar o PIN no campo de Busca do admin.
Por exemplo, quando um cliente liga ao invés de ele informar o nome, informar o PIN dele.
Blz, não é possível.
Você terá que obrigatoriamente acessar o perfil/profile do cliente.
Várias empresas EUA já estão usando o PIN/TOKEN para validar seus clientes. Muito bom!
Vlw
Várias empresas EUA já estão usando o PIN/TOKEN para validar seus clientes. Muito bom!
Vlw
Edvan, muito bom!
Tem como colocar essa função no e-mail de ativação do cliente?
Tem sim, dá uma lida novamente no POST que coloquei essa personalização logo depois que você postou no fórum PDH.
Nossa! Bacana Edvan.
Muito obrigado!
Tem sim, dá uma lida novamente no POST que coloquei essa personalização logo depois que você postou no fórum PDH.
Nossa! Bacana Edvan.
Muito obrigado!
Edvan, meu WHMCS apresenta um erro ao acessar o aviso de fatura em atraso, aquele link que fica na home da área do cliente. Quando clico no link ele apenas atualiza a página e não leva para a fatura. verifiquei a url e termina com “clientarea.php?action=masspay&all=true” gostaria de saber se você já possou por esse problema e se tem alguma correção.
Obrigado pela atenção!
Nunca passei por isso… entra em contato com a WHMCS.com e caso resolvam nos avise!
Edvan, meu WHMCS apresenta um erro ao acessar o aviso de fatura em atraso, aquele link que fica na home da área do cliente. Quando clico no link ele apenas atualiza a página e não leva para a fatura. verifiquei a url e termina com “clientarea.php?action=masspay&all=true” gostaria de saber se você já possou por esse problema e se tem alguma correção.
Obrigado pela atenção!
Nunca passei por isso… entra em contato com a WHMCS.com e caso resolvam nos avise!
Eu subi os arquivos e não houve nenhuma alteração no WHMCS. Nada
mudou.. Que estranho! Limpei o cache e os cookies e segue sem
alteração. Subi os seus arquivos já modificados. 🙁
Muito estranho… a melhor hipótese do que está ocorrendo é que as alterações enviadas não estão fazendo efeito para o referido template!
Certifique-se de qual template seu WHMCS ( admin/cliente ) esteja utilizando, renomei/exclua o arquivo a ser enviado e envie!
Resolvi o problema. Só é limpar o cache de modelo em sistemas. Isto esvazia o cache de memória e tudo volta ao normal. Valeu! 🙂
Eu subi os arquivos e não houve nenhuma alteração no WHMCS. Nada
mudou.. Que estranho! Limpei o cache e os cookies e segue sem
alteração. Subi os seus arquivos já modificados. 🙁
Muito estranho… a melhor hipótese do que está ocorrendo é que as alterações enviadas não estão fazendo efeito para o referido template!
Certifique-se de qual template seu WHMCS ( admin/cliente ) esteja utilizando, renomei/exclua o arquivo a ser enviado e envie!
Resolvi o problema. Só é limpar o cache de modelo em sistemas. Isto esvazia o cache de memória e tudo volta ao normal. Valeu! 🙂
@whmcsblogbr:disqus fiz como descrito no post mas so obtive sucesso com o arquivo “clientareahome.tpl” já nos outros dois não vai nem a pau.
Já limpei o cache, cookies e fiz o procedimento que o @google-be28fbae33e46399f4ab12a3315c43b4:disqus citou e nada. :S
Estou usando a versão 5.2.3, sera que mudou alguma coisa?
Demartini,
Muito estranho!
Acabei de implementar no 5.2.3
Admin Blend= https://clip2net.com/s/4PA6sj e https://clip2net.com/s/4PA70O
Cliente Default https://clip2net.com/s/4PA5xm e https://clip2net.com/s/4PA7so
Não levou 1 minuto e não tive erros.
@whmcsblogbr:disqus consegui resolver aqui, tinha dado uma bobeira, tinha me esquecido que havia mudado a pasta do admin. :S hehehe
Obrigado.
Ótima contribuição.
Abraço.
Blz.
Edvan teria como usar esse Pin para recuperar as senhas ?
Não, a ideia é utilizar esse PIN para um suporte via telefone ou chat online por exemplo.
entendi, então teria como colocar para pesquisar o cliente por esse pin pois dessa forma nao seria pedido email do cliente e sim somente o pin !
Não tem como, a consulta só funciona para campos padrões do WHMCS ( exceto customfields ).
Creio que você não entendeu o objetivo do “PIN”.
Imagine a situação, o cliente liga para sua empresa informa o nome/email de cadastro e para “validar” o atendimento você solicita o código PIN para prosseguir o atendimento.
@whmcsblogbr:disqus fiz como descrito no post mas so obtive sucesso com o arquivo “clientareahome.tpl” já nos outros dois não vai nem a pau.
Já limpei o cache, cookies e fiz o procedimento que o @google-be28fbae33e46399f4ab12a3315c43b4:disqus citou e nada. :S
Estou usando a versão 5.2.3, sera que mudou alguma coisa?
Demartini,
Muito estranho!
Acabei de implementar no 5.2.3
Admin Blend= https://clip2net.com/s/4PA6sj e https://clip2net.com/s/4PA70O
Cliente Default https://clip2net.com/s/4PA5xm e https://clip2net.com/s/4PA7so
Não levou 1 minuto e não tive erros.
@whmcsblogbr:disqus consegui resolver aqui, tinha dado uma bobeira, tinha me esquecido que havia mudado a pasta do admin. :S hehehe
Obrigado.
Ótima contribuição.
Abraço.
Blz.
Edvan teria como usar esse Pin para recuperar as senhas ?
Não, a ideia é utilizar esse PIN para um suporte via telefone ou chat online por exemplo.
entendi, então teria como colocar para pesquisar o cliente por esse pin pois dessa forma nao seria pedido email do cliente e sim somente o pin !
Não tem como, a consulta só funciona para campos padrões do WHMCS ( exceto customfields ).
Creio que você não entendeu o objetivo do “PIN”.
Imagine a situação, o cliente liga para sua empresa informa o nome/email de cadastro e para “validar” o atendimento você solicita o código PIN para prosseguir o atendimento.
parabens super util
parabens super util
Oi Edvan, têm também a opção “Questões de Segurança” que fica no Menu “Opções > Outros > Questões de Segurança”, né?
São coisas distintas.
Certo, mas me parece ter o mesmo objetivo ou bem parecido. Se o cliente quiser mudar o PIN por ter compartilhado com alguém e não quer mais que essa pessoa tenha acesso ao suporte por telefone, é possível o cliente ou o suporte mudar o PIN apenas num cliente específico?
Sim, é possível.
Existe N maneiras de fazer isso, vou dá uma dica… associar o código a outro campo ou modificar a geração para diário e etc…
Oi Edvan, têm também a opção “Questões de Segurança” que fica no Menu “Opções > Outros > Questões de Segurança”, né?
São coisas distintas.
Certo, mas me parece ter o mesmo objetivo ou bem parecido. Se o cliente quiser mudar o PIN por ter compartilhado com alguém e não quer mais que essa pessoa tenha acesso ao suporte por telefone, é possível o cliente ou o suporte mudar o PIN apenas num cliente específico?
Sim, é possível.
Existe N maneiras de fazer isso, vou dá uma dica… associar o código a outro campo ou modificar a geração para diário e etc…
No “Client Signup Email” só funcionou pela opção Edit HTML Source. Estou usando a versão 6.3.1.
Não percebi nenhum problema.
quando eu copiei e colei, o email não era enviado e aparecia uma mensagem de erro “Ocorreu um erro Message body empty” e não enviava a mensagem.
Mensagem de erro
https://snag.gy/OGZxUa.jpg
Modelo
https://snag.gy/nFhAMK.jpg
Modelo HTML
https://snag.gy/3cQrhM.jpg
Quase lá, revise seu HTML e você encontrará o erro.
Eu já havia corrigido, apenas uma dica pra quem tiver o mesmo problema, precisa colocar no modo html editor Source antes de colar
No “Client Signup Email” só funcionou pela opção Edit HTML Source. Estou usando a versão 6.3.1.
Não percebi nenhum problema.
quando eu copiei e colei, o email não era enviado e aparecia uma mensagem de erro “Ocorreu um erro Message body empty” e não enviava a mensagem.
Mensagem de erro
https://snag.gy/OGZxUa.jpg
Modelo
https://snag.gy/nFhAMK.jpg
Modelo HTML
https://snag.gy/3cQrhM.jpg
Quase lá, revise seu HTML e você encontrará o erro.
Eu já havia corrigido, apenas uma dica pra quem tiver o mesmo problema, precisa colocar no modo html editor Source antes de colar
Têm como personalizar alguma marcação (por texto ou ícone) para saber se já foi enviado o PIN para o cliente?
Não compreendi sua dúvida.
Pensei em ter algum ícone para indicar quando foi enviado por email ao cliente com o PIN. como neste link https://snag.gy/gqO1Lm.jpg
assim seria possível saber quando ele já teria recebido o código PIN, pois pensei em enviar o código aos poucos, a cada atendimento.
Quando fiz a implementação não tinha esse objetivo, é possível implementar!
Têm como personalizar alguma marcação (por texto ou ícone) para saber se já foi enviado o PIN para o cliente?
Não compreendi sua dúvida.
Pensei em ter algum ícone para indicar quando foi enviado por email ao cliente com o PIN. como neste link https://snag.gy/gqO1Lm.jpg
assim seria possível saber quando ele já teria recebido o código PIN, pois pensei em enviar o código aos poucos, a cada atendimento.
Quando fiz a implementação não tinha esse objetivo, é possível implementar!
Funciona nas novas versões?
Acredito que não, o que comercializamos é compatível https://www.edvan.com.br/fi… e possui outros recursos ( não precisa editar template, busca e etc… )