Lotus Instant Messaging/Web Conferencing (Sametime): Building Sametime Enabled Applications

Book description

This IBM Redbooks publication builds upon two existing Redbooks: Working with Sametime Client Toolkits, SG24-6666 and Working with the Sametime Community Server Toolkit, SG24-6667. Focusing on the latest toolkits available for IBM Lotus Instant Messaging and Lotus Web Conferencing (Sametime) 3, it explores Sametime as a development platform, illustrating how to extend the functionality of Sametime beyond its more commonly known instant messaging and e-meeting hosting features.

It provides a detailed technical discussion and examples for building and integrating Sametime real-time collaborative capabilities, presence awareness, and Web conferencing capabilities into both new and existing applications. In-depth discussions and code examples are provided for topics such as building custom bots, leveraging Sametime functionality through Web Services, and integrating Sametime into workflow applications. Additionally, this book reveals how you can customize (brand) your organization’s Sametime Meeting Center to more closely match the company’s identity. Finally, thorough analysis is given to the topics of Sametime Links and the Sametime Places architecture. Several samples of Sametime applications, with source code, are included.

Ultimately, we hope this book will help you better appreciate how your organization may benefit by more effectively leveraging Sametime.

Please note that the additional material referenced in the text is not available from IBM.

Table of contents

  1. Notices
    1. Trademarks
  2. Preface
    1. The team that wrote this redbook
    2. Become a published author
    3. Comments welcome
  3. Part 1: Introduction
    1. Chapter 1: Overview of Sametime
      1. Benefits and importance of collaboration
      2. What is Sametime?
      3. Sametime services
        1. Real-time collaboration: community services
        2. Sametime online meeting services
        3. Sametime customization and integration services
      4. Overview of the Sametime 3.1 Toolkits
        1. Sametime Client Toolkits
        2. Sametime Community Server Toolkit
        3. The Sametime Directory and Data Access Toolkit
      5. Why have Sametime-enabled applications?
      6. What’s new in the Sametime 3.1 APIs
        1. Reverse proxy support
        2. Multiplatform support in STLinks Toolkit
        3. Status on login support
        4. STLinks scalability upgrade
        5. Fixed window size and place in chat dialogs
      7. The structure of this redbook
    2. Chapter 2: Setting up the development environment
      1. Setting up the development environment
      2. Installing the toolkits
        1. Sametime Software Development Kit (SDK) documentation
      3. The Java Client and Community Server Toolkits (1/4)
      4. The Java Client and Community Server Toolkits (2/4)
      5. The Java Client and Community Server Toolkits (3/4)
      6. The Java Client and Community Server Toolkits (4/4)
        1. IBM WebSphere Studio Application Developer 5.0
        2. Borland JBuilder
        3. Sun JDK
        4. Installing the C++ Toolkits
        5. Microsoft Visual C++
      7. Installing the COM Toolkit
        1. Microsoft Visual Basic
  4. Part 2: Sametime enabling applications
    1. Chapter 3: Sametime Bots
      1. What is a bot?
      2. Developing bots
        1. Creating a Sametime session
        2. Logging in to the community
        3. Registering the message type
        4. Listening for incoming messages
        5. Responding with logic
      3. Bot examples (1/5)
      4. Bot examples (2/5)
      5. Bot examples (3/5)
      6. Bot examples (4/5)
      7. Bot examples (5/5)
        1. The Echo Bot
        2. FAQ Bot
        3. Translator Bot
      8. Enhancing the bot framework
    2. Chapter 4: Web services
      1. Overview of Web services
        1. What is a Web service?
        2. Web service fundamentals
      2. Sametime Web services
      3. Building the UserStatus application (1/3)
      4. Building the UserStatus application (2/3)
      5. Building the UserStatus application (3/3)
        1. The UserStatus application
        2. Running the UserStatus application
      6. Creating the UserStatus Web service (1/4)
      7. Creating the UserStatus Web service (2/4)
      8. Creating the UserStatus Web service (3/4)
      9. Creating the UserStatus Web service (4/4)
      10. Deploying the UserStatus Web service (1/2)
      11. Deploying the UserStatus Web service (2/2)
      12. Testing the Sametime Web service
    3. Chapter 5: Chat Logging/DDA Toolkit
      1. Overview of the Chat Logging SPI and DDA Toolkit
        1. Regulatory compliance
        2. Collaborative commerce rules and workflow
        3. Corporate and public sector governance
        4. Appropriate use review
      2. Developer considerations
        1. Modes
        2. Distributed environments
        3. Synchronous and asynchronous implementations
      3. Toolkit examples
      4. Customizing and building a Chat Logger
    4. Chapter 6: Sametime and workflow
      1. Using Sametime within a workflow
      2. The scenario
      3. The AnnouncementSender application (1/2)
      4. The AnnouncementSender application (2/2)
        1. The AnnouncementSender agent
      5. The AnnouncementSender Web service
      6. Sending rich text announcements with STLinks
      7. Integrating with Microsoft Excel (1/2)
      8. Integrating with Microsoft Excel (2/2)
        1. Enabling Microsoft Excel for Web services
      9. Summary
    5. Chapter 7: BuddyList service
      1. The BuddyList service advantages
        1. The Sametime buddylist attribute structure
      2. Overview of the Extended Live Names sample
        1. Accessing the sample
        2. Sample functionality overview
      3. Setting up the development environment
      4. Loading the user buddylist after successful login
        1. Working with the BuddyList service
        2. Handling service available/unavailable events
        3. Loading the user buddylist
      5. Handling a load failure
      6. Keeping the buddylist updated
        1. Adding a new user to a private group
        2. Removing a person from the list
    6. Chapter 8: Places and Place awareness
      1. Key concepts within Places architecture
        1. What are Places and why use them?
        2. What are sections and why use them?
        3. What are activities and why use them?
        4. What are attributes and why use them?
      2. Scenario
      3. Application overview
        1. Applying Places to the context of the scenario
        2. Applying sections to the context of the scenario
        3. Applying activities to the context of the scenario
        4. Applying attributes to the context of the scenario
      4. Setting up and running the application (1/3)
      5. Setting up and running the application (2/3)
      6. Setting up and running the application (3/3)
        1. Assign users to sections and the panel
        2. Download and detach files
        3. Environment variables
        4. Sametime server preparation
        5. Start the server application
        6. Start the client applications
        7. Understanding the client-side
        8. Using the Applet GUI
        9. Entering the Panel Discussion Place
        10. Getting a reference to the activity
        11. Getting references to sections
        12. Entering the Queue
        13. Sending a message to the panel
        14. Leaving the Queue
        15. Logging in as a panel member
      7. Building the server-side (1/3)
      8. Building the server-side (2/3)
      9. Building the server-side (3/3)
        1. Logging in as a server application
        2. Creating a persistent Place and Place characteristics
        3. Responding to a request for the activity
        4. Monitoring the Place
        5. Managing the Queue
        6. Receiving, translating, and responding to questions
      10. Summary
    7. Chapter 9: Sametime Links
      1. Overview of Sametime Links
      2. Deployment considerations
        1. Size is important
        2. Platform support
        3. Working with anonymous users
      3. Enabling live names in a Web page
      4. Sametime Links directory overview (1/4)
      5. Sametime Links directory overview (2/4)
      6. Sametime Links directory overview (3/4)
      7. Sametime Links directory overview (4/4)
        1. Directory contents
        2. Understanding the HTML files
      8. Building an interactive Web site (1/3)
      9. Building an interactive Web site (2/3)
      10. Building an interactive Web site (3/3)
        1. Provide the customer with a branded ST Links experience
        2. Taking it further
      11. Using Sametime Links with bots
        1. How does it differ?
        2. Changing the chatWindow.html
      12. Adding menu options to Sametime Links (1/3)
      13. Adding menu options to Sametime Links (2/3)
      14. Adding menu options to Sametime Links (3/3)
        1. The sample pop-up menu
        2. Starting with a Sametime Links-enabled page
    8. Chapter 10: Sametime-enabling portlets
      1. IBM WebSphere Portal Server overview
        1. IBM WebSphere Portal overview
        2. Portlets overview
      2. Versions of WebSphere Portal and Sametime
        1. Included collaborative portlets
        2. Collaboration Center for WebSphere Portal
      3. Collaborative Components approach (1/3)
      4. Collaborative Components approach (2/3)
      5. Collaborative Components approach (3/3)
        1. Using WebSphere Portal Collaborative Components
        2. Overview of the Collaborative Components API
        3. Technical overview of the Collaborative Components
        4. Adding Sametime collaboration to a basic portlet
        5. Adding awareness to the JSP
        6. Adding more Sametime functionality
      6. STLinks API approach to enabling portlets
        1. Why use the STLinks API
        2. Enabling the portlet using STLinks
        3. Conclusion
    9. Chapter 11: Customizing the Online Meeting Center
      1. Typical reasons for branding the Meeting Center
      2. Branding the Meeting Center
        1. Changing the page header
        2. Changing the look
        3. Using a Java Server Page (JSP) front-end
      3. Meeting summary e-mail (1/6)
      4. Meeting summary e-mail (2/6)
      5. Meeting summary e-mail (3/6)
      6. Meeting summary e-mail (4/6)
      7. Meeting summary e-mail (5/6)
      8. Meeting summary e-mail (6/6)
        1. Overview
        2. Behind the scenes
        3. Implementing the e-mail notification feature
        4. Design changes
        5. Validating the changes
      9. Summary
    10. Chapter 12: Ideas for customization and integration
      1. Why customize and integrate?
      2. Using Sametime to send data
        1. The RichTextBot Sametime Bot
        2. The RichTextClient Sametime applet
      3. Alternative approaches to Single Sign-On (SSO) (1/2)
      4. Alternative approaches to Single Sign-On (SSO) (2/2)
        1. The TokenGenerator servlet
      5. Enabling Active Server Pages (ASP) with Sametime Links (1/2)
      6. Enabling Active Server Pages (ASP) with Sametime Links (2/2)
        1. What are IIS and ASP?
        2. Directories
        3. Logging in using the Token Generator
        4. How it works
  5. Part 3: Bringing it together
    1. Chapter 13: Visioning scenario: Sametime enterprise integration
      1. The scenario
      2. Business drivers and requirements
        1. Relationships between the call center and the departments
        2. Solution description
      3. Architectural considerations
        1. Software components
      4. Phased approach toward building the solution
      5. Phase 1: Implementing the infrastructure (1/2)
      6. Phase 1: Implementing the infrastructure (2/2)
        1. Implementing an infrastructure for instant collaboration
        2. Customizing the meeting center look and feel
      7. Phase 2: Expanding Sametime features (1/3)
      8. Phase 2: Expanding Sametime features (2/3)
      9. Phase 2: Expanding Sametime features (3/3)
        1. Enabling people awareness into existing applications
        2. Allow offline message delivery
        3. Implement workflow using Sametime awareness feature
      10. Phase 3: Expanding to outside world (1/6)
      11. Phase 3: Expanding to outside world (2/6)
      12. Phase 3: Expanding to outside world (3/6)
      13. Phase 3: Expanding to outside world (4/6)
      14. Phase 3: Expanding to outside world (5/6)
      15. Phase 3: Expanding to outside world (6/6)
        1. Provide users with self service tools
        2. Provide customers ability to call for online support
        3. Track user activity and provide active call center behavior
        4. Maintain logging of online customer conversations
        5. Allow educational sessions with customers
        6. Implementing multilanguage educational sessions
      16. Phase 4: Future planned enhancements
        1. Consolidating the tools interface
      17. Conclusion
  6. Part 4: Appendixes
    1. Appendix A: Visualizing Sametime
      1. Overview
      2. Architecture
      3. Outline
      4. Visualizing Sametime client
      5. Implementation
      6. GUI Design
      7. Web services
      8. IM session data aggregation (1/3)
      9. IM session data aggregation (2/3)
      10. IM session data aggregation (3/3)
      11. Outcome
      12. Trial program
      13. Results
      14. Concerns
      15. Future improvements
      16. Lessons learned
    2. Appendix B: Online customer support application example
      1. Overview
      2. Sametime functionality supporting this application
      3. The customer applet
      4. Customer UI
      5. Customer attributes
      6. Customer state machine
      7. The agent applet
      8. Agent UI
      9. Agent attributes
      10. Agent state machine
      11. Customer/Agent handshake
      12. Helper classes
      13. Back-end classes
    3. Appendix C: Additional material
      1. Locating the Web material
      2. Using the Web material
      3. How to use the Web material
  7. Related publications
    1. IBM Redbooks
    2. Other publications
    3. Online resources
    4. How to get IBM Redbooks
    5. Help from IBM
  8. Index (1/2)
  9. Index (2/2)
  10. Back cover

Product information

  • Title: Lotus Instant Messaging/Web Conferencing (Sametime): Building Sametime Enabled Applications
  • Author(s): John Bergland, John Barrow, Jonas Covey, Washington Cabral, Carl Tyler, Yafit Sami, Rob Novak
  • Release date: November 2003
  • Publisher(s): IBM Redbooks
  • ISBN: None