def add_service_type(self, type):
interface, protocol, domain = (
self.interface, self.protocol, self.domain)
# Are we already browsing this domain for this type?
if self.already_browsing(type):
return
logger.info("Browsing for services of type '%s' in domain '%s' on %s.%i ..." %
(type, domain, self.siocgifname(interface), protocol))
browser = self.server.ServiceBrowserNew(
interface, protocol, type, domain, dbus.UInt32(0))
bus = dbus.Interface(self.system_bus.get_object(
avahi.DBUS_NAME, browser), avahi.DBUS_INTERFACE_SERVICE_BROWSER)
bus.connect_to_signal('ItemNew', self.service_add)
bus.connect_to_signal('ItemRemove', self.service_remove)
self.service_browsers[(interface, protocol, type, domain)] = bus
评论列表
文章目录