Kurulum
İstemciyi oluşturma
.build() öğesinin eşzamanlı olduğuna dikkat edin — döndürmeden önce WebSocket bağlantısını kurar. Bağlantı başarısız olursa hatayı hemen alırsınız.
Builder yöntemleri
.url(url) — Birincil WebSocket uç noktası. ORBITFLARE_WS_URL ortam değişkenine düşer.
.urls(&[...]) — Tek çağrıda birincil + yedekler.
.fallback_url(url) / .fallback_urls(&[...]) — Yedek uç noktalar ekler. Yeniden bağlanırken SDK aralarında döner.
.api_key(key) — Lisans anahtarı. ORBITFLARE_LICENSE_KEY ortam değişkenine düşer.
.retry(policy) — Yeniden bağlanma geri çekilmesi. Varsayılan: 100 ms başlangıç, 30 sn üst sınır, 2x çarpan, sonsuz deneme.
.ping_interval_secs(n) — SDK’nın WebSocket Ping çerçevelerini gönderme sıklığı. Varsayılan: 10.
.max_missed_pongs(n) — Bağlantıyı sonlandırmadan önce yanıtsız ping sayısı. Varsayılan: 3.
Kullanılabilir abonelikler
slot_subscribe()
Bir slot işlendiğinde, onaylandığında veya finalize edildiğinde tetiklenir.
slot, parent ve root alanlarına sahip bir JSON değeridir:
account_subscribe(address, commitment)
Belirtilen hesabın verisi değiştiğinde tetiklenir.
logs_subscribe(mentions, commitment)
Verilen adresleri anan işlemler için tetiklenir. Tüm işlemler için boş dilim geçin.
signature_subscribe(signature, commitment)
Bir işlem verilen taahhüt düzeyine ulaştığında bir kez tetiklenir. Az önce gönderdiğiniz bir işlemi onaylamak için kullanışlıdır.
Olayları okuma
Tüm abonelikler birWsSubscription döndürür. Sonraki olay için .next() çağırın:
.next() Option<serde_json::Value> döndürür. None, aboneliğin kapatıldığı anlamına gelir.
Abonelikten çıkma
Birden çok abonelik
Tüm abonelikler tek WebSocket bağlantısında çalışır. SDK bildirimleri doğru aboneliğe dahili olarak yönlendirir.Yeniden bağlanma
Bağlantı koparsa arka plan görevi üstel geri çekilme ile yeniden bağlanır ve her şeyi otomatik yeniden abone eder..next() çağrılarınız çalışmaya devam eder — bağlantı geri gelince olaylar sürer.