Dear all, As the author of the un(der)document pymol xml-rpc stuff, I will pipe up with what info I can provide.
On Thu, Jun 4, 2009 at 1:32 PM, Lesburg, Charles <charles.lesb...@spcorp.com> wrote: > > >From time to time, I find myself sharing structures using PyMOL with > coworkers/collaborators at remote locations. I have used various > screen-sharing tools (e.g. VNC) to do this. If you've ever done this, > even over a fast 'net connection, you know that the quality suffers > significantly over running PyMOL locally. On occasion, I've reversed > this so that I remote-control a remote local PyMOL session, but this is > also a bit difficult as the quality on my side suffers significantly. > It would be nice to have a high-quality method to share 3D info > simultaneously across multiple locations. yeah, the remote display stuff is generally pretty miserable. > > I stumbled upon the ability of PyMOL to act as an XML-RPC listener. > Obviously, this feature was added to allow one or more sessions to act > as "slaves" to a "master" controlling session over the > internet/intranet. though I think it could be used for this purpose, that wasn't the original idea. The interface was designed to allow pymol to be remotely controlled from other pieces of software. I used it from within spreadsheet-type applications and a pharmacophore search tool. The interface at the moment is primarily centered around providing structures and CGOs to pymol from the remote application and then interrogating pymol about things like which atoms are selected. *But* it does provide a command "do" that can be used to execute straight pymol script commands (like typing in the console in pymol). > > Has anyone made any progress along these lines? As I see it, the slave > session(s) need to be invoked so that they can be controlled remotely > (currently, it seems fixed to localhost on port 9123). The listener picks up the hostname it should listen on from the PYMOL_RPCHOST environment variable, but defaults to "localhost" if that's not defined. It defaults to port 9123, but then tries additional (higher numbered) ports if it can't get that one. This could also be controlled by an env var, but it isn't at the moment. > Also, the master > session needs to spit out the appropriate commands (as it does to a log > file) along with orientational information to one or more slave > sessions. This part I don't know how to do. If one could get this information "live" from PyMol as the user is working with it, then it could be sent from the master to multiple slaves without problem. Setting up the connections to the slaves is trivial in python once one has the hostnames that should be checked. There'd need to be an interface to select the slave hosts, but that also shouldn't be too bad. > Any guidance would be useful. I'm willing to help to the extent that I can. -greg ------------------------------------------------------------------------------ OpenSolaris 2009.06 is a cutting edge operating system for enterprises looking to deploy the next generation of Solaris that includes the latest innovations from Sun and the OpenSource community. Download a copy and enjoy capabilities such as Networking, Storage and Virtualization. Go to: http://p.sf.net/sfu/opensolaris-get _______________________________________________ PyMOL-users mailing list (PyMOL-users@lists.sourceforge.net) Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users Archives: http://www.mail-archive.com/pymol-users@lists.sourceforge.net