Skip to main content
Diese Anleitung erstellt einen realen Filter Schritt für Schritt: Beobachte Jupiter Swaps einer Wallet, indem du Programmentdeckung verwendest, sodass der Filter korrekt ist, bevor du ein Abonnement öffnest.
1

Schau dir das Programm an

Vermutete Anweisungsnamen sind die häufigste Ursache dafür, dass ein Filter stillschweigend nichts trifft. Rufe describeProgram zuerst auf, um die genauen Namen zu erhalten, gegen die der Matcher vergleicht.
Request
Response
Bevorzuge die Programm-Adresse gegenüber einem Katalognamen — mehr als ein Katalogeintrag kann einen Namen teilen, und eine Namenssuche kann zu einer älteren Version des Programms auflösen. route und shared_accounts_route sind die beiden Anweisungen, die die meisten Jupiter v6 Swaps abdecken, daher wirst du darauf filtern.
2

Erstelle den Filter

Kombiniere die Programm-ID, die Anweisungsnamen aus dem vorherigen Schritt und die Wallet, die du beobachtest. Felder werden mit UND kombiniert, sodass dies Routenanweisungen entspricht, die das SOL-Konto der Wallet berühren:
accounts.roles fixiert user_transfer_authority auf die genaue Position der Wallet in der Anweisung, was strenger ist als accounts.include allein: eine einfache Adressübereinstimmung würde auch die Wallet als ein nicht zugehöriges Konto an anderer Stelle in der Anweisung erfassen. Rollennamen stimmen genau überein, daher werden sie aus describeProgram’s roles-Liste kopiert, nicht geraten. Lass includeCpi: true (die Standardeinstellung) — die tatsächlichen Token-Bewegungen eines Swaps erfolgen in inneren Anweisungen.
3

Abonniere und bearbeite Benachrichtigungen

Öffne das Abonnement mit dem Filter und lese dann die dekodierten Argumente jeder übereinstimmenden Anweisung:
matchedIndexes zeigt nur auf die Anweisungen, die dein Filter getroffen hat — überspringe alles andere in der Transaktion. Überprüfe, dass decoded vorhanden ist, bevor du es liest: Eine Routenanweisung von einer nicht indexierten Programmversion kommt stattdessen mit decoded: null und rohen Feldern an.

Nächste Schritte

Filterfeld-Referenz

Alle Filterfelder, Optionen und Grenzen.

Umgang mit Wiederverbindungen

Halte dieses Abonnement über Trennungen und Bereitstellungen hinweg am Leben.