App Templates, çalışan bir Proxus konfigürasyonunu paketleyip başka bir Proxus ortamında yeniden kullanmanızı sağlar. Bir template; cihaz modellerini, kuralları, fonksiyonları, outbound channel'ları, notification channel'ları, dashboard'ları, raporları ve güvenlik rollerini ilgisiz runtime verileri kopyalamadan taşıyabilir.
Bu özelliği hat, makine tipi, müşteri projesi, demo kurulumu veya tekrar eden entegrasyon desenlerini standartlaştırmak için kullanın.

Template neleri içerir?
Bir App Template, seçilen root objeleri ve bu root objelerin çalışması için gerekli alt objeleri içerir.
Örneğin:
- Bir Device, bağlı cihaz profilini ve profil tag'lerini beraberinde getirebilir.
- Bir Device Profile, bağlantı parametrelerini ve tag tanımlarını beraberinde getirebilir.
- Bir Rule, yapılandırılmış aksiyonlarını beraberinde getirebilir.
- Bir Function, kurulum sırasında deploy edilebilir.
- Bir Application Role, rol konfigürasyonunu ve UNS konu izinlerini taşıyabilir.
Runtime kayıtları ve ortama ait operasyonel objeler template root'u olarak sunulmaz. Alert'ler, telemetri satırları, loglar, gateway durumu, child parameter satırları ve kullanıcı login kayıtları seçim listesinden bilinçli olarak gizlenir.

Desteklenen root objeler
Kullanıcılar template'e aşağıdaki root obje tiplerini ekleyebilir:
| Root obje | Ne zaman kullanılır |
|---|---|
| Application Role | Rol konfigürasyonunu ve UNS konu izinlerini yeniden kullanmak için. |
| Dashboard Data | Dashboard tanımlarını yeniden kullanmak için. |
| Device | Cihaz konfigürasyonunu destekleyici profil verisiyle birlikte taşımak için. |
| Device Profile | Protokol, bağlantı parametresi ve tag tanımlarını yeniden kullanmak için. |
| Function | Edge function kodunu ve deployment konfigürasyonunu yeniden kullanmak için. |
| Notification Channel | Notification channel konfigürasyonunu yeniden kullanmak için. |
| Report Data | Rapor tanımlarını yeniden kullanmak için. |
| Rule | Otomasyon mantığını ve yapılandırılmış aksiyonlarını yeniden kullanmak için. |
| Outbound Channel | Outbound connector konfigürasyonunu yeniden kullanmak için. |

Template oluşturma
- Templates > App Templates ekranını açın.
- New butonuna tıklayın.
- Name, Description, Developer ve Usage Instructions alanlarını anlaşılır şekilde doldurun.
- Objects bölümünde New butonuna tıklayın.
- Root obje tipini seçin, ardından popup içinden ilgili obje kaydını seçin.
- Pakete dahil edilecek her root obje için aynı işlemi tekrarlayın.
- Template'i kaydedin.

Bir obje seçildiğinde Proxus gerekli bağımlılıkları da çözer. Aynı template içinde zaten bulunan objeler seçim listesinden filtrelenir; bu yüzden aynı kaynak obje ikinci kez seçilemez.
Kullanıcının doğal olarak konfigüre edip yeniden kullanacağı objeyi seçin. Cihaz profili için tek tek parametre veya tag satırlarını değil, Device Profile objesini seçin. Otomasyon için üretilmiş alert'i değil, Rule objesini seçin.
Export ve import
Bir template'i sistemler arasında taşımak için:
- Template'i açın.
- Export Template butonuna tıklayın.
- İndirilen JSON paketini saklayın.
- Hedef Proxus sisteminde Templates > App Templates ekranını açın.
- Import Template butonuna tıklayın ve JSON paketini seçin.
Import edilen template'ler paket kimliğini korur. Aynı paket kimliğine sahip bir template zaten varsa, Proxus ikinci import'u sessizce duplicate oluşturmak yerine engeller.
Install davranışı
Install işlemi, paketteki objelerin hedef ortamda kurulu kopyalarını oluşturur.
Kurulum sırasında:
- İsim çakışması yoksa obje isimleri korunur.
- Mevcut objelerle isim çakışması varsa yalnızca çakışan kurulu kopyaya template'e özel bir suffix eklenir.
- Kurulan cihazlar önce pasif oluşturulur, bağımlılıkları hazırlandıktan sonra aktive edilir.
- Kurulan fonksiyonlar oluşturulduktan sonra deploy edilir.
- Gateway gibi ortama bağlı dış referanslar hedef ortamın konusudur ve kurulumdan sonra kontrol edilmelidir.
Uninstall davranışı
Uninstall, template tarafından oluşturulan kurulu kopyaları kaldırır. Template tanımını silmez ve paketi oluşturmak için kullanılan orijinal kaynak objeleri silmez.
Kaldırma sırasında:
- Template ile oluşturulan fonksiyonlar silinmeden önce undeploy edilir.
- Template ile oluşturulan cihazlar silinmeden önce pasife alınır.
- Template sistemde kalır; daha sonra tekrar install edilebilir.
Operasyonel kurallar
Paket export etmeden önce bu kuralları uygulayın:
- Alert, telemetri, sistem logu veya canlı gateway durumu gibi runtime çıktıları paketlemeyin.
- Anlamlı yeniden kullanılabilir obje parent ise child satırları doğrudan paketlemeyin.
- Yeniden kullanılabilir güvenlik konfigürasyonu için Application Role kullanın; tekil kullanıcıları veya login kayıtlarını paketlemeyin.
- Import sonrasında gateway eşlemeleri ve dış endpoint'ler gibi ortama özel referansları gözden geçirin.
- Bir paketi rollout standardı olarak kullanmadan önce staging ortamında install ve uninstall testlerini yapın.