]> git.meshlink.io Git - catta/blobdiff - avahi-utils/avahi-publish-service.in
implement XDG basedir subset, which we will use to read user configured browser domai...
[catta] / avahi-utils / avahi-publish-service.in
index 89c1566195dd875bf527fce7c014042039209656..3f40fd0c2f9331119e62d11efdc6e2fd9585eacd 100755 (executable)
@@ -40,9 +40,9 @@ def usage(retval = 0):
     sys.exit(retval)
 
 try:
-    opts, args = getopt.getopt(sys.argv[1:], "d:H:", ["help", "domain=", "host="])
+    opts, args = getopt.getopt(sys.argv[1:], "hd:H:", ["help", "domain=", "host="])
 except getopt.GetoptError:
-    pass
+    usage(2)
 
 domain = ""
 host = ""
@@ -83,16 +83,19 @@ def add_service():
 
     if group is None:
         group = dbus.Interface(bus.get_object(avahi.DBUS_NAME, server.EntryGroupNew()), avahi.DBUS_INTERFACE_ENTRY_GROUP)
-
+        group.connect_to_signal('StateChanged', entry_group_state_changed)
+        
     assert group.IsEmpty()
 
     print "Adding service '%s' of type '%s' ..." % (name, stype)
-    group.connect_to_signal('StateChanged', entry_group_state_changed)
-    group.AddService(avahi.IF_UNSPEC, avahi.PROTO_UNSPEC, name, stype, domain, host, dbus.UInt16(port), txt)
+
+    group.AddService(avahi.IF_UNSPEC, avahi.PROTO_UNSPEC, dbus.UInt32(0), name, stype, domain, host, dbus.UInt16(port), avahi.string_array_to_txt_array(txt))
     group.Commit()
 
 def entry_group_state_changed(state):
     global name, server, n_rename
+
+#    print "state change: %i" % state
     
     if state == avahi.ENTRY_GROUP_ESTABLISHED:
         print "Service established."