|April 9th, 2009|
As the news has hit a few blogs in the last couple of days (New World Notes & DIP’s Dispatches from the Information Age), I thought I might as well elaborate a bit on something cool that has been going on in Metaplace lately. We’ve had a fair amount of Second Life users coming in lately, and one of the things that is much on their minds is interoperability.
In short, we have had not one but two users make real-time bridges to SL chat lately. The first was by KStarfire, who used Metaplace’s ability to act as a web server to create a simple object-based chat bridge. I asked him a few questions about it:
How does your bridge work?
It connects to SL using MP as the server. SL sends an HTTP request from an object there…which stores the text. The SL receiver just keeps querying the MP side for updated text every few seconds. Not ideal obvioulsy, but we just wanted to see if we could do it
So how would a user get ahold of it and use it?
Right now the MP side is on the marketplace. i need to clean up the SL object side of things.. and ethier sell it there ethier in stores or via private trade
Why did you want to do it?
*laughs* Tach said… hey your in SL right? and i said… yeah.. and he said.. want to help me with something besides… considering how much time i spend on MP.. havinga link to my friends in SL would be a nice thing
This actually happened a little bit ago, but we kind of kept it quiet, even though I believe there’s an upcoming event that plans to use the bridge for a two-world event.
But then along came Miki, who did something somewhat more complex — inserting a LAMP stack between Metaplace and Second Life, which now allows for remote control of objects in SL.
“This was my first tryout of the scripting language in Metaplace, my ‘Hello world’ app,” Ms. Gymnast tells me grinning. As first reported by Dispatches from the Imagination Age, what Miki Gymnast eventually made is a major milestone in interoperability between virtual worlds: a communication channel between Metaplace and Second Life. “There are lots of SL’ers at Metaplace,” she says simply, “so it was obvious to make a bridge for them.”
…This is possible with a very clever hack that uses PHP scripts/MYSQL database on Miki’s server for data processing. “So the messages goes via http from Metaplace to PHP/mysql to SL (via XML-RPC push or http pull if Second Life’s RPC server is down) and then back, also via PHP,” she explains. “There is actually no way to make such complex stuff with direct connects between Metaplace and Second Life.” (More technical details courtesy of Miki after the break.)
– from the NWN article
What sort of complex stuff?
• Sending text messages from MP to every SL user in realtime.
• Real-time text chat with every SL user wearing the communicator HUD.
• Sending SL-objects to every SL user in realtime, triggered in MP.
• Object manipulation of SL objects, triggered in MP.
• Online detection of SL-users, displayed in MP.
• Banning avatars from SL-parcels, triggered in MP.
The SL-user can be everywhere in SL. The MP user must be in Mikis_World.
I would be remiss if I didn’t point out that making such complex stuff in Metaplace is easy. Remote controlling an object from outside is not hard at all for a Metaplace world. After all, every object has a URL, and every object can interact with Web APIs as well… you get the idea, there’s a lot of possibilities there.
I have been sour on “virtual worlds standards” for a while, because it seems to me that trying to force all virtual worlds into a single mold at this stage of their development is a mistake, and pretty much all the VW “standards” efforts have tended to have too narrow a conception of the medium for my tastes.
But standards for bridging data — well, that’s easy and obvious! And most obviously, using the standards the web already has is the easiest way.