My favorites | Sign in
Project Home Downloads Wiki Issues Source
Search
for
PyOGP  
PyOGP is a Python project which aims to implement the mechanisms define in the Open Grid Protocol.
Featured
Updated May 17, 2008 by tao.taka...@gmail.com

Introduction

OGP stand for "Open Grid Protocol" and is worked on by the Architecture Working Group which was founded by Linden Lab and includes members of Linden Lab and the Second Life community. It's aim is to create a open and standardized protocol for running and interconnecting virtual worlds like Second Life.

Components

pyogp consists at the moment of the following components:

  • pyogp.model contains interfaces and classes for use in pyogp. Examples are IAgent, Agent, IAgentDomain etc.
  • pyogp.agentdomain.* will contain an agent domain implementation. It will consist of separate components which eventually might be reusable outside this context.
  • pyogp.capsserver encapsulates Linden Lab's capsserver in mulib and makes it an executable. An example is included as well.
  • pyogp.lib.* aims to become a library for interacting with OGP based systems.

All the components are Python eggs and can be found in the SVN repository.

Status

This is an experimental start of the project. Much will change and a lot will be added of course.

Working right now is the capsserver and the login handler for the experimental Agent Domain by Linden Lab (although login seems to fail right now).

How to use it

Installing the buildout

There is a buildout available which includes all the components. Installing the buildout is probably the easiest way to get it up and running. To do this follow these steps:

tar zxf pyogp-0.0001.tgz
  • Enter the buildout directory:
cd buildout
  • Bootstrap the buildout. This will download and install the necessary scripts and packages locally in the buildout:
python bootstrap.py
  • Run the buildout to configure the whole system and download required packages:
bin/buildout

Now the necessary scripts are generated and all the modules are configured. You can find an interpreter with all those modules in the bin directory:

$ bin/pyogp 

>>> from pyogp.model.agent import Agent
>>> agent = Agent("mrtopf")
>>> agent
<pyogp.model.agent.Agent object at 0x3d6dd0>
>>> 

Running the Caps Server

If you installed the buildout like described above you should be able to start the caps server which is also located in the bin/ directory:

$ bin/capsserver 
Temporary file too old, not loading /tmp/capabilities.tmp
httpd starting up on ('0.0.0.0', 8080)
httpd starting up on ('127.0.0.1', 8080)

In another terminal you can then run the example caps script:

bin/capstest

This will tell the capsserver to grant a capability for the URL http://mrtopf.de. It will receive the capability for it which is a private random looking URL for it. The script will return this.

If you use retrieve this e.g. via wget the capsserver will proxy this and return the contents of http://mrtopf.de, e.g.

wget `bin/capstest`

If you want to have a look at the actual scripts then look in your buildout here:

  • src/pyogp.capsserver/pyogp/capsserver/server.py
  • src/pyogp.capsserver/pyogp/capsserver/example.py

Sign in to add a comment
Powered by Google Project Hosting