Пример #1
0
class ServerPublisher:

    def __init__(self):
        self.zero_conf = Zeroconf()

    def publish(self, host, port):
        log.debug('publishing server at %s:%s' % (host, port))
        hostname = gethostname()
        service_info = ServiceInfo("_checkers._tcp.local.", "%s._checkers._tcp.local." % hostname,
                                   inet_aton(host), port, 0, 0, {}, server=hostname + '.local')
        self.zero_conf.registerService(service_info)

    def shutdown(self):
        log.debug('shutting down server publisher')
        self.zero_conf.unregisterAllServices()
        self.zero_conf.close()