接続する前にストリームの範囲を決定する
フィルターが設定されていないpreconfSubscribe は、すべてのトランザクションを配信し、各トランザクションに 10 クレジットがかかります。サーバー側でフィルタリングし、実際に取引するトランザクションだけに料金を抑えてください。対象となるスロットで 1 件以上のメッセージを受信すると、各サブスクリプションは個別に課金されます。そのため、可能であればアカウントフィルターを 1 つのサブスクリプションにまとめてください。regionInclude を使用して、必要なリージョンのみに課金対象を限定してください。BAM が不要な場合は includeSource: ["helius"] を設定し、Helius Dashboardでクレジットを監視してください。
failed: falseは、すでに逆転が知られているトランザクションを除外します。競争する理由がありません。regionIncludeは、インフラに最も近い地域にストリームを固定します。クロスリージョンのホップがスタートを消費しないようにします。accountIncludeは、ターゲットに関連する任意のtxと一致します。ウォレット、AMMプール、プログラムなどです。Heliusはアドレス検索テーブルをサーバー側で解決するため、アカウントがALT経由で読み込まれてもフィルターが一致します。
接続、購読、デコード
preconfSubscribeはゲートキーパーエンドポイント(wss://beta.helius-rpc.com)から提供され、通知はバイナリフレームとして送信され、JSONではありません。
各フレームは固定の18バイトのプレフィックスに続き、bincodeでシリアライズされたトランザクションが続きます:
listener.js
Sender Maxで行動する
事前確認は、反応が最初に着地する場合にのみ価値があります。 Sender Maxを介して反応を送信します。0.001 SOLのチップは優先チップバッファに入り、すべての高速経路を通ります:着地を確認しギャップを予測する
事前確認は早期の確認です。トランザクションはまだ着地しておらず、失敗またはドロップされる可能性があるため、次の2つのルールが適用されます。- 標準のコミットメントチェック(
getSignatureStatuses、またはprocessedコミットメントストリーム経由)で確認し、観測されたトランザクションまたは反応を最終的なものとして扱う前に確認してください。 - ギャップを予測します。カバレッジはHeliusに転送されるステークのシェアとともにスケールするため、いくつかのスロットではメッセージが生成されません。それは期待される動作であり、切断された接続とは異なります。キープアライブのpingがそれを区別します。接続が閉じたら再購読してください。
関連ガイド
preconfSubscribe APIリファレンス
フィルターの完全なセマンティクス、地域コード、バイナリペイロードのレイアウト
事前処理されたトランザクションでの取引
すべての有料プランで、メッセージごとに0.1クレジットの事前実行カバレッジ