@@ -42,6 +42,7 @@ def smartfact(timeout=None, fallback=False):
4242 sqm ,
4343 sun ,
4444 weather ,
45+ tng_weather ,
4546 sipm_currents ,
4647 sipm_voltages ,
4748 container_temperature ,
@@ -164,6 +165,27 @@ def weather(url=None, timeout=None, fallback=False):
164165 })
165166
166167
168+ def tng_weather (url = None , timeout = None , fallback = False ):
169+ if url is None :
170+ url = os .path .join (smartfacturl , 'tngdata.data' )
171+
172+ table = smartfact2table (url , timeout = timeout )
173+ get = partial (get_entry , fallback = fallback )
174+
175+ return to_namedtuple ('TNGWeather' , {
176+ 'timestamp' : sft2dt (get (table , 0 , 0 )),
177+ 'temperature' : Quantity (s2f (get (table , 1 , 1 )), 'deg_C' ),
178+ 'delta_temperature_24h' : Quantity (s2f (get (table , 2 , 1 )), 'deg_C' ),
179+ 'dew_point' : Quantity (s2f (get (table , 3 , 1 )), 'deg_C' ),
180+ 'humidity' : Quantity (s2f (get (table , 4 , 1 )), '%' ),
181+ 'pressure' : Quantity (s2f (get (table , 5 , 1 )), 'hPa' ),
182+ 'wind_speed' : Quantity (s2f (get (table , 6 , 1 )), 'km/h' ),
183+ 'wind_direction' : Quantity (s2f (get (table , 7 , 1 )), 'deg' ),
184+ 'dust_total' : Quantity (s2f (get (table , 8 , 1 )), 'ug/m3' ),
185+ 'solarimeter' : Quantity (s2f (get (table , 9 , 1 )), 'W/m2' ),
186+ })
187+
188+
167189def sipm_currents (url = None , timeout = None , fallback = False ):
168190 if url is None :
169191 url = os .path .join (smartfacturl , 'current.data' )
0 commit comments