Proyecto

General

Perfil

« Anterior | Siguiente » 

Revisión 93

Avahi: ya detecta ltpsServers y profesores

Ver diferencias:

Server.py
#Root.PageDir='/home/chisco/Proyectos/controlies/www'
site = server.Site(Root)
fileName = '/tmp/controlIES.ltpsSevers'
fileNameServers = '/tmp/controlIES.ltpsSevers'
if os.path.isfile(fileNameServers):
os.remove(fileNameServers)
if os.path.isfile(fileName):
os.remove(fileName)
f = open(fileNameServers, 'w')
fileNameTeachers = '/tmp/controlIES.ltpsTeachers'
if os.path.isfile(fileNameTeachers):
os.remove(fileNameTeachers)
f = open(fileNameTeachers, 'w')
def _add_locationServers(self, name, address, port):
print name
computerToAdd = name.split(" ")
f = open(fileNameServers, 'a')
f.write(computerToAdd[0]+" ")
f.close()
f = open(fileName, 'w')
def _remove_locationServers(self, name, address, port):
computerToDelete = name.split(" ")
f = open(fileNameServers, 'r')
computersList = f.read()
f.close()
#print "computer list "+computerlist
#print "computer to delete "+computerToDelete[0]
computersList.replace(computerToDelete[0]+" ","")
#print "computer list "+computerList
f = open(fileNameServers, 'w')
f.write(computersList)
f.close()
def _add_location(self, name, address, port):
f = open(fileName, 'r+')
f.write(name)
def _add_locationTeachers(self, name, address, port):
print name
teacherToAdd = name.split(" ")
f = open(fileNameTeachers, 'a')
f.write(teacherToAdd[0]+" ")
f.close()
print "add"
def _remove_location(self, name, address, port):
print "remove"
#remove ipv6 entries:
if address.find(":") == -1:
print "removed:" + name,address,port
def _remove_locationTeachers(self, name, address, port):
teacherToDelete = name.split(" ")
f = open(fileNameTeachers, 'r')
teachersList = f.read()
f.close()
#print "computer list "+computerlist
#print "computer to delete "+computerToDelete[0]
teachersList.replace(teacherToDelete[0]+" ","")
#print "computer list "+computerList
f = open(fileNameTeachers, 'w')
f.write(teachersList)
f.close()
try:
_monitor = avahiClient('_workstation._tcp')
_monitor.add_callback('new-service', _add_locationServers)
_monitor.add_callback('remove-service', _remove_locationServers)
_monitor.start()
except Exception, ex:
error_msg = "Couldn't initialize Avahi monitor: %s" % str(ex)
#raise InitializeFailure(self.name, error_msg)
try:
_monitor = avahiClient()
_monitor.add_callback('new-service', _add_location)
_monitor.add_callback('remove-service', _remove_location)
_monitor = avahiClient('_controlaula._tcp')
_monitor.add_callback('new-service', _add_locationTeachers)
_monitor.add_callback('remove-service', _remove_locationTeachers)
_monitor.start()
except Exception, ex:
error_msg = "Couldn't initialize Avahi monitor: %s" % str(ex)
#raise InitializeFailure(self.name, error_msg)
from twisted.internet import reactor
reactor.listenTCP(7778,site)

Exportar a: Unified diff