recentmissed +=1 lastblock = witness["last_confirmed_block_num"] print("EMERGENCY!!! total missed = " + str(missed) + " recent missed = " + str(recentmissed)) elif emergencyblock < block - 600: emergency = False switch(config.witnessname, config.publickeys, missed) recentmissed = 0 print("attempting to switch back to primary nodes") elif recentmissed == len(config.emergencykeys) * 2: emergency = False switch(config.witnessname, config.publickeys, missed) recentmissed = 0 print("attempting to switch back to primary nodes") else: time.sleep(3) info = rpc.info() block = info["head_block_num"] age = info["head_block_age"] participation = info["participation"] print(str(block) + " " + str(age) + " " + str(participation)) elif recentmissed > len(config.publickeys) * 2: emergency = True missed = getmissed(config.witnessname) switch(config.witnessname, config.emergencykeys, missed) recentmissed = 0 lastblock = witness["last_confirmed_block_num"] print("all primary nodes down. switching to emergency nodes") emergencyblock = block elif missed <= getmissed(config.witnessname) - config.strictness: missed = getmissed(config.witnessname) switch(config.witnessname, config.publickeys, missed)