I'm trying to use the Python Dbus bindings to get an account already created 
in the account manager to connect automatically, and I'm getting an error that 
I don't understand while trying to set the "RequestedPresence" property on a 
Gabble Jabber account.

  I can set other properties without trouble, but in this bit of code, the only 
things I've set have had simple types. The presence value is a struct, but I 
think I'm doing it right. In both snippets 'account' is a dbus proxy object for 
the account I'm trying to set values on.

  This works:
            print "ConnectAutomatically", account.object_path
            account.Set('org.freedesktop.Telepathy.Account', 
'ConnectAutomatically', True,
                        dbus_interface='org.freedesktop.DBus.Properties',
                        reply_handler=cb.get_callback(),
                        error_handler=util.error_handler_cb)


  This doesn't:
            print "RequestedPresence", account.object_path
            account.Set('org.freedesktop.Telepathy.Account', 
'RequestedPresence',
                        
dbus.Struct((telepathy.constants.CONNECTION_PRESENCE_TYPE_AVAILABLE, 
'available', 'asdf'),
                                    signature='uss'),
                        dbus_interface='org.freedesktop.DBus.Properties',
                        reply_handler=cb.get_callback(),
                        error_handler=util.error_handler_cb)


  It generates:

RequestedPresence 
/org/freedesktop/Telepathy/Account/gabble/jabber/aldemo1_40pobox_2eagnilux_2ecom1
Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.6/dbus/connection.py", line 579, in 
msg_reply_handler
    *message.get_args_list()))
  File "/proj/gazette_dgarrett/sw/client-manager/src/telepathy/util.py", line 
9, in error_handler_cb
    raise exception
dbus.exceptions.DBusException: org.freedesktop.Telepathy.Error.InvalidArgument: 
Unexpected type for RequestedPresence: wanted (u,s,s), got 
GValueArray_gint+gchararray+gchararray_

-- 
Don



_______________________________________________
telepathy mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/telepathy

Reply via email to