]> git.meshlink.io Git - catta/blob - avahi-daemon/dbus-test.py
implement DBUS protocol
[catta] / avahi-daemon / dbus-test.py
1 #!/usr/bin/python2.4
2
3 import dbus
4 import dbus.glib
5 import gtk
6
7 from time import sleep
8
9 bus = dbus.SystemBus()
10
11 server = dbus.Interface(bus.get_object("org.freedesktop.Avahi", '/org/freedesktop/Avahi/Server'), 'org.freedesktop.Avahi.Server')
12
13 print "Host name: %s" % server.GetHostName()
14 print "Domain name: %s" % server.GetDomainName()
15 print "FQDN: %s" % server.GetHostNameFqdn()
16
17 g = dbus.Interface(bus.get_object("org.freedesktop.Avahi", server.EntryGroupNew()), 'org.freedesktop.Avahi.EntryGroup')
18
19 def state_changed_callback(t):
20     print "StateChanged: ", t
21
22 g.connect_to_signal('StateChanged', state_changed_callback)
23 g.AddService(0, 0, "_http._tcp", "foo", "", "", dbus.UInt16(4712), ["fuck=hallo", "gurke=mega"])
24 g.AddAddress(0, 0, "foo.local", "47.11.8.15")
25 g.Commit()
26
27 try:
28     gtk.main()
29 except KeyboardInterrupt, k:
30     pass
31
32 g.Free()
33
34 print "Quit"