Cron Job WHMCS

103

Costumo dizer que o cron do WHMCS é o “coração” do sistema! Se ele não estiver configurado seu painel não poderá enviar faturas, suspender contas, atualizar status e etc… Apesar da configuração ser bem simples, inclusão de uma linha ( php -q /home/seu_usuario/public_html/seuwhmcs/admin/cron.php ) no agendador de tarefas/cron job e pronto. Neste link você poderá conferir um passo-a-passo de como configurar corretamente!

Mas o motivo do post é demonstrar como executar a cron.php sem que ele execute todas as funcionalidades. Essa semana minha cron não gerou o backup para um FTP e com isso fui questionar o fabricante de como poderia executar apenas essa funcionalidade. Recebi este link ensinando como deveria ser efetuado e bingo, meu problema foi resolvido!

Com isso pude testar e acabei descobrindo um bug que foi corrigido de imediato pelo fabricante.

Faça o download do arquivo e envie para /seuwhmcs/seuadmin/ ( Essa atualização também corrige um bug encontrado nas regras dos tickets conforme fórum oficial. )

Inicialmente pode até parecer difícil executar tal procedimento devido o tamanho final da URL.

URL

As opções listadas abaixo evitaram que a cron job execute determinada função, por exemplo:

  • skip_invoices ( geração de invoices/faturas )
  • skip_latefees ( controle de taxas )
  • skip_ccprocessing ( cartão de crédito )
  • skip_invoicereminders ( lembretes de pagamento )
  • skip_domainrenewalnotices ( Renovação de domínios )
  • skip_suspensions ( Suspensão de contas )
  • skip_terminations ( Exclusões de contas )
  • skip_cancelrequests ( Pedidos de cancelamento )
  • skip_closetickets ( Fechar ticket’s )
  • skip_affreports ( Relatório de afiliados )
  • skip_ccexpirynotices ( Lembrete de Cartão de Crédito expirados )
  • skip_usagestats ( Estatísisticas de utilização )
  • skip_backups ( Backup do sistema – email/ftp ).

Como utilizar?

Simples, localize o cron.php do seu WHMCS http://seuwhmcs.com/admin/cron.php/

Em seguida é só montar a URL, exemplo: http://www.seuwhmcs.com/admin/cron.php?skip_invoices=1

Na opção acima será executado todas as opções da cron exceto a geração de invoices/faturas devido o atributo =1 estar declarado. Basta colocar no navegador e acessar. Caso queira colocar mais de uma opção utilize & (símbolo de concatenação).

Neste link o sistema irá pular todas as etapas e vai apenas fazer com que a cron gere o backup.

http://seuwhmcs.com/admin/cron.php?
skip_invoices=1&skip_latefees=1&skip_ccprocessing=1&
skip_invoicereminders=1&skip_domainrenewalnotices=1&
skip_suspensions=1&skip_terminations=1&skip_cancelrequests=1&
skip_closetickets=1&skip_affreports=1&skip_ccexpirynotices=1&skip_usagestats=1&skip_backups=0

Você também pode programar por exemplo gerar um backup 2x ao dia automaticamente basta usar:

php -q /home/username/public_html/admin/cron.php
skip_ccprocessing skip_invoices  skip_latefees skip_ccprocessing skip_invoicereminders skip_domainrenewalnotices skip_suspensions skip_terminations skip_cancelrequests skip_cancelrequests skip_closetickets skip_affreports skip_ccexpirynotices skip_usagestats

Como eu sei que deu certo? Vá no Log de atividades e confira!

Log de atividades

Além disso você receberá o WHMCS Cron Job Activity contendo apenas 1 linha:

E-mail WHMCS Cron Job

Espero que tenha ajudado!

Atualização 21/05/2010 16:30

Gentilmente o Luciano (HetOnline) forneceu o código fonte do gerador de cron, com isso fiz algumas modificações para deixar mais prático.

