Skip to main content

By clicking Submit, you agree to the developerWorks terms of use.

The first time you sign into developerWorks, a profile is created for you. Select information in your developerWorks profile is displayed to the public, but you may edit the information at any time. Your first name, last name (unless you choose to hide them), and display name will accompany the content that you post.

All information submitted is secure.

  • Close [x]

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerworks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

By clicking Submit, you agree to the developerWorks terms of use.

All information submitted is secure.

  • Close [x]

A virtual office: IBM Lotus Sametime chatting and Second Life

Bridge Second Life and Lotus Sametime using a Sametime bot

Photo of Nicholas Chase
Nicholas Chase has been involved in Web site development for companies such as Lucent Technologies, Sun Microsystems, Oracle, and the Tampa Bay Buccaneers. Nick has been a high school physics teacher, a low-level radioactive waste facility manager, an online science fiction magazine editor, a multimedia engineer, and an Oracle instructor. More recently, he was the Chief Technology Officer of Site Dynamics Interactive Communications in Clearwater, Florida, and is the author of three books on Web development, including Java and XML From Scratch (Que) and the upcoming Primer Plus XML Programming (Sams).

Summary:  You've heard the hype about Second Life®, and how it's becoming the environment of choice for ... well ... everything, it seems. But work can't stop just because you want to hang out. Fortunately, the IBM® Lotus® Sametime® Software Development Kit (SDK) and Second Life scripting make it possible to combine the two. This tutorial shows you how to create a Sametime bot that listens for conversations in Second Life and relays them to your IBM Lotus Sametime Connect client or vice-versa, making it possible to let people alert you when you're needed, but you're not "in-world" as well as to be in-world without missing important conversations.

Date:  11 May 2007
Level:  Intermediate PDF:  A4 and Letter (2116KB | 52 pages)Get Adobe® Reader®

Activity:  21628 views
Comments:  

Before you start

This tutorial explains how to conduct Sametime chats from within the Second Life game and vice versa. It is for developers who want to learn more about using Sametime bots or who want to know about basic non-animation-related scripting in Second Life.

To follow along with this tutorial, you should be familiar with general Java™ programming concepts. Familiarity with servlets and concepts such as threads would also be helpful, but is not required. This tutorial assumes that you are not necessarily familiar with programing in Linden Script Language, the scripting language of Second Life.

Also, under certain circumstances, you might need to use a PHP-based proxy -- see the systems requirement section for an explanation -- but you won't need any PHP knowledge; the tutorial provides everything you need.

About this tutorial

Would you like to see the steps in this tutorial demonstrated for you?
Show meShow me.

Or, read the script.

Second Life is a Massively Multiplayer Online Role-Playing Game (MMORPG) in which users can immerse themselves in the world that represents the game. They can spend hours (or longer!) chatting with individuals in the game. But as the business world starts to discover Second Life, obvious questions arise, such as "how can you keep up a presence 'in world' and still take care of work responsibilties?"

On the other hand, Lotus Sametime is a chat environment that enables organizations to keep in touch in real time without having to constantly stare at the chat window.

This tutorial explains how to create an environment in which you can experience the best of both worlds. You learn how to create a Sametime object that relays a Second Life chat into Lotus Sametime and vice versa. In other words, you can use Lotus Sametime to carry on a conversation with a gamer inside Second Life without ever logging in and carry on a normal chat within Second Life that's effortlessly relayed to the outside world.

In this tutorial, you will learn:

  • How to create a Sametime bot
  • How to communicate with Lotus Sametime from outside Lotus Sametime Connect
  • How to integrate a Sametime bot with a Java servlet
  • How to create basic Second Life scripts
  • How to speak and listen in Second Life
  • How to use HTTP requests with Second Life
  • How to create a PHP "proxy" to solve connectivity problems

Prerequisites

Basic knowledge of programming in some language is required. Experience with events and vector algebra will definitely help, but isn't necessary.


System requirements

To follow along with this tutorial, you need to have the following tools installed and/or available to you.

  • Lotus Sametime V7.5: This tutorial doesn't require you to have your own Sametime server available; you can use the Sametime 7.5 Demo server. You can, however, download a trial version of Lotus Sametime.
  • Lotus Sametime SDK V7.5: This toolkit provides the necessary support classes and files for interacting with Lotus Sametime from various environments. This tutorial uses the Lotus Sametime Connect Java client JAR files.
  • Lotus Sametime Connect: You need a Sametime client to communicate with the avatar in Second Life.
  • Second Life: You can download the Second Life client for free after signing up for a free account at http://www.secondlife.com. (All steps in this tutorial were carried out with a free account.) See the system requirements for Second Life. Note that at the time of this writing, Microsoft® Windows® Vista support was just coming online.
  • IBM Rational Application Developer or another Eclipse-based IDE: You develop a Java class and a Java servlet, so your life will be much easier if you use a tool such as Rational Application Developer.
  • Connectivity: Your Sametime bot communicates through a Java servlet. If you have Java-based hosting that's accessible from the outside world, you're done with installation, and you can move on to the Overview. If not -- for example, if you can only run a servlet on your local machine, which isn't addressible from outside the company's firewall -- you need to get one more set of software:
  • PHP/Apache: In this tutorial, you see how to create a PHP-based "proxy" that enables the Sametime bot to communicate with the outside world without actually being addressible by it. The simplest way to accomplish this is to get the WAMP package, which includes the Apache HTTP server with PHP pre-installed. The proxy included in the sample files also requires a PHP server accessible from the Internet. (The proxy is provided with the source code, but isn't discussed in the tutorial.)

1 of 10 | Next

Comments



Help: Update or add to My dW interests

What's this?

This little timesaver lets you update your My developerWorks profile with just one click! The general subject of this content (AIX and UNIX, Information Management, Lotus, Rational, Tivoli, WebSphere, Java, Linux, Open source, SOA and Web services, Web development, or XML) will be added to the interests section of your profile, if it's not there already. You only need to be logged in to My developerWorks.

And what's the point of adding your interests to your profile? That's how you find other users with the same interests as yours, and see what they're reading and contributing to the community. Your interests also help us recommend relevant developerWorks content to you.

View your My developerWorks profile

Return from help

Help: Remove from My dW interests

What's this?

Removing this interest does not alter your profile, but rather removes this piece of content from a list of all content for which you've indicated interest. In a future enhancement to My developerWorks, you'll be able to see a record of that content.

View your My developerWorks profile

Return from help

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Lotus
ArticleID=219006
TutorialTitle=A virtual office: IBM Lotus Sametime chatting and Second Life
publish-date=05112007
author1-email=ibmquestions@nicholaschase.com
author1-email-cc=troy@backstopmedia.com

Tags

Help
Use the search field to find all types of content in My developerWorks with that tag.

Use the slider bar to see more or fewer tags.

Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere).

My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Use the search field to find all types of content in My developerWorks with that tag. Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere). My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Try IBM PureSystems. No charge.