def api_response(): if request.method == 'POST': ######### Obteniendo datos de los sensores ################ # Para indentificar dir dir = str(request.headers.get('direccion')) print('Direccion:', dir) # Para indentificar el sensor sensor = str(request.headers.get('sen_n')) print('Sensor:', sensor) # Para indentificar el sensor num_sen = int(request.headers.get('num')) print('Numero:', num_sen) # Llamando a la funcion de registro en BD est = regis(dir, sensor, num_sen) print(est) if est == 'Parfait': return 'ok' else: return (est) else: return 'Error de submicion de datos'
def api_response(): # Variables globales del programa global prom_a global prom_b global hora_esp_a global hora_esp_b global estado_m_a global estado_m_b global activado global bd # Resgitro en BD if request.method == 'POST': dir = str(request.headers.get('direccion')) # Para indentificar dir print('Direccion:', dir ) sensor = str(request.headers.get('sen_n')) # Para indentificar el sensor num_sen = int(request.headers.get('num')) # Para indentificar el sensor print('Numero:', num_sen ) # Llamando a la funcion de registro en BD bd_reg = regis( dir, sensor, num_sen) print('Regis', bd_reg) ##### --- Evaluando --- ##### # Evaluando - cuando 1 es activado y regis accepta los datos if (activado == 1 and bd_reg == 'ok'): if dir == 'a': # restando - 1 al num de sensor para ordenar las cosas n_lista = num_sen - 1 # Obteniendo los datos necesarios prom = prom_a[n_lista] hora_esp = hora_esp_a[n_lista] # Creando hora esperada con prom_past if hora_esp == 0: print('Creando tiempo esperado con bd') hora_esp = prom_past( dir, num_sen, prom, bd ) # Llamando a Eva resultados = evaluacion( prom , hora_esp ) # Guardando tiempo esperado proximo hora_esp_a[n_lista] = resultados[1] # Guardando evaluacion estado_m_a[n_lista] = resultados[0] # Evaluacion final en base a todos los tiempos lista = estado_m_a final = eva_final( lista) print('html ', final) # ENVIAR ESA RESPUESTA AL WEBSOCKET # Evaluando direccion B else: # restando - 1 al num de sensor para ordenar las cosas n_lista = num_sen - 1 # Obteniendo los datos necesarios prom = prom_b[n_lista] hora_esp = hora_esp_b[n_lista] # Creando hora esperada con prom_past if hora_esp == 0: print('Creando tiempo esperado con bd') hora_esp = prom_past( dir, num_sen, prom, bd ) # Llamando a Eva resultados = evaluacion( prom , hora_esp ) # Guardando tiempo esperado proximo hora_esp_b[n_lista] = resultados[1] # Resultados obtiene - evaluacion - y - hora esperada estado_m_b[n_lista] = resultados[0] # Evaluacion final en base a todos los tiempos lista = estado_m_b final = eva_final( lista) print('html ', final) # ENVIAR ESA RESPUESTA AL WEBSOCKET # Respuesta a sensores if bd_reg == 'ok': return 'Sensor resistered sussesfully' else: return(bd_reg) # === Activando las funciones de evaluacion === elif request.method == 'GET': # Respuesta del admin a = request.args.get('a', 0, type=str) print('La respuesta es ', a) # Decidiendo entre BD if a == "default": nombrebd = "default.db" print("leyendo bd default") # Para leer la bd actual else: nombrebd = time.strftime('%d%m%y',time.localtime()) + ".db" print("leyendo bd", nombrebd) # Esta bd es la que se utilizara bd = nombrebd # Obteniendo el promedio segun la decision prom_f = promedios(nombrebd) prom_a = prom_f[0] prom_b = prom_f[1] print('a',prom_f[0]) print('b',prom_f[1]) # Ajustando var. de activacion if prom_f == 'Error!': activado = 0 else: activado = 1 print("MODO EVALUACION") # Regresa lista de promedios a la funcion getson de admin return jsonify(pro = prom_f) else: return 'Error de submicion de datos'