Skip to main content

Einführung

Um einen Slack-Bot 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 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

Um einen Slack-Bot zu erstellen, benötigst du ein Konto und Berechtigungen zum Erstellen von Apps auf Slack. Erstelle ein Konto oder melde dich bei Slack an, bevor du den nächsten Schritten folgst.

Bot-Anwendung auf Slack

  1. Gehe zu Slack API - Your Apps und klicke auf “Create New App”.
  2. Wähle “From scratch”, gib der App einen Namen und wähle den Workspace aus, in dem du sie installieren wirst.
  3. Aktiviere im Abschnitt “Socket Mode” den Socket Mode und erzeuge ein App-Level Token mit dem Scope connections:write. Kopiere es (es beginnt mit xapp-): Das ist dein SLACK_APP_TOKEN.
  4. Füge im Abschnitt “OAuth & Permissions” die Scopes hinzu, die dein Bot benötigt (z. B. chat:write, app_mentions:read, commands), installiere die App in deinem Workspace und kopiere das Bot User OAuth Token (es beginnt mit xoxb-): Das ist dein SLACK_BOT_TOKEN.
  5. Aktiviere unter “Event Subscriptions” die Events und abonniere das Bot-Event app_mention. Erstelle unter “Slash Commands” den Befehl /hello. Mit aktiviertem Socket Mode verlangt keines von beiden eine Request URL.
Sicherheit: Gib das App-Level Token oder das Bot Token niemals öffentlich preis. Behandle sie als sensible Zugangsdaten: Die folgenden Beispiele lesen sie aus Umgebungsvariablen, niemals aus deinem Code.
Im Socket Mode baut der Bot die Verbindung zu Slack selbst auf und läuft daher wie jeder andere Bot: Es wird keine öffentliche URL und kein Port benötigt. Wenn Slack die Events lieber per HTTP senden soll, sieh dir “HTTP-Modus statt Socket Mode verwenden” am Ende dieser Seite an.

Projekt entwickeln

Nutze die folgenden Abschnitte je nach der von dir gewählten Sprache. Beide Beispiele demonstrieren einen Bot, der auf Erwähnungen oder einfache Befehle reagiert.
Node.js-Umgebung einrichten
  1. Stelle sicher, dass Node.js installiert ist.
  2. Initialisiere ein Projekt und installiere die Abhängigkeiten:
Terminal
  1. Erstelle eine index.js-Datei mit folgendem Inhalt:
index.js

Square Cloud konfigurieren

Erstelle im Stammverzeichnis deines Projekts, neben deiner Hauptdatei, eine Datei squarecloud.app. Sie teilt Square Cloud mit, wie dein Bot ausgeführt wird:
  • MAIN ist die Datei, die Square Cloud ausführt, und MEMORY ist der RAM des Bots in MB. Bots brauchen mindestens 256 MB; mit 512 MB hast du Luft zum Wachsen.
  • AUTORESTART=true startet den Bot nach einem Absturz neu. Lies dazu, wie der automatische Neustart funktioniert.
  • Es gibt keine SUBDOMAIN: Im Socket Mode braucht der Bot keine öffentliche URL.
Alle Felder findest du in der Referenz zur Konfigurationsdatei.

Tokens festlegen

Dein Code liest beide Tokens aus den Umgebungsvariablen SLACK_BOT_TOKEN und SLACK_APP_TOKEN, daher landen sie nie in deinen Dateien. Lege sie auf eine dieser Arten fest:
  • Dashboard: Öffne auf der Upload-Seite Erweiterte Konfiguration und füge beide Variablen hinzu. Bei einem bereits deployten Bot fügst du sie auf der Seite Umgebungsvariablen der Anwendung hinzu und startest den Bot neu.
  • CLI: Lege sie direkt nach dem Upload des Bots (siehe Deployen) mit squarecloud app env set fest und starte den Bot neu:
Der Bot liest seine Umgebungsvariablen beim Start, starte ihn deshalb nach jeder Änderung neu. Weitere Möglichkeiten, sie zu verwalten, findest du unter Umgebungsvariablen.

Deployen

Nachdem du deine Projektdateien vorbereitet hast, kannst du sie nun zu 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
4

Bestätige, dass deine App live ist

Dein erstes Deploy dauert in der Regel weniger als eine Minute. Warte im Dashboard, bis der Status deiner Anwendung als “running” angezeigt wird, und prüfe die Logs auf Startfehler.
Wenn du eine Website oder API bereitgestellt hast, öffne https://<deine-subdomain>.squareweb.app in deinem Browser: du solltest sehen, dass deine Anwendung reagiert. Wenn du einen Bot bereitgestellt hast, sende ihm einen Befehl, um zu bestätigen, dass er online ist.
App startet nicht? Im Leitfaden zur Fehlerbehebung findest du die häufigsten Ursachen und Lösungen.

