Hedefin ne alacağını seçin
Çıktı yapısı, bir hedefe gönderilen JSON'un biçimine karar verir. Kaynak → hedef çifti başına, Akış → Yönlendirme içinde ayarlanır; böylece her hedef tam olarak istediğini alabilir.
Aşağıdaki örnekler aynı Sigfox mesajının beş farklı iletimidir; doğrudan karşılaştırabilirsiniz.
Tam mesaj
Merkez'in bildiği her şey, yükün etrafına sarılmış hâlde. Varsayılan budur ve başka birini seçmek için bir nedeniniz yoksa doğru cevap da budur.
{
"provider": "SIGFOX",
"deviceIdentifier": "1A2B3C",
"messageType": "DATA_BIDIR",
"receivedAt": "2026-08-15T13:47:45.000Z",
"idempotencyKey": "SIGFOX:1A2B3C:DATA_BIDIR:18",
"payload": {
"device": "1A2B3C",
"data": "00018d460000300040e12402",
"seqNumber": 18,
"decoded": { "index": 18.061, "unit": "m3", "battery": 100 }
},
"raw": { "device": "1A2B3C", "data": "00018d46…", "seqNumber": 18 }
}
idempotencyKey alanına dikkat — Merkez
en az bir kez iletir ve tarafınız tekrarı
bununla tanır.
Ham sağlayıcı çerçevesi
Sağlayıcının POST ettiğinin aynısı, dokunulmamış hâlde:
{
"device": "1A2B3C",
"data": "00018d460000300040e12402",
"seqNumber": 18,
"time": 1755265665
}
Alıcı sistem sağlayıcının biçimini zaten konuşuyorsa doğrudur — Merkez'i çeviri için değil, yönlendirme ve yeniden denemeler için kullanıyorsunuzdur.
Yalnızca çözülmüş telemetri
Zarf, payload yerine çözücünüzün döndürdüğüyle:
{
"provider": "SIGFOX",
"deviceIdentifier": "1A2B3C",
"idempotencyKey": "SIGFOX:1A2B3C:DATA_BIDIR:18",
"payload": { "index": 18.061, "unit": "m3", "battery": 100 },
"raw": { }
}
İki şey insanları şaşırtır:
- Geri düşer. Çözücü yoksa, çözücü hata verdiyse veya callback'in yükü yoksa
payloadtam mesaj yükü olarak kalır. Aynı hedef iki farklı biçim görebilir.payload.decodeErroralanına bakın. - Yalnızca üç Sigfox callback'i çözülür.
DATA_UPLINK,DATA_BIDIRveSERVICE_DATA_ADVANCEDbir yük çerçevesi taşır; diğer dördünde çözülecek bir şey yoktur.
Her şey çözülmüş
Çözücünün döndürdüğü her şey, iki grubu ayrı tutularak:
{
"provider": "SIGFOX",
"payload": {
"telemetry": { "index": 18.061, "unit": "m3", "battery": 100 },
"meta": { "seqNumber": 18, "rssi": -103.41 }
}
}
Bilerek ayrı kalırlar: birleştirilseydi, çözücünüzün ikisine birden koyduğu bir
anahtar sessizce kaybolurdu ve sonraki hiçbir adım bir ölçümü bir radyo
verisinden ayırt edemezdi. Çözücünüz yalnızca telemetri döndürüyorsa yalnızca
telemetry görünür.
Özel
Gövdeyi tamamen siz kurarsınız. Alanlarınızın etrafına hiçbir şey
sarılmaz — zarf yok, payload yok:
{
"device": "1A2B3C",
"idempotencyKey": "SIGFOX:1A2B3C:DATA_BIDIR:988",
"reading": 18.061,
"tag": "maski"
}
Dört alanla başlar — cihaz, olay tipi, zaman damgası ve tekrar anahtarı — çünkü boş bir belge bozuk görünür ve bir hedefin genelde ihtiyacı bunlardır. Hepsi kaldırılabilir.
Yol yazmazsınız, alan seçersiniz
Merkez çözücünüzün ne döndürdüğünü hatırlar — iç içe olanlar dâhil her alanı, tipiyle ve son değeriyle — ve bunları Mesajdan, telemetry ve meta diye gruplanmış düğmeler olarak listeler. Eklemek için tıklayın; farklı bir anahtar istiyorsanız yeniden adlandırın.
Bir kaynağın çözücüsü bir kez çalışana kadar listelenecek bir şey yoktur ve düzenleyici bunu söyler. Bir mesaj gönderin, alanlar belirir.
Dört satır türü
| Satır | Yaptığı |
|---|---|
| seçilmiş alan | onu, yazdığınız adla kopyalar |
| sabit değer | her mesajda aynı sabit |
| alanlardan metin | {device}-{seqNumber} → "1A2B3C-988" |
| hesaplanmış değer | aritmetik veya bir koşul |
Metin satırları tırnak ve operatör istemez — alan adlarını süslü parantez içinde, gerisini olduğu gibi yazın. Eksik bir alan boş görünür ve satır yine iletilir.
İç içe nesneler
İç içe nesne ekle, içine istediğiniz derinlikte alan koyabileceğiniz bir kap oluşturur:
device = deviceIdentifier
meter { }
battery = decoded.battery
reading { }
value = decoded.index
unit = "m3"
şunu iletir:
{
"device": "1A2B3C",
"meter": { "reading": { "value": 18.061, "unit": "m3" }, "battery": 100 }
}
Bir alanı taşımak için yanındaki tutamağı sürükleyin — içine koymak için bir
nesnenin üzerine, sırasını değiştirmek için başka bir alanın üzerine. Nokta içeren
bir ad da iç içe geçer: meter.reading yazmak, reading alanını meter içine
koymakla aynıdır.
İçi boş bir nesne gönderilmez; {} iletmenin bir anlamı yoktur.
null olarak değil, hiç gönderilmez. Bu
bir hata değildir — ve düzenleyici bunun olduğunu ve nedenini size söyler; bir
alan öylece kaybolmaz.Seçim
| İsteğiniz | Seçin |
|---|---|
| Her şey, en güvenli varsayılan | Tam mesaj |
| Alıcı sağlayıcının biçimini zaten ayrıştırıyor | Ham sağlayıcı çerçevesi |
| Yalnızca ölçümler, zarfla birlikte | Yalnızca çözülmüş telemetri |
| Ölçümler ve radyo verileri, ayrı tutulmuş | Her şey çözülmüş |
| Alıcının zaten tanımladığı kesin bir sözleşme | Özel |
Kararsızsanız Tam mesaj ile başlayın. Bilgi kaybetmeyen tek biçim odur ve sonradan daraltmak kolaydır.
Varsayılan nereden gelir
Bir hedef kendi varsayılan çıktı yapısını taşıyabilir; kendi ayarı olmayan her çift bunu kullanır. Çiftin kendi ayarı her zaman kazanır; temizlemek hedefin varsayılanına geri döner.