Ana içeriğe geç

Event Handler Kullanımı#


SolusVM 2'de, belirli olaylar gerçekleştiğinde belirli eylemlerin otomatik olarak gerçekleştirilmesi için event handler kullanabilirsiniz. Şu anda, webhook'lar desteklenen tek event handler türüdür. Diğer event handler türleri gelecekte eklenebilir.

Bir event handler oluştururken, IP adresi eklemek veya bir sunucu kaldırmak gibi desteklenen olaylar listesinden bir veya daha fazla olay seçebilirsiniz. Yalnızca desteklenen olaylar için event handler oluşturabilirsiniz. Desteklenen bir olay gerçekleştiğinde, yönetici veya müşteri tarafından başlatılsın fark etmeksizin, bu olayla ilişkilendirilen tüm event handlerleri tetiklenir.

Webhook Oluşturma#

Bir webhook, kullanıcı tanımlı bir HTTP/HTTPS geri çağrısıdır. Bu tür bir event handler tetiklendiğinde, webhook'u yürütür ve ardından SolusVM 2, webhook URL'sine bir POST isteği gönderir. SolusVM 2, beş yönlendirmeyi takip eder ve web sitesinin SSL/TLS sertifikasının geçerliliğini kontrol etmez (varsa). Önceden belirlenmiş bir dizi parametre her zaman URL aracılığıyla iletilir (örneğin, silinen sunucunun kimliği veya eklenen IP adresi). Bir webhook, kullanıcı tarafından tanımlanan ek parametreleri de iletmek üzere yapılandırılabilir.

Bir webhook tetiklendiğinde, SolusVM 2'de bir görev oluşturulur. Betik, 4хх veya 5хх HTTP durum kodu döndürürse görev "Başarısız" durumuna sahip olur.

Bir webhook oluşturmak için:

  1. SolusVM 2'ye giriş yapın.
  2. Ayarlar > Olay İşleyicileri sayfasına gidin ve ardından Webhook Ekle seçeneğini tıklayın.
  3. Webhook'a benzersiz bir ad verin.
  4. Webhook URL'sini belirtin. Webhook tetiklendiğinde bu URL'ye bir istek gönderilecektir.
  5. Açılır menüden bir veya daha fazla olay seçin. Desteklenen bir olay gerçekleştiğinde webhook tetiklenecektir.
  6. (İsteğe bağlı) Webhook URL'si üzerinden iletilmesini istediğiniz ek istek parametrelerini belirtin. Parametreler JSON formatında olmalıdır.
  7. (İsteğe bağlı) Webhook'un etkin hale gelmesini istiyorsanız "Etkin" onay kutusunu işaretleyin. Webhook'u daha sonra etkinleştirebilirsiniz.
  8. Kaydet düğmesine tıklayın.

Webhook oluşturulmuştur. Ayarlar > Olay İşleyicileri sayfasında bulabilirsiniz. Webhook'u oluşturma sırasında etkinleştirdiyseniz, bir sonraki desteklenen olay gerçekleştiğinde webhook tetiklenecek ve webhook URL'sine bir istek gönderilecektir.

Webhook'ları Düzenleme, Devre Dışı Bırakma ve Kaldırma#

Bir webhook'u düzenlemek için:

  1. SolusVM 2'ye giriş yapın.
  2. Ayarlar > Olay İşleyicileri sayfasına gidin.
  3. Düzenlemek istediğiniz webhook'a karşılık gelen simgesine tıklayın.
  4. İstenilen değişiklikleri yapın ve ardından Kaydet düğmesine tıklayın.

Değişiklikler artık etkin durumdadır.

Bir webhook'u etkinleştirme veya devre dışı bırakma:

  1. SolusVM 2'ye giriş yapın.
  2. Ayarlar > Olay İşleyicileri sayfasına gidin.
  3. Etkinleştirmek veya devre dışı bırakmak istediğiniz webhook'a karşılık gelen geçiş düğmesine tıklayarak "Etkin" (mavi) veya "Devre Dışı" (gri) görüntülenmesini sağlayın.

Webhook artık etkin durumda (veya devre dışı) olacaktır.

Bir webhook'u silme:

  1. SolusVM 2'ye giriş yapın.
  2. Ayarlar > Olay İşleyicileri sayfasına gidin.
  3. Silmek istediğiniz webhook'a karşılık gelen simgesine tıklayın ve ardından Sil düğmesine tıklayın.

Webhook silinir.

Webhook Tarafından İletilen Parametrelerin Listesi#

Bir webhook tetiklendiğinde, aşağıdaki parametreler URL aracılığıyla iletilir:

  • crId
  • crHostname
  • crStatus (commissioning, configure_network, active, failed, unavailable)
  • crLicenseType (micro, mini, standard)
  • serverId
  • serverIps (örneğin, ["10.0.0.1","10.0.0.2"])
  • serverHostname
  • serverUuid
  • serverStatus (not exist, started, stopped, unavailable)
  • userId
  • billingUserId
  • userEmail
  • userStatus (active, locked, suspended)
  • userAllowedIps (örneğin, ["10.0.0.1","10.0.0.2"])

Webhook Örneği#

WHMCS'de bir işlem kaynağından diğerine taşınan sunucuların otomatik olarak IP adreslerini güncelleyen bir webhook oluşturabilirsiniz.

Webhook'u oluşturmak için:

  1. SSH aracılığıyla WHMCS sunucusuna giriş yapın.
  2. SolusVM 2 WHMCS eklentisiyle birlikte gönderilen hook_example.php dosyasını bulun. Dosya, modules/servers/solusvm2vps/ dizininde olmalıdır.
  3. Dosyanın bir kopyasını yapın ve ardından kopyayı düzenlemeye başlayın.
  4. 6. satırdaki exit(); komutunu kaldırın.
  5. $securitySecrets değişkenine gizli bilgilerinizi ekleyin.
  6. $connectionIPs değişkenine SolusVM 2 yönetim düğümünün IP adreslerini ekleyin.
  7. Değişiklikleri kaydedin.
  8. SolusVM 2'ye giriş yapın.
  9. Ayarlar > Olay İşleyicileri sayfasına gidin ve ardından Webhook Ekle seçeneğini tıklayın.
  10. Webhook'a benzersiz bir ad verin.
  11. Düzenlenmiş betiğin URL'sini belirtin.
  12. Açılır menüden "IP ekle veya kaldır" seçeneğini seçin.
  13. Bu işlem sırasında betiğe eklediğiniz gizli bilgileri belirtin:

    {
     "secret": "<gizli bilginizi buraya ekleyin>"
    }
    
  14. "Etkin" onay kutusunu işaretleyin ve ardından Kaydet düğmesine tıklayın.

Artık bir sunucu taşındığında, SolusVM 2'de sunucunun IP adresini WHMCS'de güncellemek için bir görev oluşturulacaktır.