Über die CLI

Um diese Methode zu nutzen, braucht dein Projekt eine Konfigurationsdatei mit dem Namen squarecloud.app im Stammverzeichnis. Sie teilt Square Cloud mit, wie deine Anwendung ausgeführt wird.

Leitfaden zur Konfigurationsdatei

Erfahre, wie du die Konfigurationsdatei squarecloud.app erstellst, die die Umgebung deiner Anwendung definiert.
1

CLI installieren

Installiere die Square Cloud CLI. Falls du sie bereits hast, führe denselben Befehl aus, um sie zu aktualisieren:
2

Anmelden

Führe den folgenden Befehl aus. Er öffnet deinen Browser: Bestätige dort die Anmeldung, und die CLI ist einsatzbereit. Es gibt keinen API-Schlüssel zu kopieren. Für Skripte und CI siehe CLI-Authentifizierung.
3

Projekt hochladen

Führe in deinem Projektordner den folgenden Befehl aus. Die CLI packt den aktuellen Ordner als ZIP, lässt dabei weg, was in der squarecloud.ignore steht, und lädt ihn hoch:
Um eine selbst erstellte ZIP-Datei hochzuladen, übergib sie mit --file:
4

Bestätige, dass deine App live ist

Dein erstes Deploy dauert in der Regel weniger als eine Minute. Prüfe den Status und die Logs deiner Anwendung direkt im Terminal:
Wenn du eine Website oder API bereitgestellt hast, öffne https://<deine-subdomain>.squareweb.app in deinem Browser: du solltest sehen, dass deine Anwendung reagiert. Wenn du einen Bot bereitgestellt hast, sende ihm einen Befehl, um zu bestätigen, dass er online ist.
App startet nicht? Im Leitfaden zur Fehlerbehebung findest du die häufigsten Ursachen und Lösungen.

Den Bot testen

  1. Installiere die App im Slack-App-Panel unter “OAuth & Permissions” im Workspace (falls noch nicht geschehen).
  2. Prüfe die Anwendungslogs im Square Cloud Dashboard auf Startfehler. Im Socket Mode muss keine Request URL konfiguriert werden: Der Bot verbindet sich mit Slack, sobald er startet.
  3. Lade den Bot in einen Kanal ein und erwähne ihn dann oder führe den Befehl /hello aus, um die Antworten zu validieren.
Beispiel-Installationslink (ersetze die client_id):

HTTP-Modus statt Socket Mode verwenden

Apps, die Socket Mode nutzen, können nicht im öffentlichen Slack Marketplace gelistet werden. Wenn Slack die Events stattdessen per HTTP senden soll, betreibe den Bot als Webanwendung:
  1. Deaktiviere in den Einstellungen der Slack-App den Socket Mode und kopiere das Signing Secret (unter “Basic Information”) in eine Umgebungsvariable SLACK_SIGNING_SECRET, die du genauso wie die Tokens festlegst.
  2. Erstelle die App mit dem Signing Secret statt mit dem App-Level Token und lausche auf dem Port aus der Umgebungsvariable PORT:
Beide Server lauschen auf allen Netzwerkschnittstellen (0.0.0.0), was Square Cloud voraussetzt.
  1. Füge deiner Konfigurationsdatei eine SUBDOMAIN hinzu (oder wähle beim Upload über das Dashboard “Web Publication” und lege eine Subdomain fest), damit der Bot eine öffentliche URL erhält. Webanwendungen benötigen mindestens MEMORY=512:
squarecloud.app
Eine Anwendung, die ohne Subdomain hochgeladen wurde, kann später keine mehr erhalten. Wenn dein Bot bereits im Socket Mode läuft, lade die HTTP-Version als neue Anwendung hoch.
  1. Setze unter “Event Subscriptions” und im Slash Command /hello die Request URL auf https://<subdomain>.squareweb.app/slack/events.

Weitere Ressourcen

Zur weiteren Lektüre findest du hier die offizielle Slack-Dokumentation:

Nächste Schritte

App startet nicht

Behebe fehlende Module, Speicherfehler und andere Startprobleme.

Umgebungsvariablen

Verwalte die Tokens deines Bots und andere Secrets.

Discord-Bot

Hoste einen Discord-Bot neben deinem Slack-Bot.

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: die Qualität unseres Supports ist ein wichtiger Grund, warum Entwickler Square Cloud mit 4,9/5 bei 402 Bewertungen auf Google und Trustpilot bewerten.