Authority = Node.create(3, { "tag": "a", "authority": 1, "relay": 1, "torrc": "authority.tmpl" }) Relay = Node.create(5, { "tag": "r", "relay": 1, "torrc": "intro.tmpl" }) Client = Node.create(4, { "tag": "c", "torrc": "client.tmpl" }) initialNodes = Authority + Relay + Client HiddenService = Node( tag="h", hiddenservice=1, torrc="hidden-service.tmpl", hiddenservicetarget="127.0.0.1:8081" ) initialNodes.append(HiddenService) DelayedHiddenService = Node( tag="h", hiddenservice=1, torrc="hidden-service.tmpl", hiddenservicetarget="127.0.0.1:8082" ) def start(): if not all([ n.getController().start() for n in initialNodes ]): return False def log_listener(logevent): print(logevent.message) if "Successfully uploaded v2 rend descriptors" in logevent.message: DelayedHiddenService.getController().start() HiddenService.getStemController().add_event_listener(log_listener, EventType.INFO)