X-Git-Url: https://git.rvb.name/weathermon.git/blobdiff_plain/444842767097ad2061fa973e41c3568a90edadb4..2f1fc2f95f9688b5ddb0252228b969eb37c54031:/server/weathermon-mqtt

diff --git a/server/weathermon-mqtt b/server/weathermon-mqtt
index 025deec..809b4e9 100755
--- a/server/weathermon-mqtt
+++ b/server/weathermon-mqtt
@@ -15,15 +15,25 @@ end
 function process_MSG(mid, topic, payload)
   print(topic, payload)
   pcall(function(topic,payload)
+    print(payload)
     payload = json.decode(payload)
     local time = os.date(payload['Time'])
+    if not time then time = os.date(payload['time']); end 
+    local model = payload['model']
+    local id = payload['id']
     for sensor_type,sensor_data in pairs(payload) do
-      if sensor_type ~= "Time" and sensor_type ~= "TempUnit" then
-        for param,value in pairs(sensor_data) do
-          conn:execute(string.format("CALL meteo.submit_mqtt('%s','%s','%s','%s',NULL)", topic,sensor_type,param,value))
+      if sensor_type ~= "Time" and sensor_type ~= "TempUnit" and sensor_type ~= "model" and sensor_type ~="id" and sensor_type ~= "time" then
+        if model then
+          conn:execute(string.format("CALL meteo.submit_mqtt('%s','%s','%s','%s',NULL)", topic,model,sensor_type,sensor_data))
           conn:commit()
-          print(topic,sensor_type,param,value)
-        end
+          print(topic,model,sensor_type,sensor_data)
+        else 
+          for param,value in pairs(sensor_data) do
+            conn:execute(string.format("CALL meteo.submit_mqtt('%s','%s','%s','%s',NULL)", topic,sensor_type,param,value))
+            conn:commit()
+            print(topic,sensor_type,param,value)
+          end
+        end  
       end
     end
   end, topic, payload)