In the event serialization format, the third array is array of bytes or ay as dbus signature.
When an event enters an extension, it looks like
Event([dbus.Array([u'', u'1292500628312', u'', u'', u'application://foo.desktop'], signature=dbus.Signature('s')), [Subject([u'', u'', u'', u'', u'', u'', u''])], dbus.Array([], signature=dbus.Signature('y'))])
which implies that payload is array of bytes
Now look at _zeitgeist/engine/datamodel.py at line 58
where you get the line
>> popo.append(str(ev[2]))
Really so when you do str() on dbus.Array([], signature=dbus.Signature('y'))
you get "dbus.Array([], signature=dbus.Signature('y'))" instead of the contents of bytes converted to string
In the event serialization format, the third array is array of bytes or ay as dbus signature.
When an event enters an extension, it looks like dbus.Array( [u'', u'1292500628312', u'', u'', u'application: //foo.desktop' ], signature= dbus.Signature( 's')), [Subject([u'', u'', u'', u'', u'', u'', u''])], dbus.Array([], signature= dbus.Signature( 'y'))])
Event([
which implies that payload is array of bytes
Now look at _zeitgeist/ engine/ datamodel. py at line 58 str(ev[ 2]))
where you get the line
>> popo.append(
Really so when you do str() on dbus.Array([], signature= dbus.Signature( 'y')) dbus.Signature( 'y'))" instead of the contents of bytes converted to string
you get "dbus.Array([], signature=
Now when you call Event.get_plain on
Event([ dbus.Array( [u'', u'1292500628312', u'', u'', u'application: //foo.desktop' ], signature= dbus.Signature( 's')), [Subject([u'', u'', u'', u'', u'', u'', u''])], dbus.Array([], signature= dbus.Signature( 'y'))])
you get
[[u'', u'1292500628312', u'', u'', u'application: //foo.desktop' ], [[u'', u'', u'', u'', u'', u'', u'']], "dbus.Array([], signature= dbus.Signature( 'y'))"]
Now what you expect