Sorum için bir çözüm arama bin var ama bir ya da daha iyi bulamadık buldum ile alamadım dedi. Şimdi sorunumun ne hakkında olduğunu konuşalım. Raspberry Pi'de Akıllı Ev Kontrol Yazılımı kullanıyorum ve bu hafta sonu pilight-rece kullanarak öğrendiğim gibi, dış sıcaklık sensörümden veri yakalayabilirim. Pilight alma özelliği şöyle görünür:
{
"message": {
"id": 4095,
"temperature": 409.5
},
"origin": "receiver",
"protocol": "alecto_wsd17",
"uuid": "0000-b8-27-eb-0f3db7",
"repeats": 3
}
{
"message": {
"id": 1490,
"temperature": 25.1,
"humidity": 40.0,
"battery": 1
},
"origin": "receiver",
"protocol": "alecto_ws1700",
"uuid": "0000-b8-27-eb-0f3db7",
"repeats": 3
}
{
"message": {
"id": 2039,
"temperature": 409.5
},
"origin": "receiver",
"protocol": "alecto_wsd17",
"uuid": "0000-b8-27-eb-0f3db7",
"repeats": 4
}
Şimdi size sorum: Kimliğin 1490 olduğu yerden sıcaklık ve nemi nasıl çıkarabilirim? Bunu sık sık kontrol etmemi nasıl önerirsiniz? Her 10 dakikada bir çalışan, pilight alımının bir çıktısını oluşturan, çıkışın verilerini ayıklayan ve Smart Home Control Api'ye ileten bir cron işi ile.
Bir fikri olan biri - çok teşekkürler
awk
ve gerektirmemesi zor sed
değildir - boşluk JSON için önemli değildir. Örneğin, şu awk
komut: awk '/temperature|humidity/ {print $2}'
yakın.