IBM Lotus Sametime V7.5 is a family of collaboration products providing real-time awareness, communication, screensharing capabilities, and IP audio/video services. Lotus Sametime brings the flexibility and efficiency of real-time communication to the business world by interconnecting people -- colleagues, customers, suppliers, and partners.
Lotus Sametime is the first real-time collaboration product that offers a complete range of integrated, real-time services while meeting enterprise and e-business requirements for scalability, manageability, and security. Sametime services fall into three areas:
- Community services
These services include awareness, instant messaging, and chat. A contact list makes Sametime users aware of who is available (and who is online, but unavailable) to receive an instant message or to participate in a chat with one or more people. Instant messaging traffic is encrypted. - Online meeting services
These services include a shared whiteboard and the ability to share programs and documents online. Lotus Sametime also offers a server-based Meeting Center where users can schedule online meetings in advance and store agendas and other meeting materials. - Customization and integration services
Lotus Sametime provides a comprehensive API that enables customers to easily integrate real-time collaborative capabilities into other applications, such as e-commerce sites, help desks, and training/information delivery applications, for example, Sales Force Automation.
This article introduces you to the various toolkits available with the IBM Lotus Sametime Software Development Kit (SDK) V7.5 that enable you to access the community, online meeting, and customization and integration services. This article is intended for application developers with or without previous Lotus Sametime experience, who want to know more about the toolkits available with Lotus Sametime V7.5.
Overview of the Lotus Sametime V7.5 architecture
There are two distinct Sametime architectures a developer may need to work with: the Lotus Sametime Connect client architecture and the Lotus Sametime server architecture.
Lotus Sametime Connect client architecture
IBM Lotus Sametime Connect is built on top of the Java Runtime Environment (JRE), the Eclipse Rich Client Platform (RCP), and IBM WebSphere Everyplace Deployment. Figure 1 shows major Lotus Sametime Connect components. The JRE, Eclipse RCP, and WebSphere Everyplace Deployment layers form the foundation common to IBM's managed client products. The components above WebSphere Everyplace Deployment, enclosed by the gray outline, are specific to the Lotus Sametime Connect client. These components include public and implementation-specific plug-ins.
Figure 1. Lotus Sametime Connect architecture

