® developing plugins for sametime connect 7.5 jian min jiang [email protected] lotus isv technical...

16
® Developing Plugins for SameTime Connect 7.5 Jian Min JIANG [email protected] Lotus ISV Technical Enablement China Software Development Lab

Upload: roy-washington

Post on 18-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

®

Developing Plugins for SameTime Connect 7.5

Jian Min JIANG

[email protected]

Lotus ISV Technical Enablement

China Software Development Lab

UI Extensions: Main Window

“Mini Apps”Status bar

Telephony

Action Bar

Branding Area

Live Names

Tools Menu

UI Extensions: Chat Window

Tools Menu

Telephony Branding Area

Action Bar

Status bar

Send areaactions

More examples of UI extensions Extend menus and toolbars in

other windows (e.g., n-way chat participant list)

Extend Sametime’s system tray menu choices, as shown to right (“BluePages”)

Extend Preferences UI using standard Eclipse API

Add branding areas to login dialog, Contact List, and chat window

Add actions to a contact’s pop-up menu

Reuse business card

BluePages and Voice Suite are internal IBM plug-ins

Extending Sametime Connect - Steps

1. Have an idea?

2. Approach 1: Choose the appropriate UI extension

3. Approach 2: Choose the appropriate event override

4. Alternatives to Extending Sametime Connect

5. Code

6. Test

7. Deploy

Extending Sametime Connect - Approaches

Approach 1: Choose the appropriate UI extension

Actions: Main menu, person/group context menu, toolbars

Areas: Mini app, chat area, n-way list area, pop-up add-on

Information extension: Person status, n-way list columns

Approach 2: Choose the appropriate event override

Transform chat messages (e.g., translation or keyword substitution)

React to location changes, coordinate with other applications

Automated responses (e.g., DND in presentation mode)

These approaches can be combined as needed.

Extending Sametime Connect - Alternatives

Don’t extend the client Convenience can turn to clutter

Extend your own application instead Extend your web application using Sametime Links Toolkit* Extend your Java application using Sametime Java Toolkit* Extend your RCP application using Livenames Extend your Notes 8 application

Other options are on the horizon Reuse of Sametime Connect views in Expeditor**

* ST Links is unchanged; ST Java TK AWT-based UI elements are deprecated** You can extend Sametime Connect 7.5’s UI; future versions will allow reuseof its views in your rich client application.

Extending Sametime Connect – UI Elements

viewActions ext. point* actionSet ext. point*

popupMenus ext. point*(GroupSelection)

MyBusinessCard(Person)

popupMenus ext. point*(PersonSection)

miniApp ext. point(AbstractMiniApp)

Group, Person

(from System tray)

(from n-way chat)

nWayListExtentionext. point

Person

chatAction ext. point

(from chat window)

* Standard Eclipse UI extension points

Extending Sametime Connect – Code, Test, Deploy

Code Familiar to Eclipse developers (plug-ins, SWT, JFace) Eclipse IDE wizards simplify code and debug

Test Launch directly from Eclipse IDE or connect to running client Expeditor Toolkit automates creation of Launch configuration, includes properly

configured J9 runtime environment

Development-time Deployment Run directly from Eclipse’s PDE (Plug-in Development Environment), or Copy to installation’s plugins directory and restart with -clean option

Production Deployment When complete, create update site; optionally require installation at client startup Delivery is either via “pull” from users with Update Manager, or “push” from

server from enterprise-wide update site

Sample plug-in: Branding

Extension Point com.ibm.collaboration.realtime.ui.stbranding

Options Image URL Eclipse Widget

Any controls or combinations, but the size is limited Extend STBrandingArea Implementation of createControl

public Control createControl(Composite parent) {…….

}

SameTime Connect Client Customization: Branding

Login Window

<plugin> <extension point="com.ibm.collaboration.realtime.ui.stbranding"><!-- image banner above login --> <stbranding id="com.ibm.collaboration.realtime.sample.branding.login" name="login dialog branding" targetView="com.ibm.collaboration.realtime.login">

<image file="images/login_branding.png"/> </stbranding> </extension></plugin>

SameTime Connect Client Customization : Branding

Chat Window

<plugin> <extension point="com.ibm.collaboration.realtime.ui.stbranding"> <stbranding height="64" width="64" id="com.ibm.collaboration.realtime.sample.branding.chat" name="chat window branding" targetView="com.ibm.collaboration.realtime.chatwindow" valign="top"> <control class="com.ibm.collaboration.realtime.sample.branding.SampleSTBrandingArea"/> </stbranding> </extension></plugin>

Contact List

<plugin> <extension point="com.ibm.collaboration.realtime.ui.stbranding"> <stbranding height="128" id="com.ibm.collaboration.realtime.sample.branding.imhub" name="contact list branding" targetView="com.ibm.collaboration.realtime.imhub" valign="bottom"> <website url="http://www.ibm.com"/> </stbranding> </extension></plugin>

SameTime Connect Client Customization: Splash

<STconnect75>plugins\com.ibm.collaboration.realtime.application_2.0.0.jarsplash.bmp

<STconnect75>configuration\org.eclipse.osgi\splash.bmp