def setup_session_config(self): from Tribler.Core.SessionConfig import SessionStartupConfig config = SessionStartupConfig() config.set_install_dir( os.path.abspath(os.path.join(BASE_DIR, "tribler"))) config.set_state_dir( os.path.abspath( os.path.join(BASE_DIR, "output", ".Tribler-%d") % getpid())) config.set_torrent_checking(False) config.set_multicast_local_peer_discovery(False) config.set_megacache(False) config.set_dispersy(True) config.set_mainline_dht(False) config.set_torrent_collecting(False) config.set_libtorrent(False) config.set_dht_torrent_collecting(False) config.set_enable_torrent_search(False) config.set_enable_channel_search(False) config.set_videoserver_enabled(False) config.set_http_api_enabled(False) config.set_upgrader_enabled(False) config.set_listen_port(20000 + self.scenario_runner._peernumber) if self.dispersy_port is None: self.dispersy_port = 21000 + self.scenario_runner._peernumber config.set_dispersy_port(self.dispersy_port) logging.error("Dispersy port set to %d" % self.dispersy_port) return config
def main(define_communities): command_line_parser = optparse.OptionParser() command_line_parser.add_option("--statedir", action="store", type="string", help="Use an alternate statedir") command_line_parser.add_option("--port", action="store", type="int", help="Listen at this port") command_line_parser.add_option("--nickname", action="store", type="string", help="The moderator name") # parse command-line arguments opt, args = command_line_parser.parse_args() logger.info( "Press Q followed by <ENTER> to stop the channelcast-supporter") sscfg = SessionStartupConfig() if opt.statedir: sscfg.set_state_dir(os.path.realpath(opt.statedir)) if opt.port: sscfg.set_listen_port(opt.port) if opt.nickname: sscfg.set_nickname(opt.nickname) sscfg.set_megacache(True) sscfg.set_dispersy(True) sscfg.set_torrent_collecting(True) session = Session(sscfg) session.start() dispersy = session.get_dispersy_instance() define_communities(session) try: while True: x = sys.stdin.readline() logger.info(repr(x)) if x.strip() == 'Q': break except: print_exc() session.shutdown() logger.info("Shutting down...") time.sleep(5)
def main(define_communities): command_line_parser = optparse.OptionParser() command_line_parser.add_option("--statedir", action="store", type="string", help="Use an alternate statedir") command_line_parser.add_option("--port", action="store", type="int", help="Listen at this port") command_line_parser.add_option("--nickname", action="store", type="string", help="The moderator name") # parse command-line arguments opt, args = command_line_parser.parse_args() logger.info("Press Q followed by <ENTER> to stop the channelcast-supporter") sscfg = SessionStartupConfig() if opt.statedir: sscfg.set_state_dir(os.path.realpath(opt.statedir)) if opt.port: sscfg.set_listen_port(opt.port) if opt.nickname: sscfg.set_nickname(opt.nickname) sscfg.set_megacache(True) sscfg.set_dispersy(True) sscfg.set_torrent_collecting(True) session = Session(sscfg) session.start() dispersy = session.get_dispersy_instance() define_communities(session) try: while True: x = sys.stdin.readline() logger.info(repr(x)) if x.strip() == 'Q': break except: print_exc() session.shutdown() logger.info("Shutting down...") time.sleep(5)
def start_tribler(self, options): """ Main method to startup Tribler. """ def on_tribler_shutdown(_): msg("Tribler shut down") reactor.stop() self.process_checker.remove_lock_file() def signal_handler(sig, _): msg("Received shut down signal %s" % sig) if not self._stopping: self._stopping = True self.session.shutdown().addCallback(on_tribler_shutdown) signal.signal(signal.SIGINT, signal_handler) signal.signal(signal.SIGTERM, signal_handler) config = SessionStartupConfig().load( ) # Load the default configuration file config.set_http_api_enabled(True) # Check if we are already running a Tribler instance self.process_checker = ProcessChecker() if self.process_checker.already_running: self.shutdown_process( "Another Tribler instance is already using statedir %s" % config.get_state_dir()) return msg("Starting Tribler") if options["statedir"]: config.set_state_dir(options["statedir"]) if options["restapi"] > 0: config.set_http_api_enabled(True) config.set_http_api_port(options["restapi"]) if options["dispersy"] != -1 and options["dispersy"] > 0: config.set_dispersy_port(options["dispersy"]) if options["libtorrent"] != -1 and options["libtorrent"] > 0: config.set_listen_port(options["libtorrent"]) self.session = Session(config) self.session.start().addErrback( lambda failure: self.shutdown_process(failure.getErrorMessage())) msg("Tribler started") if "auto-join-channel" in options and options["auto-join-channel"]: msg("Enabling auto-joining of channels") for community in self.session.get_dispersy_instance( ).get_communities(): if isinstance(community, AllChannelCommunity): community.auto_join_channel = True if "log-incoming-searches" in options and options[ "log-incoming-searches"]: msg("Logging incoming remote searches") for community in self.session.get_dispersy_instance( ).get_communities(): if isinstance(community, SearchCommunity): community.log_incoming_searches = self.log_incoming_remote_search