From f5efdb5d9d8eea5550d0668705a8c7468337118b Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 28 Jul 2005 14:07:31 +0000 Subject: * DBUS: implement org.freedesktop.Avahi.GetVersionString() * DBUS: implement org.freedesktop.Avahi.DomainBrowserNew() * DBUS: Some preliminary support for missing DBUS APIs git-svn-id: file:///home/lennart/svn/public/avahi/trunk@184 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe --- avahi-daemon/dbus-test.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'avahi-daemon/dbus-test.py') diff --git a/avahi-daemon/dbus-test.py b/avahi-daemon/dbus-test.py index c75faf3..11dd5ae 100755 --- a/avahi-daemon/dbus-test.py +++ b/avahi-daemon/dbus-test.py @@ -16,6 +16,8 @@ def server_state_changed_callback(t): server.connect_to_signal("StateChanged", server_state_changed_callback) +print "Version String: ", server.GetVersionString() + print server.ResolveHostName(0, 0, "ecstasy.local", 0) print server.ResolveAddress(0, 0, "192.168.50.4") @@ -23,26 +25,32 @@ print "Host name: %s" % server.GetHostName() print "Domain name: %s" % server.GetDomainName() print "FQDN: %s" % server.GetHostNameFqdn() -g = dbus.Interface(bus.get_object("org.freedesktop.Avahi", server.EntryGroupNew()), 'org.freedesktop.Avahi.EntryGroup') - def entry_group_state_changed_callback(t): print "EntryGroup::StateChanged: ", t if t == 1: print server.ResolveHostName(0, 0, "foo.local", 0) - +g = dbus.Interface(bus.get_object("org.freedesktop.Avahi", server.EntryGroupNew()), 'org.freedesktop.Avahi.EntryGroup') g.connect_to_signal('StateChanged', entry_group_state_changed_callback) - g.AddService(0, 0, "Test Web Site", "_http._tcp", "", "", dbus.UInt16(4712), ["fuck=hallo", "gurke=mega"]) g.AddAddress(0, 0, "foo.local", "47.11.8.15") g.Commit() +def domain_browser_callback(a, interface, protocol, domain): + print "DOMAIN_BROWSER: %s %i %i %s" % (a, interface, protocol, domain) + +db = dbus.Interface(bus.get_object("org.freedesktop.Avahi", server.DomainBrowserNew(0, 0, "", 2)), 'org.freedesktop.Avahi.DomainBrowser') + +db.connect_to_signal('ItemNew', lambda interface, protocol, domain: domain_browser_callback("NEW", interface, protocol, domain)) +db.connect_to_signal('ItemRemove', lambda interface, protocol, domain: domain_browser_callback("REMOVE", interface, protocol, domain)) + try: gobject.MainLoop().run() except KeyboardInterrupt, k: pass g.Free() +db.Free() print "Quit" -- cgit