Script Editörü
Script’ler projeye bağlı, sunucu tarafında çalışan otomasyon parçalarıdır. Script Editörü, bunları yazdığınız, zamanladığınız ve geliştirme sırasında denediğiniz ekrandır.
Motorun kuralları, sınırları ve ins.* API’si Genel Bakış sayfasındadır.
Alanlar
Section titled “Alanlar”| Alan | Zorunlu | Açıklama |
|---|---|---|
| Name | Evet | Script adı, en çok 100 karakter. Proje içinde benzersiz |
| Description | Hayır | Açıklama, en çok 255 karakter |
| Code | Evet | JavaScript kaynağı, en çok 65.535 karakter |
| Schedule Type | Evet | Ne zaman çalışacağı — aşağıdaki tablo |
| Period | Koşullu | Periodic için, milisaniye. En küçük değer 100 ms |
| Time | Koşullu | Daily için, günün saati |
| Delay | Koşullu | Once için, çalışmadan önce beklenecek süre |
| Log | Evet | Koşumların proje günlüğüne yazılıp yazılmayacağı |
Zamanlama tipleri
Section titled “Zamanlama tipleri”| Tip | Ne zaman çalışır | Gerektirdiği alan |
|---|---|---|
| Periodic | Period aralığında sürekli | Period (≥ 100 ms) |
| Daily | Her gün belirtilen saatte | Time |
| Once | Bir kez, Delay sonunda | Delay |
| None | Kendiliğinden hiç — yalnızca elle çalıştırıldığında | — |
Bir script’i yalnızca başka bir yerden tetiklemek istiyorsanız (ins.executeScript, bir animasyon tıklaması, bir alarm kancası) tipi None bırakın.
Kaydetme ve zamanlama iki ayrı adımdır
Section titled “Kaydetme ve zamanlama iki ayrı adımdır”Bir script’i kaydetmek onu çalışır hale getirmez. Kayıt, tanımı saklar; zamanlama ise onu çalışma sırasına sokar. Aynı şekilde bir script’i durdurmak için tanımını silmeniz gerekmez, zamanlamasını iptal etmeniz yeterlidir.
Bu ayrım, bir script’i tanımı bozulmadan geçici olarak durdurabilmenizi sağlar — bakım sırasında olağan ihtiyaç.
Çalıştırma: iki ayrı yol
Section titled “Çalıştırma: iki ayrı yol”Geliştirirken script’i denemek ile kayıtlı bir script’i elle çalıştırmak aynı şey değildir ve farklı şey döndürürler.
| Editörün içinden çalıştırma | Kayıtlı script’i elle çalıştırma | |
|---|---|---|
| Çalıştırdığı kod | O anda editörde yazan kod — kaydetmeniz gerekmez | Kayıtlı kod |
| Kimin adına çalışır | Sizin adınıza | Space’in otomasyon kimliği adına |
| Ne döndürür | Script’in dönüş değerini | Bir makbuz — koşumun olup olmadığı ve süresi |
Kayıtlı koşumun dönüş değerini vermemesi bilinçli bir tasarımdır: o koşum, zamanlanmış koşumun göreceği satırların aynısını gören otomasyon kimliğiyle çalışır. Ürettiği değeri düğmeye basan kişiye geri vermek, o kişinin göremeyeceği satırları açık edebilir.
Pratikte anlamı şudur: geliştirme ve hata ayıklama editörün içindeki çalıştırma ile yapılır. Kayıtlı bir koşumdan bir değer görmeniz gerekiyorsa değeri bir değişkene yazın ve değişkeni okuyun:
ins.setVariableValue('DEBUG_OUTPUT', { value: hesaplanan });Günlüğe yazma
Section titled “Günlüğe yazma”Log alanı açık olduğunda script’in koşumları ve ins.consoleLog çıktısı proje günlüğüne düşer. Kapalıyken konsol çıktısı hiçbir yere gitmez — geliştirme sırasında bunu açık tutmak, “script çalışıyor ama hiçbir şey görmüyorum” durumunun en yaygın çaresidir.
Onay gerektiren işlemler
Section titled “Onay gerektiren işlemler”Zamanlama, iptal ve elle çalıştırma işlemleri, kurulumun yapılandırmasına bağlı olarak imza veya onay isteyebilir. Böyle bir kurulumda işlem, kim tarafından ve hangi gerekçeyle yapıldığı kaydedilerek denetim izine yazılır.
İlgili
Section titled “İlgili”- Genel Bakış — motor kuralları ve sınırlar
- Server-side API —
ins.*referansı - Expression’lar — değişken, alarm ve animasyon ifadeleri