# Hazır çözümler

> Uygulama şablonunun içeriği, hangi nesne türlerini taşıyabildiği ve dışa aktarma, içe aktarma, yükleme, kaldırma ve silme işlemlerinin etkisi.

Kaynak: https://proxus.io/tr/docs/organize/app-templates

Uygulama şablonu, yapılandırılmış nesnelerden oluşan bir pakettir. Örneğin bir cihaz profili, bu profili kullanan
cihazlar, cihazları izleyen alarm kuralları ve bir pano aynı şablonda yer alabilir. Şablon tek bir dosya olarak
başka bir merkez sunucuya taşınır ve orada yüklenir. Şablonlar **Varlık yapısı > Hazır çözümler** menüsündedir.

*Ekran görüntüsü: Bir şablonun seçili olduğu Hazır çözümler listesi; araç çubuğunda Yeni, Şablonu dışa aktar, Şablonu içe aktar, Yükle ve Kaldır eylemleri*

1. **Yeni**, yeni bir şablon oluşturur.
2. **Şablonu dışa aktar**, seçili şablonu `.json` dosyası olarak indirir.
3. **Şablonu içe aktar**, bir şablon dosyasını okur ve şablonu yüklemeden listeye ekler.
4. **Yükle**, şablondaki nesneleri bu merkez sunucuda oluşturur.
5. **Kaldır**, yükleme sırasında oluşturulan nesneleri kaldırır.

## Şablonun içeriği

| Alan | Anlamı |
| --- | --- |
| **ID** | Şablon oluşturulurken atanan kısa kod. Yüklenen nesnelerin adına eklenir. |
| **Ad**, **Açıklama**, **Geliştirici**, **Kullanım talimatları**, **Görüntü** | Şablonun ne işe yaradığı, kimin hazırladığı ve nasıl kullanılacağı. |
| **Oluşturulma tarihi** | Şablonun oluşturulduğu tarih. |
| **Kurulu**, **Kurulum tarihi**, **Kaldırma tarihi** | Şablondaki nesnelerin bu merkez sunucuda olup olmadığı, ne zaman eklendiği ya da kaldırıldığı. |
| **Nesneler** | Şablondaki nesneler. Her nesnenin türü ve başlığı görünür. |

Nesne, şablona eklendiği andaki ayarlarının bir kopyası olarak saklanır. Asıl nesnede sonradan yaptığınız
değişiklikler şablona yansımaz. Değişikliğin şablona geçmesi için nesneyi şablondan çıkarın ve yeniden ekleyin.

### Nesne türleri

Şablona nesne eklerken **Tür** alanında şablonun taşıyabileceği nesne türleri listelenir: **Pano**, **Cihaz**,
**Cihaz profili**, **Fonksiyon**, **Bildirim kanalı**, **Veri hedefi**, **Rapor**, **Rol**, **Alarm kuralı** ve
**Kullanıcı**. **Nesneler** listesinde her nesnenin türü, başlığının yanında görünür.

Şablona bir cihaz eklediğinizde cihazın profili de veri noktalarıyla birlikte eklenir, çünkü cihaz profili olmadan
çalışmaz. Cihazın bağlı olduğu Edge Gateway ve veri hedefleri ise şablona kopyalanmaz. Bunlar şablonun yükleneceği
merkez sunucuya aittir ve orada tanımlı olmaları gerekir.

## Yükleme

**Yükle** komutu önce **Bu şablon yüklensin mi?** diye sorar. Onay verdiğinizde şablondaki her nesnenin yeni bir
kopyası oluşturulur. Kopyalar birbirine, asıl nesneler nasıl bağlıysa öyle bağlanır. Şablondaki asıl nesneler
kullanılmaz.

- Kopyanın başvurduğu, ancak şablonda bulunmayan nesneler (Edge Gateway'ler, kural eylemleri, veri hedefleri)
  kopyalanmaz. Bu merkez sunucuda aynı nesneler varsa kopya onlara bağlanır.
- Kopyalanan her cihaz kendi cihaz erişim anahtarını alır.
- Kopyalanan nesnenin adına şablonun adı ve **ID** değeri eklenir, boşlukların yerine alt çizgi konur. Örneğin ID'si
  `1a2b3c4d` olan `DOCS_Temperature alarm` şablonundaki `DOCS_Temperature above 60 °C` alarm kuralının adı
  `DOCS_Temperature_above_60_°C_DOCS_Temperature_alarm_1a2b3c4d` olur. Böylece kopyalar, sunucuda zaten bulunan
  nesnelerle karışmaz.
- Fonksiyonlar da aynı kuralla yeniden adlandırılır ve dağıtılır.
- Kopyalar, etkin olup olmadıkları da dahil tüm ayarlarını korur. Devre dışı bir alarm kuralı devre dışı olarak
  yüklenir.
- Proxus, yüklemeden önce lisansı kontrol eder. Şablon bir türde lisansın izin verdiğinden fazla nesne
  oluşturacaksa hiçbir nesne yüklenmez. Hata iletisi, sınırın kaç nesne aşıldığını gösterir.

Yüklenmiş bir şablon düzenlenemez. Şablonun alanları salt okunur olur.

## Kaldırma ve silme

**Kaldır** komutu **Bu şablon kaldırılsın mı?** diye sorar ve yükleme sırasında oluşturulan kopyaları siler.
Fonksiyonların dağıtımı önce geri alınır. Şablon, bütün nesneleriyle listede kalır ve yeniden yüklenebilir.

> **Uyarı:**
Kaldırma işlemi, yüklenen nesneleri ve yüklemeden sonra bu nesnelerde yaptığınız tüm değişiklikleri siler. Saklamak istediğiniz her şeyi kaldırmadan önce dışa aktarın ya da kopyalayın.

**Sil** komutu **Bu şablon silinirse yüklemesi de kaldırılır. Devam edilsin mi?** diye sorar ve şablonu siler.
Şablon yüklüyse nesneleri de yukarıda anlatıldığı gibi kaldırılır.

## Sonraki adımlar

- [Şablon oluşturun ve dışa aktarın](https://proxus.io/tr/docs/organize/create-an-app-template): nesneleri bir şablonda toplayın ve dosya olarak indirin.
- [Şablonu içe aktarın ve yükleyin](https://proxus.io/tr/docs/organize/install-an-app-template): şablon dosyasını başka bir merkez sunucuya yükleyin.
