Pular para o conteúdo principal

Introdução

Para desenvolver e hospedar um aplicativo no Square Cloud, é essencial seguir uma sequência estruturada de configurações e pré-requisitos. Este guia técnico abordará todo o processo, desde a configuração inicial até a implantação em produção.

Pré-requisitos

  • Conta Square Cloud: Cadastre-se através da página de cadastro usando seu e-mail.
  • Plano Pago Ativo: Garante recursos dedicados e desempenho otimizado para seu aplicativo. Confira nossos planos disponíveis e escolha o mais adequado às suas necessidades.
Está se perguntando quanta RAM e CPU seu plano precisa para hospedar Bots do WhatsApp?
Não se preocupe, estamos aqui para ajudar. Nosso plano Standard oferece 4GB de RAM e 4vCPU, o que deve ser suficiente para a maioria dos Bots do WhatsApp. No entanto, se você estiver trabalhando em um projeto maior e precisar de mais estabilidade, recomendamos considerar nosso plano Pro. Com recursos adicionais, você pode manter a estabilidade mesmo durante picos de demanda. Para comprar, basta clicar aqui.

Criando o projeto

Ter o WhatsApp instalado e configurado é um requisito para a autenticação e vinculação do bot. Se você não tem o aplicativo, visite o site oficial do WhatsApp para download e configuração.
Se sua implementação precisar acessar o caminho remoto para a versão do WhatsApp Web, siga este procedimento técnico:
  1. Acesse o repositório wa-version
  2. Selecione a versão desejada (sempre é recomendado usar a mais recente)
  3. Clique em “Raw” para visualizar o arquivo
  4. Copie a URL gerada para uso posterior
Exemplo de URL configurada:
[https://raw.githubusercontent.com/wppconnect-team/wa-version/main/html/2.2412.54.html](https://raw.githubusercontent.com/wppconnect-team/wa-version/main/html/2.2412.54.html)

Desenvolvendo o projeto

  1. Verificação do Node.js: Confirme se o Node.js está instalado em seu sistema. Caso contrário, baixe-o no site oficial do Node.js.
  2. Inicialização do projeto: Configure um novo projeto Node.js executando o comando de inicialização:
Terminal
npm init -y
  1. Instalação de dependências: Instale as bibliotecas essenciais para a funcionalidade do bot:
Terminal
npm install whatsapp-web.js qrcode
  1. Criação do arquivo principal: Desenvolva o arquivo index.js com a estrutura base do bot:
index.js
// Importa os módulos necessários
const { Client } = require("whatsapp-web.js");
const qrcode = require("qrcode");

// Cria uma nova instância do cliente WhatsApp
const client = new Client({
  puppeteer: {
    // Roda o Chrome em modo headless (sem interface gráfica)
    headless: true,
    args: [
      // Desabilita recursos de sandboxing do Chrome
      // Necessário para execução em ambientes conteinerizados
      "--no-sandbox",
      // Flag adicional de sandboxing para desabilitar setuid sandbox
      "--disable-setuid-sandbox",
    ],
  },
  // Configuração de cache da versão Web
  webVersionCache: {
    // O tipo "remote" indica que a versão do WhatsApp Web será buscada de uma URL remota
    type: "remote",
    // Caminho remoto para a versão do WhatsApp Web
    remotePath: "INSIRA_SUA_URL_AQUI",
  },
});

// Listener de evento para geração do QR Code
client.on("qr", async (qr) => {
  // Usa a biblioteca qrcode para gerar e salvar o QR Code
  try {
    await qrcode.toFile("./qrcode.png", qr);
    console.log("QR Code gerado e salvo como qrcode.png");
  } catch (err) {
    console.error("Erro ao gerar o QR Code:", err);
  }
});

// Listener de evento para cliente pronto
client.on("ready", () => {
  // Log de confirmação quando a sessão do WhatsApp Web é estabelecida
  console.log("Cliente WhatsApp inicializado com sucesso!");
});

// Listener de evento para mensagens criadas
client.on("message_create", (msg) => {
  // Log do conteúdo da mensagem no console
  console.log("Mensagem recebida:", msg.body);

  // Implementação de comando de teste
  if (msg.body === "!ping") {
    // Resposta automática para o comando ping
    msg.reply("pong - Bot funcionando corretamente!");
  }
});

// Inicializa o cliente WhatsApp
client.initialize();

Realizando o Deploy

Após preparar os arquivos do seu projeto, você pode enviá-los para a Square Cloud e hospedar seu projeto. Para fazer isso, crie um arquivo ZIP contendo todos os arquivos do seu projeto.

Via dashboard

1

Acesse a página de upload

Acesse a página de upload e envie seu arquivo zip.
2

Configure seu ambiente

Após fazer o upload do seu arquivo zip, você precisará configurar o nome, o arquivo principal ou o ambiente de execução e outras configurações do seu projeto.
Se você estiver enviando um projeto web, certifique-se de selecionar "Publicação na Web" e definir um subdomínio para o seu projeto.
3

Faça o deploy do projeto

Por fim, clique no botão "Deploy" para hospedar seu projeto no Square Cloud. Após o deploy, você poderá monitorar o status e os registros do seu projeto no painel.

Via CLI

Para usar esse método, você precisa criar um arquivo de configuração chamado squarecloud.app no diretório raiz do seu projeto. Esse arquivo conterá a configuração necessária para o seu projeto.

Saiba mais sobre: Como criar arquivo de configuração da Square Cloud.

O arquivo squarecloud.app é um arquivo de configuração que será usado para configurar seu aplicativo; ele será usado para definir seu ambiente.
1

Primeiro Passo

Primeiro, você precisa ter a CLI instalada em seu ambiente. Se você ainda não a possui, execute o seguinte comando em seu terminal:
npm install -g @squarecloud/cli
Se você já a possui, recomendamos atualizá-la. Para fazer isso, execute o seguinte comando em seu terminal:
squarecloud update
2

Segundo Passo

Agora, para autenticar e usar outros comandos da CLI, você encontrará sua chave de autorização aqui clicando em "Solicitar Chave da API". Após obter sua chave de autorização, execute o seguinte comando:
squarecloud auth login
3

Terceiro Passo

Finalmente, para fazer o deploy da sua aplicação para a Square Cloud usando a CLI, você precisa executar o seguinte comando:
squarecloud upload
Ou se já possui o zip criado:
squarecloud upload --file <caminho/para/zip>

Recursos Adicionais

Para aprofundar seus conhecimentos sobre o desenvolvimento de bots do WhatsApp usando o whatsapp-web.js, consulte a documentação oficial da biblioteca whatsapp-web.js. A documentação oferece guias técnicos detalhados, tutoriais avançados e referência completa da API para maximizar o potencial de implementação.

Contate-nos

Se você continuar enfrentando dificuldades técnicas, nossa equipe de suporte especializada está disponível para auxiliá-lo. Entre em contato conosco e teremos prazer em ajudá-lo a resolver qualquer questão.