LaserStream WebSocketを使用する
LaserStream WebSocketは、シンプルなWebSocket統合を提供し、すべてのHeliusプランで利用できるため、開発者にとって便利な選択肢です。この例ではSolanaのlogsSubscribeメソッドを使用しているため、ログメッセージのみを受信します。
仕組み
LaserStream WebSocketエンドポイントに接続し、Pump AMMプログラムに言及するログを購読し、受信したログデータを処理します。 以下の例には指数バックオフを伴う自動再接続ロジックが含まれています。要件
- Node.js ≥ 18(v20でテスト済み)
- サンプルを
ts‑nodeで実行する場合はTypeScript ≥ 5 - 任意のHeliusプラン – すべてのプラン階層で機能します
- APIキーを保存する
HELIUS_API_KEYという名前の環境変数
実装
1
依存関係をインストール
2
WebSocketクライアントを作成
次のコードを含む
standard-ws-pump.tsという名前のファイルを作成します。3
環境変数を設定
Helius APIキーを環境変数として追加します:
your-helius-api-keyをダッシュボードからの実際のHelius APIキーに置き換えます。APIキーがない場合は、サインアップするか、エージェントにHelius CLIでプログラム的に作成させてください。4
アプリケーションを実行
Pump AMMデータのストリームを開始するスクリプトを実行します:Pump AMMプログラムに言及するログメッセージを受け取ります。完全なトランザクションを取得するには、ログエントリからの署名で
getTransactionを呼び出します。主な利点
- ユニバーサルアクセス - 無料プランを含むすべてのHeliusプランで利用可能
- 軽量 - 完全なトランザクションではなくログのみがストリームされるためデータ転送が最小限
- 実装が簡単 - 標準のSolana RPC WebSocketプロトコルを使用
- 低い参入障壁 - プロトタイピングと初期モニタリングに最適
完全なトランザクション詳細の取得
標準WebSocketはログメッセージのみを提供するため、完全なトランザクションデータを取得するには追加のステップが必要です:一般的な問題と解決策
ログが受信されない
ログが受信されない
Pump AMMプログラムアドレスが正しいことを確認し、プログラムにアクティビティがあることを確認してください。
接続が切れる
接続が切れる
より堅牢な再接続ロジックを実装するか、ネットワークの安定性を確認してください。