BSC Yönetim API'leri
Bu kılavuz, öneri oluşturma, oy verme ve bunları uygulama gibi BSC için yönetim işlemlerine genel bir bakış sunmaktadır.
Yönetim Sözleşmeleri
BSC yönetimi, BSC ekosisteminde merkeziyetsiz karar verme süreçlerini kolaylaştırarak iki ana akıllı sözleşme kullanmaktadır: GovToken
yönetim token yönetimi için ve Governor
öneri yönetimi ve oy verme için.
GovToken
: Yönetim tokenlarını yönetir, sahiplerin yönetim kararlarına katılmalarını sağlar. Stake edilen varlıklarla token bakiyelerini senkronize etmeyi ve oy verme haklarını devretmeyi destekler. (Adres:0x0000000000000000000000000000000000002005
)Governor
: Yönetim önerilerinin oluşturulmasını, oylamayı ve yürütülmesini yönetir. Ayrıca yalnızca uygun katılımcıların değişiklik önermesine ve oy vermesine izin verir. (Adres:0x0000000000000000000000000000000000002004
)
Öneri Oluşturma
Bir öneri oluştururken dikkat edilmesi gereken en önemli noktalar; doğru adreslerin ve değerlerin belirlenmesidir.
Bir öneri oluşturmak için Governor
'ın propose
fonksiyonunu aşağıdaki parametrelerle çağırmanız gerekir:
function propose(address[] memory targets, uint256[] memory values, bytes[] memory calldatas, string memory
description) public returns (uint256 proposalId)
targets
: Önerinin etkileşimde bulunacağı sözleşme adresleri.values
: Her çağrı için BNB değerleri (wei cinsinden).calldatas
: Kodlanmış fonksiyon çağrıları.description
: Önerinin açıklaması.
Oy Kullanma
Oy vermek için Governor
'ın castVote
fonksiyonunu aşağıdaki parametrelerle çağırmanız gerekir:
function castVote(uint256 proposalId, uint8 support, string memory reason) public returns (uint256)
proposalId
: Önerinin kimliği.support
: Oy seçimi (örneğin, evet, hayır, çekimser).reason
: (İsteğe bağlı) Oyunuzu vermenizin nedeni.
Öneri Durumunu Kontrol Etme
Bir önerinin durumunu almak için Governor
'ın state
fonksiyonunu aşağıdaki parametrelerle çağırmanız gerekir:
function state(uint256 proposalId) public view returns (ProposalState)
proposalId
: Önerinin kimliği.
Öneriyi Kuyruğa Alma
Öneriyi yürütme için planlamak üzere Governor
'ın queue
fonksiyonunu aşağıdaki parametrelerle çağırmanız gerekir:
function queue(address[] memory targets, uint256[] memory values, bytes[] memory calldatas, bytes32 descriptionHash)
public returns (uint256 proposalId)
targets
: Önerinin etkileşimde bulunacağı sözleşme adresleri.values
: Her çağrı için Ether değerleri (wei cinsinden).calldatas
: Kodlanmış fonksiyon çağrıları.descriptionHash
: Önerinin açıklamasının hash'i.
Öneriyi Yürütme
Zaman kilidi gecikmesinden sonra değişiklikleri uygulamak için Governor
'ın execute
fonksiyonunu aşağıdaki parametrelerle çağırmanız gerekir:
function execute(address[] memory targets, uint256[] memory values, bytes[] memory calldatas, bytes32 descriptionHash)
public payable returns (uint256)
targets
: Önerinin etkileşimde bulunacağı sözleşme adresleri.values
: Her çağrı için Ether değerleri (wei cinsinden).calldatas
: Kodlanmış fonksiyon çağrıları.descriptionHash
: Önerinin açıklamasının hash'i.
Oy Delegasyonu
Oy verme gücünü devretmek, bireylerin yönetim süreçlerine etkilerinin korunmasına yardımcı olur.
Oy verme gücünü birine devretmek için GovToken
'ın delegateVote
fonksiyonunu aşağıdaki parametrelerle çağırmanız gerekir:
- Delegatör adresi: Oy verme gücünü başka bir adrese devreden delegatörün adresi.
- Delegeli adresi: Delegatörden oy verme gücünü alan ve onların adına yönetime katılan delegelinin adresi.
function delegateVote(address delegator, address delegatee) external
delegator
: Oy verme gücünü başka bir adrese devreden delegatörün adresi.delegatee
: Delegatörden oy verme gücünü alan delegelinin adresi.
Sözleşme ABI
Daha fazla bilgi için,
Governor
'ın tam arayüzleri için lütfen ABI dosyasına başvurun.
— BSC Yönetim Ekibi
GovToken
'ın tam arayüzleri için lütfen ABI dosyasına başvurun.
— BSC Yönetim Ekibi