Go Back   Second Citizen MK II > The Islands: Off Topic & Other > Gamer Lobby / Other Worlds > Blue Mars

Reply
 
Thread Tools Search this Thread Display Modes

SL to BM in-world chat -- Proof of Concept
Old 05-21-2010, 09:33 AM   #1
Cale Vinson
Senior Member

Cale Vinson's Avatar
 
Join Date: Aug 2009
Posts: 1,925
Awards Showcase
28th 
Total Awards: 1
Default SL to BM in-world chat -- Proof of Concept

I just sent this to the Caledonia email list.

Yes, its very much TL;DR, unless you like reading about people taking their first steps in a new VW, which I do, irrespective of the VW.

========================================


Some of you may remember a while back where Des and I were trying to get some sort of in-world SL <-> BM communication going. That particular project ground to a halt when we discovered that the BM Twitter interface wasn't complete (and if memory serves, it was removed in later versions).

However, BM "Iam" bots have allowed me a second bite at this cherry, and although there's still a lot of work to be done, I do think I have a proof-of-concept to share.

In the following pics, "Cale Vinson" is me, live, and "Dale Voyager" is a SL or BM bot.

(Pic-1)

Pic-1 is in SL. Cale and Dale are both members of the imaginatively named "Cale Vinson Group". :-) I type "TestA" through "TestB" into the group-chat, with the "TestC" and "TestD" prefixed by "!BM", meaning "send this chat to BM too"

And if we switch across to BM we see:

(Pic-2)

We don't have group-chat in BM, so the best we can do is get the Iam to speak the messages, and sure enough he does, prefacing them with "(SL:Cale Vinson)" to indicate that they come from Cale Vinson in SL.

Going the other way, in BM Cale types "Test1" through "Test4" into the
chat-box, prefixing "Test1" and "Test3" with !SL:

(Pic-3)

Switching back to SL we see that the bot has picked up the "Test1" and "Test3" messages from BM, and repeated them into the Cale Vinson Group:

(Pic-4)

=========
How it works
=========

There are bots on both side, a LibOpenmetaverse / Python one for SL, and a Iam / Java one for BM. They are both able to connect to the "Jabber" instant-messaging service, via the "XMPPPY" library for the SL bot, and the "Smack" library for the BM Iam. Each bot has its own account, and uses it to send and receive messages to/from the other.

======================================
Advantages compared to the previous Twitter approach
======================================

Well, for one thing, we never got this far previously But there are a couple of others. Its relatively private - the bots can be set to ignore all messages they receive apart from those from their counterpart. There is very little latency (compared to the polling-limits we had in Twitter). Although I'm using a public server at the moment for testing, there is free server software out there, so we could be "master of our own destiny" and run our own Jabber server. Finally, its not too painful to debug, because you can develop each side separately - when working on the SL bot, I just used a standard Jabber client to log onto the BM Iam's Jabber account, and type messages - the SL bot doesn't care whether the messages it sees are person or bot generated.

=====
Caveats
=====

There are a number, though only the first is big, and that is - stability. I
have not been able to keep any of my Iams logged onto the Iam bot server for more than six hours (approx). They don't crash in my part of the code, they simply lose the connection. There's a fair chance that this is an issue on the AR side, and Mark Boon is looking into it, but until its resolved we don't have anything beyond a nice toy.

(http://ai.bluemars.com/forum/viewtopic.php?f=5&t=22 for details if anyone is interested)

A related one is that I've typed this up because I'm excited about it, but it needs a lot more testing. I have fixed bugs along the way that caused the bots to pass a few messages, then mysteriously stop. There may be other such bugs that a ten-minute test doesn't expose.

The other caveats are relatively minor. There's no error-checking for the serving being down, etc. The SL bot doesn't load the bot appearance, hence SL-Dale's nakedness. :-) Rather ironically, something happened after the most recent BM upgrade that caused BM-Dale to change gender. :-) Both codes in general need a good sweep-up and un-hard-wiring, etc, etc. But that's just work, not risky.
Cale Vinson is offline   Reply With Quote

Old 05-21-2010, 10:10 AM   #2
Lexxi
Senior Member

Lexxi's Avatar
 
Join Date: Aug 2009
Posts: 4,377
Default

I find it suspicious that Dale Voyager is naked. I mean, I did see the "The SL bot doesn't load the bot appearance, hence SL-Dale's nakedness.", but still, suspicious.

*rubs nose in thought, mews*
Lexxi is offline   Reply With Quote
This user laughed so hard that they peed a little:
This user agrees. But then, who wouldn't, right?

Old 05-21-2010, 10:17 AM   #3
Dale Innis
total bitchin' rock star

Dale Innis's Avatar
 
Join Date: Oct 2009
Location: Hughes Rise
Posts: 2,819
My Mood:
Awards Showcase
5k trainwreck 
Total Awards: 1
Default

I think it's suspicious that Dale is not only naked, but named "Dale", and apparently of two different genders.

Twisted!!!

Having said that I think this is quite cool. In a way it's too bad that stuff like this has to be implemented via bot-hacks rather than based on intentionally-designed standards-based server-supported IM interop. On the other hand we may still be at the stage where we need more experience with the hacks before we start building the standards...
Dale Innis is offline   Reply With Quote
This user laughed so hard that they peed a little:

Old 05-21-2010, 10:35 AM   #4
Cale Vinson
Senior Member

Cale Vinson's Avatar
 
Join Date: Aug 2009
Posts: 1,925
Awards Showcase
28th 
Total Awards: 1
Default

Quote:
Originally Posted by Dale Innis View Post
I think it's suspicious that Dale is not only naked, but named "Dale", and apparently of two different genders.

Twisted!!!
You'd be even more suspicious if I'd focussed the camera so that you could see Dale's front.

It was just one of those things. Dale started fully dressed, I logged him quite a few times while I was testing, and although there were error-messages about the unhandled packets (mmm, anyone want to do anything with "unhandled packets"? ), he kept his clothes on. Then, when I thought I had everything working, and was set to take the pics, off they came.

Quote:
Originally Posted by Dale Innis View Post
Having said that I think this is quite cool. In a way it's too bad that stuff like this has to be implemented via bot-hacks rather than based on intentionally-designed standards-based server-supported IM interop. On the other hand we may still be at the stage where we need more experience with the hacks before we start building the standards...
Nah ...... I mean, if it had international standards and everything you'd have to read a 1000 page specs manual to do anything, not just cobble together some cool libraries other people have written. I'm not the world's most unskilled programmer, but I've never worked on comms stuff in RL, so when I create even a simple bit of code that does something "innertuby" and it actually works, I'm all "ZOMG, look at that, that's AMAZING!!!!!".

(Joking aside, I do agree with you.)
Cale Vinson is offline   Reply With Quote
Reply

Bookmarks

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump



All times are GMT -4. The time now is 12:16 PM.


vBulletin skins developed by: eXtremepixels
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Second Life® and Linden Lab® are trademarks of Linden Research, Inc.
Second Citizen MK II Forums are not affiliated with or sponsored by Linden Research.
© 2009 - 2011 Second Citizen MKII [SC MKII]
| Home | Register | FAQ | Members List | Calendar | Today's Posts | Search | New Posts |