require 'json' require 'fileutils' MAX_POINTS = 360 OUTPUT_FILE = File.join(__dir__, 'src', 'cartagena_data.json') NODES = ['19A01E9D', 'VE9D010C', 'VE9D0115', 'VE9D0116', 'VE9D0119', 'VE9D0129', 'VE9D0133', 'VE9D0194', 'VE9D01C2', 'VE9D01C8', 'VE9D01E7'] data = [] now = Time.now.to_f * 1000 # Base values for each node base_vals = NODES.map { rand * 2.0 } MAX_POINTS.times do |i| # Time backwards (1 minute intervals) ts = (now - (MAX_POINTS - i) * 60 * 1000).to_i cells = base_vals.map { |bv| (bv + (rand - 0.5) * 0.1).round(4) } data << { 'time' => ts, 'cells' => cells } end FileUtils.mkdir_p(File.dirname(OUTPUT_FILE)) File.write(OUTPUT_FILE, JSON.generate(data)) puts "Demo data for Cartagena generated: #{OUTPUT_FILE}"