From 702159d20c885cdda14baca4a3a40917da20d732 Mon Sep 17 00:00:00 2001 From: Cort Buffington Date: Sat, 27 May 2017 09:00:54 -0500 Subject: [PATCH 1/6] Update copyright --- dmrlink.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dmrlink.py b/dmrlink.py index 56a496c..0954fa6 100755 --- a/dmrlink.py +++ b/dmrlink.py @@ -1079,7 +1079,7 @@ if __name__ == '__main__': if cli_args.LOG_HANDLERS: CONFIG['LOGGER']['LOG_HANDLERS'] = cli_args.LOG_HANDLERS logger = config_logging(CONFIG['LOGGER']) - logger.info('DMRlink \'dmrlink.py\' (c) 2013 - 2015 N0MJS & the K0USY Group - SYSTEM STARTING...') + logger.info('DMRlink \'dmrlink.py\' (c) 2013 - 2017 N0MJS & the K0USY Group - SYSTEM STARTING...') # Set signal handers so that we can gracefully exit if need be def sig_handler(_signal, _frame): From 0fe54ad948576bf5f5ccd5bac8b20ad83956a94b Mon Sep 17 00:00:00 2001 From: Steve N4IRS Date: Mon, 29 May 2017 07:25:09 -0400 Subject: [PATCH 2/6] Update install script and fix missing section --- dmrlink_SAMPLE.cfg | 1 + ipsc/dmrlink_config.py | 3 ++- mk-dmrlink | 58 +++++++++++++----------------------------- 3 files changed, 21 insertions(+), 41 deletions(-) diff --git a/dmrlink_SAMPLE.cfg b/dmrlink_SAMPLE.cfg index 321fef5..22593a9 100644 --- a/dmrlink_SAMPLE.cfg +++ b/dmrlink_SAMPLE.cfg @@ -84,6 +84,7 @@ LOG_NAME: DMRlink # download again. Don't be an ass and change this to less than a few days. [ALIASES] TRY_DOWNLOAD: True +LOCAL_FILE: False PATH: ./ PEER_FILE: peer_ids.csv SUBSCRIBER_FILE: subscriber_ids.csv diff --git a/ipsc/dmrlink_config.py b/ipsc/dmrlink_config.py index 812c119..2e3067b 100755 --- a/ipsc/dmrlink_config.py +++ b/ipsc/dmrlink_config.py @@ -194,6 +194,7 @@ def build_config(_config_file): CONFIG['SYSTEMS'][section]['LOCAL']['FLAGS'] = '\x00\x00'+chr(FLAG_1)+chr(FLAG_2) except ConfigParser.Error, err: + print(err) sys.exit('Could not parse configuration file, exiting...') return CONFIG @@ -221,4 +222,4 @@ if __name__ == '__main__': cli_args.CONFIG_FILE = os.path.dirname(os.path.abspath(__file__))+'/dmrlink.cfg' - pprint(build_config(cli_args.CONFIG_FILE)) \ No newline at end of file + pprint(build_config(cli_args.CONFIG_FILE)) diff --git a/mk-dmrlink b/mk-dmrlink index 4f451d5..16f869a 100755 --- a/mk-dmrlink +++ b/mk-dmrlink @@ -25,10 +25,6 @@ echo "Required programs installed, continuing" # You need multiple ipsc directories, dmrlink.py and dmrlink.cfg # The needed files are copied to /opt/dmrlink -# Put scripts in /opt/dmrlink -# cp /srv/DMRlink/get_ids.sh /opt/dmrlink # should be linked to /etc/cron.daily -# cp /srv/DMRlink/init.d/bridge /opt/dmrlink/rc.bridge - # Make needed directories mkdir -p /opt/dmrlink/ambe_audio/ mkdir -p /opt/dmrlink/bridge/ @@ -36,18 +32,18 @@ echo "Required programs installed, continuing" mkdir -p /opt/dmrlink/log/ mkdir -p /opt/dmrlink/playback/ mkdir -p /opt/dmrlink/play_group/ - mkdir -p /opt/dmrlink/record/ + mkdir -p /opt/dmrlink/proxy/ mkdir -p /opt/dmrlink/rcm/ + mkdir -p /opt/dmrlink/record/ mkdir -p /opt/dmrlink/samples mkdir -p /var/log/dmrlink cd /opt/dmrlink # Put common files in /opt/dmrlink -cp /srv/DMRlink/get_ids.sh /opt/dmrlink -cp /srv/DMRlink/peer_ids.csv /opt/dmrlink -cp /srv/DMRlink/subscriber_ids.csv /opt/dmrlink -cp /srv/DMRlink/talkgroup_ids.csv /opt/dmrlink +# cp /srv/DMRlink/peer_ids.csv /opt/dmrlink +# cp /srv/DMRlink/subscriber_ids.csv /opt/dmrlink +# cp /srv/DMRlink/talkgroup_ids.csv /opt/dmrlink # Copy ipsc directory into each app directory cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/ambe_audio/ @@ -56,8 +52,9 @@ cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/confbridge/ cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/log/ cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/playback/ cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/play_group/ -cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/record/ +cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/proxy/ cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/rcm/ +cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/record/ # Put a copy of the samples together for easy reference cp /srv/DMRlink/bridge_rules_SAMPLE.py /opt/dmrlink/samples @@ -76,9 +73,6 @@ cp /srv/DMRlink/ambe_audio_commands.txt /opt/dmrlink/documents # ambe_audio cp /srv/DMRlink/dmrlink.py /opt/dmrlink/ambe_audio/ -cp /srv/DMRlink/dmrlink_config.py /opt/dmrlink/ambe_audio/ -cp /srv/DMRlink/dmrlink_log.py /opt/dmrlink/ambe_audio/ -cp /srv/DMRlink/template.py /opt/dmrlink/ambe_audio/ cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/ambe_audio/ # cp /srv/DMRlink/ambe_audio.cfg /opt/dmrlink/ambe_audio/ @@ -88,9 +82,6 @@ cp /srv/DMRlink/template.bin /opt/dmrlink/ambe_audio/ # Bridge app cp /srv/DMRlink/dmrlink.py /opt/dmrlink/bridge/ -cp /srv/DMRlink/dmrlink_config.py /opt/dmrlink/bridge/ -cp /srv/DMRlink/dmrlink_log.py /opt/dmrlink/bridge/ -cp /srv/DMRlink/template.py /opt/dmrlink/bridge/ cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/bridge/ # cp /srv/DMRlink/bridge.py /opt/dmrlink/bridge/ @@ -100,31 +91,21 @@ cp /srv/DMRlink/sub_acl_SAMPLE.py /opt/dmrlink/bridge/ # ConfBridge app cp /srv/DMRlink/dmrlink.py /opt/dmrlink/confbridge/ -cp /srv/DMRlink/dmrlink_config.py /opt/dmrlink/confbridge/ -cp /srv/DMRlink/dmrlink_log.py /opt/dmrlink/confbridge/ -cp /srv/DMRlink/template.py /opt/dmrlink/confbridge/ cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/confbridge/ # cp /srv/DMRlink/confbridge.py /opt/dmrlink/confbridge/ cp /srv/DMRlink/confbridge_rules_SAMPLE.py /opt/dmrlink/confbridge/ -# Need these? cp /srv/DMRlink/known_bridges_SAMPLE.py /opt/dmrlink/confbridge/ cp /srv/DMRlink/sub_acl_SAMPLE.py /opt/dmrlink/confbridge/ # Log app cp /srv/DMRlink/dmrlink.py /opt/dmrlink/log/ -cp /srv/DMRlink/dmrlink_config.py /opt/dmrlink/log/ -cp /srv/DMRlink/dmrlink_log.py /opt/dmrlink/log/ -cp /srv/DMRlink/template.py /opt/dmrlink/log/ cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/log/ # cp /srv/DMRlink/log.py /opt/dmrlink/log/ # Playback (Parrot) cp /srv/DMRlink/dmrlink.py /opt/dmrlink/playback/ -cp /srv/DMRlink/dmrlink_config.py /opt/dmrlink/playback/ -cp /srv/DMRlink/dmrlink_log.py /opt/dmrlink/playback/ -cp /srv/DMRlink/template.py /opt/dmrlink/playback/ cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/playback/ # cp /srv/DMRlink/playback.py /opt/dmrlink/playback/ @@ -132,31 +113,28 @@ cp /srv/DMRlink/playback_config_SAMPLE.py /opt/dmrlink/playback/ # Play Group app cp /srv/DMRlink/dmrlink.py /opt/dmrlink/play_group/ -cp /srv/DMRlink/dmrlink_config.py /opt/dmrlink/play_group/ -cp /srv/DMRlink/dmrlink_log.py /opt/dmrlink/play_group/ -cp /srv/DMRlink/template.py /opt/dmrlink/play_group/ cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/play_group/ # cp /srv/DMRlink/play_group.py /opt/dmrlink/play_group/ -# record app -cp /srv/DMRlink/dmrlink.py /opt/dmrlink/record/ -cp /srv/DMRlink/dmrlink_config.py /opt/dmrlink/record/ -cp /srv/DMRlink/dmrlink_log.py /opt/dmrlink/record/ -cp /srv/DMRlink/template.py /opt/dmrlink/record/ -cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/record/ +# proxy app +cp /srv/DMRlink/dmrlink.py /opt/dmrlink/proxy/ +cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/rcm/ # -cp /srv/DMRlink/record.py /opt/dmrlink/record/ +cp /srv/DMRlink/proxy.py /opt/dmrlink/proxy/ +cp /srv/DMRlink/known_bridges_SAMPLE.py /opt/dmrlink/proxy/ +cp /srv/DMRlink/sub_acl_SAMPLE.py /opt/dmrlink/proxy/ # rcm app cp /srv/DMRlink/dmrlink.py /opt/dmrlink/rcm/ -cp /srv/DMRlink/dmrlink_config.py /opt/dmrlink/rcm/ -cp /srv/DMRlink/dmrlink_log.py /opt/dmrlink/rcm/ -cp /srv/DMRlink/template.py /opt/dmrlink/rcm/ cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/rcm/ # cp /srv/DMRlink/rcm_db_log.py /opt/dmrlink/rcm/ cp /srv/DMRlink/rcm.py /opt/dmrlink/rcm/ -cp /srv/DMRlink/pickle_stat_reader.py /opt/dmrlink/rcm/ +# record app +cp /srv/DMRlink/dmrlink.py /opt/dmrlink/record/ +cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/record/ +# +cp /srv/DMRlink/record.py /opt/dmrlink/record/ From 36a7092bfbd60076d09a24cec6ba3b2a43624806 Mon Sep 17 00:00:00 2001 From: Steve N4IRS Date: Mon, 29 May 2017 07:56:32 -0400 Subject: [PATCH 3/6] Generalize the install source directory location --- mk-dmrlink | 132 ++++++++++++++++++++++++++++------------------------- 1 file changed, 69 insertions(+), 63 deletions(-) diff --git a/mk-dmrlink b/mk-dmrlink index 16f869a..de526d8 100755 --- a/mk-dmrlink +++ b/mk-dmrlink @@ -1,5 +1,11 @@ #! /bin/bash +currentdir=`pwd` + +echo "Current working directory is" $currentdir + +echo "" + ################################################# # # # Install DMRlink in seperate directories by # @@ -41,100 +47,100 @@ echo "Required programs installed, continuing" cd /opt/dmrlink # Put common files in /opt/dmrlink -# cp /srv/DMRlink/peer_ids.csv /opt/dmrlink -# cp /srv/DMRlink/subscriber_ids.csv /opt/dmrlink -# cp /srv/DMRlink/talkgroup_ids.csv /opt/dmrlink +# cp $currentdir/peer_ids.csv /opt/dmrlink +# cp $currentdir/subscriber_ids.csv /opt/dmrlink +# cp $currentdir/talkgroup_ids.csv /opt/dmrlink # Copy ipsc directory into each app directory -cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/ambe_audio/ -cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/bridge/ -cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/confbridge/ -cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/log/ -cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/playback/ -cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/play_group/ -cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/proxy/ -cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/rcm/ -cp -rf /srv/DMRlink/ipsc/ /opt/dmrlink/record/ +cp -rf $currentdir/ipsc/ /opt/dmrlink/ambe_audio/ +cp -rf $currentdir/ipsc/ /opt/dmrlink/bridge/ +cp -rf $currentdir/ipsc/ /opt/dmrlink/confbridge/ +cp -rf $currentdir/ipsc/ /opt/dmrlink/log/ +cp -rf $currentdir/ipsc/ /opt/dmrlink/playback/ +cp -rf $currentdir/ipsc/ /opt/dmrlink/play_group/ +cp -rf $currentdir/ipsc/ /opt/dmrlink/proxy/ +cp -rf $currentdir/ipsc/ /opt/dmrlink/rcm/ +cp -rf $currentdir/ipsc/ /opt/dmrlink/record/ # Put a copy of the samples together for easy reference -cp /srv/DMRlink/bridge_rules_SAMPLE.py /opt/dmrlink/samples -cp /srv/DMRlink/confbridge_rules_SAMPLE.py /opt/dmrlink/samples -cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/samples -cp /srv/DMRlink/known_bridges_SAMPLE.py /opt/dmrlink/samples -cp /srv/DMRlink/playback_config_SAMPLE.py /opt/dmrlink/samples -cp /srv/DMRlink/ambe_audio.cfg /opt/dmrlink/samples -cp /srv/DMRlink/sub_acl_SAMPLE.py /opt/dmrlink/samples +cp $currentdir/bridge_rules_SAMPLE.py /opt/dmrlink/samples +cp $currentdir/confbridge_rules_SAMPLE.py /opt/dmrlink/samples +cp $currentdir/dmrlink_SAMPLE.cfg /opt/dmrlink/samples +cp $currentdir/known_bridges_SAMPLE.py /opt/dmrlink/samples +cp $currentdir/playback_config_SAMPLE.py /opt/dmrlink/samples +cp $currentdir/ambe_audio.cfg /opt/dmrlink/samples +cp $currentdir/sub_acl_SAMPLE.py /opt/dmrlink/samples # Put the doc together for easy reference -cp -rf /srv/DMRlink/documents /opt/dmrlink -cp /srv/DMRlink/LICENSE.txt /opt/dmrlink/documents -cp /srv/DMRlink/requirements.txt /opt/dmrlink/documents -cp /srv/DMRlink/ambe_audio_commands.txt /opt/dmrlink/documents +cp -rf $currentdir/documents /opt/dmrlink +cp $currentdir/LICENSE.txt /opt/dmrlink/documents +cp $currentdir/requirements.txt /opt/dmrlink/documents +cp $currentdir/ambe_audio_commands.txt /opt/dmrlink/documents # ambe_audio -cp /srv/DMRlink/dmrlink.py /opt/dmrlink/ambe_audio/ -cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/ambe_audio/ +cp $currentdir/dmrlink.py /opt/dmrlink/ambe_audio/ +cp $currentdir/dmrlink_SAMPLE.cfg /opt/dmrlink/ambe_audio/ # -cp /srv/DMRlink/ambe_audio.cfg /opt/dmrlink/ambe_audio/ -cp /srv/DMRlink/ambe_audio.py /opt/dmrlink/ambe_audio/ -cp /srv/DMRlink/ambe_audio_commands.txt /opt/dmrlink/ambe_audio/ -cp /srv/DMRlink/template.bin /opt/dmrlink/ambe_audio/ +cp $currentdir/ambe_audio.cfg /opt/dmrlink/ambe_audio/ +cp $currentdir/ambe_audio.py /opt/dmrlink/ambe_audio/ +cp $currentdir/ambe_audio_commands.txt /opt/dmrlink/ambe_audio/ +cp $currentdir/template.bin /opt/dmrlink/ambe_audio/ # Bridge app -cp /srv/DMRlink/dmrlink.py /opt/dmrlink/bridge/ -cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/bridge/ +cp $currentdir/dmrlink.py /opt/dmrlink/bridge/ +cp $currentdir/dmrlink_SAMPLE.cfg /opt/dmrlink/bridge/ # -cp /srv/DMRlink/bridge.py /opt/dmrlink/bridge/ -cp /srv/DMRlink/bridge_rules_SAMPLE.py /opt/dmrlink/bridge/ -cp /srv/DMRlink/known_bridges_SAMPLE.py /opt/dmrlink/bridge/ -cp /srv/DMRlink/sub_acl_SAMPLE.py /opt/dmrlink/bridge/ +cp $currentdir/bridge.py /opt/dmrlink/bridge/ +cp $currentdir/bridge_rules_SAMPLE.py /opt/dmrlink/bridge/ +cp $currentdir/known_bridges_SAMPLE.py /opt/dmrlink/bridge/ +cp $currentdir/sub_acl_SAMPLE.py /opt/dmrlink/bridge/ # ConfBridge app -cp /srv/DMRlink/dmrlink.py /opt/dmrlink/confbridge/ -cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/confbridge/ +cp $currentdir/dmrlink.py /opt/dmrlink/confbridge/ +cp $currentdir/dmrlink_SAMPLE.cfg /opt/dmrlink/confbridge/ # -cp /srv/DMRlink/confbridge.py /opt/dmrlink/confbridge/ -cp /srv/DMRlink/confbridge_rules_SAMPLE.py /opt/dmrlink/confbridge/ -cp /srv/DMRlink/known_bridges_SAMPLE.py /opt/dmrlink/confbridge/ -cp /srv/DMRlink/sub_acl_SAMPLE.py /opt/dmrlink/confbridge/ +cp $currentdir/confbridge.py /opt/dmrlink/confbridge/ +cp $currentdir/confbridge_rules_SAMPLE.py /opt/dmrlink/confbridge/ +cp $currentdir/known_bridges_SAMPLE.py /opt/dmrlink/confbridge/ +cp $currentdir/sub_acl_SAMPLE.py /opt/dmrlink/confbridge/ # Log app -cp /srv/DMRlink/dmrlink.py /opt/dmrlink/log/ -cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/log/ +cp $currentdir/dmrlink.py /opt/dmrlink/log/ +cp $currentdir/dmrlink_SAMPLE.cfg /opt/dmrlink/log/ # -cp /srv/DMRlink/log.py /opt/dmrlink/log/ +cp $currentdir/log.py /opt/dmrlink/log/ # Playback (Parrot) -cp /srv/DMRlink/dmrlink.py /opt/dmrlink/playback/ -cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/playback/ +cp $currentdir/dmrlink.py /opt/dmrlink/playback/ +cp $currentdir/dmrlink_SAMPLE.cfg /opt/dmrlink/playback/ # -cp /srv/DMRlink/playback.py /opt/dmrlink/playback/ -cp /srv/DMRlink/playback_config_SAMPLE.py /opt/dmrlink/playback/ +cp $currentdir/playback.py /opt/dmrlink/playback/ +cp $currentdir/playback_config_SAMPLE.py /opt/dmrlink/playback/ # Play Group app -cp /srv/DMRlink/dmrlink.py /opt/dmrlink/play_group/ -cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/play_group/ +cp $currentdir/dmrlink.py /opt/dmrlink/play_group/ +cp $currentdir/dmrlink_SAMPLE.cfg /opt/dmrlink/play_group/ # -cp /srv/DMRlink/play_group.py /opt/dmrlink/play_group/ +cp $currentdir/play_group.py /opt/dmrlink/play_group/ # proxy app -cp /srv/DMRlink/dmrlink.py /opt/dmrlink/proxy/ -cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/rcm/ +cp $currentdir/dmrlink.py /opt/dmrlink/proxy/ +cp $currentdir/dmrlink_SAMPLE.cfg /opt/dmrlink/rcm/ # -cp /srv/DMRlink/proxy.py /opt/dmrlink/proxy/ -cp /srv/DMRlink/known_bridges_SAMPLE.py /opt/dmrlink/proxy/ -cp /srv/DMRlink/sub_acl_SAMPLE.py /opt/dmrlink/proxy/ +cp $currentdir/proxy.py /opt/dmrlink/proxy/ +cp $currentdir/known_bridges_SAMPLE.py /opt/dmrlink/proxy/ +cp $currentdir/sub_acl_SAMPLE.py /opt/dmrlink/proxy/ # rcm app -cp /srv/DMRlink/dmrlink.py /opt/dmrlink/rcm/ -cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/rcm/ +cp $currentdir/dmrlink.py /opt/dmrlink/rcm/ +cp $currentdir/dmrlink_SAMPLE.cfg /opt/dmrlink/rcm/ # -cp /srv/DMRlink/rcm_db_log.py /opt/dmrlink/rcm/ -cp /srv/DMRlink/rcm.py /opt/dmrlink/rcm/ +cp $currentdir/rcm_db_log.py /opt/dmrlink/rcm/ +cp $currentdir/rcm.py /opt/dmrlink/rcm/ # record app -cp /srv/DMRlink/dmrlink.py /opt/dmrlink/record/ -cp /srv/DMRlink/dmrlink_SAMPLE.cfg /opt/dmrlink/record/ +cp $currentdir/dmrlink.py /opt/dmrlink/record/ +cp $currentdir/dmrlink_SAMPLE.cfg /opt/dmrlink/record/ # -cp /srv/DMRlink/record.py /opt/dmrlink/record/ +cp $currentdir/record.py /opt/dmrlink/record/ From 018ecfebc7c5420ca82195dae91564a54d38def1 Mon Sep 17 00:00:00 2001 From: M0NWI Date: Tue, 13 Jun 2017 13:46:17 +0100 Subject: [PATCH 4/6] Add files via upload Fixed issue where ACL list and action were both being imported as ACTION. --- bridge.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bridge.py b/bridge.py index 1806715..d99f436 100755 --- a/bridge.py +++ b/bridge.py @@ -132,7 +132,7 @@ def build_acl(_sub_acl): acl_file.ACL[i] = hex_str_3(acl_file.ACL[i]) logger.info('ACL file found and ACL entries imported') ACL_ACTION = acl_file.ACL_ACTION - ACL = acl_file.ACL_ACTION + ACL = acl_file.ACL except ImportError: logger.info('ACL file not found or invalid - all subscriber IDs are valid') ACL_ACTION = 'NONE' From 7edb7e26d5fa7bba1e0efadc4c983ee6966f3ccf Mon Sep 17 00:00:00 2001 From: M0NWI Date: Tue, 13 Jun 2017 13:55:05 +0100 Subject: [PATCH 5/6] Add files via upload Corrected wrong copy too directory for the proxy, not RCM, probably a cut and paste issue. --- mk-dmrlink | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk-dmrlink b/mk-dmrlink index de526d8..fe2d080 100755 --- a/mk-dmrlink +++ b/mk-dmrlink @@ -125,7 +125,7 @@ cp $currentdir/play_group.py /opt/dmrlink/play_group/ # proxy app cp $currentdir/dmrlink.py /opt/dmrlink/proxy/ -cp $currentdir/dmrlink_SAMPLE.cfg /opt/dmrlink/rcm/ +cp $currentdir/dmrlink_SAMPLE.cfg /opt/dmrlink/proxy/ # cp $currentdir/proxy.py /opt/dmrlink/proxy/ cp $currentdir/known_bridges_SAMPLE.py /opt/dmrlink/proxy/ From 62fc209b4ff012ea01541231fcd131bc6344948b Mon Sep 17 00:00:00 2001 From: Cort Buffington Date: Fri, 23 Jun 2017 16:04:45 -0500 Subject: [PATCH 6/6] fix TS parsing during trigger action --- confbridge.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/confbridge.py b/confbridge.py index bf87ad7..5cac329 100755 --- a/confbridge.py +++ b/confbridge.py @@ -373,7 +373,7 @@ class confbridgeIPSC(IPSC): if _system['SYSTEM'] == self._system: # TGID matches an ACTIVATION trigger - if _dst_group in _system['ON']: + if _dst_group in _system['ON'] and _ts == _system['TS']: # Set the matching rule as ACTIVE if _system['ACTIVE'] == False: _system['ACTIVE'] = True @@ -388,7 +388,7 @@ class confbridgeIPSC(IPSC): self._logger.info('(%s) Bridge: %s, timeout timer reset to: %s', self._system, _bridge, _system['TIMER'] - now) # TGID matches an DE-ACTIVATION trigger - if _dst_group in _system['OFF']: + if _dst_group in _system['OFF'] and _ts == _system['TS']: # Set the matching rule as ACTIVE if _system['ACTIVE'] == True: _system['ACTIVE'] = False