SK DC-Tools — Anleitung

Discord → Pushover / WhatsApp Benachrichtigungen · mit Smart-Filter

Inhalt

  1. Erste Schritte
  2. Discord-Token erhalten
  3. Kanäle & Kategorien
  4. Pushover & CallMeBot
  5. Keyword-Filter
  6. Smart-Filter (wichtig!)
  7. Smart-Filter Beispiele
  8. Autostart, Tray & Fenster
  9. Wichtige Hinweise

1. Erste Schritte

SK-DC-Tools.exe starten. Beim ersten Start erscheint der Seriennummer-Bildschirm: trage deine scalper-king Seriennummer ein und klicke Aktivieren. Danach öffnet sich das Hauptfenster mit dem Log über die ganze Seite.

Über das ⚙️ Zahnrad (oben rechts) öffnest du die Einstellungen. Trage dort mindestens ein:

Mit dem grünen Start-Button startest du den Bot. Der Statuspunkt wird grün und zeigt „Läuft". Eingehende Nachrichten erscheinen live im Log.

Die Datei config.yaml liegt neben der .exe und kann alternativ direkt bearbeitet werden. Änderungen im Programm (Speichern) schreiben ebenfalls dorthin.

2. Discord-Token erhalten

SK DC-Tools benötigt deinen persönlichen Discord-User-Token. Am einfachsten liest du ihn mit der mitgelieferten Chrome-Erweiterung aus dem Ordner RECEIVE-DC-TOKEN-EXTENSION (liegt neben der Anleitung) aus:

  1. In Chrome oder Edge die Seite chrome://extensions öffnen.
  2. Oben rechts den Entwicklermodus einschalten.
  3. Auf „Entpackte Erweiterung laden" klicken und den Ordner RECEIVE-DC-TOKEN-EXTENSION auswählen.
  4. Im selben Browser bei discord.com einloggen und einen beliebigen Kanal öffnen.
  5. Oben rechts auf das 🔑-Symbol der Erweiterung klicken — dein Token wird angezeigt.
  6. Mit „Kopieren" übernehmen und in SK DC-Tools (⚙️ → Feld Discord-Token) einfügen, dann speichern.
Achtung: Der Token ist wie ein Passwort — wer ihn hat, hat vollen Zugriff auf deinen Discord-Account. Niemals weitergeben und nicht in Screenshots/Streams zeigen.

3. Kanäle & Kategorien

Du kannst einzelne Kanal-IDs angeben oder ganze Kategorie-IDs. Bei einer Kategorie werden automatisch alle Kanäle darin überwacht (praktisch, wenn oft neue Kanäle dazukommen).

IDs bekommst du in Discord mit aktiviertem Entwicklermodus per Rechtsklick → „ID kopieren". Mehrere IDs: eine pro Zeile.

4. Pushover & CallMeBot

Beide Kanäle sind unabhängig zuschaltbar — du kannst nur einen, beide oder gemischt nutzen.

Pushover

Im Einstellungen-Bereich Pushover: User Key und API Token eintragen, Schalter „Pushover senden" an. Mit Test-Benachrichtigung senden prüfst du die Zugangsdaten. Pushover kann auch das Produktbild als Anhang mitschicken und einen tippbaren Link zum Angebot.

CallMeBot (WhatsApp)

Im Bereich CallMeBot: Telefonnummer (mit Ländervorwahl, z.B. 491701234567) und API-Key eintragen, Schalter „CallMeBot senden" an. Den API-Key forderst du einmalig per WhatsApp bei CallMeBot an (siehe callmebot.com/whatsapp). CallMeBot verschickt nur Text (keine Bilder).

Selbst-Alarm: Ist er aktiv, bekommst du bei Lizenz-, Login- oder Absturz-Fehlern automatisch eine Warnung — über Pushover und/oder CallMeBot, je nachdem was konfiguriert ist.

5. Keyword-Filter

