Ir para o conteúdo

Usando Manipuladores de Evento

Você pode usar manipuladores de evento no SolusVM 2 para que determinadas ações ocorram automaticamente quando eventos específicos ocorrerem. No momento, webhooks são o único tipo de manipulador de eventos compatível. Outros tipos de manipulador de evento pode ser adicionado no futuro.

Ao criar um manipulador de eventos, você pode escolher um ou mais eventos da lista de eventos suportados, como adicionar um endereço IP ou remover um servidor. Você só pode criar um manipulador de eventos para eventos suportados. Sempre que ocorre um evento suportado, independentemente de ter sido iniciado por um administrador ou por um cliente, todos os manipuladores de evento associados a esse evento são acionados.

Criando um Webhook

Um webhook é um retorno de chamada HTTP/HTTPS definido pelo usuário. Cada vez que um manipulador de eventos deste tipo é acionado, ele executa o webhook e então o SolusVM 2 envia uma solicitação POST para a URL do webhook. SolusVM 2 segue até cinco redirecionamentos e não verifica a validade do certificado SSL/TLS do website (se houver). Vários parâmetros predeterminados são sempre passados através da URL (por exemplo, o ID do servidor que está sendo excluído ou o endereço IP que está sendo adicionado). Um webhook também pode ser configurado para passar parâmetros adicionais definidos pelo usuário.

Cada vez que um webhook é acionado, uma tarefa é criada no SolusVM 2. A tarefa terá o status "Falha" se o script retornar um código de status HTTP 4хх ou 5хх.

Para criar um webhook:

  1. Faça login no SolusVM 2.
  2. Vá para Configurações > Manipuladores de Evento e clique em Adicionar Webhook.
  3. Dê um nome exclusivo ao seu webhook.
  4. Especifique a URL do webhook. Uma solicitação será enviada para esta URL sempre que o webhook for acionado.
  5. Selecione um ou mais eventos no menu suspenso. Cada vez que ocorre um evento compatível, o webhook será acionado.
  6. (Opcional) Especifique parâmetros de solicitação adicionais a serem transmitidos por meio da URL do webhook. Os parâmetros devem estar no formato JSON.
  7. (Opcional) Marque a caixa de seleção "Ativado" se quiser que o webhook fique ativo após a criação. Alternativamente, você pode ativar o webhook mais tarde.
  8. Clique em Salvar.

O webhook foi criado. Você pode encontrá-lo em Configurações > Manipuladores de Evento. Se você ativou o webhook durante a criação, na próxima vez que ocorrer um evento compatível, o webhook será acionado e uma solicitação será enviada a URL do webhook.

Modificando, desabilitando e removendo webhooks

Para modificar um webhook:

  1. Faça login no SolusVM 2.
  2. Vá para Configurações > Manipuladores de Evento.
  3. Clique no ícone correspondente ao webhook que você deseja modificar.
  4. Faça as alterações desejadas e clique em Salvar.

As mudanças já estão em vigor.

Para ativar ou desativar um webhook:

  1. Faça login no SolusVM 2.
  2. Vá para Configurações > Manipuladores de Evento.
  3. Clique no botão de alternância correspondente ao webhook que você deseja ativar ou desativar para que mostre “Ativado” (azul) ou “Desativado” (cinza).

O webhook agora está habilitado (ou desabilitado).

Para excluir um webhook:

  1. Faça login no SolusVM 2.
  2. Vá para Configurações > Manipuladores de Evento.
  3. Clique no ícone correspondente ao webhook que você deseja excluir e clique em Excluir.

O webhook foi excluído.

A lista de parâmetros passados por Webhooks

Cada vez que um webhook é acionado, ele passa os seguintes parâmetros por meio da URL:

  • crId
  • crHostname
  • crStatus (commissioning, configure_network, active, failed, unavailable)
  • crLicenseType (micro, mini, standard)
  • serverId
  • serverIps (por exemplo, ["10.0.0.1","10.0.0.2"])
  • serverHostname
  • serverUuid
  • serverStatus (não existe, iniciado, parado, indisponível)
  • userId
  • billingUserId
  • userEmail
  • userStatus (ativo, bloqueado, suspenso)
  • userAllowedIps (por exemplo, ["10.0.0.1","10.0.0.2"])

Exemplo de Webhook

Você pode criar um webhook que atualizará automaticamente os endereços IP dos servidores migrados de um recurso de computação para outro no WHMCS.

Para criar o webhook:

  1. Faça login em seu servidor WHMCS via SSH.

  2. Localize o arquivo hook_example.php fornecido com o complemento SolusVM 2 WHMCS. O arquivo deve estar no diretório modules/servers/solusvm2vps/.

  3. Faça uma cópia do arquivo e comece a editar a cópia.

  4. Remova o exit(); na linha 6.

  5. Adicione seu(s) segredo(s) à variável $securitySecrets.

  6. Adicione o(s) endereço(s) IP do seu nó de gerenciamento SolusVM 2 à variável $connectionIPs.

  7. Salvar alterações.

  8. Faça login no SolusVM 2.

  9. Vá para Configurações > Manipuladores de Evento e clique em Adicionar Webhook.

  10. Dê um nome exclusivo ao seu webhook.

  11. Especifique a URL do script editado.

  12. Selecione “Adicionar ou remover um IP adicional” no menu suspenso.

  13. Especifique o(s) segredo(s) que você adicionou ao script durante a etapa 5 deste procedimento:

    {
     "secret": "<your secret goes here>"
    }
    
  14. Marque a caixa de seleção "Ativado" e clique em Salvar.

Agora, toda vez que um servidor for migrado, será criada no SolusVM 2 uma tarefa de atualização do endereço IP do servidor no WHMCS.