Lotus Sametime server architecture
Lotus Sametime includes many server applications that collectively provide the capabilities of the Lotus Sametime server. All client-to-client communication, such as instant messaging, passes through the Lotus Sametime server. Users who log onto the Lotus Sametime server from different clients can communicate as long as they use clients that support Sametimeâs functionality. For example, a user who logs on through a Sametime-enabled word-processed document can chat with a user who logs on through Lotus Sametime Connect or through the company portal.
When the client logs into the Lotus Sametime server, it has access to all Sametime services and can communicate with any other Sametime client logged into the Lotus Sametime server, based on the:
- Capabilities of the various clients
- Privacy rules that the users defined
- Policy rules defined by the administrator and enforced by some of the server applications
The Sametime server consists of three servers that interact with one another:
- Community server. Provides all Sametime community services, such as login, instant messaging, and awareness.
- Meeting server. Provides all Sametime meeting services, such as screensharing and IP audio and video.
- IBM Lotus Domino. Provides core Sametime services, such as directory access, authentication, and the HTTP server.
The Sametime developer toolkits
Lotus Sametime includes comprehensive application development toolkits. You can use the toolkits to embed real-time capabilities, such as chat and real-time help features, into e-business applications. The toolkits can also be used to expand Sametimeâs native functionality, for example, building plug-ins to incorporate your companyâs internal directory with Lotus Sametime. You can use one or a combination of the toolkits to develop customized real-time applications.
The Lotus Sametime SDK includes both client and server toolkits. The client toolkits are intended to be used by client or browser-based applications and include the Lotus Sametime Connect toolkit, the Lotus Sametime Links toolkit, and the Lotus Sametime Java toolkit.
NOTE: The Lotus Sametime Connect toolkit requires the Lotus Sametime Connect client to be installed on the machine where the application runs, but the other client toolkits do not require Lotus Sametime Connect.
The server toolkits are intended to be used by applications that work in conjunction with the Lotus Sametime server. The applications do not necessarily run on the Lotus Sametime server itself. The server toolkits include:
- Lotus Sametime Telephony Conferencing Service Provider Interface (TCSPI) toolkit
- Lotus Sametime Community Server toolkit
- Lotus Sametime Directory and Database Access toolkit
- Lotus Sametime Monitoring and Statistics toolkit
- Lotus Sametime Online Meeting toolkit (Meeting Management APIs)
The Lotus Sametime Monitoring and Statistics and the Lotus Sametime Online Meeting toolkits are new to Lotus Sametime V7.5.
Determining which toolkit to use when
Each Sametime toolkit provides different features and supports different target environments (desktop, Web browser, or server). Choose a toolkit based on what your application needs to do and where it needs to run.
Table 1 summarizes the information you need to select the appropriate toolkit(s) for your application. The remaining sections of this document provide more details on each of the toolkits. The target environments listed below include all operating systems supported by Lotus Sametime V7.5, unless otherwise noted.
Table 1. Sametime toolkit features and target environments
| Toolkit | Use this toolkit to... | Target environments |
|---|---|---|
| Lotus Sametime Connect toolkit | Build Eclipse plug-ins to integrate with or to extend the Lotus Sametime Connect client. | Desktop |
| Lotus Sametime Links toolkit | Add Sametime features to Web pages using JavaScript and HTML. | Web browser (Windows only) |
| Lotus Sametime Java toolkit | Add Sametime features to Java applications. | Desktop, server |
| Lotus Sametime TCSPI toolkit | Provide click-to-call telephony services for Lotus Sametime Connect, Lotus Sametime Web conferencing, and IBM Lotus Notes. | Server |
| Lotus Sametime Community Server toolkit | Build Java components that add or extend services on the Lotus Sametime server. | Server |
| Lotus Sametime Directory and Database Access toolkit | Build C++ or Java components for the Lotus Sametime server that provide directory integration, chat logging, or virus scanning services. The C++ components are supported only on Windows. The Java components are supported on all platforms. | Server |
| Lotus Sametime Monitoring and Statistics toolkit | Access Lotus Sametime server statistics in XML format via HTTP. | Desktop, server |
| Lotus Sametime Online Meeting toolkit | Schedule and manage online meetings via HTTP. | Desktop, server |
The Lotus Sametime Connect toolkit
The Lotus Sametime Connect toolkit (sometimes referred to as the Lotus Sametime Connect SDK) is a collection of APIs built on top of WebSphere Everyplace Deployment and Eclipse and can be used to build plug-ins to enhance the usability of Lotus Sametime Connect. This toolkit is new for Lotus Sametime V7.5.
The Lotus Sametime Connect toolkit provides an integration guide, Javadoc, J9 Java Class Libraries (JCL) Desktop run-time, and sample plug-ins.
You can use the Lotus Sametime Connect toolkit to develop plug-ins that customize the Lotus Sametime Connect client. Sample plug-ins are shipped with the toolkit, which makes available some key functionality within Lotus Sametime Connect.
For more information about the sample plug-ins that ship with Lotus Sametime Connect V7.5, see the developerWorks Lotus article, "Extending IBM Lotus Sametime Connect V7.5."
The Lotus Sametime Links toolkit
The Lotus Sametime Links Toolkit is a lightweight (approximately 50 KB) toolkit that allows Web developers to Sametime-enable their Web pages and applications. The toolkit uses simple HTML and JavaScript APIs (no Java programming required) to turn existing names into Sametime links by adding a few lines of HTML without affecting the layout of the page.
The toolkit requires no special installation on the client machine. It is rich in features offering awareness with status icons, instant messages, and multi-person chats, also referred to as N-way chats. Users can also launch instant meetings. The toolkit provides an authentication mechanism by which users need not log in if they have already authenticated on the Web site. One other attractive feature is the ability to work over the extranet through firewalls because the toolkit uses HTTP to communicate with the Lotus Sametime server.
The Lotus Sametime Links toolkit has had only minor changes since Lotus Sametime V7.0.
The Lotus Sametime Java toolkit
The Lotus Sametime Java toolkit is a collection of building blocks or components that developers use to build applications that leverage the functionality and services provided by Lotus Sametime. These toolkit components can be used in any standard development environment that supports JDK 1.4.2 and 1.5.
The Lotus Sametime Java toolkit is an object-oriented, modular, and thread-safe API. While somewhat larger than the client toolkits described earlier, the Lotus Sametime Java toolkit provides all the core Sametime community components. Developers wanting to embed Sametime-based services and functionality in Web applications can use the Lotus Sametime Java toolkit. For example, you can use the Java toolkit to build a facility for live customer service-style help in an online marketplace, to build awareness into a knowledge management application, or to bring application sharing into an e-business application.
This toolkit has been updated with new features for Lotus Sametime V7.5.
The Lotus Sametime Java toolkit provides you with access to core Sametime services, such as awareness, chat, and whiteboarding. The toolkit has a layered architecture composed of three main layers:
- Transport. This layer provides the communication link between the application and the Lotus Sametime server.
- Services. This layer provides the application with the Sametime Community and Meeting services.
- User interface. The UI layer provides the Sametime-enabled Abstract Window Toolkit (AWT) component and the UI for the application.
The Java toolkit provides access to the entire feature set in Lotus Sametime via an object-oriented API model. With this toolkit, you can expose functionality such as file transfer, selective alerts, and announcements. You can also create applets and applications, such as a customized Lotus Sametime Connect client (the standard Lotus Sametime Connect client comes with a Java-based version), Sametime automatic response bots, and customized applications in which only a few features of Lotus Sametime are included. You can also create customized applets for your Web site using this toolkit. However, if you need to create a simple awareness application on your Web site, then you want to use the Lotus Sametime Links toolkit.
The Lotus Sametime Telephony Conferencing Service Provider Interface (TCSPI) toolkit
The Lotus Sametime Telephony Conferencing Service Provider Interface (TCSPI) toolkit includes a set of Java classes that enable telephony service providers to integrate audio conference call technology into IBMâs real-time collaboration server offerings. This toolkit was available for previous Lotus Sametime releases, but on a limited basis. The toolkit has been updated for release 7.5.
The TCSPI toolkit contains several components as well as documentation that you can print. The documentation supplied is an implementer's guide, a readme, and a guide to help prepare the application for InstallShield. The TCSPI toolkit contains the following components:
- SampleConference.xml
The SampleConference.xml file is used for conference management and creation. - Mock service provider
The mock service provider illustrates how a service provider works. It can be used to learn and to model application development using the API. - ConferenceManager.properties file
The ConferenceManager.properties file stores settings relative to installation, configuration, and asynchronous requests.
Telephony service providers can use the TCSPI toolkit to create server-side plug-ins that enable them to hook into their backend PBX systems. Some examples of how you can use the TCSPI toolkit include:
- Telephone call management. Using a combination of public switched telephone network (PSTN), Voice over Internet Protocol (VoIP), and other telephony technologies.
- Integration. Integration with a real-time collaboration offering from IBM, such as instant messaging and Lotus Sametime Web conferencing.
- Audio conference calls control and management. Controls are possible for the users and moderators.
The Lotus Sametime Community Server toolkit
The Lotus Sametime Community Server toolkit lets you write new server applications and provide new services to the Sametime community. You can use this toolkit to enhance application logic on the server side. The toolkit now gives you the ability to enhance and extend Sametime services, to create your own Sametime service, and to support new clients.
With the release of the Community Server toolkit, developers have the tools to take the benefits of real-time functionality to even higher levels. This toolkit has not changed since Lotus Sametime V7.0.
The Lotus Sametime Community Server toolkit contains the following components:
- Release notes
- Tutorial
- Developerâs guide
- Javadoc reference
- Server architecture white paper
- Server toolkit FAQ
You may want to enhance the instant messaging services provided by Lotus Sametime by using the Lotus Sametime Community Server toolkit to develop an application that supports features such as offline messages. An offline message is a message sent to the user while he or she is offline. The messages are saved and sent to the user the next time he is online.
The Lotus Sametime Directory and Database Access toolkit
The Lotus Sametime Directory and Database Access toolkit provides the ability to log chat transcripts in a database for later retrieval; to customize the generation and validation of the authentication token; to scan a transferred file for viruses; and to retrieve user data from different storage types.
This toolkit has been updated with new features for Lotus Sametime V7.5. The Lotus Sametime Directory and Database Access toolkit contains the following components that are the same as the release 7.0 toolkit:
- The Sametime Directory and Database Access API
- Developerâs guide
- Sample implementations
- Templates you can use to get started quickly
Additional components added in release 7.5 include:
- More APIs
- Sample code and binaries
- Javadoc
With the Lotus Sametime Directory and Database Access toolkit, you can extract data from a separate storage directory. For example, a customer whose employee photos are stored in a non-LDAP or Domino data repository can use the UserInfo SPI to develop a new black box and to insert photos into Lotus Sametimeâs business card feature.
The Lotus Sametime Monitoring and Statistics toolkit
The Lotus Sametime Monitoring and Statistics toolkit is a service implemented as a servlet. The toolkit provides a real-time view of the current state of the Lotus Sametime server. The information is returned as XML to the caller. There is nothing for the user of the toolkit to install.
The purpose of this toolkit is to provide Sametime statistics data in a more consolidated and accessible way. The toolkit can be used to measure usage and/or load on the server. This toolkit is new for Lotus Sametime V7.5.
The Lotus Sametime Online Meeting toolkit
The Lotus Sametime Online Meeting toolkit provides scheduling services that mirror the capabilities of the Lotus Sametime Meeting Center, such as creating, editing, updating, and deleting meetings. The toolkit is a Representational State Transfer (REST) based entry point into the server, so interaction with this entry point is via HTTP. Use the toolkit's developerâs guide to determine the construction of the URL that provides the interaction needed.
IBM Lotus Sametime V7.5 represents a major upgrade both in out-of-the-box capabilities as well as the tools available to developers. The addition of five new toolkits increases the total number of Lotus Sametime toolkits to ten, providing a depth and breadth of customization that cannot be matched by any other enterprise-ready, secure instant messaging application currently on the market.
Learn
-
developerWorks Lotus article, "Extending IBM Lotus Sametime Connect V7.5"
-
developerWorks Lotus article, "Taking a tour of the new features and technology in IBM Lotus Sametime 7.5"
-
developerWorks Lotus article, "Extending the Lotus Sametime client with an LDAP directory lookup plug-in"
-
developerWorks Lotus article, "Designing a Google Maps plug-in for Lotus Sametime Connect V7.5"
-
developerWorks Lotus article, "Extending IBM Lotus Sametime Connect V7.5 with an SMS messaging plug-in"
Get products and technologies
Discuss
- Participate in the discussion forum.
-
Check out developerWorks
blogs and get involved in the developerWorks community.
Comments (Undergoing maintenance)





