Skip to main content
evoX SDK belgelerinde geçen temel terimler. Bu kavramlar hem uygulama hem de plugin protokolünde tutarlı kullanılır.

Temel kavramlar

  • Action: Plugin’in sağladığı, bir tuşa veya dial’a atanabilen davranım birimi. Manifestte core.* / integration.* / plugin.<pluginId>.<actionId> biçiminde tanımlanır.
  • Binding: Bir action’ın belirli bir tuş/dial üzerindeki somut örneği. Kullanıcı bir action’ı bir tuşa atadığında bir binding oluşur.
  • bindingInstanceId: Tek bir binding örneğinin context kimliği. Görsel/ayar çağrıları bu context ile yapılır ve yalnız o örnek için geçerlidir; action.willDisappear sonrası geçersizleşir.
  • Context: Bir eventin ait olduğu binding bilgisi; actionId ve bindingInstanceId taşır.
  • Provider: Bir binding’in hangi kaynaktan geldiğini belirten stabil kimlik ({kind:'plugin', pluginId, actionId}). Profil kalıcılığında title/path yerine provider authoritative’dir.

Güvenlik ve yetki

  • Capability: Bir plugin’in isteyebileceği host-kontrollü yetki (ör. key.display, network.fetch, secret.manage). Declared ve granted olmayan çağrı CAPABILITY_DENIED döner. Bkz. Capability API’leri.
  • Güven katmanı (trust tier): Plugin’in çalışma ve güven sınırı — T0 (data-only .evoxpack), T1 (trusted local Node), T2 (default-deny sandbox Worker), T3 (özel review). Bkz. Güven katmanları.
  • Host: Plugin session’ını kuran, kimlik/capability/limit atayan ve tüm RPC’leri doğrulayan güvenilir taraf. host.hello ile handshake yapar.
  • Credential referansı: Ham token yerine kullanılan opak referans ({kind:'secret',name} veya {kind:'oauth',provider}). Host değeri kendi encrypted vault’undan çözer; raw token plugin’e dönmez.

Paket ve veri

  • .evoxpack: evoX’in canonical yerel/Market paket formatı.
  • action_pack: Yalnız data taşıyan paket türü; executable JS/native/script içermez.
  • Manifest: Plugin’i tanımlayan (kimlik, runtime, action’lar, capability istekleri) manifest.json. Bkz. Plugin manifesti.
  • Settings: Bir binding’e (veya plugin geneline) ait kalıcı ayar verisi. settings.get/settings.patch ile yönetilir; değişim action.settingsChanged ile yayılır.
  • Storage: Plugin’e özel, bounded kotalı anahtar-değer deposu (storage.private capability).

Uygulama ve cihaz

  • Profil: Kullanıcının tuş/sayfa düzenini tutan canonical EvoxProfile manifesti. Assignment gerçek profile persist olur.
  • Sayfa (page): Bir profil içindeki tuş düzeni katmanı.
  • Cihaz (device): Bağlı fiziksel donanım. device.connected/device.disconnected eventleriyle bildirilir.
  • Tuş / dial (knob): Cihaz üzerindeki basılabilir tuş ve döndürülebilir/basılabilir dial kontrolü; action.keyDown/keyUp ve action.dialDown/dialUp/dialRotate eventlerini üretir.
  • Market: Yalnız onaylı evoX-native ürünleri gösteren katalog. Public web yükleme/moderasyon authority taşımaz; API server-authoritative kalır.

İlgili sayfalar