lede-packages-rs

git clone git://archive.git.mtrnord.blog/MTRNord/lede-packages-rs.git
Log | Files | Refs | README | LICENSE

dump1090.init (3052B)


      1 #!/bin/sh /etc/rc.common
      2 # Copyright (C) 2014-2016 OpenWrt.org
      3 
      4 START=90
      5 STOP=10
      6 USE_PROCD=1
      7 
      8 append_arg() {
      9 	local cfg="$1"
     10 	local var="$2"
     11 	local opt="$3"
     12 	local def="$4"
     13 	local val
     14 
     15 	config_get val "$cfg" "$var"
     16 	[ -n "$val" -o -n "$def" ] && procd_append_param command $opt "${val:-$def}"
     17 }
     18 
     19 append_bool() {
     20 	local cfg="$1"
     21 	local var="$2"
     22 	local opt="$3"
     23 	local def="$4"
     24 	local val
     25 
     26 	config_get_bool val "$cfg" "$var" "$def"
     27 	[ "$val" = 1 ] && procd_append_param command "$opt"
     28 }
     29 
     30 start_instance() {
     31 	local cfg="$1"
     32 	local aux
     33 
     34 	config_get_bool aux "$cfg" 'disabled' '0'
     35 	[ "$aux" = 1 ] && return 1
     36 
     37 	procd_open_instance
     38 
     39 	procd_set_param command /usr/bin/dump1090
     40 	procd_append_param command "--quiet"
     41 
     42 	append_arg "$cfg" device_index "--device-index"
     43 	append_arg "$cfg" gain "--gain"
     44 	append_bool "$cfg" enable_agc "--enable-agc"
     45 	append_arg "$cfg" freq "--freq"
     46 	append_arg "$cfg" ifile "--ifile"
     47 	append_arg "$cfg" iformat "--iformat"
     48 	append_bool "$cfg" throttle "--throttle"
     49 	append_bool "$cfg" raw "--raw"
     50 	append_bool "$cfg" net "--net"
     51 	append_bool "$cfg" modeac "--modeac"
     52 	append_bool "$cfg" net_only "--net-only"
     53 	append_arg "$cfg" net_bind_address "--net-bind-address"
     54 	append_arg "$cfg" net_ri_port "--net-ri-port"
     55 	append_arg "$cfg" net_ro_port "--net-ro-port"
     56 	append_arg "$cfg" net_sbs_port "--net-sbs-port"
     57 	append_arg "$cfg" net_bi_port "--net-bi-port"
     58 	append_arg "$cfg" net_bo_port "--net-bo-port"
     59 	append_arg "$cfg" net_ro_size "--net-ro-size"
     60 	append_arg "$cfg" net_ro_interval "--net-ro-interval"
     61 	append_arg "$cfg" net_heartbeat "--net-heartbeat"
     62 	append_arg "$cfg" net_buffer "--net-buffer"
     63 	append_bool "$cfg" net_verbatim "--net-verbatim"
     64 	append_bool "$cfg" forward_mlat "--forward-mlat"
     65 	append_arg "$cfg" lat "--lat"
     66 	append_arg "$cfg" lon "--lon"
     67 	append_arg "$cfg" max_range "--max-range"
     68 	append_bool "$cfg" fix "--fix"
     69 	append_bool "$cfg" no_fix "--no-fix"
     70 	append_bool "$cfg" no_crc_check "--no-crc-check"
     71 	append_bool "$cfg" phase_enhance "--phase-enhance"
     72 	append_bool "$cfg" mlat "--mlat"
     73 	append_bool "$cfg" stats "--stats"
     74 	append_bool "$cfg" stats_range "--stats-range"
     75 	append_arg "$cfg" stats_every "--stats-every"
     76 	append_bool "$cfg" onlyaddr "--onlyaddr"
     77 	append_bool "$cfg" metric "--metric"
     78 	append_bool "$cfg" gnss "--gnss"
     79 	append_arg "$cfg" snip "--snip"
     80 	append_arg "$cfg" debug "--debug"
     81 	append_arg "$cfg" ppm "--ppm"
     82 	append_arg "$cfg" html_dir "--html-dir"
     83 	append_arg "$cfg" write_json "--write-json"
     84 	config_get aux "$cfg" "write_json"
     85 	[ -n "$aux" ] && mkdir -p $aux
     86 	append_arg "$cfg" write_json_every "--write-json-every"
     87 	append_arg "$cfg" json_location_accuracy "--json-location-accuracy"
     88 	append_bool "$cfg" oversample "--oversample"
     89 	append_bool "$cfg" dcfilter "--dcfilter"
     90 	append_bool "$cfg" measure_noise "--measure-noise"
     91 
     92 	config_get_bool aux "$cfg" 'respawn' '0'
     93 	[ "$aux" = 1 ] && procd_set_param respawn
     94 
     95 	procd_close_instance
     96 }
     97 
     98 service_triggers() {
     99 	procd_add_reload_trigger "dump1090"
    100 }
    101 
    102 start_service() {
    103 	config_load dump1090
    104 	config_foreach start_instance dump1090
    105 }