[Psi-devel] Re: Task#340 - Communication Between Running Psi
sneakin at semanticgap.com
Mon Jul 18 01:21:57 PDT 2005
-----BEGIN PGP SIGNED MESSAGE-----
Remko Troncon wrote:
|> I'm afraid that no matter which method we choose, a no-psi will be
|> able to send a valid message to psi instance.
| Another app is fine, but another user isn't (which is a problem with
One solution to that is tuck an authentication key into a file that only
the user can read. This gets used to connect. That's if we want to go w/
sockets, and if we really want to do something crazy we can stream XML
and make Psi into a mini jabber server.
I did have an idea that was going to piggy back onto Qt's signal and
slots in which a command was a signal. Things are a little more
complicated than that, so I scratched it. I guess we'll have to have
someplace where commands can get registered and they get passed a list
That was probably obvious, but that can hide any of the communication
mechanisms that we use. So we could use pipes, sockets, and Windows'
messages that pass along a command per line, XML-RPC, or a lispy list.
The end result will be looking up the object that registered the
command, calling its exec method with the arguments. The arguments will
most likely be parsed into a QVector<QVariant> which should be
sufficient and simple enough.
Maybe some error handling either with exceptions or the return value of
the exec method. This could be used to say it was successful, wrong
number of args, wrong type of args, denied, or anything else we can
think of. This would get sent back out through the comm channel.
We will need to be careful. If we get command happy and expose to much
functionality then we could possibly cause problems or it may open some
- - Nolan
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
-----END PGP SIGNATURE-----
More information about the Psi-devel-affinix.com