from django.http import HttpResponse from django.shortcuts import render from common.models import AgentCmd # Create your views here. def index(request): if request.user.is_authenticated: # return the initial view (the dashboard's one) return render(request, 'monitoring/monitoring_index.html',{"base_template":"base.html"}) return render(request, 'monitoring/monitoring_index.html',{'USER_LEVEL': "Visitor", 'base_template' : "base.html"}) def weather_config(request): """ PM 20180926 prototype without database http://127.0.0.1:8000/dashboard/weather/config Moved to monitoring """ try: # Import PLC status sensor parser from monitoring.plc_checker import PlcChecker # Parse PLC status in colibri-new-fixed-2.json #colibri_json = open("../simulators/plc/colibri-new-fixed-2.json") #colibri_struct = json.load(colibri_json) #plc_status = colibri_struct["statuses"][1]["entities"][0] plc_checker = PlcChecker() _struct = {"origin":plc_checker.origin, "sensors_table":plc_checker.sensors_table, "monitoring_names":list(plc_checker.monitoring_names.keys())} # Return template with sensors list return render(request, 'dashboard/config_weather.html', {'weather_config' : _struct, 'base_template' : "base.html"}) except Config.DoesNotExist: return render(request, 'dashboard/config_weather.html', {'weather_info' : None}) def weather_config_update(request): """ PM 20190716 ajax http://127.0.0.1:8000/dashboard/weather/config/update Get data... """ try: # print(request.GET["data"]) cmd_name, cmd_args = request.GET["data"].split(" ", 1) # ['nom', 'monitoring_name actuel', 'id(json path) du capteur', 'nouveau monitoring_name'] # : ['monitor_name_switch', 'None', 'Came:/S/N_A5EM:/Power_input', 'Rain_boolean'] if "Error_code" in cmd_args: something = 5/0 AgentCmd.send_command('Dashboard', 'AgentM', cmd_name, cmd_args) #TODO: Pour l'instant, on ne recupere pas encore ce retour return HttpResponse('{"update":"OK", "cmd_name":"' + cmd_name + '"}', content_type="application/json") except: return HttpResponse('{"update":"ERROR", "cmd_name":"' + cmd_name + '"}', content_type="application/json", status="500")