Configs.PORT = NetworkUtils.getUsableTCPPort("localhost", PORT) MyUtils.putLauncher('', Configs.PORT, isTeacher) if not isTeacher: from twisted.internet import glib2reactor glib2reactor.install() from twisted.internet import reactor from twisted.web import server ######### Begin the application loop ####### if isTeacher: logging.getLogger().debug("The user is a teacher") from ControlAula import TeacherMainLoop, Classroom from ControlAula.Utils import Publications NetworkUtils.getWirelessData() if MyUtils.isLTSPServer(): externalIP = NetworkUtils.get_ip_inet_address(NetworkUtils.ltspGW()) else: externalIP = NetworkUtils.get_ip_inet_address() if externalIP == '': externalIP = NetworkUtils.get_ip_inet_address('192.168.0.254') service = Publications.Publications(port = Configs.PORT, name = USERNAME + '@' + HOSTNAME, text = ["ipINET=" + externalIP, "web=" + str(Configs.PORT), "classroomname=" + Configs.RootConfigs['classroomname']]) service_controlies = Publications.Publications(stype = "_controlaula._udp", port = Configs.PORT, name = USERNAME + '@' + HOSTNAME, text = ["ipINET=" + externalIP, "web=" + str(Configs.PORT), "classroomname=" + Configs.RootConfigs['classroomname']]) service_controlies.publish() try: # in case cache are filled with a previous "bad stopped" instance of controlaula service.unpublish() service_controlies.unpublish() sleep(0.1) except: pass