Zum Hauptinhalt springen

Einführung

  • Diese Anleitung setzt voraus, dass du einen genehmigten Bot auf top.gg hast und für dein Projekt entweder Node.js oder Python verwendest.
  • Als Nächstes musst du ein Konto bei Square Cloud erstellen, was über die Registrierungsseite möglich ist. Du kannst deine E-Mail-Adresse verwenden, um ein Konto zu erstellen.
  • Schließlich musst du einen aktiven kostenpflichtigen Plan in deinem Konto haben. Du kannst unsere Pläne ansehen und einen nach deinen Bedürfnissen hier erwerben.

Einrichtung der Umgebung

  1. Bevor du beginnst, stelle sicher, dass Node.js und npm auf deinem System installiert sind. Falls du sie noch nicht hast, kannst du sie von der offiziellen Node.js-Website herunterladen.
  2. Starte ein neues Node.js-Projekt mit dem folgenden Befehl:
Terminal
npm init -y
Dieser Befehl erstellt eine package.json-Datei im aktuellen Verzeichnis.
  1. Installiere die notwendigen Bibliotheken:
Terminal
npm install @top-gg/sdk express

Einrichtung des Projekts

1. Hole dir deine Webhook-Authentifizierung:
  • Gehe zu deinem Top.gg-Profil hier.
  • Klicke auf “edit” bei dem Bot, für den du Benachrichtigungen über Votes erhalten möchtest.
  • Wähle unter “GENERAL” die Option “webhook”.
  • Lege die Webhook-Authentifizierung unter “Authorization” fest. In diesem Beispiel haben wir “myappsquare” verwendet.
2. Implementiere den Webhook-Listener: Die folgenden Abschnitte enthalten Codebeispiele für Javascript und Python:
Wir verwenden das von der Top.gg-Dokumentation hier bereitgestellte Beispiel mit einigen Änderungen.
index.js
// Import libraries
const Topgg = require("@top-gg/sdk");
const express = require("express");

// Create Express app and Top.gg webhook instances
const app = express();
const webhook = new Topgg.Webhook("YOUR_AUTHORIZATION_TOKEN");

// Define route for '/topgg' endpoint (POST requests)
app.post("/topgg", webhook.listener((vote) => {
  // Log vote received message with user ID
  console.log(`Vote received successfully! User ID: ${vote.user}`);
}));

// Start server on port 80 (default HTTP)
app.listen(80);

Erstellen der squarecloud-Konfigurationsdatei

Mehr erfahren: Wie man die Konfigurationsdatei für Square Cloud erstellt.

Die squarecloud.app-Datei ist eine Konfigurationsdatei, die zur Konfiguration deiner Anwendung verwendet wird; sie dient dazu, unter anderem den Namen, die Beschreibung, die Version und die Hauptdatei festzulegen.

Deine Anwendung auf Square Cloud hochladen

Nachdem du alle Schritte befolgt hast, packe deine Anwendungsdateien in eine .zip-Datei, einschließlich der Konfigurationsdatei. Wenn deine Anwendung ein Node.js-Projekt ist, wirf einen Blick auf unseren Artikel zu Node.js. Wenn deine Anwendung ein Python-Projekt ist, wirf einen Blick auf unseren Artikel zu Python.
Rufe das Square Cloud Dashboard auf und lade deine Projektdateien hoch.
Anwendung wird auf Square Cloud hochgeladen

Tests starten

Wenn du alles richtig gemacht hast, versuche, auf deine Website über die in der Konfigurationsdatei definierte Subdomain zuzugreifen. Wenn du sie als “mysite” definiert hast, lautet der Zugriff mysite.squareweb.app. Wenn nach dem Zugriff nur “Cannot GET /” oder “Method Not Allowed” erscheint, ist alles in Ordnung. Nun musst du zur vorherigen Seite zurückkehren, auf der die Autorisierung definiert wurde. Im Feld Webhook URL solltest du die URL deiner Website zusammen mit der Route eintragen, die die Votes empfängt.
  • Für den JavaScript-Code, den wir mit app.post("/topgg", webhook.listener((vote) => {...}) erstellt haben, ist die Route, die die Votes empfängt, “/topgg”. Wenn deine Website also “mysite.squareweb.app” ist, solltest du “mysite.squareweb.app/topgg” als Webhook URL eintragen.
  • Für den Python-Code, den wir mit @app.route("/topgg", methods=["POST"]) erstellt haben, ist die Route, die die Votes empfängt, ebenfalls “/topgg”. Die Webhook URL wäre also dieselbe “mysite.squareweb.app/topgg”.
Beispiel für die Konfiguration der Top.gg-Webhook-URL
Klicke abschließend auf die Schaltfläche “Send Test”. Überprüfe danach das Terminal. Wenn alles gut gelaufen ist, sollte die Nachricht, die du in console.log oder print definiert hast, im Terminal erscheinen.
Beispiel für den Top.gg-Webhook-Testversand
Und damit ist dein Webhook, sofern alles korrekt konfiguriert wurde, bereit, Benachrichtigungen zu senden, wenn dein Bot einen Vote auf top.gg erhält.

Fehlerbehebung

Eigene Domain

Um eine eigene Domain (z. B. mysite.com) anstelle der Standard-URL mysite.squareweb.app zu verwenden, benötigst du den Standard-Plan oder höher. Die Subdomain wird über das Feld SUBDOMAIN in der Konfigurationsdatei festgelegt.

Mindestanforderungen an den Arbeitsspeicher

Minimum: 512MB RAM für einfache Websites/APIs. Für Seiten mit Frameworks (Next.JS, React, Vue, Angular usw.) empfehlen wir stets mindestens 1GB RAM. Für größere Anwendungen solltest du mehr RAM zuweisen, damit der Anwendung nicht der Speicher ausgeht und sie abstürzt.

Diese Seite konnte nicht gefunden werden.

Prüfe, ob die Subdomain/Domain mit dem übereinstimmt, was im Feld SUBDOMAIN oder in den Einstellungen der eigenen Domain konfiguriert ist. Wenn du die Seite gerade erst hochgeladen hast, warte bis zu 60 Sekunden, bis Square den ersten Zugriff aktiviert.

Die Seite hat zu lange zum Antworten gebraucht…

Prüfe, ob du in der Anwendung Port 80 und Host 0.0.0.0 korrekt konfiguriert hast. Wir empfehlen die Verwendung der von Square erzwungenen Umgebungsvariablen: PORT und HOST aus der .env-Datei.

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.