Ejemplo n.º 1
0
    if CONFIG['ALIASES']['TRY_DOWNLOAD'] == True:
        # Try updating peer aliases file
        result = try_download(CONFIG['ALIASES']['PATH'],
                              CONFIG['ALIASES']['PEER_FILE'],
                              CONFIG['ALIASES']['PEER_URL'],
                              CONFIG['ALIASES']['STALE_TIME'])
        logger.info(result)
        # Try updating subscriber aliases file
        result = try_download(CONFIG['ALIASES']['PATH'],
                              CONFIG['ALIASES']['SUBSCRIBER_FILE'],
                              CONFIG['ALIASES']['SUBSCRIBER_URL'],
                              CONFIG['ALIASES']['STALE_TIME'])
        logger.info(result)

    # Create the name-number mapping dictionaries
    peer_ids, subscriber_ids, talkgroup_ids = mk_aliases(CONFIG)

    # INITIALIZE THE REPORTING LOOP
    report_server = config_reports(CONFIG, reportFactory)

    # HBlink instance creation
    logger.info(
        'HBlink \'playback.py\' (c) 2017-2019 Cort Buffington, N0MJS & Mike Zingman, N4IRR -- SYSTEM STARTING...'
    )
    for system in CONFIG['SYSTEMS']:
        if CONFIG['SYSTEMS'][system]['ENABLED']:
            if CONFIG['SYSTEMS'][system]['MODE'] == 'OPENBRIDGE':
                logger.critical(
                    '%s FATAL: Instance is mode \'OPENBRIDGE\', \n\t\t...Which would be tragic for playback, since it carries multiple call\n\t\tstreams simultaneously. playback.py onlyl works with MMDVM-based systems',
                    system)
                sys.exit(
Ejemplo n.º 2
0
 # Set signal handers so that we can gracefully exit if need be
 for sig in [signal.SIGTERM, signal.SIGINT]:
     signal.signal(sig, sig_handler)
 
 # ID ALIAS CREATION
 # Download
 if CONFIG['ALIASES']['TRY_DOWNLOAD'] == True:
     # Try updating peer aliases file
     result = try_download(CONFIG['ALIASES']['PATH'], CONFIG['ALIASES']['PEER_FILE'], CONFIG['ALIASES']['PEER_URL'], CONFIG['ALIASES']['STALE_TIME'])
     logger.info(result)
     # Try updating subscriber aliases file
     result = try_download(CONFIG['ALIASES']['PATH'], CONFIG['ALIASES']['SUBSCRIBER_FILE'], CONFIG['ALIASES']['SUBSCRIBER_URL'], CONFIG['ALIASES']['STALE_TIME'])
     logger.info(result)
     
 # Create the name-number mapping dictionaries
 peer_ids, subscriber_ids, talkgroup_ids = mk_aliases(CONFIG)
     
 # INITIALIZE THE REPORTING LOOP
 report_server = config_reports(CONFIG, reportFactory)    
 
 # HBlink instance creation
 logger.info('HBlink \'hb_parrot.py\' (c) 2017 Mike Zingman, N4IRR -- SYSTEM STARTING...')
 for system in CONFIG['SYSTEMS']:
     if CONFIG['SYSTEMS'][system]['ENABLED']:
         if CONFIG['SYSTEMS'][system]['MODE'] == 'OPENBRIDGE':
             logger.critical('%s FATAL: Instance is mode \'OPENBRIDGE\', \n\t\t...Which would be tragic for parrot, since it carries multiple call\n\t\tstreams simultaneously. hb_parrot.py onlyl works with MMDVM-based systems', system)
             sys.exit('hb_parrot.py cannot function with systems that are not MMDVM devices. System {} is configured as an OPENBRIDGE'.format(system))
         else:
             systems[system] = parrot(system, CONFIG, report_server)
         reactor.listenUDP(CONFIG['SYSTEMS'][system]['PORT'], systems[system], interface=CONFIG['SYSTEMS'][system]['IP'])
         logger.debug('%s instance created: %s, %s', CONFIG['SYSTEMS'][system]['MODE'], system, systems[system])