Skip to main content
Panduan ini membuat filter nyata langkah demi langkah: memantau swap Jupiter milik sebuah dompet, menggunakan penemuan program agar filter sudah benar sebelum Anda membuka langganan.
1

Look Up the Program

Nama instruksi yang ditebak adalah penyebab paling umum filter tidak menemukan kecocokan tanpa memberikan indikasi apa pun. Panggil describeProgram terlebih dahulu untuk mendapatkan nama persis yang dibandingkan oleh pencocok. Saat ini, metode tersebut hanya tersedia di wss://fs-beta.helius-rpc.com/?api-key=<API_KEY>, jadi kirimkan ke sana, bukan melalui koneksi langganan Anda.
Request
Response
Utamakan alamat program daripada nama katalog — lebih dari satu entri katalog dapat memiliki nama yang sama, dan pencarian berdasarkan nama dapat mengarah ke versi program yang lebih lama. route dan shared_accounts_route adalah dua instruksi yang mencakup sebagian besar swap Jupiter v6, jadi gunakan keduanya dalam filter.
2

Build the Filter

Gabungkan ID program, nama instruksi dari langkah sebelumnya, dan dompet yang Anda pantau. Bidang digabungkan dengan AND, sehingga filter ini mencocokkan instruksi rute yang menyentuh akun SOL milik dompet tersebut:
accounts.roles menetapkan user_transfer_authority ke posisi persis dompet dalam instruksi, sehingga lebih ketat daripada hanya menggunakan accounts.include: pencocokan alamat biasa juga akan menangkap dompet yang muncul sebagai akun tidak terkait di bagian lain instruksi. Nama peran harus cocok persis, jadi nama tersebut disalin dari daftar roles milik describeProgram, bukan ditebak. Biarkan includeCpi: true (nilai default) — perpindahan token aktual dalam swap terjadi di instruksi bagian dalam.
3

Subscribe and Handle Notifications

Buka langganan dengan filter tersebut, lalu baca argumen terdekode dari setiap instruksi yang cocok:
matchedIndexes hanya menunjuk ke instruksi yang cocok dengan filter Anda — abaikan semua instruksi lain dalam transaksi. Pastikan decoded tersedia sebelum membacanya: instruksi rute dari versi program yang belum diindeks akan diterima dengan decoded: null dan bidang mentah sebagai gantinya.

Langkah Berikutnya

Filter Fields Reference

Semua bidang filter, opsi, dan batasan.

Handling Reconnects

Pertahankan langganan ini agar tetap aktif saat koneksi terputus dan selama penerapan.