Was ist transactionSubscribe?
Die WebSocket-Methode transactionSubscribe, eine Helius-Erweiterung der standardmäßigen Solana WebSocket API, ermöglicht Transaktionsereignisse in Echtzeit.
Gib zur Verwendung ein TransactionSubscribeFilter an. Optional kannst du zur weiteren Anpassung TransactionSubscribeOptions hinzufügen.
transactionSubscribe ist über dieselben einheitlichen wss://mainnet.helius-rpc.com- und wss://devnet.helius-rpc.com-endpoints wie die standardmäßigen Solana-Abonnementmethoden verfügbar.
TransactionSubscribeFilter
vote: boolesches Flag zum Ein- oder Ausschließen von Abstimmungstransaktionenfailed: boolesches Flag zum Ein- oder Ausschließen fehlgeschlagener Transaktionensignature: filtert Updates anhand ihrer Signatur nach einer bestimmten TransaktionaccountInclude: Liste der Konten, für die du Transaktionsupdates erhalten möchtest. Nur eines der Konten muss in den Transaktionsupdates enthalten sein, z. B. Konto 1 ODER 2.accountExclude: Liste der Konten, die du von Transaktionsupdates ausschließen möchtestaccountRequired: Transaktionen müssen alle angegebenen Konten enthalten, damit sie in Updates aufgenommen werden, z. B. Konto 1 UND 2tokenAccounts: optionale Erweiterung für Associated Token Accounts (ATA) (balanceChanged,allodernone). Weitere Informationen findest du unten unter Wallet einschließlich token-Übertragungen überwachen.
TransactionSubscribeOptions (optional)
commitment: commitment für den Datenabruf (processed,confirmedoderfinalized)encoding: Kodierungsformat der zurückgegebenen Daten (base58,base64oderjsonParsed)transactionDetails: Detailgrad der zurückgegebenen Daten (full,signatures,accountsundnone)showRewards: boolesches Flag, das angibt, ob die Updates Belohnungsdaten enthalten sollenmaxSupportedTransactionVersion: gibt die höchste Transaktionsversion an, für die du Updates erhalten möchtest. Setze den Wert auf1, um Legacy-, v0- und v1-Transaktionen zu empfangen. Siehe Unterstützung für Transaction v1.
maxSupportedTransactionVersion ist erforderlich, um die Konten und vollständigen Details einer bestimmten Transaktion zurückzugeben, also transactionDetails: "accounts" | "full".Beispiel für Transaction Subscribe
In diesem Beispiel abonnieren wir Transaktionen, die das Raydium-Konto675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8 enthalten.
Wenn eine Transaktion stattfindet, die das Konto 675k...1Mp8 im accountKeys der Transaktion enthält, erhalten wir eine WSS-Benachrichtigung.
Entsprechend den Abonnementoptionen wird die Transaktionsbenachrichtigung mit dem commitment processed, der Kodierung jsonParsed und den Transaktionsdetails full gesendet. Sie zeigt außerdem Belohnungen an.
Beispielbenachrichtigung
Wallet einschließlich token-Übertragungen überwachen
Wenn du eine Wallet mitaccountInclude überwachst, werden nur Transaktionen gefunden, bei denen der öffentliche Schlüssel der Wallet direkt in den Kontoschlüsseln erscheint. Ein häufiger Fall wird dabei übersehen: Sendet jemand einen SPL token wie USDC an die Wallet, betrifft die Übertragung den Associated Token Account (ATA) der Wallet und nicht ihren öffentlichen Schlüssel. Ein einfaches accountInclude: [wallet]-Abonnement erkennt sie deshalb nicht.
Setze das Feld tokenAccounts, um die Übereinstimmung zu erweitern. Das überwachte Konto stimmt dann auch mit Transaktionen überein, bei denen es ein token-Guthaben besitzt:
balanceChanged: Übereinstimmung, wenn die Wallet ein token-Guthaben besitzt, dessen Betrag sich in der Transaktion geändert hat oder dessen token account geschlossen wurde. Verwende diese Option für „Benachrichtige mich, wenn tatsächlich Geld bewegt wurde“. Dies ist die präzisere Option mit geringerem Volumen und die häufigste Wahl.all: Übereinstimmung mit jeder Transaktion, die auf ein token-Guthaben im Besitz der Wallet verweist, auch wenn es unverändert bleibt. Höheres Volumen.none: keine Erweiterung. Entspricht dem Weglassen des Felds und ist die Standardeinstellung.
-32602 zurück. Abonnements ohne tokenAccounts verhalten sich genauso wie zuvor. Eine vollständige Übersicht über die Funktionsweise der ATA-Erweiterung findest du unter token account (ATA) über WebSocket filtern.
Neue Jupiter-DCAs überwachen
Jupiter DCA, auch Dollar Cost Averaging genannt, ermöglicht wiederkehrende Trades auf Solana. Da diese geplanten Kauf- und Verkaufsaufträge on-chain aufgezeichnet werden, können Trader mit der MethodetransactionSubscribe und getAsset auf neue Aufträge warten.
Beispielbenachrichtigung

Neue pump.fun-token überwachen
Beispielbenachrichtigung

Abonnements verwalten
Abonnement-IDs
WenntransactionSubscribe erfolgreich ist, gibt der Server im Feld result eine Abonnement-ID zurück. Dieselbe Nummer erscheint in params.subscription bei jeder Benachrichtigung dieses Abonnements:
Abonnement beenden
Um keine Benachrichtigungen mehr zu erhalten, rufetransactionUnsubscribe mit der Abonnement-ID auf. Jeder Aufruf von transactionSubscribe über dieselbe Verbindung erstellt ein separates Abonnement mit eigener ID. Beende daher das vorhandene Abonnement, bevor du es erneut erstellst, damit du keine doppelten Benachrichtigungen erhältst.
transactionUnsubscribe können noch einige bereits übertragene Nachrichten eintreffen. Das ist erwartetes Verhalten.