Faça o download do arquivo Gerador Cron Job e descompacte o arquivo GeradorCron.zip. Você encontrará 2 pastas (ISO ou UTF) de acordo com o charset do seu WHMCS envie o arquivo cronjob.php para /seuwhmcs/admin/ e em seguida execute http://seuwhmcs.com/admin/cronjob.php

Selecione as opções e clique em Gerar Cronjob ele irá exibir o link (Executar HTTP), Resultado HTTP caso você queira copiar e colar ou o resultado a ser inserido no agendador de tarefas caso você queira alguma automatização ( exemplo gerar backup 2x ao dia e etc… ).

Algumas observações: o script vai detectar automaticamente a pasta admin do WHMCS (mesmo se a pasta estiver customizada). Só será possível acessar http://seuwhmcs.com/admin/cronjob.php caso você esteja logado no admin do WHMCS ( assim evitando engracadinhos tentando executar sem autorização).

Script

Vale ressaltar que o Script online cumpre o objetivo, apenas procurei aperfeiçoar. Obrigado Luciano!

Gostou? Comente!

Edvan

103 COMENTÁRIOS

  1. Isso pode diminuir o numero de informações do WHMCS Cron Job Activity que recebo diariamente?

    Sempre o EDVAN trazendo novidades e soluções.

  2. Isso pode diminuir o numero de informações do WHMCS Cron Job Activity que recebo diariamente?

    Sempre o EDVAN trazendo novidades e soluções.

  3. Sim Charles,

    Mas o objetivo é executar o CRON para funções especificas… exemplo quero evitar de receber backup da base de dados, não quero que o sistema gere faturas e etc…

    Ainda bem que você acha isso pois alguns desocupados acham que o blog é só para eu ganhar R$ kkk

  4. Sim Charles,

    Mas o objetivo é executar o CRON para funções especificas… exemplo quero evitar de receber backup da base de dados, não quero que o sistema gere faturas e etc…

    Ainda bem que você acha isso pois alguns desocupados acham que o blog é só para eu ganhar R$ kkk

  5. EDVAN,

    Definitivamente, você não deveria dar bolas para esses desocupados, pois eles sempre vão tecer comentários desagradáveis ao respeito de seu trabalho.

    É facil ter tudo prontinho, na mão e de graça.

    Continue assim. E não é indelicado e nem errado comercializar um trabalho que é seu aqui no BLOG. É fácil demais falar do trabalho alheio, difícil é fazer.

    Proporcionalmente falando, você desenvolveu muito mais a ferramenta WHMCS de forma gratuita do que outra coisa.

    Abraços…

  6. EDVAN,

    Definitivamente, você não deveria dar bolas para esses desocupados, pois eles sempre vão tecer comentários desagradáveis ao respeito de seu trabalho.

    É facil ter tudo prontinho, na mão e de graça.

    Continue assim. E não é indelicado e nem errado comercializar um trabalho que é seu aqui no BLOG. É fácil demais falar do trabalho alheio, difícil é fazer.

    Proporcionalmente falando, você desenvolveu muito mais a ferramenta WHMCS de forma gratuita do que outra coisa.

    Abraços…

  7. Olá,

    Desculpem a minha ignorância. Não sabia que o WHMCS gerava backups. Segundo o relatório que recebo, não existem backup gerados.

    É o backup do banco de dados que gerado ? E onde fica armazenado ?

    LUIS

  8. Olá,

    Desculpem a minha ignorância. Não sabia que o WHMCS gerava backups. Segundo o relatório que recebo, não existem backup gerados.

    É o backup do banco de dados que gerado ? E onde fica armazenado ?

    LUIS

  9. Olá…tudo bem?
    Estou com problemas no pipe. Configurei tudo e as tarefas cron. Aparentemente ta tudo certo mas qdo eu envio um email do meu dominio,aparece erro. O cron ta rodando direito. O erro é esse:

    This message was created automatically by mail delivery software.

    A message that you sent could not be delivered to one or more of its
    recipients. This is a permanent error. The following address(es) failed:

    pipe to |/home/conexao/public_html/whmcs/pipe/pipe.php
    generated by [email protected]
    local delivery failed

    —— This is a copy of the message, including all the headers. ——

    Return-path:
    Received: from localhost ([127.0.0.1] helo=conexaol.com.br)
    by server.srv04linux.info with esmtpa (Exim 4.69)
    (envelope-from )
    id 1OHkew-0000U7-Qr
    for [email protected]; Thu, 27 May 2010 18:30:34 -0300
    Received: from 189.99.24.136 ([189.99.24.136])
    (SquirrelMail authenticated user [email protected])
    by conexaol.com.br with HTTP;
    Thu, 27 May 2010 18:30:34 -0300
    Message-ID:
    Date: Thu, 27 May 2010 18:30:34 -0300
    Subject:
    From: =?iso-8859-1?Q?=22Conex=E3o_L_-_Websites_&_M=EDdia=22?=
    To: [email protected]
    Reply-To: [email protected]
    User-Agent: SquirrelMail/1.4.20
    MIME-Version: 1.0
    Content-Type: text/plain;charset=iso-8859-1
    Content-Transfer-Encoding: 8bit
    X-Priority: 3 (Normal)
    Importance: Normal

    O que faço? Todos q recebem meus emails , recebem junto uma msg de erro tipo essa.

  10. Olá…tudo bem?
    Estou com problemas no pipe. Configurei tudo e as tarefas cron. Aparentemente ta tudo certo mas qdo eu envio um email do meu dominio,aparece erro. O cron ta rodando direito. O erro é esse:

    This message was created automatically by mail delivery software.

    A message that you sent could not be delivered to one or more of its
    recipients. This is a permanent error. The following address(es) failed:

    pipe to |/home/conexao/public_html/whmcs/pipe/pipe.php
    generated by [email protected]
    local delivery failed

    —— This is a copy of the message, including all the headers. ——

    Return-path:
    Received: from localhost ([127.0.0.1] helo=conexaol.com.br)
    by server.srv04linux.info with esmtpa (Exim 4.69)
    (envelope-from )
    id 1OHkew-0000U7-Qr
    for [email protected]; Thu, 27 May 2010 18:30:34 -0300
    Received: from 189.99.24.136 ([189.99.24.136])
    (SquirrelMail authenticated user [email protected])
    by conexaol.com.br with HTTP;
    Thu, 27 May 2010 18:30:34 -0300
    Message-ID:
    Date: Thu, 27 May 2010 18:30:34 -0300
    Subject:
    From: =?iso-8859-1?Q?=22Conex=E3o_L_-_Websites_&_M=EDdia=22?=
    To: [email protected]
    Reply-To: [email protected]
    User-Agent: SquirrelMail/1.4.20
    MIME-Version: 1.0
    Content-Type: text/plain;charset=iso-8859-1
    Content-Transfer-Encoding: 8bit
    X-Priority: 3 (Normal)
    Importance: Normal

    O que faço? Todos q recebem meus emails , recebem junto uma msg de erro tipo essa.

  11. Olá pessoal.

    Alguém sabe como alterar o texto do ticket que é aberto quando um cliente solicita uma retirada no sistema de Afiliados.

    Quando um cliente solicita uma retirada para nós chega da seguinte maneira:

    Título do Ticket: Affiliate Withdrawal Request

    ———– Mensagem do Ticket —————–

    Affiliate Account Withdrawal Request. Details below:

    Client ID: 25
    Affiliate ID: 985
    Balance: 3.58

    ———————————————————-

    Teria como alterar esta mensagem ou não tem como, porque já tentei ver em templates de emails e não existe esta mensagem, verifiquei também no arquivo de linguagem mas sem sucesso.

    Se alguém puder dar uma luz, agradeço desde já.

    Danilo

  12. Olá pessoal.

    Alguém sabe como alterar o texto do ticket que é aberto quando um cliente solicita uma retirada no sistema de Afiliados.

    Quando um cliente solicita uma retirada para nós chega da seguinte maneira:

    Título do Ticket: Affiliate Withdrawal Request

    ———– Mensagem do Ticket —————–

    Affiliate Account Withdrawal Request. Details below:

    Client ID: 25
    Affiliate ID: 985
    Balance: 3.58

    ———————————————————-

    Teria como alterar esta mensagem ou não tem como, porque já tentei ver em templates de emails e não existe esta mensagem, verifiquei também no arquivo de linguagem mas sem sucesso.

    Se alguém puder dar uma luz, agradeço desde já.

    Danilo

  13. Danilo,

    Não tem como.

    A WHMCS.com me informou que pretende ampliar essas customizações em forma de e-mails templates.

    Outro exemplo são as solicitações de cancelamento também chegam em inglês.

    É sentar e esperar…

  14. Danilo,

    Não tem como.

    A WHMCS.com me informou que pretende ampliar essas customizações em forma de e-mails templates.

    Outro exemplo são as solicitações de cancelamento também chegam em inglês.

    É sentar e esperar…

  15. Edvan, falei com o pessoal do servidor e dizem q não tem como pq ta criptografado.
    Gostaria de saber como faço para suspender, anular o whmcs sem desinstalar para evitar esses erros no email?

  16. Edvan, falei com o pessoal do servidor e dizem q não tem como pq ta criptografado.
    Gostaria de saber como faço para suspender, anular o whmcs sem desinstalar para evitar esses erros no email?

  17. Luciana, é incompetência do suporte.

    Esse problema é bem simples de resolver, basta eles editarem a linha da CRON internamente ( não manipula código fonte ) e sim diretamente no servidor no arquivo de configuração.

    Em relação a suspender/anular eu não entendi.

  18. Luciana, é incompetência do suporte.

    Esse problema é bem simples de resolver, basta eles editarem a linha da CRON internamente ( não manipula código fonte ) e sim diretamente no servidor no arquivo de configuração.

    Em relação a suspender/anular eu não entendi.

  19. Então, Edvan… até eu resolver essa questão, preciso usar os emails e não quero que eles fiquem enviando essas mensagens de erro por causa do pipe. Então eu gostaria de saber se tem alguma forma de dar um tempo no whmcs mas sem desinstalar e tal

  20. Então, Edvan… até eu resolver essa questão, preciso usar os emails e não quero que eles fiquem enviando essas mensagens de erro por causa do pipe. Então eu gostaria de saber se tem alguma forma de dar um tempo no whmcs mas sem desinstalar e tal

  21. Vc diz nas Tarefas Cron do cPanel?
    Removi |/home/conexao/public_html/whmcs/pipe/pipe.php
    mas o envio de email com erro continua.
    Fui no local certo?

  22. Bom, consegui acertar este erro. Dei permissao 755 em pipe.php e funcionou.
    Valeu!

    Se puder me ajudar com o q segue, agradeço! Coloquei artigos na base de conhecimento e arquivos para download, porem qdo clico da 404 Not Found error
    O que pode ser?

  23. Bom, consegui acertar este erro. Dei permissao 755 em pipe.php e funcionou.
    Valeu!

    Se puder me ajudar com o q segue, agradeço! Coloquei artigos na base de conhecimento e arquivos para download, porem qdo clico da 404 Not Found error
    O que pode ser?

  24. Achei esse arq e pode ter algo a ver.
    Sabe onde posso colocar essas linhas?
    RewriteEngine On

    # Announcements
    RewriteRule ^announcements/([0-9]+)/[a-z0-9_-]+\.html$ ./announcements.php?id=$1 [L,NC]
    RewriteRule ^announcements$ ./announcements.php [L,NC]

    # Downloads
    RewriteRule ^downloads/([0-9]+)/([^/]*)$ ./downloads.php?action=displaycat&catid=$1 [L,NC]
    RewriteRule ^downloads$ ./downloads.php [L,NC]

    # Knowledgebase
    RewriteRule ^knowledgebase/([0-9]+)/[a-z0-9_-]+\.html$ ./knowledgebase.php?action=displayarticle&id=$1 [L,NC]
    RewriteRule ^knowledgebase/([0-9]+)/([^/]*)$ ./knowledgebase.php?action=displaycat&catid=$1 [L,NC]
    RewriteRule ^knowledgebase$ ./knowledgebase.php [L,NC]

  25. Achei esse arq e pode ter algo a ver.
    Sabe onde posso colocar essas linhas?
    RewriteEngine On

    # Announcements
    RewriteRule ^announcements/([0-9]+)/[a-z0-9_-]+.html$ ./announcements.php?id=$1 [L,NC]
    RewriteRule ^announcements$ ./announcements.php [L,NC]

    # Downloads
    RewriteRule ^downloads/([0-9]+)/([^/]*)$ ./downloads.php?action=displaycat&catid=$1 [L,NC]
    RewriteRule ^downloads$ ./downloads.php [L,NC]

    # Knowledgebase
    RewriteRule ^knowledgebase/([0-9]+)/[a-z0-9_-]+.html$ ./knowledgebase.php?action=displayarticle&id=$1 [L,NC]
    RewriteRule ^knowledgebase/([0-9]+)/([^/]*)$ ./knowledgebase.php?action=displaycat&catid=$1 [L,NC]
    RewriteRule ^knowledgebase$ ./knowledgebase.php [L,NC]

  26. O cron modificado estava rodando tudo normal, do nada ele parou de gerar o backup e o cron que é executado 1 vez ao dia que roda tudo tb não gera mais o backup, porque disso?

    Meu whmcs é o 4.2.1

  27. O cron modificado estava rodando tudo normal, do nada ele parou de gerar o backup e o cron que é executado 1 vez ao dia que roda tudo tb não gera mais o backup, porque disso?

    Meu whmcs é o 4.2.1

  28. Ola alguem pode me ajudar meu cron job esta dando erro

    Site error: the file /home/user/public_html/whmcs/admin/cron.php requires the ionCube PHP Loader ioncube_loader_lin_5.2.so to be installed by the site administrator.

  29. amigo, criei varios crons, e ele nao funciona! esse erro vem no meu email:
    Cron php -q /home/wihostco/public_html/confidencial/cron.php?skip_invoices=1&skip_invoicereminders=1&skip_suspensions=1&skip_terminations=1&skip_backups=1&skip_cancelrequests

    /usr/local/cpanel/bin/jailshell: skip_cancelrequests: comando não encontrado
    Failed loading /usr/local/Zend/lib/Guard-5.5.0/php-5.3.x/ZendGuardLoader.so: /usr/local/Zend/lib/Guard-5.5.0/php-5.3.x/ZendGuardLoader.so: cannot open shared object file: No such file or directory
    PHP Warning: Module ‘pdo_mysql’ already loaded in Unknown on line 0
    PHP Warning: Module ‘pdo_mysql’ already loaded in Unknown on line 0
    PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/local/lib/php/extensions/no-debug-non-zts-20090626/eaccelerator.so‘ – /usr/local/lib/php/extensions/no-debug-non-zts-20090626/eaccelerator.so: cannot open shared object file: No such file or directory in Unknown on line 0
    PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/local/lib/php/extensions/no-debug-non-zts-20090626/suhosin.so‘ – /usr/local/lib/php/extensions/no-debug-non-zts-20090626/suhosin.so: cannot open shared object file: No such file or directory in Unknown on line 0
    PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/local/lib/php/extensions/no-debug-non-zts-20090626/ixed.5.3.lin’ – /usr/local/lib/php/extensions/no-debug-non-zts-20090626/ixed.5.3.lin: cannot open shared object file: No such file or directory in Unknown on line 0
    PHP Warning: Cannot load module ‘pdo_mysql’ because required module ‘pdo’ is not loaded in Unknown on line 0
    No input file specified.

    oq pode ser?

  30. O Edvan, tentei utilizar o script, mas deu acesso negado e retornou para o Admin quando mandei executar. OBS: Minha pasta admin está customizada.

  31. O Edvan, tentei utilizar o script, mas deu acesso negado e retornou para o Admin quando mandei executar. OBS: Minha pasta admin está customizada.

DEIXE UMA RESPOSTA

Please enter your comment!
Please enter your name here