Der einfache Filter (Schalter „Filter aktiv") lässt nur passende Nachrichten durch:

FeldWirkung
Pflicht-KeywordsMindestens eines dieser Wörter muss vorkommen.
Ausschluss-KeywordsKommt eines davon vor, wird nicht benachrichtigt.
Pflicht-Rollen-IDsMindestens eine dieser Rollen muss gepingt sein (<@&ID>). Mehrere möglich.

Keyword-Filter und Smart-Filter wirken zusammen (UND): eine Nachricht wird nur gemeldet, wenn sie beide aktiven Filter besteht.

6. Smart-Filter wichtig

Der Smart-Filter ist das mächtigste Werkzeug: Regeln in der Datei smart_filter.json (neben der .exe). Im Programm aktivierst du ihn mit dem Schalter „Smart-Filter aktivieren" und öffnest die Datei mit smart_filter.json bearbeiten im Texteditor. Änderungen werden im laufenden Betrieb automatisch übernommen — kein Neustart nötig.

So wirkt er

Aufbau der Datei

{
  "enabled": true,
  "rules": [
    {
      "name": "Anzeigename der Regel",
      "enabled": true,
      "conditions": [ ... ],
      "action": "forward",        // "forward" (Standard) oder "block"
      "add_emoji": "🔥",          // optional: vorne an die Nachricht
      "add_text": "DEAL:"         // optional: Text vorne anstellen
    }
  ]
}

Bedingungen (conditions)

Jede Regel hat eine Liste von Bedingungen. Eine Bedingung kann ein reiner Text-Treffer sein oder eine Zahl aus dem Text ziehen und prüfen. Der Platzhalter XX steht für die Zahl.

FeldBedeutung
text_containsListe von Textmustern. Bei Zahl-Prüfung steht XX für die Zahl, z.B. "Marge: XX%".
extract"XX" — aktiviert die Zahl-Extraktion (sonst reiner Text-Treffer).
checkVergleich der Zahl, z.B. "XX > 30". Erlaubt: > < >= <= ==
multi_matchBei mehreren Zahlen: any (eine reicht), all (alle), max, min, avg, first, last.
text_must_NOT_containListe — kommt eines vor, ist die Bedingung nicht erfüllt.

Mehrere Bedingungen lassen sich mit "AND" / "OR" verknüpfen (als Eintrag zwischen den Bedingungen).

7. Smart-Filter — Beispiele

Beispiel 1 — Nur ein bestimmtes Produkt (Text)

Nur benachrichtigen, wenn „LEGO" vorkommt. Emoji 🧱 wird vorangestellt.

{
  "name": "Nur LEGO",
  "enabled": true,
  "conditions": [
    { "text_contains": ["LEGO", "Lego"] }
  ],
  "add_emoji": "🧱"
}

Beispiel 2 — Marge über 30 % (Zahl prüfen)

Zieht die Prozentzahl aus Texten wie „Marge: 35%" und meldet nur, wenn sie größer als 30 ist.

{
  "name": "Hohe Marge (>30%)",
  "enabled": true,
  "conditions": [
    {
      "text_contains": ["Marge: XX%", "XX% Marge", "XX%"],
      "extract": "XX",
      "check": "XX > 30",
      "multi_match": "any"
    }
  ]
}

Beispiel 3 — Preis unter 40 €

Meldet nur, wenn ein Preis unter 40 € gefunden wird (z.B. „Preis: 31,54€").

{
  "name": "Guenstig (unter 40 EUR)",
  "enabled": true,
  "conditions": [
    {
      "text_contains": ["Preis: XX€", "XX€", "€XX"],
      "extract": "XX",
      "check": "XX < 40",
      "multi_match": "min"
    }
  ]
}
"multi_match": "min" nimmt bei mehreren Preisen den niedrigsten — praktisch bei „statt 60€ jetzt 31€".

Beispiel 4 — Kombination (Keyword UND Preis)

Nur „Nike"-Deals, und nur wenn der Preis unter 120 € liegt. Zwei Bedingungen mit AND.

{
  "name": "Nike unter 120 EUR",
  "enabled": true,
  "conditions": [
    { "text_contains": ["Nike"] },
    "AND",
    {
      "text_contains": ["XX€", "€XX"],
      "extract": "XX",
      "check": "XX < 120",
      "multi_match": "min"
    }
  ]
}

Beispiel 5 — Etwas ausblenden (Block)

Alle „sold out"-Meldungen unterdrücken. Block-Regeln haben Vorrang vor Forward-Regeln.

{
  "name": "Kein Sold Out",
  "enabled": true,
  "action": "block",
  "conditions": [
    { "text_contains": ["sold out", "ausverkauft"] }
  ]
}

Beispiel 6 — Marge ODER Profit

Meldet, wenn die Marge über 30 % oder der Profit über 50 € liegt.

{
  "name": "Marge>30 ODER Profit>50",
  "enabled": true,
  "conditions": [
    { "text_contains": ["XX% Marge", "XX%"], "extract": "XX", "check": "XX > 30", "multi_match": "any" },
    "OR",
    { "text_contains": ["Profit: XX€", "XX€"], "extract": "XX", "check": "XX > 50", "multi_match": "any" }
  ]
}

Komplette Datei mit mehreren Regeln

{
  "enabled": true,
  "rules": [
    {
      "name": "Hohe Marge (>30%)",
      "enabled": true,
      "conditions": [
        { "text_contains": ["Marge: XX%", "XX%"], "extract": "XX", "check": "XX > 30", "multi_match": "any" }
      ]
    },
    {
      "name": "Kein Sold Out",
      "enabled": true,
      "action": "block",
      "conditions": [ { "text_contains": ["sold out", "ausverkauft"] } ]
    }
  ]
}
Tipps: Der Text, der geprüft wird, umfasst die Nachricht inkl. Embed-Inhalten (Titel, Felder, Footer). Achte auf die richtige Schreibweise von %, € usw. im text_contains. Regeln mit "enabled": false werden ignoriert. Nach dem Speichern greift alles automatisch — teste mit einer echten Nachricht und schau ins Log („Gefiltert (Smart-Filter): …" erklärt, warum etwas nicht durchkam).

8. Autostart, Tray & Fenster

9. Wichtige Hinweise

Discord-Token = Vollzugriff. Behandle ihn wie ein Passwort und gib ihn niemals weiter. Die Nutzung eines User-Tokens (Selfbot) erfolgt auf eigenes Risiko und kann gegen die Discord-Nutzungs­bedingungen verstoßen.

Lädt der Bot nicht: prüfe Seriennummer (Lizenz), Discord-Token und ob mindestens ein Kanal/eine Kategorie eingetragen ist. Das Log im Hauptfenster zeigt die Ursache. Bei Bedarf steht die ausführliche Fehlerausgabe zusätzlich in log.txt neben der .exe.