Zum Hauptinhalt springen

Einführung

Um auf Square Cloud zu entwickeln und zu hosten, ist es wichtig, einer strukturierten Abfolge von Konfigurationen und Voraussetzungen zu folgen. Dieser technische Leitfaden deckt den gesamten Prozess ab, von der anfänglichen Einrichtung bis zum Produktions-Deployment.

Voraussetzungen

  • Square Cloud Konto: Registriere dich über die Registrierungsseite mit deiner E-Mail-Adresse.
  • Aktiver kostenpflichtiger Plan: Stellt dedizierte Ressourcen und optimierte Leistung für deine Anwendung sicher. Sieh dir unsere verfügbaren Pläne an und wähle den passendsten für deine Bedürfnisse.

Projekt erstellen

Eine installierte und konfigurierte WhatsApp-App ist für die Authentifizierung und Verknüpfung des Bots erforderlich. Wenn du die App nicht hast, besuche die offizielle WhatsApp-Website zum Herunterladen und Einrichten.
Wenn deine Implementierung auf den Remote-Pfad für die WhatsApp-Web-Version zugreifen muss, befolge dieses technische Verfahren:
  1. Rufe das wa-version-Repository auf
  2. Wähle die gewünschte Version (es wird immer empfohlen, die neueste zu verwenden)
  3. Klicke auf “Raw”, um die Datei anzuzeigen
  4. Kopiere die generierte URL zur späteren Verwendung
Beispiel für eine konfigurierte URL:
https://raw.githubusercontent.com/wppconnect-team/wa-version/main/html/2.2412.54.html

Projekt entwickeln

  1. Node.js-Prüfung: Stelle sicher, dass Node.js auf deinem System installiert ist. Andernfalls lade es von der offiziellen Node.js-Website herunter.
  2. Projektinitialisierung: Richte ein neues Node.js-Projekt ein, indem du den Initialisierungsbefehl ausführst:
Terminal
npm init -y
  1. Abhängigkeiten installieren: Installiere die wesentlichen Bibliotheken für die Bot-Funktionalität:
Terminal
npm install whatsapp-web.js qrcode
  1. Hauptdatei erstellen: Entwickle die Datei index.js mit der Grundstruktur des Bots:
index.js
// Import necessary modules
const { Client } = require("whatsapp-web.js");
const qrcode = require("qrcode");

// Create a new WhatsApp client instance
const client = new Client({
  puppeteer: {
    // Run Chrome in headless mode (without graphical interface)
    headless: true,
    args: [
      // Disable Chrome sandboxing features
      // Required for execution in containerized environments
      "--no-sandbox",
      // Additional sandboxing flag to disable setuid sandbox
      "--disable-setuid-sandbox",
    ],
  },
  // Web version cache configuration
  webVersionCache: {
    // Type "remote" indicates WhatsApp Web version will be fetched from remote URL
    type: "remote",
    // Remote path for WhatsApp Web version
    remotePath: "INSERT_YOUR_URL_HERE",
  },
});

// Event listener for QR Code generation
client.on("qr", async (qr) => {
  // Use qrcode library to generate and save QR Code
  try {
    await qrcode.toFile("./qrcode.png", qr);
    console.log("QR Code generated and saved as qrcode.png");
  } catch (err) {
    console.error("Error generating QR Code:", err);
  }
});

// Event listener for client ready
client.on("ready", () => {
  // Confirmation log when WhatsApp Web session is established
  console.log("WhatsApp client successfully initialized!");
});

// Event listener for created messages
client.on("message_create", (msg) => {
  // Log message content to console
  console.log("Message received:", msg.body);
  
  // Test command implementation
  if (msg.body === "!ping") {
    // Automatic response for ping command
    msg.reply("pong - Bot working correctly!");
  }
});

// Initialize WhatsApp client
client.initialize();

Deployment

Nachdem du deine Projektdateien vorbereitet hast, kannst du sie nun auf Square Cloud hochladen und dein Projekt hosten. Erstelle dazu eine ZIP-Datei, die alle deine Projektdateien enthält.

Über das Dashboard

1

Upload-Seite aufrufen

Rufe die Upload-Seite auf und lade die ZIP-Datei deines Projekts hoch.
2

Umgebung konfigurieren

Nachdem du deine ZIP-Datei hochgeladen hast, musst du den Namen, die Hauptdatei oder Runtime-Umgebung und weitere Einstellungen für dein Projekt konfigurieren.
Wenn du ein Web-Projekt hochlädst, achte darauf, “Web Publication” auszuwählen und deinem Projekt eine Subdomain zuzuweisen.
3

Projekt bereitstellen

Klicke abschließend auf die Schaltfläche “Deploy”, um dein Projekt auf Square Cloud zu hosten.
Nach dem Deploy kannst du den Status und die Logs deines Projekts über das Dashboard überwachen.
Anwendung wird auf Square Cloud hochgeladen

Über die CLI

Um diese Methode zu nutzen, musst du eine Konfigurationsdatei mit dem Namen squarecloud.app im Stammverzeichnis deines Projekts erstellen. Diese Datei enthält die notwendige Konfiguration für dein Projekt.

Mehr erfahren: So erstellst du die Konfigurationsdatei für Square Cloud.

Die Datei squarecloud.app ist eine Konfigurationsdatei, mit der deine Anwendung konfiguriert wird; sie dient dazu, deine Umgebung zu definieren.
1

CLI installieren

Zuerst musst du die CLI in deiner Umgebung installiert haben. Falls du sie noch nicht hast, führe den folgenden Befehl in deinem Terminal aus:
npm install -g @squarecloud/cli
Falls du sie bereits hast, empfehlen wir, sie zu aktualisieren. Führe dazu den folgenden Befehl in deinem Terminal aus:
squarecloud update
2

Authentifizieren

Um dich zu authentifizieren und weitere CLI-Befehle zu nutzen, findest du deinen Autorisierungsschlüssel hier, indem du auf “Request API Key” klickst. Nachdem du deinen Autorisierungsschlüssel erhalten hast, führe den folgenden Befehl aus:
squarecloud auth login
3

Projekt hochladen

Um deine Anwendung schließlich über die CLI auf Square Cloud bereitzustellen, musst du den folgenden Befehl ausführen:
squarecloud upload 
Oder falls du die ZIP-Datei manuell erstellt hast, kannst du Folgendes verwenden:
squarecloud upload --file <path/to/zip> 

Weitere Ressourcen

Um dein Wissen über die Entwicklung von WhatsApp-Bots mit whatsapp-web.js zu vertiefen, konsultiere die offizielle Dokumentation der whatsapp-web.js-Bibliothek. Die Dokumentation bietet detaillierte technische Anleitungen, fortgeschrittene Tutorials und eine vollständige API-Referenz, um das Implementierungspotenzial voll auszuschöpfen.

Kontaktiere uns

Falls du weiterhin technische Schwierigkeiten hast, steht dir unser spezialisiertes Support-Team zur Verfügung. Kontaktiere uns und wir helfen dir gerne, jedes Problem zu lösen.