updated gateway config
This commit is contained in:
BIN
Pub_Sub/.DS_Store
vendored
BIN
Pub_Sub/.DS_Store
vendored
Binary file not shown.
@@ -1,21 +1,21 @@
|
||||
MeasuringPointName,ControllerName,GroupName,UploadType,DataType,Address,Decimal,Len,ReadWrite,Unit,Description,Transform Type,MaxValue,MinValue,MaxScale,MinScale,Gain,Offset,startBit,endBit
|
||||
pump_1_daily_total,Pond_A,dual_flowmeter,periodic,FLOAT,Pump_1_Daily_Flow_Rate_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_run_status,Pond_A,dual_flowmeter,periodic,BIT,Pump_1_Run_Status,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_flowrate,Pond_A,dual_flowmeter,periodic,FLOAT,Pump_1_SCL_Flow_Meter,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_yesterdays_total,Pond_A,dual_flowmeter,periodic,FLOAT,Pump_1_Yesterdays_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_prevmonth_total,Pond_A,dual_flowmeter,periodic,FLOAT,Pump_1_PrevMonth_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_month_total,Pond_A,dual_flowmeter,periodic,FLOAT,Pump_1_Current_Month_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_lifetime_total,Pond_A,dual_flowmeter,periodic,FLOAT,Pump_1_Lifetime_Flow,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_suction,Pond_A,dual_flowmeter,periodic,FLOAT,Suction_PSI_TP1_Scaled,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_daily_total,Pond_A,dual_flowmeter,periodic,FLOAT,Pump_2_Daily_Flow_Rate_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_run_status,Pond_A,dual_flowmeter,periodic,BIT,Pump_2_Run_Status,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_flowrate,Pond_A,dual_flowmeter,periodic,FLOAT,Pump_2_SCL_Flow_Meter,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_yesterdays_total,Pond_A,dual_flowmeter,periodic,FLOAT,Pump_2_Yesterdays_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_prevmonth_total,Pond_A,dual_flowmeter,periodic,FLOAT,Pump_2_PrevMonth_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_month_total,Pond_A,dual_flowmeter,periodic,FLOAT,Pump_2_Current_Month_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_lifetime_total,Pond_A,dual_flowmeter,periodic,FLOAT,Pump_2_Lifetime_Flow,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_suction,Pond_A,dual_flowmeter,periodic,FLOAT,Suction_PSI_TP2_Scaled,2,1,ro,,,none,,,,,,,,
|
||||
pump_charge_psi_tp1,Pond_A,dual_flowmeter,periodic,FLOAT,Charge_PSI_TP1_Scaled,2,1,ro,,,none,,,,,,,,
|
||||
pond_1_height,Pond_A,dual_flowmeter,periodic,FLOAT,Pond_level_TP1_Scaled,2,1,ro,,,none,,,,,,,,
|
||||
pond_1_volume,Pond_A,dual_flowmeter,periodic,FLOAT,pond1Volume,2,1,ro,,,none,,,,,,,,
|
||||
charge_pump_run_status,Pond_A,dual_flowmeter,periodic,BIT,CHARGE_PUMP_Run_Status,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_daily_total,Tree_Pond,default,periodic,FLOAT,Pump_1_Daily_Flow_Rate_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_run_status,Tree_Pond,default,periodic,BIT,Pump_1_Run_Status,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_flowrate,Tree_Pond,default,periodic,FLOAT,Pump_1_SCL_Flow_Meter,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_yesterdays_total,Tree_Pond,default,periodic,FLOAT,Pump_1_Yesterdays_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_prevmonth_total,Tree_Pond,default,periodic,FLOAT,Pump_1_PrevMonth_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_month_total,Tree_Pond,default,periodic,FLOAT,Pump_1_Current_Month_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_lifetime_total,Tree_Pond,default,periodic,FLOAT,Pump_1_Lifetime_Flow,2,1,ro,,,none,,,,,,,,
|
||||
pump_1_suction,Tree_Pond,default,periodic,FLOAT,Suction_PSI_TP1_Scaled,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_daily_total,Tree_Pond,default,periodic,FLOAT,Pump_2_Daily_Flow_Rate_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_run_status,Tree_Pond,default,periodic,BIT,Pump_2_Run_Status,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_flowrate,Tree_Pond,default,periodic,FLOAT,Pump_2_SCL_Flow_Meter,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_yesterdays_total,Tree_Pond,default,periodic,FLOAT,Pump_2_Yesterdays_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_prevmonth_total,Tree_Pond,default,periodic,FLOAT,Pump_2_PrevMonth_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_month_total,Tree_Pond,default,periodic,FLOAT,Pump_2_Current_Month_Total,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_lifetime_total,Tree_Pond,default,periodic,FLOAT,Pump_2_Lifetime_Flow,2,1,ro,,,none,,,,,,,,
|
||||
pump_2_suction,Tree_Pond,default,periodic,FLOAT,Suction_PSI_TP2_Scaled,2,1,ro,,,none,,,,,,,,
|
||||
pump_charge_psi_tp1,Tree_Pond,default,periodic,FLOAT,Charge_PSI_TP1_Scaled,2,1,ro,,,none,,,,,,,,
|
||||
pond_1_height,Tree_Pond,default,periodic,FLOAT,Pond_level_TP1_Scaled,2,1,ro,,,none,,,,,,,,
|
||||
pond_1_volume,Tree_Pond,default,periodic,FLOAT,pond1Volume,2,1,ro,,,none,,,,,,,,
|
||||
charge_pump_run_status,Tree_Pond,default,periodic,BIT,CHARGE_PUMP_Run_Status,2,1,ro,,,none,,,,,,,,
|
||||
|
15
Pub_Sub/gateway/measure_gateway.csv
Normal file
15
Pub_Sub/gateway/measure_gateway.csv
Normal file
@@ -0,0 +1,15 @@
|
||||
MeasuringPointName,ControllerName,GroupName,UploadType,DataType,Address,Decimal,Len,ReadWrite,Unit,Description,Transform Type,MaxValue,MinValue,MaxScale,MinScale,Gain,Offset,startBit,endBit
|
||||
scaled_flow_meter,Tree_13,default,periodic,FLOAT,Scaled_Flow_Meter,2,1,ro,,,none,,,,,,,,
|
||||
scaled_pressure_transducer,Tree_13,default,periodic,FLOAT,Scaled_Pressure_Transducer,2,1,ro,,,none,,,,,,,,
|
||||
raw_hand_input,Tree_13,default,periodic,BIT,Raw_Hand_Input,2,1,ro,,,none,,,,,,,,
|
||||
raw_auto_input,Tree_13,default,periodic,BIT,Raw_Auto_Input,2,1,ro,,,none,,,,,,,,
|
||||
raw_run_status,Tree_13,default,periodic,BIT,Raw_Run_Status,2,1,ro,,,none,,,,,,,,
|
||||
raw_local_start,Tree_13,default,periodic,BIT,Raw_Local_Start,2,1,ro,,,none,,,,,,,,
|
||||
lifetime_flow_meter_gal,Tree_13,default,periodic,FLOAT,Lifetime_Flow_Meter_Gal,2,1,ro,,,none,,,,,,,,
|
||||
yesterday_flow_meter_gal,Tree_13,default,periodic,FLOAT,Totalizer_FM_Yesterday_Total_Gal,2,1,ro,,,none,,,,,,,,
|
||||
today_flow_meter_gal,Tree_13,default,periodic,FLOAT,Totalizer_FM_Current_Day_Total_Gal,2,1,ro,,,none,,,,,,,,
|
||||
last_month_flow_meter_gal,Tree_13,default,periodic,FLOAT,Totalizer_FM_Last_Month_Gal,2,1,ro,,,none,,,,,,,,
|
||||
month_flow_meter_gal,Tree_13,default,periodic,FLOAT,Totalizer_FM_Current_Month_Gal,2,1,ro,,,none,,,,,,,,
|
||||
spt_flow_meter_unit,Tree_13,default,periodic,BIT,SPT_Flow_Meter_Unit,2,1,ro,,,none,,,,,,,,
|
||||
raw_overload_status,Tree_13,default,periodic,BIT,Raw_Overload_Status,2,1,ro,,,none,,,,,,,,
|
||||
CMD_Cloud_Control,Tree_13,default,periodic,BIT,CMD_Cloud_Control,2,1,rw,,,none,,,,,,,,
|
||||
|
45
Pub_Sub/gateway/thingsboard/v1/pub/sendData.py
Normal file
45
Pub_Sub/gateway/thingsboard/v1/pub/sendData.py
Normal file
@@ -0,0 +1,45 @@
|
||||
# Enter your python code.
|
||||
import json
|
||||
from datetime import datetime as dt
|
||||
from common.Logger import logger
|
||||
from quickfaas.remotebus import publish
|
||||
|
||||
|
||||
def sendData(message):
|
||||
#logger.debug(message)
|
||||
# Extract measures and group by ctrlName
|
||||
grouped_data = {}
|
||||
grouped_attributes = {}
|
||||
now = (round(dt.timestamp(dt.now())/600)*600)*1000
|
||||
for measure in message['measures']:
|
||||
ctrlName = " ".join(measure['ctrlName'].split("_"))
|
||||
name = measure['name']
|
||||
value = measure['value']
|
||||
health = measure['health']
|
||||
#Add controller for telemetry if it doesn't exist
|
||||
if ctrlName not in grouped_data:
|
||||
grouped_data[ctrlName] = {}
|
||||
#Add controller for attributes if it doesn't exist
|
||||
if ctrlName not in grouped_attributes:
|
||||
grouped_attributes[ctrlName] = {}
|
||||
#Add data to temp payload if datapoint health is good
|
||||
if health:
|
||||
grouped_data[ctrlName][name] = value
|
||||
grouped_attributes[ctrlName]["latestReportTime"] = now
|
||||
#print(grouped_data)
|
||||
# Transform the grouped data to desired structure
|
||||
payload = {}
|
||||
|
||||
for key, value in grouped_data.items():
|
||||
if value:
|
||||
payload[key] = [{"ts": now ,"values": value}]
|
||||
attributes_payload = {}
|
||||
for key, value in grouped_attributes.items():
|
||||
if value:
|
||||
attributes_payload[key] = value
|
||||
|
||||
|
||||
|
||||
#logger.debug(payload)
|
||||
publish(__topic__, json.dumps(payload), __qos__)
|
||||
publish("v1/gateway/attributes", json.dumps(attributes_payload), __qos__)
|
||||
Reference in New Issue
Block a user