Her okuma bir anahtar ve bir değerdir; örneğin "temperature": 21.5. Bu sayfa anahtarların ve değerlerin uyması gereken kuralları, kurala uymayan bir anahtara ne olduğunu ve anahtar adlarını nasıl planlayacağınızı listeler.
Anahtar kuralları
| Kural | Ayrıntı |
|---|---|
| Karakterler | Yalnızca A-Z, a-z, 0-9, _, . ve - |
| Uzunluk | 1 ila 64 karakter |
| Büyük/küçük harf | Büyük/küçük harfe duyarlı: Temp ve temp iki ayrı anahtardır |
| Ayrılmış önekler | Bir anahtar _, fw_, current_fw_ veya cfg. ile başlayamaz. Bunlar özniteliklere (yazılım durumu, istenen yapılandırma) ve platforma aittir. |
Bir kuralı çiğneyen anahtar kayıttan çıkarılır; aynı kaydın diğer anahtarları korunur. Düşürme, akışın çalışma kaydında bildirilir (aşağıdaki nedenlere bakın).
Değer kuralları
| Değer | Şu şekilde saklanır | Sınır |
|---|---|---|
| Sonlu bir sayı | Bir sayı (grafiklenir ve toplanır) | |
true / false | Bir bayrak | |
| Metin | Metin | 1.024 karakter |
| Bir JSON nesnesi veya dizisi | JSON | JSON olarak yazıldığında 4 KiB |
null | Hiçbir şey: “okuma yok”, bir hata değil |
Sınırını aşan bir değer yalnızca kendi anahtarının düşmesine neden olur. Bkz. Numbers, text and true/false values.
Bir mesajın boyutu
Bir mesaj, kayıtlara bölündükten sonra en fazla 1.000 anahtar-değer noktası içerebilir. Daha fazlasını içeren mesaj bütünüyle reddedilir (bad_form); hiçbir kısmı saklanmaz. Cihazın profili de yük boyutunu sınırlar (varsayılan 64 KiB). Bkz. Device profiles.
Ham anahtar
JSON olmayan bir gövde (ikili veri, düz metin veya özel bir konuda JSON skaler ya da dizisi), tek bir raw anahtarı altında metin olarak saklanır. raw anahtarı 1.024 karakter sınırından muaftır; bunun yerine profilin Maksimum ham yük (bayt) ayarıyla sınırlanır: varsayılan 4.096 bayt, 256 ila 65.536 bayt arası. İkili gövde base64 kodlu gelir (msg.metadata.encoding değeri base64).
Bir akışta raw anahtarını çözün (örneğin Base64, Hex veya Bytes blokları ya da bir betik ile) ve adlandırılmış anahtarları kaydedin. Bkz. Veri dönüşüm blokları.
Konu önekli anahtarlar
Anahtarlara konu ekle profil ayarıyla, özel bir konudaki veriler <topic>.<key> olarak saklanır:
- Konudaki
/karakteri.olur; anahtar kuralı dışındaki diğer her karakter_olur. - Ayrılmış önek kuralı ve 64 karakter sınırı birleştirilmiş anahtara uygulanır. 64 karakteri aşan birleştirilmiş anahtar düşürülür.
raw,<topic>.rawolur; ham sınırları aynıdır.
Örnek: site1/boiler konusu ve temp anahtarı site1.boiler.temp verir. Önek olmadan, iki konuda gelen aynı anahtar tek bir anahtardır ve son yazılan geçerli olur.
Anahtar sınırı
Planınız, kuruluşunuzun saklayabileceği ayrı anahtar sayısını sınırlayabilir:
| IoT plan katmanı | Ayrı telemetri anahtarları |
|---|---|
| Starter | 250 |
| Growth | 400 |
| Scale | 2,050 |
- Bir anahtar, kaç cihaz gönderirse göndersin bir kez sayılır.
- Bir anahtar, onu gönderen cihazlar silindikten sonra da sayılmaya devam eder: anahtar sözlüğü hiçbir zaman budanmaz.
- Sayı en fazla dakikada bir okunur.
- Sınırı aşan yeni bir anahtar saklanmaz; kaydın diğer anahtarları saklanır. Bir kayıttan hiçbir şey kalmadığında Save telemetry
key_limitbildirir.
Anahtar adlarını sabit tutun ve cihaz türleri arasında paylaşın (temperature, temp_dev42 değil). Bir cihazın kimliğini anahtarda değil, cihazda tutun.
Profil anahtar ayarları
Bir cihaz profilinin Telemetri anahtarları listesi (en fazla 500 anahtar), cihazlarının gönderdiği anahtarları tanımlar:
| Alan | Kullanım |
|---|---|
| Tür | Sayı, Tam sayı, Evet / hayır, Metin veya JSON |
| Birim | En fazla 32 karakter; değerlerin yanında ve grafik eksenlerinde gösterilir |
| Etiket | En fazla 128 karakter; anahtar yerine gösterilen ad |
| Min, Max | Beklenen aralık; bir gösterge bunu varsayılan ölçeği olarak alır |
| Ondalık basamak | 0 ila 10 |
Liste, saklananları filtrelemez: listelenmeyen bir anahtar yine de saklanır. Anahtarları Telemetri sekmesinde, panolarda ve SCADA bağlamalarında adlandırır ve biçimlendirir. Bkz. Cihaz profilleri.
Bir değerin neden atlandığı
Kök akışın çalıştırma kaydı ve Telemetri kaydet hatası şu kodları kullanır:
| Kod | Anlamı |
|---|---|
key_invalid | Anahtar kuralı dışında bir karakter veya boş bir anahtar |
key_too_long | 64 karakteri aşan (konu öneki eklendikten sonra da) |
key_reserved | _, fw_, current_fw_ veya cfg. ile başlayan |
string_too_long | 1.024 karakteri aşan metin |
value_too_large | 4 KiB’ı aşan JSON, sınırını aşan raw veya sonlu olmayan bir sayı |
bad_form | Deponun okumadığı bir biçim veya tek bir mesajda 1.000’den fazla nokta |
bad_ts | Epoch milisaniye olmayan, çok ileri tarihli veya ayarlar için çok eski bir zaman damgası |
too_old | Saklama sınıfınızın ham veriyi tuttuğu süreden daha eski |
key_limit | Planın anahtar sınırını aşan yeni bir anahtar |
no_values | Kayıttaki hiçbir şey saklanamadı |
Adlandırma ipuçları
- Küçük harf ve alt çizgi kullanın:
flow_rate,pump_1_running. - Gruplamak istediğiniz yapı için noktaları kullanın:
p1.running,p1.value(SCADA öğesi anahtarları bu biçimi kullanır). - Birimleri anahtar adlarının dışında tutun; bunları profilin Birim alanına yazın.
- Durumların geçmişini tutmanız gerektiğinde, durumları sayısal kodlar olarak saklayın. Bkz. Sayılar, metin ve true/false değerleri.
Ayrıca bkz. Ayrılmış anahtarlar ve öznitelikler.

