Files
ECAP_Server/config/linux/config.json
T
2026-08-05 14:37:55 +08:00

758 lines
24 KiB
JSON

{
"version": "v1.0.4",
"dsp": {
"library_path": "@/lib9002/lib9002.so",
"center_freq": 16000000,
"band_width": 6000,
"sample_rate": 60000,
"fft_point_number": 2048,
"fft_period_ms": 50,
"fft_win_type": "blkmc",
"url": "0.0.0.0",
"port": 6000,
"power_min": -380,
"power_max": 120,
"power_offset": -166,
"frame_rate": 60,
"debug": false,
"demod_mode": "LSB",
"audio_gain": 30,
"color_gain": 120
},
"drogon": {
"app": {
"threads_num": 0,
"client_max_body_size": "1000M",
"client_max_memory_body_size": "1000M"
}
},
"http_monitor": {
"access_log": false,
"slow_request_threshold_ms": 3000,
"slow_scope_threshold_ms": 1000
},
"mlat": {
"enable": false,
"merge": false,
"library_path": "@/mlat_source.dll",
"function_name": "adsb_read"
},
"web_server": {
"webapp": "@/wwwroot"
},
"map_resources": {
"current_imagery_key": "mixed_imagery",
"tile_sources": [
{
"key": "mixed_imagery",
"name": "本地混合图",
"tile_type": "imagery",
"request_method": "GET",
"resource": {
"file_format": "mbtiles",
"directories": [
],
"files": [
"/home/heco/tiles/混合图-世界-0-8.mbtiles",
"/home/heco/tiles/混合图-中国-9-10.mbtiles",
"/home/heco/tiles/混合图-中国-11.mbtiles"
],
"path_layout": "z/x/y",
"y_axis": "tms",
"projection": "web_mercator",
"extension": ".png",
"tile_size": 256,
"minimum_level": 0,
"maximum_level": 11
}
},
{
"key": "height_terrain",
"name": "本地高程",
"tile_type": "terrain",
"request_method": "GET",
"resource": {
"file_format": "mbtiles",
"directories": [
],
"files": [
"/home/heco/tiles/高程-世界-0-8.mbtiles",
"/home/heco/tiles/高程-中国-9-10.mbtiles",
"/home/heco/tiles/高程-中国-11.mbtiles"
],
"path_layout": "z/x/y",
"y_axis": "tms",
"projection": "web_mercator",
"extension": ".png",
"tile_size": 256,
"minimum_level": 0,
"maximum_level": 11,
"encoding": "terrarium"
}
},
{
"key": "osm_online",
"name": "OpenStreetMap在线",
"tile_type": "imagery",
"request_method": "GET",
"url": "https://tile.openstreetmap.org/{z}/{x}/{y}.png",
"resource": {
"file_format": "online",
"directories": [
],
"files": [
],
"path_layout": "z/x/y",
"y_axis": "xyz",
"projection": "web_mercator",
"extension": ".png",
"tile_size": 256,
"minimum_level": 0,
"maximum_level": 19
}
},
{
"key": "osm_hot_online",
"name": "OpenStreetMap HOT在线",
"tile_type": "imagery",
"request_method": "GET",
"url": "https://a.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png",
"resource": {
"file_format": "online",
"directories": [
],
"files": [
],
"path_layout": "z/x/y",
"y_axis": "xyz",
"projection": "web_mercator",
"extension": ".png",
"tile_size": 256,
"minimum_level": 0,
"maximum_level": 19
}
},
{
"key": "cyclosm_online",
"name": "CyclOSM在线",
"tile_type": "imagery",
"request_method": "GET",
"url": "https://a.tile-cyclosm.openstreetmap.fr/cyclosm/{z}/{x}/{y}.png",
"resource": {
"file_format": "online",
"directories": [
],
"files": [
],
"path_layout": "z/x/y",
"y_axis": "xyz",
"projection": "web_mercator",
"extension": ".png",
"tile_size": 256,
"minimum_level": 0,
"maximum_level": 20
}
},
{
"key": "carto_light_online",
"name": "Carto Light在线",
"tile_type": "imagery",
"request_method": "GET",
"url": "https://a.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png",
"resource": {
"file_format": "online",
"directories": [
],
"files": [
],
"path_layout": "z/x/y",
"y_axis": "xyz",
"projection": "web_mercator",
"extension": ".png",
"tile_size": 256,
"minimum_level": 0,
"maximum_level": 20
}
},
{
"key": "carto_dark_online",
"name": "Carto Dark在线",
"tile_type": "imagery",
"request_method": "GET",
"url": "https://a.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png",
"resource": {
"file_format": "online",
"directories": [
],
"files": [
],
"path_layout": "z/x/y",
"y_axis": "xyz",
"projection": "web_mercator",
"extension": ".png",
"tile_size": 256,
"minimum_level": 0,
"maximum_level": 20
}
},
{
"key": "carto_voyager_online",
"name": "Carto Voyager在线",
"tile_type": "imagery",
"request_method": "GET",
"url": "https://a.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}.png",
"resource": {
"file_format": "online",
"directories": [
],
"files": [
],
"path_layout": "z/x/y",
"y_axis": "xyz",
"projection": "web_mercator",
"extension": ".png",
"tile_size": 256,
"minimum_level": 0,
"maximum_level": 20
}
},
{
"key": "carto_dark_nolabels_online",
"name": "Carto Dark无标注在线",
"tile_type": "imagery",
"request_method": "GET",
"url": "https://a.basemaps.cartocdn.com/dark_nolabels/{z}/{x}/{y}.png",
"resource": {
"file_format": "online",
"directories": [
],
"files": [
],
"path_layout": "z/x/y",
"y_axis": "xyz",
"projection": "web_mercator",
"extension": ".png",
"tile_size": 256,
"minimum_level": 0,
"maximum_level": 20
}
},
{
"key": "opentopomap_online",
"name": "OpenTopoMap在线",
"tile_type": "imagery",
"request_method": "GET",
"url": "https://a.tile.opentopomap.org/{z}/{x}/{y}.png",
"resource": {
"file_format": "online",
"directories": [
],
"files": [
],
"path_layout": "z/x/y",
"y_axis": "xyz",
"projection": "web_mercator",
"extension": ".png",
"tile_size": 256,
"minimum_level": 0,
"maximum_level": 17
}
}
]
},
"map_view": {
"scene_mode": "3d",
"map2d": {
"current_imagery_key": "mixed_imagery",
"tile_zoom_mode": "native",
"tile_display_maximum_level": 8
},
"map3d": {
"current_imagery_key": "mixed_imagery",
"tile_zoom_mode": "native",
"tile_display_maximum_level": 19
},
"camera": {
"longitude": 122.014707,
"latitude": 35.714108,
"height": 241660.031820,
"heading": 347.582854,
"pitch": -54.917211,
"roll": 359.999884
},
"baseStationFlyToHeightOffsetMeters": 8000.000000
},
"map_models": {
"aircraft_model": {
"url": "/ui/model/aircraft.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"aircraft_models": {
"glider": {
"url": "/ui/model/aircraft-glider.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"ground_obstruction_4": {
"url": "/ui/model/aircraft-ground-obstruction-4.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"ground_obstruction_5": {
"url": "/ui/model/aircraft-ground-obstruction-5.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"ground_obstruction_6": {
"url": "/ui/model/aircraft-ground-obstruction-6.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"ground_obstruction_7": {
"url": "/ui/model/aircraft-ground-obstruction-7.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"heavy_aircraft": {
"url": "/ui/model/aircraft-heavy-aircraft.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"high_performance_aircraft": {
"url": "/ui/model/aircraft-high-performance-aircraft.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"high_vortex_aircraft": {
"url": "/ui/model/aircraft-high-vortex-aircraft.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"light_aircraft": {
"url": "/ui/model/aircraft-light-aircraft.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"lighter_than_air": {
"url": "/ui/model/aircraft-lighter-than-air.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"medium_1_aircraft": {
"url": "/ui/model/aircraft-medium-1-aircraft.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"medium_2_aircraft": {
"url": "/ui/model/aircraft-medium-2-aircraft.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"no_category_information": {
"url": "/ui/model/aircraft-no-category-information.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"parachutist": {
"url": "/ui/model/aircraft-parachutist.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"reserved_3_5": {
"url": "/ui/model/aircraft-reserved-3-5.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"rotorcraft": {
"url": "/ui/model/aircraft-rotorcraft.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"space_transatmospheric_vehicle": {
"url": "/ui/model/aircraft-space-transatmospheric-vehicle.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"surface_emergency_vehicle": {
"url": "/ui/model/aircraft-surface-emergency-vehicle.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"surface_service_vehicle": {
"url": "/ui/model/aircraft-surface-service-vehicle.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"ultralight_hangglider_paraglider": {
"url": "/ui/model/aircraft-ultralight-hangglider-paraglider.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"unmanned_aerial_vehicle": {
"url": "/ui/model/aircraft-unmanned-aerial-vehicle.glb",
"built_in_size": 50.000000,
"heading_offset_degrees": -90.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
}
},
"base_station_model": {
"url": "/ui/model/base-station.glb",
"built_in_size": 16.635522,
"heading_offset_degrees": 0.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
},
"device_model": {
"url": "/ui/model/device.glb",
"built_in_size": 80.000000,
"heading_offset_degrees": 0.000000,
"pitch_offset_degrees": 0.000000,
"roll_offset_degrees": 0.000000
}
},
"device": {
"net": [
{
"key": "device",
"ip": "0.0.0.0",
"port": 9081,
"netmask": "255.255.255.0",
"gateway": "192.168.1.1"
},
{
"key": "wifi",
"ip": "192.168.10.193",
"port": 80,
"netmask": "255.255.255.0",
"gateway": "192.168.10.1"
}
]
},
"mode_acs": {
"timeout_seconds": 160,
"max_speed_m_s": 1000.000000,
"air_pos_timeout": 8.000000,
"surface_pos_timeout": 32.000000,
"read_milliseconds": 100,
"wait_process_msg": true,
"time_space_filter": true,
"speed_filter": true,
"max_track_point_size": 20000,
"mode_s_max_num": 700000,
"mode_other_max_num": 10000,
"report_data_feed_msg_mum": 10000,
"default_min_aircraft_list_num": 10,
"aircraft_change_list_min_position_points": 2,
"aircraft_change_list_adsb_range_filter": true,
"aircraft_change_list_adsb_range_factor": 1.200000,
"adsb_theoretical_target_altitude_meters": 10000.000000,
"ignore_df_11": true,
"monitor_msg_live": false,
"data_feed": {
"empty_wait_milliseconds": 30,
"packet_byte_size": 0,
"tcp_server_default_connect_user_buffer_size": 409600,
"tcp_server_default_connect_system_buffer_size": 409600,
"list": [
{
"type": "Data_Feed_TCP_Server",
"key": "Port_10003",
"enable": true,
"output_format": {
"type": "BIN",
"use_status": true,
"mode_s_output_type": "ALL_Mode_S",
"use_mode_ac": true,
"sbs_only_pos": true
},
"port": 10003,
"connect_user_buffer_size": 409600,
"connect_system_buffer_size": 409600
},
{
"type": "Data_Feed_UDP_Server",
"key": "22333",
"enable": false,
"output_format": {
"type": "BIN",
"use_status": false,
"mode_s_output_type": "ALL_Mode_S",
"use_mode_ac": false,
"sbs_only_pos": false
},
"port": 50001
},
{
"type": "Data_Feed_UDP_Client",
"key": "Port_10004",
"enable": false,
"output_format": {
"type": "AVR",
"use_status": false,
"mode_s_output_type": "DF_11_17_18",
"use_mode_ac": false,
"sbs_only_pos": true
},
"port": 30004,
"url": "192.168.1.75"
},
{
"type": "Data_Feed_TCP_Client",
"key": "Port_10005",
"enable": false,
"output_format": {
"type": "BIN",
"use_status": true,
"mode_s_output_type": "NO_POS_Mode_S",
"use_mode_ac": true,
"sbs_only_pos": true
},
"url": "192.168.1.167",
"port": 10005
},
{
"type": "Data_Feed_TCP_Server",
"key": "Port_30003",
"enable": false,
"output_format": {
"type": "SBS",
"use_status": false,
"mode_s_output_type": "ALL_Mode_S",
"use_mode_ac": true,
"sbs_only_pos": true
},
"port": 30003,
"connect_user_buffer_size": 0,
"connect_system_buffer_size": 0
}
]
},
"data_source": {
"list": [
{
"type": "Dll_Data_Source",
"key": "lzy_dll",
"enable": true,
"base_station_has_valid_position": true,
"map_display": {
"map2d": {
"base_station_show": true,
"aircraft_show": true,
"constant_screen_size": true,
"color": "#454641",
"track_point_color": "#ffff00",
"base_station_color": "#1677ff",
"aircraft_pixel_size": 34,
"base_station_pixel_size": 30,
"aircraft_scale": 2.000000,
"base_station_scale": 0.440000,
"show_icao": true,
"show_call_sign": false,
"show_fly_status": false
},
"map3d": {
"base_station_show": true,
"aircraft_show": true,
"constant_screen_size": true,
"color": "#454641",
"track_point_color": "#ffff00",
"base_station_color": "#1677ff",
"aircraft_pixel_size": 50,
"base_station_pixel_size": 100,
"aircraft_scale": 1.000000,
"base_station_scale": 0.440000,
"show_icao": true,
"show_call_sign": false,
"show_fly_status": false
}
},
"lat": 37.433547,
"lon": 121.408730,
"alt": 2300.000000,
"ignore_msg_time": true,
"update_form_gps": false,
"keep_mode": true,
"library_path": "@/lib9002/lib9002.so",
"function_name": "adsb_read",
"data_type": "BIN_Blank_Text",
"buffer_size": 200000
}
]
},
"source_feed_relation": {
"list": [
{
"key": "key_10003",
"enable": true,
"type": "First_Source_To_All_Feed_Relation"
}
]
}
},
"log": {
"open_mode": "Delete",
"piece_num": 10,
"size_MB": 10
},
"console": {
"record_playback": false,
"mode_s_console": false,
"post_request": false,
"mlat_server": true
},
"external_database": {
"ecap_sqlite_path": "@/../ecap.sqlite",
"list": [
{
"name": "tar1090_db_aircraft",
"download_url": "https://raw.githubusercontent.com/wiedehopf/tar1090-db/refs/heads/csv/aircraft.csv.gz",
"description": "wiedehopf/tar1090-db 发布的轻量 ICAO24 飞机静态库,提供注册号、机型、年份和运营方备注。",
"update_interval_seconds": 604800,
"last_updated_at": 1780388281
},
{
"name": "wiedehopf_tar1090_db_aircraft",
"download_url": "https://raw.githubusercontent.com/wiedehopf/tar1090-db/refs/heads/csv/aircraft.csv.gz",
"description": "wiedehopf/tar1090-db 项目发布的飞机静态数据库镜像,供 tar1090 本地识别飞机。",
"update_interval_seconds": 604800,
"last_updated_at": 1780381804
},
{
"name": "mictronics_aircraft_database",
"download_url": "https://raw.githubusercontent.com/wiedehopf/tar1090-db/refs/heads/csv/aircraft.csv.gz",
"description": "Mictronics 社区飞机数据库的 tar1090 汇总镜像,可按 ICAO24 查询注册号、机型和运营方。",
"update_interval_seconds": 604800,
"last_updated_at": 1780381804
},
{
"name": "opensky_aircraft_database",
"download_url": "https://opensky-network.org/datasets/metadata/aircraftDatabase.csv",
"description": "OpenSky Network 飞机元数据 CSV,包含制造商、型号、注册号和运营方等字段。",
"update_interval_seconds": 604800,
"last_updated_at": 1780381804
},
{
"name": "faa_aircraft_registry",
"download_url": "https://registry.faa.gov/database/ReleasableAircraft.zip",
"description": "FAA 官方可公开下载的美国飞机注册库,MASTER.txt 包含 Mode-S Hex 注册信息。",
"update_interval_seconds": 86400,
"last_updated_at": 1780381804
},
{
"name": "icao_doc_8643_aircraft_type_designators",
"download_url": "",
"description": "ICAO Doc 8643 机型代码表,用于将 A320、B738 等 designator 映射为制造商、型号和类别。",
"update_interval_seconds": 2419200,
"last_updated_at": 1780381804
},
{
"name": "vrs_routes",
"download_url": "https://vrs-standing-data.adsb.lol/routes.csv",
"description": "VRS 航线表,以 callsign 查询机场代码序列,用于推断起飞机场、经停机场和目的机场。",
"update_interval_seconds": 3600,
"last_updated_at": 1780381804
},
{
"name": "vrs_airports",
"download_url": "https://vrs-standing-data.adsb.lol/airports.csv",
"description": "VRS 机场字典,提供机场代码、名称、国家、经纬度和高度。",
"update_interval_seconds": 3600,
"last_updated_at": 1780381804
},
{
"name": "adsblol_vrs_standing_data_routes",
"download_url": "https://vrs-standing-data.adsb.lol/routes.csv",
"description": "ADSB.lol 发布的 VRS standing-data 航线镜像,以 callsign 查询机场代码序列。",
"update_interval_seconds": 3600,
"last_updated_at": 1780381804
},
{
"name": "vradarserver_standing_data_routes",
"download_url": "https://vrs-standing-data.adsb.lol/routes.csv",
"description": "Virtual Radar Server standing-data 的航线适配表;当前在线更新使用 ADSB.lol 公共镜像。",
"update_interval_seconds": 3600,
"last_updated_at": 1780381804
},
{
"name": "opensky_flightdata_api_cache",
"download_url": "",
"description": "OpenSky FlightData API 查询缓存,按 ICAO24 和时间范围保存历史航班起降机场结果。",
"update_interval_seconds": 0,
"last_updated_at": 1780381804
}
]
},
"cesium_graphics": {
"debug_show_frames_per_second": true,
"target_frame_rate": 30,
"use_browser_recommended_resolution": true,
"resolution_scale": 1.000000,
"msaa_samples": 1,
"fxaa": true,
"shadows": true,
"enable_lighting": true,
"solar_lighting": true,
"solar_light_intensity": 1.500000,
"maximum_screen_space_error": 4,
"terrain_enabled_in_3d": true,
"terrain_exaggeration": 5.000000,
"terrain_limit_maximum_level": true,
"terrain_maximum_level": 15,
"terrain_cache_tiles": 128,
"terrain_occlusion_enabled": false,
"surface_navigation_reference_visible": true,
"view_axes_visible": true,
"performance_panel_x": 12.000000,
"performance_panel_y": 92.000000,
"view_axes_panel_x": 3.000000,
"view_axes_panel_y": 337.000000,
"view_axes_panel_size": 184.000000,
"occlusion_sample_spacing_meters": 250.000000,
"occlusion_clearance_margin_meters": 10.000000
}
}