@@ -111,26 +111,32 @@ def index():
111111 <a href="https://ps-iot.dns.t0.vc/sensors/air/0/pm25/today?window=1&moving_average=100">https://ps-iot.dns.t0.vc/sensors/air/0/pm25/today?window=1&moving_average=100</a>
112112</pre>'''
113113
114- @app .route ('/sensors /<string:kind>/<int:num>/<string:measurement>' )
115- def sensors (kind , num , measurement ):
114+ @app .route ('/<string:domain> /<string:kind>/<int:num>/<string:measurement>' )
115+ def sensors (domain , kind , num , measurement ):
116116 if (kind , num , measurement ) not in SENSORS :
117117 abort (404 )
118118
119- topic = 'sensors/{}/{}/{}' .format (kind , num , measurement )
119+ if domain not in ['sensors' , 'test' ]:
120+ abort (404 )
121+
122+ topic = '{}/{}/{}/{}' .format (domain , kind , num , measurement )
120123 q = 'select last(value) as value from mqtt_consumer where "topic" = \' ' + topic + '\' '
121124 result = list (client .query (q ).get_points ())[0 ]
122125
123126 return result
124127
125- @app .route ('/sensors /<string:kind>/<int:num>/<string:measurement>/<string:lookup>' )
126- def sensors_history (kind , num , measurement , lookup ):
128+ @app .route ('/<string:domain> /<string:kind>/<int:num>/<string:measurement>/<string:lookup>' )
129+ def sensors_history (domain , kind , num , measurement , lookup ):
127130 if (kind , num , measurement ) not in SENSORS :
128131 abort (404 )
129132
133+ if domain not in ['sensors' , 'test' ]:
134+ abort (404 )
135+
130136 window = request .args .get ('window' , 15 )
131137 moving_average = request .args .get ('moving_average' , None )
132138
133- topic = 'sensors /{}/{}/{}' .format (kind , num , measurement )
139+ topic = '{} /{}/{}/{}' .format (domain , kind , num , measurement )
134140
135141 try :
136142 parse_date = datetime .strptime (lookup , '%Y-%m-%d' )
0 commit comments