import json

# Función para procesar los datos
def procesar_datos(data):
    resultado = []
    for item in data:
        if item[0]["Format"] == "Gateway" and item[1]["Format"] == "RawData":
            depurado = {
                "fecha": item[0].get("TimeStamp"),
                "gatewayMAC": item[0].get("GatewayMAC"),
                "BLEMAC": item[1].get("BLEMAC"),
                "RSSI": item[1].get("RSSI"),
                "BLEName": item[1].get("BLEName"),
                "datos": item[1].get("RawData")
            }
            resultado.append(depurado)
    return resultado

# Función principal
def main():
    # Leer datos desde el archivo recepcion.txt
    with open('recepcion.txt', 'r') as file:
        # Leer cada línea del archivo
        lines = file.readlines()

    # Procesar cada línea como un objeto JSON separado
    datos_depurados = []
    for line in lines:
        # Convertir la línea a una lista de objetos JSON
        try:
            data = json.loads(line.strip())
            # Procesar los datos de la línea
            datos_depurados.extend(procesar_datos([data]))
        except json.JSONDecodeError:
            print(f"Error al procesar la línea: {line}")

    # Imprimir los resultados
    for depurado in datos_depurados:
        print(depurado)

# Punto de entrada del programa
if __name__ == "__main__":
    main()