diff --git a/csdr.py b/csdr.py index c542197..412fda2 100644 --- a/csdr.py +++ b/csdr.py @@ -65,7 +65,7 @@ class output(object): class dsp(object): def __init__(self, output): self.samp_rate = 250000 - self.output_rate = 11025 # this is default, and cannot be set at the moment + self.output_rate = 11025 self.fft_size = 1024 self.fft_fps = 5 self.offset_freq = 0 @@ -80,7 +80,7 @@ class dsp(object): self.demodulator = "nfm" self.name = "csdr" self.base_bufsize = 512 - self.nc_port = 4951 + self.nc_port = None self.csdr_dynamic_bufsize = False self.csdr_print_bufsizes = False self.csdr_through = False @@ -108,9 +108,13 @@ class dsp(object): self.modification_lock = threading.Lock() self.output = output self.temporary_directory = "/tmp" + self.is_service = False self.direwolf_config = None self.direwolf_port = None + def set_service(self, flag=True): + self.is_service = flag + def set_temporary_directory(self, what): self.temporary_directory = what @@ -563,7 +567,7 @@ class dsp(object): ) self.direwolf_port = KissClient.getFreePort() file = open(self.direwolf_config, "w") - file.write(DirewolfConfig().getConfig(self.direwolf_port)) + file.write(DirewolfConfig().getConfig(self.direwolf_port, self.is_service)) file.close() else: self.direwolf_config = None diff --git a/owrx/kiss.py b/owrx/kiss.py index 82d21b1..1ea9408 100644 --- a/owrx/kiss.py +++ b/owrx/kiss.py @@ -13,7 +13,7 @@ TFESC = 0xDD class DirewolfConfig(object): - def getConfig(self, port): + def getConfig(self, port, is_service): pm = PropertyManager.getSharedInstance() config = """ @@ -29,7 +29,7 @@ AGWPORT off port=port, callsign=pm["aprs_callsign"] ) - if pm["aprs_igate_enabled"]: + if is_service and pm["aprs_igate_enabled"]: config += """ IGSERVER {server} IGLOGIN {callsign} {password} diff --git a/owrx/service.py b/owrx/service.py index 213d335..167ae1b 100644 --- a/owrx/service.py +++ b/owrx/service.py @@ -196,6 +196,7 @@ class ServiceHandler(object): d.set_secondary_demodulator(mode) d.set_audio_compression("none") d.set_samp_rate(source.getProps()["samp_rate"]) + d.set_service() d.start() return d