]> git.meshlink.io Git - catta/blob - avahi-daemon/dbus-test.py
* swap order of "type" and "name" arguments of avahi_server_add_service() and friends
[catta] / avahi-daemon / dbus-test.py
1 #!/usr/bin/python2.4
2
3 import dbus
4 import gobject
5 try: import dbus.glib
6 except ImportError, e: pass
7
8 from time import sleep
9
10 bus = dbus.SystemBus()
11
12 server = dbus.Interface(bus.get_object("org.freedesktop.Avahi", '/org/freedesktop/Avahi/Server'), 'org.freedesktop.Avahi.Server')
13
14 def server_state_changed_callback(t):
15     print "Server::StateChanged: ", t
16
17 server.connect_to_signal("StateChanged", server_state_changed_callback)
18
19 print server.ResolveHostName(0, 0, "ecstasy.local", 0)
20 print server.ResolveAddress(0, 0, "192.168.50.4")
21
22 print "Host name: %s" % server.GetHostName()
23 print "Domain name: %s" % server.GetDomainName()
24 print "FQDN: %s" % server.GetHostNameFqdn()
25
26 g = dbus.Interface(bus.get_object("org.freedesktop.Avahi", server.EntryGroupNew()), 'org.freedesktop.Avahi.EntryGroup')
27
28 def entry_group_state_changed_callback(t):
29     print "EntryGroup::StateChanged: ", t
30
31     if t == 1:
32         print server.ResolveHostName(0, 0, "foo.local", 0)
33         
34
35 g.connect_to_signal('StateChanged', entry_group_state_changed_callback)
36
37 g.AddService(0, 0, "Test Web Site", "_http._tcp", "", "", dbus.UInt16(4712), ["fuck=hallo", "gurke=mega"])
38 g.AddAddress(0, 0, "foo.local", "47.11.8.15")
39 g.Commit()
40
41 try:
42     gobject.MainLoop().run()
43 except KeyboardInterrupt, k:
44     pass
45
46 g.Free()
47
48 print "Quit"