Ana içeriğe geç

Webhook Kurulumu

Webhook, Rabisu'daki olayları (VPS kuruldu, askıya alındı, kredi eklendi, ürün değişti) modülünüze anında iletir. Polling'e göre çok daha hızlıdır ve gecikmeyi sıfırlar. Cron yine de yedek olarak kalır.

Alıcı URL'i

Modül standalone bir webhook alıcısı içerir:

https://<bayi-kök>/modules/addons/rabisu/webhook.php

Adım 1 — Rabisu'da kaydet

Bu URL'i Rabisu Reseller API'de kaydedin (POST /webhooks). Dönen secret'ı kopyalayın — yalnızca bir kez gösterilir. Önerilen abonelik:

{
"url": "https://<bayi-kök>/modules/addons/rabisu/webhook.php",
"event_types": ["service.*", "product.*", "credit.added"]
}

Adım 2 — Secret'ı modüle gir

Dönen secret'ı Addon Modules > Rabisu > Configure > "Webhook Secret" alanına yapıştırın. Modül gelen isteklerin imzasını bu secret ile doğrular.

İmza doğrulama

Rabisu her istekte X-Rabisu-Signature: sha256=<hmac> başlığı gönderir. Modül bunu ham gövde üzerinden HMAC-SHA256 ile sabit-zamanlı karşılaştırır. Geçersiz imza → 401 (Rabisu bunu kalıcı hata sayar, tekrar denemez).

İşlenen olaylar

OlayModülün yaptığı
service.createdYerel kayda service_id bağlanır, status active olur, ardından IP + root şifresi + hostname WHMCS servisine yazılır
service.suspended/unsuspended/terminatedYerel servis durumu güncellenir
product.price_changedMaliyet güncellenir, zam kararı kuyruğa girer
product.stock_changedÜrün siparişe açılır/kapatılır
product.disabledÜrün gizlenir

Sorun giderme

  • Webhook gelmiyor → Raporlama sekmesindeki senkron sağlık panelinde son webhook zamanı ve imza hata sayacını kontrol edin.
  • İmza hatası artıyorsa → addon'daki Webhook Secret ile Rabisu'daki kayıt secret'ının aynı olduğundan emin olun (gerekirse Rabisu'da yeni endpoint kaydedin).
  • Endpoint art arda 5 kez başarısız olursa Rabisu onu otomatik pasifleştirir; düzeltince Rabisu'da PATCH /webhooks/{id} ile yeniden aktifleştirin.