AD107: Adding Presence Awareness to Your
Transcription
AD107: Adding Presence Awareness to Your
® AD107: Adding Presence Awareness to Your Business Applications Dvir Landerer, Haifa Software Lab, IBM Gabi Miro ,Haifa Software Lab, IBM Agenda Overview Sametime Client Toolkits General Sametime Links Toolkit Java Toolkit C++ Toolkit COM Toolkit Sametime Server Toolkit Q&A 3 What is Sametime Sametime is a client/server real-time collaboration product Sametime is NOT just an “instant messaging” product, but rather it offers a large set of capabilities like: People Awareness Instant Messaging Place-Based Awareness Collaboration Meetings • Chat • Screen Sharing • Whiteboard • Audio and Video And more… 4 Sametime out of the box On the server side Community Server Meeting Server On the client side Sametime Connect for Browsers (a.k.a. Java Connect) Sametime Connect for Desktop (a.k.a. C++ Connect) MRC (Meeting Room Client) …. 5 What are the Sametime Client Toolkits The Sametime Client Toolkits provide the ability to Sametime-enable client side software applications in Java, Windows and Web environments The Sametime Client Toolkits come in 4 flavors Sametime Links Toolkit Java Toolkit C++ Toolkit COM Toolkit 6 Lotus Notes 6.5 is Sametime Enabled 7 Lotus Notes 6.5 is Sametime Enabled 8 NotesBuddy Demo 9 Which toolkit to use There are four main factors to consider The target platform Required programming skills Required Sametime features 10 Target Platform and Programming Skills Toolkit 11 Target Platform Language Sametime Links Web HTML/JavaScript Java JDK 1.1.8 JDK 1.4.1 Java C++ Windows C++ COM Windows Visual Basic Microsoft Office Web (in IE) Lotus Notes Sametime services/components 12 Community Services Meeting Services Application Sharing Whiteboard Streamed Media Community Awareness Places Lookup IM (Instant Messaging) Token Storage Names Directory Post BuddyList Announcement FileTransfer Note: Community Services refers to the group of services available from the Community Server. The Community service is simply one of the Community Services. Community Service Authentication Login by password Login by token (SSO – Single sign on with Domino or WebSphere) Login as anonymous (limited access, permissions controlled by administrator) Change your online status Active Away DND (Do not disturb) Change your privacy settings (who can see me) 13 Awareness Service Watch users User status • Online (Active, Away, DND) • Offline User attributes • Microphone • Speakers • Video Camera • Etc. Watch server side groups (a.k.a. public groups) Watch users associated with a server side group Watch server attributes 14 Audio Video Directory Browsing Etc. Places Service The Sametime places architecture provides a flexible and robust model that supports place-based awareness and collaboration. A Sametime virtual place is an abstraction of a meeting place in which users collaborate in various activities Examples of a place: a web page (URL) a document a discussion forum a website 15 Places Service (cont.) A virtual place is defined by its name so anything that can be represented as a string can be a place. Sections - In the Sametime places model, a virtual place is made out of sections. Activities – These are server-side applications that share the place with the users, and define ways in which they can collaborate. Place members – Users, Sections, Activities are all place members. Attributes – All place members have a list of properties describing them, and can also have a list of attributes (key/value). 16 The Sametime Places model Place Attributes Stage Attributes Users Activities Attributes Users Attributes 17 Section s Attributes Attributes What you can do in a place Entering and moving By default all users can enter the place and move freely to other sections The exception to the above can be restricted by an AllowedUsersList Communication in a place Direct text/data messages Using member’s attribute 18 Lookup Service Most Sametime operations that deal with users or groups require STUser or STGroup objects as parameters. The resolve operation matches a name to provide either an STUser or an STGroup object. 19 Resolve user names Resolve server-side group names Handle resolve failed and resolve conflict situations Query the content of server-side groups IM service (Instant Messaging) Allows you to send/receive text and/or binary messages between clients It is used for standard IM, but it can also be used for passing any other messages, such as game moves and translated messages. The service uses an IM type parameter to classify message sessions of different type Types 0 – 10000 reserved for Lotus internal usage Third party IM types should be registered with Lotus Example: Start/Stop responding in Sametime Connect 20 Token service Provides the ability to generate a token that can be used by a logged-in user to log in to the Sametime server, from a different application, for example, without being challenged to authenticate again. See Community service loginByPassword() vs. loginByToken(). 21 Storage Service Stores user related information (user preferences for example) as attributes on the Sametime server. Allows you to access these attributes from whenever you login to your Sametime server When you are logged-in from two or more clients simultaneously, modifications in your storage attributes posted from one client may be received by the other clients. Note: Do not confuse the attributes used in this service with the online attributes of the Awareness or Places service. 22 BuddyList service Provides the ability to get a user’s contact list from the user storage (attribute #0), on the Sametime Server, or store it there. Provides conversion methods between String and BL objects. This is used for example to store/retrieve a contact list to/from the local file system. Provides methods to construct BL objects (contact list). In fact this service is a convenience service, that extends the Storage service. It hides from the developer the low level protocols defined by the Storage service, and provides construct and parse methods for the user’s contact list. 23 Names service To customize the display name of your users inside an application. Examples To make the display name shorter by having the name cut at some predefined delimiter, like “Joe Smith/Organization” will be shown as “Joe Smith” (delimiter=“/”). Just replace the display name by a “nickname” like “Joe” Note: This service is a local service and has no equivalent server-side component (in the C++ Toolkit this service is part of the Community service). 24 Directory service Enables to browse the Sametime community directories, provided that the directory configuration allows this. Provides a list of all available directories and allows to query for chunks of entries in each directory. Note: If your Sametime server is configured to use an LDAP directory, directory browsing is not enabled. 25 Post service Allows the sending of messages to many users at once, and allows the user to respond to the message they received. Example – A company secretary sending a meeting reminder to all the meeting participants 26 Announcement Service An announcement is a message that can be sent to one or more people. You can send an announcement to a list of STUser and/or STGroup instances. Optionally sender may allow recipients to respond. Very much similar in functionality to the Post service, but different in the following aspects: Better performance than the Post service Recipient list can include server-side groups Note: In the C++ Toolkit this service is part of the Community service. 27 FileTransfer service Provides the ability to send and receive files between Sametime users. The initiator creates a FileTransfer object and starts the transfer. The other side can accept or decline the transfer. After the file transfer starts, both sides receive progress notifications and can stop the transfer before it completes successfully. 28 Meeting services Allow clients to create and join multi-participant meetings. The services include Application Sharing Whiteboard Streamed Media (Audio/Video) Development over the Meeting Services are available only in the Java Toolkit, but still it is possible for a C++ application to launch the Java Meeting Room Client (MRC). 29 LiveNames Demo This sample (including the Java Source code and the HTML launching the LiveNames applet) can be found in the Sametime Java Toolkit SDK. 30 Sametime features in the different toolkits Sametime Links D D D Full Community Services D1 D2 D D D D D D D Launch MRC Embed Meeting Services Partial customization required 2 Partial support 31 Java Basic Community Services Community UI 1 C++ COM D Sametime Links Toolkit Add awareness and messaging to: Web pages Applications Examples: e-business Help desk Online directories Lotus QuickPlace Lotus K-Station Lotus Discovery Server 32 Sametime-Enable Web Applications Turn existing names in web applications into “Live Names“ Just by adding a few lines of HTML / JavaScript 33 Sametime Links Demo 34 Sametime Links Architecture Web Page Web Application Java Script HTML Sametime Links Applet Sametime Links Server Application Sametime Server 35 Sametime Links Functionality 36 Easy to use HTML / JavaScript API Light weight (~20K applet), no install Reverse Proxy support Transparent authentication by token Encryption Does not affect page layout HTML based and customizable UI Sametime Links Features Common Sametime Toolkits Services Awareness Instant messaging N-way chat Upgrade to meeting Place-based awareness & chat UI Features Live names do not affect page layout HTML-based UI – customizable Localized to languages supported by Sametime ADA compliant 37 Advanced Sametime Links API Access to additional Sametime functionality Login, Logout Change status Add to contact list Customize behavior and UI Handle events 38 Place-based Awareness in Sametime Links Place Counter Who Is Here window Place Chat window 39 Sametime Links Supported Platforms Supported on Windows NT/2000/XP Microsoft Internet Explorer 5 and above Netscape 7.x and above (up to ST 3.1) Mozilla 1.4.1 (from ST 6.5.1 to be released later this year) Sametime Server compatibility: Sametime 3.0 and above out-of-the-box 2.5 with Sametime Links add-on 40 Sametime Java Toolkit Enhance Java applets and applications with real-time collaboration Supports the following platforms Windows Linux* AIX* Solaris* * Since Sametime 3.1 Examples: Java Connect MRC (Meeting Room Client) 41 Sametime Java Toolkit features Full Community Services Meeting Services Community UI Services Object oriented Modular Thread-safe Event driven and asynchronous (using listeners) 42 Java Toolkit Community UI Services The toolkit provides a standard UI that can be used by developers to speed up the development time required to build a Sametime-enabled application. The standard UI is provided by UI Components AWT Dialogs and panels, which can be embedded inside any AWT container 43 Java Toolkit UI components UI Components AnnouncementUI Provides the ability to send and receive announcement without having to deal with the low level protocols that are involved. It includes the Send and Receive Announcement dialogs. ChatUI Provides the standard UI to create and receive IMs and chat meetings with two or more participants. The standard UI can be customized by the developer. CommUI Provides a standard UI to display community and administrator messages FileTransferUI Provides the ability to send and receive files without having to deal with the low level protocols that are involved. It includes the Send File, Receive File and File Transfer Status dialogs. 44 Java Toolkit AWT dialogs and Panels 45 Awareness List Place Awareness List Capabilities List Tools Dialog Privacy Dialog and Panel Add Dialog Resolve Panel Directory Dialog and Panel Group Content Dialog Sametime C++ Toolkit Enhance Windows applications with real-time collaboration For any Win32 or MFC based Windows application Examples: Sametime Connect NotesBuddy Lotus Notes 6.5 46 Sametime C++ Toolkit Features Full Community Services Object oriented Modular Thread-safe Event driven and asynchronous (using listeners) No dependency on Microsoft technologies MFC, OLE Supports Microsoft Visual C++ Developer Studio 47 Sametime COM toolkit Add awareness and messaging to Windows applications that support COM: VisualBasic Microsoft Office Web (in Microsoft Internet Explorer) Lotus Notes 48 Sametime COM Toolkit features Basic Sametime Community services for Awareness and Instant Messaging Easy to use Delivered as standard DLL Supports automation OLE 49 Sametime COM Toolkit Services Exposes the following services: CommunityService 50 Sametime COM Toolkit Services (cont'd) AwarenessService LookupService 51 Sametime COM Toolkit Services (cont'd) InstantMessagingService 52 Sametime COM API Architecture C++ App VB App Community Lookup IM Community Lookup JS App Community Awareness Sametime COM DLL COM Interfaces ICommunityService ILookupService IAwarenessService IInstantMessagingService C++ API Sametime Server 53 Sametime COM Toolkit Contents DLL and TLB Documentation: Developers Guide Reference, and White Paper Samples: Login Awareness BuddyList 54 What is the Sametime Server Toolkit? The server toolkit provides the ability to: Enhance and extend Sametime server side services Create your own Sametime server side service Support new clients The server toolkit is Java-based The server toolkit is an extension to (a superset of) the Java Client Toolkit Examples Sametime Bot – an application that can be added to the buddy list just like another user, providing answers to queries submitted by the user Sametime Links Toolkit Activity providers (for activities in a place) 55 Sametime High Level Architecture Server Applications Server Multiplexers Clients 56 Community view 57 The functions of each layer Multiplexers I/O concentration Distribution of multi recipient messages Gateway Server Manage community members Route messages Supply notifications to members Server Applications Enhance server functionality 58 Sametime Server Toolkit Demo 59 Additional Information Sametime toolkit course and guide www.lotus.com/sametimedevelopers latest API & sample applications discussion area site is enabled with Sametime IBM Redbooks on Sametime application development www.ibm.com/redbooks 60 Q&A 61
Similar documents
Smarter Collaboration for a new world and the nature of work – at IBM
workplace also reflected these changes Phase Phase 1: 1: Access Access (The (The Website Website Model) Model)
More information