Top Banner
© 2011 IBM Corporation SHOW 108 Extending IBM Lotus Notes, iNotes, Symphony, and Sametime with widgets, policies, plug-ins, and APIs Jamie Liu | Software Engineer | IBM Mary Beth Raven | Product Designer | IBM
264

Ls11show108

May 12, 2015

Download

Technology

Mary Raven

Lotusphere 2011 Show and Tell session about extending Notes, iNotes, Symphony with Widgets, plug-ins and APis.
With Jamie Liu.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Ls11show108

© 2011 IBM Corporation

SHOW 108 Extending IBM Lotus Notes, iNotes, Symphony, and Sametime with widgets, policies, plug-ins, and APIs Jamie Liu | Software Engineer | IBM

Mary Beth Raven | Product Designer | IBM

Page 2: Ls11show108

© 2011 IBM Corporation

Agenda●Overview of where and how we'll extend the various clients

●Administrator's perspective on extending the client

─Marie-the-admin wants to SECURELY deploy the right extensions to the right people

●Developer's perspective on extending the clients

─Kathy-the-developer wants to develop useful panel and toolbar extensions

●End-users perspective on using the extensions

─Philippe the end user just wants to get more work done, faster

Page 3: Ls11show108

Overview of how Marie Will Help Others to Extend their Reach

1. For Lotus Notes1. Set desktop policies to deploy the sidebar 2. Set desktop policies to deploy widgets and Live Text3. Set policies to hide a sidebar panel (by default or locked)4. Deploy a widget catalog

2. For Lotus iNotes1. Set policies to deploy widgets2. Add specific widgets by editing inotes_config.xml

3. For Symphony (and possibly Sametime Connect in the future)1. Use Eclipse preferences (plugin-customization.ini) to deploy the sidebar

Page 4: Ls11show108

© 2011 IBM Corporation

Overview of How Kathy will Extend Her Reach

1 Add the “Cheapest Gas Prices” Google Gadget

2 Create a “zip code” recognizer to that any where she sees a zip code, she can click and get the cheapest gas prices in a sidebar panel

3 Add a Wikipedia text selection widget to the sidebar

4 Add a FedEx tracking number recognizer/action

5 Extend the Sidebar with Eclipse Development1 Set up the Eclipse IDE to launch Notes2 Add an Eclipse view to the sidebar as a sidebar panel 3 Add a toolbar action to show and hide the sidebar panel4 Programmatically close the entire sidebar when she opens any of the Symphony

editors

6 Deploy an Eclipse plugin using the catalog

Page 5: Ls11show108

Overview of How Philippe Will Extend His Reach 1. In Lotus Notes:

1. Add a Notes view as a panel2. Add the Inbox as a panel3. Add a Notes view as a search scope in the Search Center toolbar4. Add the Digg iPhone app as a panel5. Add a Web app (Twittergadget) that requires authentication6. Reach into GoogleTM Gadgets for a currency converter and mail it

to a friend

2. In Lotus iNotes:1. Add a widget from the catalog2. Add a widget that's been mailed to him

3. In Symphony: Add the Lotus Connections Files plug-in to Symphony from the Symphony catalog

4. In Sametime: Add a widget to Sametime from the Greenhouse catalog (Connections 3.0 plug-in)

Page 6: Ls11show108

© 2011 IBM Corporation

Overview of where we'll extend the clients

IBM(R) Lotus(R) Notes(R)

IBM Lotus iNotes(R)

IBM Lotus Symphony

TM

Sametime (R) Connect

Sidebar Panels

YES YES YES

Menus and/or Toolbar

YES YES Might be coming

New Tab or Window

YES YES YES Might be coming

Search YES YES

Live Text YES Might be coming

Might be coming Might be coming

Page 7: Ls11show108

© 2011 IBM Corporation

Overview of how we'll extend the clients

Notes iNotes Symphony Sametime Connect

Widgets YES YES YES Might be coming

Dominopolicies

YES

Eclipse Preferences using Plugin-Customization.ini

YES YES Might be coming

plug-ins YES YES YES

APIs YES

Page 8: Ls11show108

© 2011 IBM Corporation

Where Notes can be extended

Add Search Scopes

Add Sidebar panels

Add menus and/or toolbars

See and act on Live Text

Page 9: Ls11show108

© 2011 IBM Corporation

Where Lotus iNotes can be extended

Widgets section in the navigator

Clicking a widget name opens the widget in a new tab

Page 10: Ls11show108

© 2011 IBM Corporation

Where Symphony can be extended

Add Sidebar panelsAdd menus and/or

toolbars

Page 11: Ls11show108

© 2011 IBM Corporation

Where Sametime can be extended

Add Panels

Add menus and/or toolbars

Page 12: Ls11show108

© 2011 IBM Corporation

Agenda●Overview of where the various clients can be extended

●Administrator's perspective on extending the clients

─Marie-the-admin wants to SECURELY deploy the right extensions to the right people

●Developer's perspective on extending the clients

─Kathy-the-developer wants to develop useful panel and toolbar extensions

●End-users perspective on using the extensions

─Philippe the end user just wants to get more work done, faster

Page 13: Ls11show108

Marie Will Help Others to Securely and Safely Extend their Reach

1. For Lotus Notes1. Set desktop policies to deploy the sidebar 2. Set desktop policies to deploy widgets and Live Text3. Set policies to hide a sidebar panel (by default or locked)4. Deploy a widget catalog

2. For Lotus iNotes1. Set policies to deploy widgets2. Add specific widgets by editing inotes_Config.xml

3. For Symphony (and possibly Sametime Connect in the future)1. Use Eclipse preferences (plugin-customization.ini) to deploy the sidebar

Page 14: Ls11show108

Marie Needs the Following to Extend the Reach of Others● For Notes

─ Lotus Notes 8.5.1 or 8.5.2─ Internet access so she can get to the public widget catalog

catalog.lotus.com (on IP address 192.147.107.26)─ Domino Server; Admin client version 8.5, 8.5.1, or 8.5.2, or just

pubnames.nsf for setting polices─ A working knowledge of how to set up and deploy Domino policies

● For iNotes─ Internet access so she can get to the public widget catalog

catalog.lotus.com (on IP address 192.147.107.26)─ Domino Server; Admin client version 8.5, 8.5.1, or 8.5.2, or just

pubnames.nsf for setting polices─ A working knowledge of xml

● For Symphony (and possibly Sametime in the future)─ They Symphony install kit─ A working knowledge of Eclipse preferences and plugin-

Customization.ini

Page 15: Ls11show108

Marie 1.1 Set Desktop Policies to Deploy the Sidebar (9 Steps)● Marie can control whether Philippe sees the Sidebar

● Open the Domino Directory (Pubnames.nsf)● Create a new policy by clicking the Add Policy Action bar button

Click Add Policy

Page 16: Ls11show108

Marie: 1.1 Set Desktop Policies to Deploy the Sidebar1. Fill in the fields as appropriate

2. Locate the Desktop policies

3. Click New

Click New

Page 17: Ls11show108

Marie: 1.1 Set Desktop Policies to Deploy the Sidebar 6. Click the Preferences tab

7. Click the Window Management tab

8. In the “Display sidebar” dropdown, choose Yes (this is the default so to give users the sidebar, you really do not have to do anything)

9. Click Save & Close

Click Preferences

Click Window Management

Choose to display the sidebar (This is the default)

Page 18: Ls11show108

Marie: 1.2 Set Desktop Policies to Deploy Widgets and Live Text (8 steps)● Marie can control many things in the widgets sidebar or toolbar and catalog by using Domino Policy

1. You should be on the New Policy page (after saving and closing the sidebar setting)

2. Click New for Desktop policy again to set widget policies

3. Click the Widgets tab

Click New

Click Widgets

Page 19: Ls11show108

Marie: 1.2 Set Desktop Policies to Deploy Widgets and Live Text 4. Complete the pertinent fields

Default catalog name is toolbox.nsf; change to Noteswidgets.nsf

Public server is catalog.lotus.com (192.147.107.26)

Page 20: Ls11show108

Marie: 1.2 Set Desktop Policies to Deploy Widgets and Live Text

Widget Categories to install refers to the categories from the widget catalog.Widgets in these categories automatically get installed on Philippe’s computer

You have to type in these categories by hand in the policy, separated with a comma

Page 21: Ls11show108

Marie: 1.2 Set Desktop Policies to Deploy Widgets

If you turn on “Show the My Widgets panel…” in this policy, then Philippe sees the My Widgets sidebar panel and toolbar automatically

This will be checked on

Page 22: Ls11show108

Marie: 1.2 Set Desktop Policies to Deploy Widgets and Live Text

Ensure that Live Text is enabled

Set other pertinent policies

Page 23: Ls11show108

Marie: 1.3 Set policies to hide a sidebar panel ● You hide any of the “in the box” panels using policy● Go to the Preferences tab – Window Management

Choose yes or no

Page 24: Ls11show108

Marie: 1.4 Deploy a Widget Catalog: Overview of Steps 1. Get the template, put it on a server (Create a new Catalog

application from the Widgetcatalog template, and put the new application on the server)

2. Set Access control 3. Create Categories4. Enable the Sweeper agent5. Verify that the low-priority replication schedule is working

Page 25: Ls11show108

Marie: 1.4.1 Deploy a Widget Catalog: Get the Template

● Obtain the Widget Catalog template (TOOLBOX.NTF). The template is installed with the IBM® Lotus® Domino® server.

● Create the catalog, for example named MyNotesWidgets.nsf, using the supplied TOOLBOX.NTF template

Page 26: Ls11show108

Marie: 1.4.2 Deploy a Widget Catalog: Set ACLs ● Give Admins/power users read

and write access to the catalog. ● Give admins the [Admins] role ● Give Admins/power users one of

the following access rights to the catalog: ● Manager ● Designer ● Editor

● End users need reader access if they will not be adding to the catalog

Read and write access

Admin role

Add access rights

Page 27: Ls11show108

Marie: 1.4.3 Deploy a Widget Catalog: Create Categories● To create user-defined categories, go to the All Widgets view

and click “Add Widget to Catalog”

All Widgets View

Click Add Widget to Catalog

Page 28: Ls11show108

Marie: 1.4.3 Deploy a Widget Catalog: Create Categories

● Locate the Category field and click to enter categories

Type in your categories or click to launch the keyword dialog Or type in

keywords here

Page 29: Ls11show108

Marie: 1.4.4 Deploy a Widget Catalog: Enable Toolsweeper Agent● Deploying the agent is optional● This agent ensures that Widget documents are properly created and

populated; if a problem is found the offending document is removed from the user views, is placed in the Administration/Document Queue, and an e-mail is sent to the document author informing him of the problem

● From the widget catalog, go to View - Agents

Page 30: Ls11show108

Marie: 1.4.4 Deploy a Widget Catalog: Enable Toolsweeper Agent

● Select the agent● Click Enable

Click Enable

If you are looking at the public catalog on the turtleweb site, it is not there. You have to be using your own Widget catalog on your own server.

Page 31: Ls11show108

Marie: 1.4.5 Deploy a Widget Catalog: Local ReplicaA local copy of the catalog will be created on the user's client system

and periodically updated based on a 24 hour (default) replication schedule.

IMPORTANT! The catalog does not follow your replication schedule, it replicates once every 24 hours.

Page 32: Ls11show108

Marie Will Help Others to Securely and Safely Extend their Reach

1. For Lotus Notes1. Set desktop policies to deploy the sidebar 2. Set desktop policies to deploy widgets and Live Text3. Set policies to hide a sidebar panel (by default or locked)4. Deploy a widget catalog

2. For Lotus iNotes1. Set policies to deploy widgets2. Add specific widgets by editing inotes_Config.xml

3. For Symphony (and possibly Sametime Connect in the future)1. Use Eclipse preferences (plugin-customization.ini) to deploy the sidebar

Page 33: Ls11show108

Marie 2.1: Set policies to deploy widgets in iNotes (11 steps)

● Marie can control whether Philippe sees widgets in his iNotes navigator1. Open the Domino Directory (Pubnames.nsf)2. Create a new policy by clicking the Add Policy Action bar button

Click Add Policy

Page 34: Ls11show108

Marie 2.1: Set policies to deploy widgets in iNotes

Find the Mail

choice, Click New

3. Fill in the fields as appropriate4. Locate the Mail policies5. Click New

Page 35: Ls11show108

Marie 2.1: Set policies to deploy widgets in iNotes

6. You'll see the Mail Settings – Basics tab

7. Click the Lotus iNotes tab

Click the Lotus

iNotes tab

Page 36: Ls11show108

Marie 2.1: Set policies to deploy widgets in iNotes

8. Then click the Configuration tab and scroll down until you see the Widget Settings

Scroll down!

Page 37: Ls11show108

Marie 2.1: Set policies to deploy widgets in iNotes

9. Enable the widgets folder in the Mail outline

10. Allow users to create widgets from XML

11. Save itClick to enableboth

Page 38: Ls11show108

Marie 2.2: Add specific widgets by editing iNotes_Config.xml

Domino ships with a template inotes_config.xml.template

1.Locate and open inotes_config.xml.template and Save it as inotes_config.xml

2.Edit inotes_config.xml to add the widgets that you want your users to see

Page 39: Ls11show108

© 2011 IBM Corporation

Marie 2.2: Add specific widgets by editing iNotes_Config.xmlNavigate to inotes_config.xml.template and rename it to inotes_config.xml

Navigate to your <domino install>/data/domino/html/ directory and rename the “inotes_config.xml.template” file to “inotes_config.xml”

Page 40: Ls11show108

© 2011 IBM Corporation

In the inotes_config.xml file, you can specify:

1. The name of the widgets catalog, which must be located in the <domino install>/data/ directory of the server.

2. A comma-separated list of categories in the catalog that contain widgets available to the user to browse.

3. The XML for any widgets that you want to push down to users.

Marie 2.2: Add specific widgets by editing iNotes_Config.xml

Page 41: Ls11show108

© 2011 IBM Corporation

Marie 2.2: Add specific widgets by editing iNotes_Config.xml

When you go to iNotes and expand the Widgets node in the navigator, you will see the widgets that were pushed down to the end user (#3 in the previous slide).

If you right-click on the Widgets node, you can select “Browse Widgets Catalog” which will open up a dialog of available widgets.

Page 42: Ls11show108

Marie Will Help Others to Securely and Safely Extend their Reach

1. For Lotus Notes1. Set desktop policies to deploy the sidebar 2. Set desktop policies to deploy widgets and Live Text3. Set policies to hide a sidebar panel (by default or locked)4. Deploy a widget catalog

2. For Lotus iNotes1. Set policies to deploy widgets2. Add specific widgets by editing inotes_Config.xml

3. For Symphony (and possibly Sametime Connect in the future)1. Use Eclipse preferences (plugin-customization.ini) to deploy the sidebar

Page 43: Ls11show108

Marie 3: Use Eclipse preferences to deploy the Symphony Sidebar

● Domino Polices are fine – unless you don't have a Domino server● You can use the Domino policies OR Eclipse preferences to

─ Set the catalog server─ Set the catalog name─ Specify whether the My widgets panel appears─ And more...basically everything you can do with the Domino policy (although not

everything applies when Domino is not in the picture) ─ If you use Eclipse preferences with Notes

– The Domino policy overrides the preference– End-user preference settings override the Eclipse preference

Page 44: Ls11show108

Marie 3: Use Eclipse preferences to deploy the Symphony Sidebar

● Overview of Steps─ Locate and edit Plugin-customization.ini in the install kit─ Save Plugin-customization.ini back to the install kit─ Deploy the install kit

Page 45: Ls11show108

Marie 3: Use Eclipse preferences to deploy the Symphony Sidebar (1 of 3)

● Locate plugin_customization.ini: in the install kit; it's in the deploy subdirectory

For our purposes today, you can locate and edit the plugin-customization.ini of the

installed program: <install_dir>\framework\rcp\plugin_customi

zation.ini

Page 46: Ls11show108

Marie 3: Use Eclipse preferences to deploy the Symphony Sidebar (2 of 3)

● Edit the plugin-customization.ini fileSet the catalog

server and name

Specify the categories to

installSpecify whether the “my Widgets” sidebar panel is

visible by default, and whether Philippe can install

from the catalog

Page 47: Ls11show108

Marie 3: Use Eclipse preferences to deploy the Symphony Sidebar (3 of 3)

● Save the file and deploy Symphony● There are other parameters you can set in plugin-customization.ini regarding

widgets. For more information see this help topic● http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/index.jsp?

topic=/com.ibm.help.domino.admin85.doc/H_SETTING_CATALOG_PREFERENCES_USING_A_CUSTOMIZATION_FILE_OVER.html

● And this article:● http://www-10.lotus.com/ldd/dominowiki.nsf/dx/widgets-policies-and-roll-out-

best-practices

Page 48: Ls11show108

Questions about Marie's Admin Experience? 1. For Lotus Notes

1. Set desktop policies to deploy the sidebar 2. Set desktop policies to deploy widgets and Live Text3. Set policies to hide a sidebar panel (by default or locked)4. Deploy a widget catalog

2. For Lotus iNotes1. Set policies to deploy widgets2. Add specific widgets by editing inotes_Config.xml

3. For Symphony (and possibly Sametime Connect in the future)1. Use Eclipse preferences (plugin-customization.ini) to deploy the sidebar

Page 49: Ls11show108

© 2011 IBM Corporation

Agenda●Overview of where the various clients can be extended

●Administrator's perspective on extending the clients

─Marie-the-admin wants to SECURELY deploy the right extensions to the right people

●Developer's perspective on extending the clients

─Kathy-the-developer wants to develop useful panel and toolbar extensions

●End-users perspective on using the extensions

─Philippe the end user just wants to get more work done, faster

Page 50: Ls11show108

© 2011 IBM Corporation

Kathy will Extend Her Reach in These Ways

1 Add the “Cheapest Gas Prices” Google Gadget2 Create a “zip code” recognizer to that any where she sees a zip code, she can

click and get the cheapest gas prices in a sidebar panel

3 Add a Wikipedia text selection widget to the sidebar

4 Add a FedEx tracking number recognizer/action

5 Extend the Sidebar with Eclipse Development1 Set up the Eclipse IDE to launch Notes2 Add an Eclipse view to the sidebar as a sidebar panel 3 Add a toolbar action to show and hide the sidebar panel4 Programmatically close the entire sidebar when she opens any of the Symphony

editors

6 Deploy an Eclipse plugin using the catalog

Page 51: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)

1 In this exercise, Kathy is going to build a “Gas price by zip code” widget, assign a static zip code, and add it to the catalog for Philippe to install.

2 From the My Widgets Sidebar Panel menu, choose Configure Component from – Google Gadget.

Page 52: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)

3 Take the defaults: Browse the Google Gadget directory

4 Click Finish

Page 53: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)

5 The embedded browser opens to the Google Gadget Catalog

6 Search for “local gas prices in the US”

Page 54: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)

7 Scroll down and click to open the GasBuddy Local Gas Prices in the US gadget

Page 55: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)

8 Click the toolbox icon to “Configure a Widget from Current Context”

Click the toolbox icon

Page 56: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)

9 Take the default to configure a Google Gadget

Page 57: Ls11show108

© 2011 IBM Corporation

10 Agree to the Google terms of service

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)

Page 58: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)

11 Name the component “Gas Prices for Orlando”

12 Choose to display as a Sidebar panel

Page 59: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)

13 Click the Advanced tab. Uncheck Required checkbox for the first field “Enter up to four”

Enter the zip code, 32830

Select a default fuel type (ie. Regular)

Click Next

Page 60: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)

14 Read the info. Make sure you test!

15 Click Finish

Page 61: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)

16 A thumbnail of the gas prices component appears in the My widgets sidebar.

17 Watch carefully! Because then in a minute, the actual gas prices sidebar panel appears and makes the My Widgets panel collapse

Watch for the thumbnail

Page 62: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)18 The gas prices sidebar panel appears

19 Note that Kathy hardcoded the zipcode for Orlando, FL.

Page 63: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)20 Open the My Widgets Panel

21 Locate the Gas prices thumbnail

22 Right-click and choose “Publish to Catalog”

Click “Publish to Catalog” to publish it to the catalog that is listed in your preferences.

WAIT! DO NOT REALLY DO IT!Unless we want lots of gas prices widgets in the turtleweb catalog!

Page 64: Ls11show108

© 2011 IBM Corporation

Kathy: 1. Add “Gas Price by Zip Code” to Catalog (22 steps)

Here is a gas prices widget in the catalog

Page 65: Ls11show108

© 2011 IBM Corporation

Kathy will Extend Her Reach in These Ways

1 Add the “Cheapest Gas Prices” Google Gadget

2 Create a “zip code” recognizer so that any where she sees a zip code, she can click and get the cheapest gas prices in a sidebar panel

3 Add a Wikipedia text selection widget to the sidebar

4 Add a FedEx tracking number recognizer/action

5 Extend the Sidebar with Eclipse Development1 Set up the Eclipse IDE to launch Notes2 Add an Eclipse view to the sidebar as a sidebar panel 3 Add a toolbar action to show and hide the sidebar panel4 Programmatically close the entire sidebar when she opens any of the Symphony

editors

6 Deploy an Eclipse plugin using the catalog

Page 66: Ls11show108

© 2011 IBM Corporation

Kathy: 2. Create a Zip Code Recognizer (14 Steps)Kathy's goal: Create a “zip code” recognizer so that any where she sees a

zip code, she can click and get the cheapest gas prices in a sidebar panel

Page 67: Ls11show108

© 2011 IBM Corporation

Kathy: 2. Create a Zip Code Recognizer (14 Steps)1 Return to the Gas Prices Google Gadget and click

the Toolbox Icon to launch the wizard

2 Choose Google Gadget again

3 Accept the terms of agreement again

Page 68: Ls11show108

© 2011 IBM Corporation

Kathy: 2. Create a Zip Code Recognizer (14 Steps)4 Give it a new name

5 Choose to wire it as an action

6 Click the advanced tab

When you choose to wire it as an action, you see a message in red text, so that you know to click on Advanced

Page 69: Ls11show108

© 2011 IBM Corporation

Kathy: 2. Create a Zip Code Recognizer (14 Steps)7 The “Address” recognizer is shipped with Notes.

Choose address as the recognized content (Ensure that the policy is enabled for “Enable default recognizers)

8 Wire address.zip to Zip codes or City, State

9 Choose Sidebar

Recognized content is the default; choose Addess

Choose address.zip as the content property to wire up to “Zip codes or city,state”

Choose Sidebar Panel

Page 70: Ls11show108

© 2011 IBM Corporation

Kathy: 2. Create a Zip Code Recognizer (14 Steps)10 Read the summary and test it

11 Click Finish

Page 71: Ls11show108

© 2011 IBM Corporation

Kathy: 2. Create a Zip Code Recognizer (14 Steps)12 Ensure the new component was saved (Find the

thumbnail of your new Zip code component)

Page 72: Ls11show108

© 2011 IBM Corporation

Kathy: 2. Create a Zip Code Recognizer (14 Steps)13 Open a document that has one or more zip codes in it

14 Click the zip code to see your new action and click it

The zip code is fed into the gadget and the gas prices for that zip code appear in a sidebar panel

Page 73: Ls11show108

© 2011 IBM Corporation

Kathy will Extend Her Reach in These Ways

1 Add the “Cheapest Gas Prices” Google Gadget

2 Create a “zip code” recognizer to that any where she sees a zip code, she can click and get the cheapest gas prices in a sidebar panel

3 Add a Wikipedia text selection widget to the sidebar 4 Add a FedEx tracking number recognizer/action

5 Extend the Sidebar with Eclipse Development1 Set up the Eclipse IDE to launch Notes2 Add an Eclipse view to the sidebar as a sidebar panel 3 Add a toolbar action to show and hide the sidebar panel4 Programmatically close the entire sidebar when she opens any of the Symphony

editors

6 Deploy an Eclipse plugin using the catalog

Page 74: Ls11show108

© 2011 IBM Corporation

Kathy: 3. Add a Wikipedia text selection widget to the Sidebar (18 Steps)

1. Open the embedded web browser

Page 75: Ls11show108

© 2011 IBM Corporation

Kathy: 3. Add a Wikipedia text selection widget to the Sidebar (18 Steps)

2. In the browser's address bar, enter the URL for Wikipedia in whichever language you prefer. We will use the default English version at http://www.wikipedia.org

3. Click the “Configure a Widget from Current Context” button in the Widgets toolbar

Page 76: Ls11show108

© 2011 IBM Corporation

Kathy: 3. Add a Wikipedia text selection widget to the Sidebar (18 Steps)

4. Select the second option, “From a form on this web page” and click Next.

Page 77: Ls11show108

© 2011 IBM Corporation

Kathy: 3. Add a Wikipedia text selection widget to the Sidebar (18 Steps)

5. Select the only form option, Form 1.

6. Make sure the text field highlighted in green correctly corresponds to the search field.

7. Click Next.

Page 78: Ls11show108

© 2011 IBM Corporation

Kathy: 3. Add a Wikipedia text selection widget to the Sidebar (18 Steps)

8. Select the “Wire as an action” radio button.

9. Verify that the widget setting in the dropdown corresponds to the search field.

10. Click Next.

Page 79: Ls11show108

© 2011 IBM Corporation

Kathy: 3. Add a Wikipedia text selection widget to the Sidebar (18 Steps)

11. Select the “Other content” radio button.

12. Keep the default content type, “Text Selection.”

13. Keep the default content type property and widget property. We are binding the contents of the text selection to the search field in our Wikipedia widget.

14. Finally, set the action to open up the result in a Sidebar Panel and click Next.

Page 80: Ls11show108

© 2011 IBM Corporation

Kathy: 3. Add a Wikipedia text selection widget to the Sidebar (18 Steps)

15. Click Finish...

16. ...and see the new Wikipedia widget get added to the My Widgets panel.

Page 81: Ls11show108

© 2011 IBM Corporation

Kathy: 3. Add a Wikipedia text selection widget to the Sidebar (18 Steps)

17. Select text in any Notes document and right-click to bring up the context menu. Notice the new Wikipedia action item near the bottom. Select it.

Page 82: Ls11show108

© 2011 IBM Corporation

Kathy: 3. Add a Wikipedia text selection widget to the Sidebar (18 Steps)

18. The Wikipedia article opens in a new Sidebar Panel and loads the results of searching for the selected text.

Page 83: Ls11show108

© 2011 IBM Corporation

Kathy will Extend Her Reach in These Ways

1 Add the “Cheapest Gas Prices” Google Gadget

2 Create a “zip code” recognizer to that any where she sees a zip code, she can click and get the cheapest gas prices in a sidebar panel

3 Add a Wikipedia text selection widget to the sidebar

4 Add a FedEx tracking number recognizer/action 5 Extend the Sidebar with Eclipse Development

1 Set up the Eclipse IDE to launch Notes2 Add an Eclipse view to the sidebar as a sidebar panel 3 Add a toolbar action to show and hide the sidebar panel4 Programmatically close the entire sidebar when she opens any of the Symphony

editors

6 Deploy an Eclipse plugin using the catalog

Page 84: Ls11show108

© 2011 IBM Corporation

Kathy: 4. Add a FedEx Tracking Number Recognizer and Action (21 Steps)

1. Open the embedded web browser

2. In the address bar, enter the URL for your fedex.com locale. For the US, it is http://www.fedex.com/us/

3. Click the Configure a Widget from Current Context button in the Widgets toolbar

Page 85: Ls11show108

© 2011 IBM Corporation

Kathy: 4. Add a FedEx Tracking Number Recognizer and Action (21 Steps)

4. Select the second radio button, From a form on this web page. Click Next.

5. Find the form that highlights in green the text field that corresponds to Track Shipments. In our case, it is Form 2. Click Next.

Page 86: Ls11show108

© 2011 IBM Corporation

Kathy: 4. Add a FedEx Tracking Number Recognizer and Action (21 Steps)

6. Select first radio button, Wire as an action. Make sure the dropdown that appears to the right displays the correct field we want, tracknumbers. Click Next.

7. We now want to create a new recognizer to detect FedEx tracking numbers. Click New Recognizer.

Page 87: Ls11show108

© 2011 IBM Corporation

Kathy: 4. Add a FedEx Tracking Number Recognizer and Action (21 Steps)

8. Enter a Recognizer name. We need to create a new content type that our recognizer looks for. Select New Type.

9. Enter a Content Type name and click OK.

Page 88: Ls11show108

© 2011 IBM Corporation

Kathy: 4. Add a FedEx Tracking Number Recognizer and Action (21 Steps)

10. See the Content Type field is populated with our new content type, FedEx Tracking Number

11. Enter a regular expression that defines a FedEx tracking number. If you are unfamiliar with regular expressions, there are plenty of online resources that can help. Known FedEx tracking numbers are 12, 15, or 20-digit numbers. The regex for that is:\b(\d{12}|\d{15}|\d{20})\b

12. Click OK to continue.

Page 89: Ls11show108

© 2011 IBM Corporation

Kathy: 4. Add a FedEx Tracking Number Recognizer and Action (21 Steps)

13. See that the new FedEx recognizer is selected

15. Select open in Sidebar Panel

16. Click Next to continue

14. We are correctly binding the FedEx tracking number content to our FedEx widget's tracknumbers field

Page 90: Ls11show108

© 2011 IBM Corporation

Kathy: 4. Add a FedEx Tracking Number Recognizer and Action (21 Steps)

17. Remember to test before publishing. Click Finish to create the Widget.

18. The new FedEx widget is added to our My Widgets panel and is selected.

Page 91: Ls11show108

© 2011 IBM Corporation

Kathy: 4. Add a FedEx Tracking Number Recognizer and Action (21 Steps)

19. Now, in any Notes document, you will see a dotted underline for any FedEx tracking number, which shows that it is now recognized content. When you hover over the FedEx number, an icon appears at the right that says “Click for Live Text Actions” when you hover over it.

20. When you click that icon, a menu appears with the action we just created at the top. Select that action.

Page 92: Ls11show108

© 2011 IBM Corporation

Kathy: 4. Add a FedEx Tracking Number Recognizer and Action (21 Steps)

21. A new sidebar panel is created and loaded with the status of your FedEx package!

Page 93: Ls11show108

© 2011 IBM Corporation

Kathy will Extend Her Reach in These Ways

1 Add the “Cheapest Gas Prices” Google Gadget

2 Create a “zip code” recognizer to that any where she sees a zip code, she can click and get the cheapest gas prices in a sidebar panel

3 Add a Wikipedia text selection widget to the sidebar

4 Add a FedEx tracking number recognizer/action

5 Extend the Sidebar with Eclipse Development1 Set up the Eclipse IDE to launch Notes2 Add an Eclipse view to the sidebar as a sidebar panel 3 Add a toolbar action to show and hide the sidebar panel4 Programmatically close the entire sidebar when she opens any of the Symphony

editors

6 Deploy an Eclipse plugin using the catalog

Page 94: Ls11show108

© 2011 IBM Corporation

Kathy: 5. Extend the Sidebar with Plug-in Development

Why do plug-in development?● Create a truly custom application● Integrate with the rich features of the Eclipse framework

More apps available on http://www.openntf.org...

Page 95: Ls11show108

© 2011 IBM Corporation

Kathy: 5. Extend the Sidebar with Plug-in Development

In this exercise, Kathy will be: 1 Setting up Eclipse IDE to launch Notes2 Adding an Eclipse view to the sidebar as a sidebar panel3 Adding a toolbar action to show the sidebar panel 4 Programmatically closing the entire Sidebar when she opens any of the

Symphony editors

Note: You should already have an Eclipse IDE installed. If not, please install one at http://www.eclipse.org

Page 96: Ls11show108

© 2011 IBM Corporation

To get set up, Kathy needs to do the following:1 Launch your Eclipse IDE (the screenshots will show version 3.5, but feel

free to use any version starting with 3.2.2)2 Set the target platform to point to Notes3 Add the Notes JRE4 Create a runtime configuration in the Run/Debug dialog5 Launch Notes from Eclipse!

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

Page 97: Ls11show108

© 2011 IBM Corporation

2. Select Target Platform in the tree control on the left, under the Plug-in Development node 3. Click Add... to add a new target

platform location.

4. Click OK

1. Launch your Eclipse IDE and set the Target Platform and JRE by going to Window > Preferences

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

Page 98: Ls11show108

© 2011 IBM Corporation

5. Keep the default option to start with an empty target definition and click Next

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

Page 99: Ls11show108

© 2011 IBM Corporation

6. Select Directory and click Next.

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

7. In the Location control, type or browse to <notes install>\framework\rcp\eclipse directory and click Next.

By default, it should be “C:\Program Files\IBM\Lotus\Notes\framework\eclipse” directory.

Page 100: Ls11show108

© 2011 IBM Corporation

8. Set the Name of this target definition (ie. “Notes”) and note that the new target location has been added.

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

9. Click Add... to add another location to the target definition.

Page 101: Ls11show108

© 2011 IBM Corporation

11. Preview the contents and click Finish.

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

10. In the Location control, type or browse to the <notes install>\framework\shared\eclipse directory and click Next.

Page 102: Ls11show108

© 2011 IBM Corporation

12. See the two target locations and click Finish.

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

Page 103: Ls11show108

© 2011 IBM Corporation

13. Select the new target definition.

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

14. Click OK.

Page 104: Ls11show108

© 2011 IBM Corporation

15. Copy the included rcp.security.properties file (located in the provided show108.zip file) into the com.ibm.rcp.base_XXX directory

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

Page 105: Ls11show108

© 2011 IBM Corporation

Next, Kathy is going to create a runtime configuration in the Run/Debug dialog and set it to use the Notes JRE

16. Go to Run > Run... to bring up the Run dialog (the UI is the same if you go to Run > Debug...)

17. We are launching an Eclipse Application, so right-click on Eclipse Application at the top and select New.

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

Page 106: Ls11show108

© 2011 IBM Corporation

Next, Kathy is going to create a runtime configuration in the Run/Debug dialog and set it to use the Notes JRE

18. Select “Run a product” and choose the “com.ibm.notes.branding.notes” option in the dropdown.

19. Select the “Installed JREs...” button to add the Notes JRE.

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

Page 107: Ls11show108

© 2011 IBM Corporation

20. Click Add... to add a new JRE.

21. Browse or type to the path at <notes install>\jvm (ie. C:\Program Files\IBM\Lotus\Notes\jvm). Notice the list of JRE system libraries get populated in the area below. Click OK.

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

Page 108: Ls11show108

© 2011 IBM Corporation

22. Select the new notes JRE we just added and click OK.

23. Select the new notes JRE in the Runtime JRE of the Run/Debug dialog.

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

Page 109: Ls11show108

© 2011 IBM Corporation

24. Select the Arguments tab and enter the following Program arguments:

-personality com.ibm.rcp.platform.personality-product com.ibm.notes.branding.notes-debug-console

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

Page 110: Ls11show108

© 2011 IBM Corporation

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

The VM Args can be retrieved as follows:

25. Launch Notes from the desktop and go to Help – About IBM Lotus Notes

26. Click Configuration Details

Page 111: Ls11show108

© 2011 IBM Corporation

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

27. Click Copy to Clipboard and paste the text in a simple text editor (ie. Wordpad)

Page 112: Ls11show108

© 2011 IBM Corporation

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

28. From the top, search for “eclipse.vmargs” and copy everything after the “=” (ie. “-Djava.security.policy=...”) all the way to the line ending with “launcher.jar” into a new temp text file.

Page 113: Ls11show108

© 2011 IBM Corporation

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

29. From those contents, you may need to modify the argument, -Dorg.eclipse.swt.browser.XULRunnerPath by replacing the forward slashes with backslashes

30. If exists, remove the value for -Djava.library.path

-Xss384k

Page 114: Ls11show108

© 2011 IBM Corporation

Kathy: 5.1 Extend the Sidebar with Plug-in Development - Setting up Eclipse to launch Notes (33 Steps)

31. Copy the contents of the temp file to the VM arguments field in the Run/Debug Configuration dialog.

32. Also, add the Vmarg “-Xss384k”

33. We are now ready to launch Notes from Eclipse – click Run/Debug!

Page 115: Ls11show108

© 2011 IBM Corporation

Kathy will Extend Her Reach in These Ways

1 Add the “Cheapest Gas Prices” Google Gadget

2 Create a “zip code” recognizer to that any where she sees a zip code, she can click and get the cheapest gas prices in a sidebar panel

3 Add a Wikipedia text selection widget to the sidebar

4 Add a FedEx tracking number recognizer/action

5 Extend the Sidebar with Eclipse Development1 Set up the Eclipse IDE to launch Notes2 Add an Eclipse view to the sidebar as a sidebar panel 3 Add a toolbar action to show and hide the sidebar panel4 Programmatically close the entire sidebar when she opens any of the Symphony

editors

6 Deploy an Eclipse plugin using the catalog

Page 116: Ls11show108

© 2011 IBM Corporation

Now that Kathy can launch Notes from the Eclipse IDE, she is ready to do some plug-in development.

At the end of this activity, you will have a new web-based panel called “DocLink History” in your Sidebar.

This panel is purely web-based, and can interact with Eclipse's selection and actions service!

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Add a View to the Sidebar (15 Steps)

Page 117: Ls11show108

© 2011 IBM Corporation

First, let's import the sample plugins provided in the Show108 zip file.

1. Select File – Import and under General, select “Existing Projects into Workspace.” Click Next.

2. Click Browse, and go to the directory where you unzipped the show108.zip file.

3. Select all the projects and click Finish.

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Add a View to the Sidebar (15 Steps)

Page 118: Ls11show108

© 2011 IBM Corporation

4. Expand the project com.ibm.lotuslabs.show108 in the Package Explorer view and Open HistoryView.java

HistoryView extends the abstract class org.eclipse.ui.part.ViewPart. When extending that class, you only need to fill in two methods:

● createPartControl(Composite parent) – instantiates the UI controls for the panel

● setFocus() -- dictates what control should get focus when the view is activated.

We have already filled these in for you :)

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Add a View to the Sidebar (15 Steps)

Page 119: Ls11show108

© 2011 IBM Corporation

Open the plugin's plugin.xml file and search for “org.eclipse.ui.views”. We have added the following extension:

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Add a View to the Sidebar (15 Steps)

Page 120: Ls11show108

© 2011 IBM Corporation

To add the view to the sidebar, we must add a “com.ibm.rcp.ui.shelfViews” extension.

5. Open the MANIFEST.MF file in com.ibm.lotuslabs.show108:

6. Click on the Extensions tab

7. Click Add… to add a new extension

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Add a View to the Sidebar (15 Steps)

Page 121: Ls11show108

© 2011 IBM Corporation

10. See that a new com.ibm.rcp.ui.shelfViews extension is added to the field.

9. Select it and click Finish

8. Start typing “com.ibm.rcp.ui.shelfViews” in the text field next to “Extension Point filter:”

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Add a View to the Sidebar (15 Steps)

Page 122: Ls11show108

© 2011 IBM Corporation

11. The “view” property for the shelfView extension...

...must correspond to the “id” property for the DocLink History view extension...

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Add a View to the Sidebar (15 Steps)

Page 123: Ls11show108

© 2011 IBM Corporation

12. Set a unique ID for the shelfView

(optional) TOP | MIDDLE | BOTTOM placeholders position the view in the respective areas in the sidebar

(optional) boolean describing whether or not to show a titlebar. By default, this is true

(optional) RIGHT | LEFT page names for sidebars on right and left sides of the Notes client. By default, the view will be placed in the RIGHT sidebar

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Add a View to the Sidebar (15 Steps)

Page 124: Ls11show108

© 2011 IBM Corporation

You can now see new lines added to the

plugin.xml file representing the new shelfView contribution

13Press Ctrl+S to save changes

14Switch to the plugin.xml tab at the bottom

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Add a View to the Sidebar (15 Steps)

Page 125: Ls11show108

© 2011 IBM Corporation

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Add a View to the Sidebar (15 Steps)

15Now, launch the client and see the new view added to the Notes Sidebar!

Page 126: Ls11show108

© 2011 IBM Corporation

Kathy will Extend Her Reach in These Ways

1 Add the “Cheapest Gas Prices” Google Gadget

2 Create a “zip code” recognizer to that any where she sees a zip code, she can click and get the cheapest gas prices in a sidebar panel

3 Add a Wikipedia text selection widget to the sidebar

4 Add a FedEx tracking number recognizer/action

5 Extend the Sidebar with Eclipse Development1 Set up the Eclipse IDE to launch Notes2 Add an Eclipse view to the sidebar as a sidebar panel 3 Add a toolbar action to show and hide the sidebar panel4 Programmatically close the entire sidebar when she opens any of the Symphony

editors

6 Deploy an Eclipse plugin using the catalog

Page 127: Ls11show108

© 2011 IBM Corporation

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

In this activity, Kathy is going to add a global toolbar action that will show and hide the sidebar panel that we just added.

New global toolbar item

Page 128: Ls11show108

© 2011 IBM Corporation

To add a global toolbar item, we need to add an actionSet extension.

1. Go back to the MANIFEST.MF file and click on the Extensions tab.

2. Click Add… to add a new extension

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

Page 129: Ls11show108

© 2011 IBM Corporation

3. Search for org.eclipse.ui.actionSets, select it and click Finish.

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

Page 130: Ls11show108

© 2011 IBM Corporation

4. Add a label to refer to this set of actions

5. Right-click on the new actionSet item and select

New - action

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

Page 131: Ls11show108

© 2011 IBM Corporation

6. See the new action item added under the actionSet

9. Scroll down to the “Class” attribute and click

“Browse...”

7. Specify a toolbarPath (here we use the generic “/BEGIN” groupmarker.

8. Use the default style to create a “push” button.

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

Page 132: Ls11show108

© 2011 IBM Corporation

10. Search for ShowViewAction, and select it.

11. Click OK.

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

Page 133: Ls11show108

© 2011 IBM Corporation

14. You can now see new lines added to the

plugin.xml file representing the new

actionSet contribution

12Again, press Ctrl+S to save changes

13Switch to the plugin.xml tab at the bottom

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

Page 134: Ls11show108

© 2011 IBM Corporation

15. Now, if you launch Notes from the Eclipse IDE, you will see the new toolbar added at the top. However,

clicking on it will not do anything at this time.

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

Page 135: Ls11show108

© 2011 IBM Corporation

Now, let's take a look at the class that we associated with the actionSet extension.

16. Open the ShowViewAction.java file in the com.ibm.lotuslabs.show108.actions package

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

Page 136: Ls11show108

© 2011 IBM Corporation

In order to manipulate the Sidebar, we want to programmatically get access to the com.ibm.rcp.ui.ShelfPage.

Inside ShowViewAction, locate the convenience method getShelfPage():

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

Page 137: Ls11show108

© 2011 IBM Corporation

●ShelfPage controls the entire sidebar. It gives you access to some useful methods, including

● showView(String viewId, String secondaryId, int mode)● hideView(IViewReference ref) ● setMode(int mode)● getMode()

●There are 3 modes you can specify when showing a panel:● ShelfPage.VIEW_CREATE – creates the view if it doesn't exist in the

sidebar, but does not expand/activate it● ShelfPage.VIEW_VISIBLE – creates the view, expands it, but does not

bring focus to it● ShelfPage.VIEW_ACTIVATE – creates the view, expands it, and brings

focus to it

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

Page 138: Ls11show108

© 2011 IBM Corporation

public void run(IAction arg0) {ShelfPage shelfPage = getShelfPage();IViewReference ref = shelfPage.findViewReference(VIEW_ID, null);// if the view is already there, hide itif (ref != null) {

shelfPage.hideView(ref);}// otherwise, show the viewelse {

try {shelfPage.showView(VIEW_ID, null, ShelfPage.VIEW_VISIBLE);

} catch (PartInitException e) {// view part was not initialized properlye.printStackTrace();

}}

}

17Now, let's add the code to show and hide the view when the action is run:

VIEW_ID refers to the “view” of the DocLinks History shelf extension.

We decide to expand the panel, but not activate/bring focus to it.

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

Page 139: Ls11show108

© 2011 IBM Corporation

18Launch the client and notice the new toolbar appearing at the top. Click the Toggle DocLinks View button to show and hide the panel.

This new toolbar item...

...will show and hide this panel

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Show and Hide the Sidebar panel (18 Steps)

Page 140: Ls11show108

© 2011 IBM Corporation

Kathy will Extend Her Reach in These Ways

1 Add the “Cheapest Gas Prices” Google Gadget

2 Create a “zip code” recognizer to that any where she sees a zip code, she can click and get the cheapest gas prices in a sidebar panel

3 Add a Wikipedia text selection widget to the sidebar

4 Add a FedEx tracking number recognizer/action

5 Extend the Sidebar with Eclipse Development1 Set up the Eclipse IDE to launch Notes2 Add an Eclipse view to the sidebar as a sidebar panel 3 Add a toolbar action to show and hide the sidebar panel4 Programmatically close the entire sidebar when she opens any of the

Symphony editors

6 Deploy an Eclipse plugin using the catalog

Page 141: Ls11show108

© 2011 IBM Corporation

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Toggle Sidebar modeWe can also programmatically change the mode of the sidebar.

Open Thin Closed Sample use cases:● You want to close the sidebar because

your application needs as much screen real estate as possible

● You want to make sure a particular panel is visible whenever the user opens a particular application

Page 142: Ls11show108

© 2011 IBM Corporation

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Toggle Sidebar mode

Open Thin Closed

● Since Symphony has its own sidebar, it has no need for ours. ● In this next activity, Kathy will programmatically close the Sidebar

any time a Symphony application becomes active, and restore the Sidebar state when it closes or another tab is activated.

Notes Sidebar closed with Symphony active

Notes Sidebar open when Getting Started page is active

Page 143: Ls11show108

© 2011 IBM Corporation

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Toggle Sidebar mode

Open Thin ClosedIn Activator.java, add the following to the perspective listener:

public void perspectiveActivated(IWorkbenchPage page, IPerspectiveDescriptor perspective) {

// code to collapse sidebar when Symphony app is activated ShelfPage shelfPage = getShelfPage(); if (perspective.getId().startsWith(SODC_PREFIX)) {

// save current sidebar modeshelfMode = shelfPage.getMode();shelfPage.setMode(ShelfPage.COLLAPSED);

}}

public void perspectiveDeactivated(IWorkbenchPage page, IPerspectiveDescriptor perspective) { // code to restore sidebar mode when Symphony app is deactivated

ShelfPage shelfPage = getShelfPage(); if (perspective.getId().startsWith(SODC_PREFIX)) {

if (shelfMode == ShelfPage.COLLAPSED ||shelfMode == ShelfPage.THIN ||shelfMode == ShelfPage.EXPANDED) {

shelfPage.setMode(shelfMode);}

}}

SODC_PREFIX is String defined at the top that is a substring of all symphony perspective IDs.

Page 144: Ls11show108

© 2011 IBM Corporation

Kathy: 5.1 Extend the Sidebar with Plug-in Development – Toggle Sidebar mode

Launch Notes, and open Symphony Document, Presentation, or Spreadsheet

Notice the Notes Sidebar is closed, and only the Symphony sidebar appears on the right

Page 145: Ls11show108

© 2011 IBM Corporation

Kathy: 5.4 Extend the Sidebar with Plug-in Development – Toggle Sidebar mode

Switch to the Getting Started tab

Notice the Notes Sidebar is reopened to the state it was in before we opened Symphony

Page 146: Ls11show108

© 2011 IBM Corporation

Kathy will Extend Her Reach in These Ways

1 Add the “Cheapest Gas Prices” Google Gadget

2 Create a “zip code” recognizer to that any where she sees a zip code, she can click and get the cheapest gas prices in a sidebar panel

3 Add a Wikipedia text selection widget to the sidebar

4 Add a FedEx tracking number recognizer/action

5 Extend the Sidebar with Eclipse Development1 Set up the Eclipse IDE to launch Notes2 Add an Eclipse view to the sidebar as a sidebar panel 3 Add a toolbar action to show and hide the sidebar panel4 Programmatically close the entire sidebar when she opens any of the Symphony

editors

6 Deploy an Eclipse plugin using the catalog

Page 147: Ls11show108

© 2011 IBM Corporation

In this exercise, Kathy will deploy an Eclipse plugin with the catalog. This involves:

─ Creating an Eclipse feature that includes our Eclipse plugins─ Creating an Eclipse update site that includes the feature─ Adding the update site to a Domino server─ Creating a Widget from the Domino update site that can then be published

to a catalog and deployed

Kathy: 6 Deploy an Eclipse plug-in using the catalog

Page 148: Ls11show108

© 2011 IBM Corporation

In this exercise, Kathy will deploy an Eclipse plugin with the catalog. This involves:

─ Creating an Eclipse feature that includes our Eclipse plugins─ Creating an Eclipse update site that includes the feature─ Adding the update site to a Domino server─ Creating a Widget from the Domino update site that can then be published

to a catalog and deployed

Kathy: 6 Deploy an Eclipse plug-in using the catalog

Page 149: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating an Eclipse feature (5 Steps)

1. Create a new feature by going to File – New - Other...

2. Under Plug-in Development, select Feature Project and click Next

Page 150: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating an Eclipse feature (5 Steps)

3. Enter in a name for the project: com.ibm.lotuslabs.show108.featureClick Next.

Page 151: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating an Eclipse feature (5 Steps)

4. Select con.ibm.lotuslabs.show108 in your workspace and click Finish.

Page 152: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating an Eclipse feature (5 Steps)

5. See that the new feature is added to the Package Explorer view in our workspace.

Page 153: Ls11show108

© 2011 IBM Corporation

In this exercise, Kathy will deploy an Eclipse plugin with the catalog. This involves:

─ Creating an Eclipse feature that includes our Eclipse plugins─ Creating an Eclipse update site that includes the feature─ Adding the update site to a Domino server─ Creating a Widget from the Domino update site that can then be published

to a catalog and deployed

Kathy: 6 Deploy an Eclipse plug-in using the catalog

Page 154: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating an Eclipse update site (9 Steps)

1. Create a new update site by going to File – New - Other...

2. Under Plug-in Development, select Update Site Project and click Next.

Page 155: Ls11show108

© 2011 IBM Corporation

3. Enter a name for the project: com.ibm.lotuslabs.show108.updatesiteClick Finish.

4. See that the new Update Site project has been added to our workspace, with the site.xml file open.

5. Click Add Feature...

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating an Eclipse update site (9 Steps)

Page 156: Ls11show108

© 2011 IBM Corporation

6. You can use the type-ahead search to find our feature, com.ibm.lotuslabs.show111.feature. Select the feature and click OK.

7. Notice that the feature is added.

8. Click Build All

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating an Eclipse update site (9 Steps)

Page 157: Ls11show108

© 2011 IBM Corporation

9. Notice that you now have jar files for the feature and plugins in your update site.

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating an Eclipse update site (9 Steps)

Page 158: Ls11show108

© 2011 IBM Corporation

In this exercise, Kathy will deploy an Eclipse plugin with the catalog. This involves:

─ Creating an Eclipse feature that includes our Eclipse plugins─ Creating an Eclipse update site that includes the feature─ Adding the update site to a Domino server─ Creating a Widget from the Domino update site that can then be published

to a catalog and deployed

Kathy: 6 Deploy an Eclipse plug-in using the catalog

Page 159: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Adding the update site to a Domino server (7 Steps)

1. Create a new application by going to File – Application - New...

2. Enter a title for your application

3. Select Eclipse Update Site for the Template. Be sure to select the checkbox for “Show advanced templates” at the bottom. Click OK.

Page 160: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Adding the update site to a Domino server (7 Steps)

4. The new Eclipse Update Site application opens. Click the Import Local Update Site button.

Page 161: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Adding the update site to a Domino server (7 Steps)

5. Click Browse... and navigate to your update site project in your workspace.

6. Select the site.xml file in your update site project and click Open.

Page 162: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Adding the update site to a Domino server (7 Steps)

7. Click OK

The update site is now added to our Eclipse Update Site application and can be accessed at: http://www.yourdominoserver.com/updateSite.nsf/site.xml

We can now use this URL to create a deployable Widget.

Page 163: Ls11show108

© 2011 IBM Corporation

In this exercise, Kathy will deploy an Eclipse plugin with the catalog. This involves:

─ Creating an Eclipse feature that includes our Eclipse plugins─ Creating an Eclipse update site that includes the feature─ Adding the update site to a Domino server─ Creating a Widget from the Domino update site that can then be

published to a catalog and deployed

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating a Widget

Page 164: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating a Widget (7 Steps)

1. Open the My Widgets panel menu and select Configure a Widget from... - Features and Plugins on an Update Site

Page 165: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating a Widget (7 Steps)

2. Enter in the URL of your update site:http://<yourdominoserver>/updateSite.nsf/site.xml and click Load.

3. Notice that any features are loaded in the area below. Select the feature com.ibm.lotuslabs.show108.feature and click Next.

Page 166: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating a Widget (7 Steps)

4. Add or modify any information. Click Next.

5. Preview and edit the install manifest if necessary. Click Next.

Page 167: Ls11show108

© 2011 IBM Corporation

Kathy: 6 Deploy an Eclipse plug-in using the catalog – Creating a Widget (7 Steps)

6. Be sure to test before publishing. Click Finish.

7. See the new Widget is added to the My Widgets panel. You can now deploy the plugins as a Widget! Right-click and choose Publish to catalog.

Page 168: Ls11show108

© 2011 IBM Corporation

Questions about Kathy's Experience?

1 Add the “Cheapest Gas Prices” Google Gadget

2 Create a “zip code” recognizer to that any where she sees a zip code, she can click and get the cheapest gas prices in a sidebar panel

3 Add a Wikipedia text selection widget to the sidebar

4 Add a FedEx tracking number recognizer/action

5 Extend the Sidebar with Eclipse Development1 Set up the Eclipse IDE to launch Notes2 Add an Eclipse view to the sidebar as a sidebar panel 3 Add a toolbar action to show and hide the sidebar panel4 Programmatically close the entire sidebar when she opens any of the Symphony

editors

6 Deploy an Eclipse plugin using the catalog

Page 169: Ls11show108

© 2011 IBM Corporation

Agenda●Overview of where the various clients can be extended

●Administrator's perspective on extending the client

─Marie-the-admin wants to SECURELY deploy the right extensions to the right people

─Kathy-the-developer wants to develop useful panel and toolbar extensions

●End-users perspective on using the extensions

─ Philippe the end user just wants to get more work done, faster

●Developer's perspective on extending the clients

Page 170: Ls11show108

Philippe Will Extend His Reach in These Ways1. In Lotus Notes:

1. Add a Notes view as a panel2. Add the Inbox as a panel3. Add a Notes view as a search scope in the Search Center

toolbar4. Add the Digg iPhone app as a panel5. Add a Web app (Twittergadget) that requires authentication6. Reach into GoogleTM Gadgets for a currency converter and mail it

to a friend

2. In Lotus iNotes:1. Add a widget from the catalog2. Add a widget that's been mailed to him

3. In Symphony: Add the Lotus Connections Files plug-in to Symphony from the Symphony catalog

4. In Sametime: Add a widget to Sametime from the Greenhouse catalog (Connections 3.0 plug-in)

Page 171: Ls11show108

Philippe: 1.1 Add a Notes View to the Sidebar: Widget Catalog (1 of 2)

Simply click the “Add to Sidebar” toolbar button(or the corresponding menu item on the Tools – Widgets menu)

1.Add the “By Category” view of the Notes Widgets catalog to the sidebar

Page 172: Ls11show108

Philippe: 1.1 Add a Notes View to the Sidebar: Widget Catalog (2 of 2)2. Wait, wait… voila! You have a new sidebar panel

It does not look that great– more about how to customize it next!

The widget catalog shows up as a sidebar panel, and is removed as a tab

Page 173: Ls11show108

Philippe: 1.2. Keep an eye on his inbox without opening Mail (1 of 5)

● You can put any Notes view (or document!) into the sidebar by clicking the “Add to Sidebar” toolbar button

● HOWEVER, the Java views present a problem– they don’t work as sidebar panels. The workaround?

▬ Open the “old traditional” view

▬ Press CTRL + ALT when you open any of the java views (Mail, Calendar Contacts, To dos, Notebook)

Put focus on Mail in the Open list.Press CTRL + ALT, and then click

Page 174: Ls11show108

Philippe: 1.2. Keep an eye on his Inbox without opening Mail (2 of 5)

Once the old version of the mail template is open, just click the “Configure a Widget from Current Context...” button

Page 175: Ls11show108

Philippe: 1.2. Keep an eye on his Inbox without opening Mail (3 of 5)

Leave the “Show Navigator” option unchecked to hide the navigator

Click Next to continue.

Select the “Open this view” option

The *new* Notes configuration dialog appears! You can choose what type of Notes widget to create. For now, let's add the Inbox view.

Page 176: Ls11show108

Philippe:1. 2. Keep an eye on your Inbox without opening Mail (4 of 5)

Select “Display as a sidebar panel” and click Finish to create the widget.

Page 177: Ls11show108

Philippe: 1.2. Keep an eye on your Inbox without opening Mail (5 of 5)

Your mail sidebar panel appears, and the mail tab along the top is closed.

Page 178: Ls11show108

Philippe: 1.3. Add a Notes view as a scope to the Search toolbar (1 of 6 )● Open any Notes view (ex. Journal)

▬ If opening a Java view, remember to use the Ctrl+Alt keystroke when opening (mail, Calendar, Contacts, To-dos, and Notebook)

Like before, click the “Configure a Widget from Current Context” button in the Widgets toolbar

Page 179: Ls11show108

Philippe: 1.3. Add a Notes view as a scope to the Search toolbar (2 of 6)

Choose to add as an engine to the search center (the toolbar)

Click Finish

Page 180: Ls11show108

Philippe: 1.3. Add a Notes view as a scope to the Search toolbar (3 of 6)

Verify your choices and click Finish

Page 181: Ls11show108

Also, Philippe can simply choose to always show any view in his search list by clicking this new choice

Philippe: 1.3. Add a Notes view as a scope to the Search toolbar (4 of 6)

Notebook now shows up even when your Notebook is not open

Page 182: Ls11show108

Philippe: 1.3. Add a Notes view as a scope to the Search toolbar (5 of 6)

You can choose what to call it

You can manage which search scopes you see in your list by going to Preferences – Search – Search List

Page 183: Ls11show108

Philippe: 1.3. Why Have These 2 Ways to Add Search Scope? (6 of 6)

The menu requires users to add a scope themselves.

The wizard allows you to package it as a widget, put it in the catalog, and push it out to others.

Page 184: Ls11show108

Philippe Will Extend His Reach in These Ways1. In Lotus Notes:

1. Add a Notes view as a panel2. Add the Inbox as a panel3. Add a Notes view as a search scope in the Search Center toolbar4. Add the Digg iPhone app as a panel5. Add a Web app (Twittergadget) that requires authentication6. Reach into GoogleTM Gadgets for a currency converter and mail it

to a friend

2. In Lotus iNotes:1. Add a widget from the catalog2. Add a widget that's been mailed to him

3. In Symphony: Add the Lotus Connections Files plug-in to Symphony from the Symphony catalog

4. In Sametime: Add a widget to Sametime from the Greenhouse catalog (Connections 3.0 plug-in)

Page 185: Ls11show108

Philippe 1.4: Add the Digg iPhone App to the Sidebar (1 of 7)

Click the first button on the Widgets toolbar “Getting Started with Widgets…”

Page 186: Ls11show108

Philippe 1.4: Add the Digg iPhone App to the Sidebar (2 of 7)

Select the second radio button: “Web Page”

Click Next to continue

Page 187: Ls11show108

Philippe 1.4: Add the Digg iPhone App to the Sidebar (3 of 7)

Select the second radio button: “Web page by URL” and type in the URL “http://m.digg.com”

Click Next to continue

Page 188: Ls11show108

Philippe 1.4: Add the Digg iPhone App to the Sidebar (4 of 7)

Select the first radio button: “The Web Page: Build a component from the web page (HTTP GET)”

Click Next to continue

Page 189: Ls11show108

Philippe 1.4: Add the Digg iPhone App to the Sidebar (5 of 7)

View a preview of the Digg web app

Click Next to continue

Page 190: Ls11show108

Philippe 1.4: Add the Digg iPhone App to the Sidebar (6 of 7)

Select the second radio button “Display as a sidebar panel”

Click Finish

Page 191: Ls11show108

Philippe 1.4: Add the Digg iPhone App to the Sidebar (7 of 7)

The Digg view opens up in the sidebar

Page 192: Ls11show108

Philippe Will Extend His Reach in These Ways1. In Lotus Notes:

1. Add a Notes view as a panel2. Add the Inbox as a panel3. Add a Notes view as a search scope in the Search Center toolbar4. Add the Digg iPhone app as a panel5. Add a Web app (Twittergadget) that requires authentication6. Reach into GoogleTM Gadgets for a currency converter and mail it

to a friend

2. In Lotus iNotes:1. Add a widget from the catalog2. Add a widget that's been mailed to him

3. In Symphony: Add the Lotus Connections Files plug-in to Symphony from the Symphony catalog

4. In Sametime: Add a widget to Sametime from the Greenhouse catalog (Connections 3.0 plug-in)

Page 193: Ls11show108

Philippe 1.5: Add a Web App That Requires Authentication (1 of 11)

Open the Web Browser application

Page 194: Ls11show108

Philippe 1.5: Add a Web App That Requires Authentication (2 of 11)

3. Click the second button in the Widgets toolbar: “Configure a Widget from Current Context…”

1.Type http://www.twittergadget.com (or any other mail web app) in the address bar

2. Log in

Page 195: Ls11show108

Philippe 1.5: Add a Web App That Requires Authentication (4 of 11)

● The Configure a Widget wizard opens and detects two options from the context: Configure a component from this web page or Configure a component from a form on this web page.

● Choose the first option: “This Web Page…(HTTP GET)”● Check the “authentication required” check box at the bottom and click

Next

Check Authentication Required

Click Next

Page 196: Ls11show108

Philippe 1.5: Add a Web App That Requires Authentication (5 of 11)

Notice the Username and Password fields are highlighted in green since the correct form, Form 1, is selected at the top.

Select the Form

Page 197: Ls11show108

Philippe 1.5: Add a Web App That Requires Authentication (6 of 11)

Choose which account to use from the dropdown, or create a new one. If you do not have a Twitter account, you can use:User name: NotesSidebarPassword: Lotusphere

IMPORTANT! This account is a Notes “authentication” account; you must already have the Twitter account

Page 198: Ls11show108

Philippe 1.5: Add a Web App That Requires Authentication (7 of 11)

Wait a moment for the wizard to test the authentication; if successful you should see the web page (in this case, Twittergadget) in the wizard window.

Click Next

Page 199: Ls11show108

Philippe 1.5: Add a Web App That Requires Authentication (8 of 11)

On this page, you are given the opportunity to modify the URL to include any parameters. Today, we are not modifying any parameters; we are just viewing tweets.

Click Next

Page 200: Ls11show108

Philippe 1.5: Add a Web App That Requires Authentication (9 of 11)

You can review the name of your widget, and choose what to do with it.

Choose “Display as a sidebar panel”

Page 201: Ls11show108

Philippe 1.5: Add a Web App That Requires Authentication (10 of 11)

Review everything.Click Finish

Page 202: Ls11show108

Philippe 1.5: Add a Web App That Requires Authentication (11 of 11)

Behold! Twittergadget in your sidebar!

Page 203: Ls11show108

Philippe Will Extend His Reach in These Ways1. In Lotus Notes:

1. Add a Notes view as a panel2. Add the Inbox as a panel3. Add a Notes view as a search scope in the Search Center toolbar4. Add the Digg iPhone app as a panel5. Add a Web app (Twittergadget) that requires authentication6. Reach into GoogleTM Gadgets for a currency converter and

mail it to a friend2. In Lotus iNotes:

1. Add a widget from the catalog2. Add a widget that's been mailed to him

3. In Symphony: Add the Lotus Connections Files plug-in to Symphony from the Symphony catalog

4. In Sametime: Add a widget to Sametime from the Greenhouse catalog (Connections 3.0 plug-in)

Page 204: Ls11show108

Philippe 1.6: Reach into Google Gadgets for a Currency Converter and mail it to a friend (1 of 8)

Go to the My Widgets Sidebar Panel, and use the “Panel menu” in the title bar to choose:Configure a Widget from...A Google Gadget

● Goal: Get the currency converter Google Gadget (from the Google Gadget catalog), add it to the sidebar, and then mail it to a friend

Page 205: Ls11show108

Philippe 1.6: Reach into Google Gadgets for a Currency Converter and mail it to a friend (2 of 8)

A wizard is launched. Choose to browse the Google Gadget directory.Click Finish

Page 206: Ls11show108

Philippe 1.6: Reach into Google Gadgets for a Currency Converter and mail it to a friend (3 of 8)

Type “currency converter” into the search bar

Click the title to open it

Page 207: Ls11show108

Philippe 1.6: Reach into Google Gadgets for a Currency Converter and mail it to a friend (4 of 8)

Click the Add to Sidebar Button

See that the weather gadget appears in your sidebar

Page 208: Ls11show108

Philippe 1.6: Reach into Google Gadgets for a Currency Converter and mail it to a friend (5 of 8)

Click the My Widgets Title bar to expand the My Widgets panel

Page 209: Ls11show108

Philippe 1.6: Reach into Google Gadgets for a Currency Converter and mail it to a friend (6 of 8)

Locate the Currency converter thumbnail and right-click to post the context menu

Choose the menu item Email to...

Page 210: Ls11show108

Philippe 1.6: Reach into Google Gadgets for a Currency Converter and mail it to a friend (7 of 8)

An Email message opens. Address it. You can also edit the message in the body.

Page 211: Ls11show108

Philippe 1.6: Reach into Google Gadgets for a Live weather panel and mail it to a friend (8 of 8)

SvOutPlaceObject

The recipient can install it the same way it's installed from the catalog, or drag the .xml to the My Widgets panel

Page 212: Ls11show108

Philippe Will Extend His Reach in These Ways1. In Lotus Notes:

1. Add a Notes view as a panel2. Add the Inbox as a panel3. Add a Notes view as a search scope in the Search Center toolbar4. Add the Digg iPhone app as a panel5. Add a Web app (Twittergadget) that requires authentication6. Reach into GoogleTM Gadgets for a currency converter and mail it

to a friend

2. In Lotus iNotes:1. Add a widget from the catalog2. Add a widget that's been mailed to him

3. In Symphony: Add the Lotus Connections Files plug-in to Symphony from the Symphony catalog

4. In Sametime: Add a widget to Sametime from the Greenhouse catalog (Connections 3.0 plug-in)

Page 213: Ls11show108

Philippe 2.1: add a Widgets to iNotes from the Catalog (6 Steps)

1. Locate “Widgets” in the navigator, right-click to post the context menu

2. Choose “Browse Widgets Catalog”

If you right-click on the Widgets node, you can select “Browse Widgets Catalog”

Page 214: Ls11show108

© 2011 IBM Corporation

Philippe 2.1: add a Widgets to iNotes from the Catalog

iNotes users have a smaller catalog experience – a dialog rather than a full app., because fewer widgets work on iNotes.

3. Choose one or more widgets from the list.

4. Click OK

Page 215: Ls11show108

© 2011 IBM Corporation

Philippe 2.1: add a Widgets to iNotes from the Catalog

● How did that list of iNotes widgets get created?

● When Marie-the-admin added this widget for iNotes to the catalog, she had to:

─ Enter a specific category for iNotes widgets (we picked the term DWA)

─ Specify the platform as iNotes 8.5

Category DWA

Platform iNotes 8.5

Page 216: Ls11show108

© 2011 IBM Corporation

Philippe 2.1: add a Widgets to iNotes from the Catalog: What Marie did to set it up

Here is the widgets catalog, toolbox.nsf, located in the <domino install>/data/ directory. The “By Category View”

As you can see, the widgets in the DWA category are now available in the “Browse Widgets Catalog” dialog.

Page 217: Ls11show108

© 2011 IBM Corporation

Philippe 2.1: add a Widgets to iNotes from the Catalog:

IBM.com opens as an iNotes tab

See IBM.com as a choice in the list of widgets

Page 218: Ls11show108

Philippe 2.2: Add a widget that's been mailed to him

● Reminder: he needs the policy turned on for him to do this● We do not recommend that you turn this on for most business users; only

power users will be comfortable copying XML.

Page 219: Ls11show108

Philippe 2.2: Add a widget that's been mailed to him (1-2 of 7 Steps)

He receives an email and clicks to

open the attachment

He chooses how to open it

Page 220: Ls11show108

Philippe 2.2: Add a widget that's been mailed to him (3 of 7)

He opens, selects, and copies the contents of the

xml file

Page 221: Ls11show108

Philippe 2.2: Add a widget that's been mailed to him (4-5 of 7)

He Right-clicks and chooses

“Create”

He pastes theXML into the dialog that

pops up

Page 222: Ls11show108

Philippe 2.2: Add a widget that's been mailed to him – the XML to type in if you want

● <?xml version="1.0" encoding="UTF-8"?>● <webcontextConfiguration version="1.1">● <palleteItem contributeToSideshelfOnStartup="false" hideThumbnail="false"

id="1856299702" imageUrl="" providerId="com.ibm.rcp.toolbox.web.provider.WebServicesPalleteProvider" singletonSidebar="false" title="http://www.cnn.com" url="http://www.cnn.com" viewImageUrl="">

● <preferences/>● <data>● <authForm/>● </data>● </palleteItem>● </webcontextConfiguration>

Page 223: Ls11show108

Philippe 2.2: Add a widget that's been mailed to him (6,7 of 7)

He sees the widget in his

Navigator

He clicks to open it in a tab

Page 224: Ls11show108

Philippe 2.2: Add a widget that's been mailed to him (6,7 of 7)

He sees IBM.Com open as an iNotes

tab

Page 225: Ls11show108

Philippe Will Extend His Reach in These Ways1. In Lotus Notes:

1. Add a Notes view as a panel2. Add the Inbox as a panel3. Add a Notes view as a search scope in the Search Center toolbar4. Add the Digg iPhone app as a panel5. Add a Web app (Twittergadget) that requires authentication6. Reach into GoogleTM Gadgets for a currency converter and mail it

to a friend

2. In Lotus iNotes:1. Add a widget from the catalog2. Add a widget that's been mailed to him

3. In Symphony: Add the LotusLive Files plug-in to Symphony from the Symphony catalog

4. In Sametime: Add a widget to Sametime from the Greenhouse catalog (Connections 3.0 plug-in)

Page 226: Ls11show108

Philippe 3: Add the LotusLive Files plug-in from the Symphony catalog (11 steps)

Launch Symphony, Go to the Home page

Click Plug-ins

Page 227: Ls11show108

Philippe 3: Add the LotusLive Files plug-in from the Symphony catalog (3 of 11)

Choose “Downloads”

Page 228: Ls11show108

Philippe 3: Add the LotusLive Files plug-in from the Symphony catalog (4 of 11)

Find the “LoutsLive connector”

Page 229: Ls11show108

Philippe 3: Add the LotusLive Files plug-in from the Symphony catalog (5 of 11)

Click the icon and then drag it to the Symphony Sidebar to install it

Page 230: Ls11show108

Philippe 3: Add the LotusLive Files plug-in from the Symphony catalog (6 of 11)

Click the icon and then drag it to the Symphony Sidebar to install it

Wait for a moment wile it is searching

Page 231: Ls11show108

Philippe 3: Add the LotusLive Files plug-in from the Symphony catalog (7 of 11)

Click the icon and then drag it to the Symphony Sidebar to install it

Accept the licence agreement

Page 232: Ls11show108

Philippe 3: Add the LotusLive Files plug-in from the Symphony catalog (8 of 11)

Click to restart Symphony

Wait while the feature is being installed

Page 233: Ls11show108

Philippe 3: Add the LotusLive Files plug-in from the Symphony catalog (9 of 11)

When Symphony restarts you sold see a

new icon in the Sidebar; Click the icon to open the new panelr

Page 234: Ls11show108

Philippe 3: Add the LotusLive Files plug-in from the Symphony catalog (10 of 11)

The first time you click the LotusLive Files Icon, preferences will pop up. Enter the LotusLive server of https://apps.lotuslive.com

Then enter your own credentials for LotusLive

Page 235: Ls11show108

Philippe 3: Add the LotusLive Files plug-in from the Symphony catalog (11 of 11)

Once you have set which server to

connect to, you should see your files from

LotusLive

Page 236: Ls11show108

Philippe 3: Add the LotusLive Files plug-in from the Symphony catalog

● Note: this plug-in worked great, except that in order to achieve a “Single sign-on” - the plugin hard-coded your current operating system password that you had when you installed the plug-in. Which means that when (if) you have to change your operating system password, the plug-in no longer works, and there does not seem to be a way around it (other than changing your OS password back to the old one, which is usually prohibited by policy.)

Page 237: Ls11show108

Philippe Will Extend His Reach in These Ways1. In Lotus Notes:

1. Add a Notes view as a panel2. Add the Inbox as a panel3. Add a Notes view as a search scope in the Search Center toolbar4. Add the Digg iPhone app as a panel5. Add a Web app (Twittergadget) that requires authentication6. Reach into GoogleTM Gadgets for a currency converter and mail it

to a friend

2. In Lotus iNotes:1. Add a widget from the catalog2. Add a widget that's been mailed to him

3. In Symphony: Add the Lotus Connections Files plug-in to Symphony from the Symphony catalog

4. In Sametime: Add a widget to Sametime from the Greenhouse catalog (Connections 3.0 plug-in)

Page 238: Ls11show108

1.

Philippe 4: Add a widget to Sametime from the Greenhouse catalog (28 steps)● Today, Philippe can install additional plug-ins using the general steps for

installing any Eclipse plug-in● Sametime Connect does dot currently support a Widget or plug-in catalog.● It might support such a catalog in the future.

Page 239: Ls11show108

Philippe 4: What this Widget does

● Inserts a Connection profile business card and data in stead of the “traditional” Sametime business card

● Lets you save a chat transcript to an activity or a community● Lets you Find related Activities

Page 240: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (1-3 of 28)

Launch a browser and go to the greenhouse site: catalog.lotus.com

Filter by Lotus Connections

For search text, enter Sametime, and click the search icon

Page 241: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (4 of 28)

Locate the IBM Lotus Connections 3.0 Plug-in for Lotus Sametime, and click

it

Page 242: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (5 of 28) 5

Click “Start Download.” You

will see an authentication

screen if you have not yet logged

onto Greenhouse)

Page 243: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (6 of 28)

Accept the license agreement

Page 244: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (7 of 28)

Click “Download Solution”

Page 245: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (8 of 28)

Click to Save the file

Page 246: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (9 of 28)

Choose a place to save the file

Page 247: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (10 of 28)

Once the download is

complete, click to close the dialog

Page 248: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (11 of 28)

From Sametime Connect, Choose Tools – Plug-ins –

Install Plug-ins

Page 249: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (12 of 28)

Choose “Search for new features to install”

Page 250: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (13 of 28)

Click “Add Zip/Jar Location...

Page 251: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (14 of 28)

Locate the Lc30_sametime

download file and double-click on it

Page 252: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (15 of 28)

Click OK on the Edit Local Site dialog

Page 253: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (16 and 17 of 28)

You should now see the lc30_sametime.zip

file in the Install list

Click Finish

Page 254: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (18 and 19 of 28)

The screen will flicker and then you should

see this updates dialog

Check the checkbox

Click Next

Page 255: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (20 and 21 of 28)

Accept the license agreement

Click Next

Page 256: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (22 and 23 of 28)

Review the list of features to be installed

Click Finish

Page 257: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (24 and 25 of 28)

Watch the various status dialogs

Watch the lower right corner of your screen –

you should get a message that you need

to restart Sametime

Page 258: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (26 and 27 of 28)

On relaunch, set your

Connections server by

going to File - Preferences

You can point to Greenhouse.lotus.com

Provide your own credentials. You can

register if you need to.

Page 259: Ls11show108

© 2011 IBM Corporation

Philippe: 4. Add a Widget to Sametime from the Greenhouse catalog (28 of 28)

Verify that the chat window now has 3 new buttons for saving

chat transcripts, Finding related activities, and Adding to a

community forum

Verify that the business card is

coming from Connections

Page 260: Ls11show108

Questions about Philippe's Experience?1. In Lotus Notes:

1. Add a Notes view as a panel2. Add the Inbox as a panel3. Add a Notes view as a search scope in the Search Center toolbar4. Add the Digg iPhone app as a panel5. Add a Web app (Twittergadget) that requires authentication6. Reach into GoogleTM Gadgets for a currency converter and mail it

to a friend

2. In Lotus iNotes:1. Add a widget from the catalog2. Add a widget that's been mailed to him

3. In Symphony: Add the Lotus Connections Files plug-in to Symphony from the Symphony catalog

4. In Sametime: Add a widget to Sametime from the Greenhouse catalog (Connections 3.0 plug-in)

Page 261: Ls11show108

© 2011 IBM Corporation

Related Talks● What's new in Lotus iNotes and beyond● AD108 IBM Lotus iNotes Customization: Make Lotus iNotes Your Own! ● JMP201 Take the easy Jump from Microsoft Office to Symphony● Show101 using IBM Lotus Domino policies to manage your clients● BP101 Adminblast 2011● BP106 Where is the love? How to get your users to fall in love with Lotus Notes● BP115 How to successfully deploy a widget catalog● BP203 Leveraging the new Java APIs in Lotus Notes 8.5.1 and 8.5.2● AD203 What's new with Widgets and Live Text: Linking your data to the world!

Page 262: Ls11show108

© 2011 IBM Corporation

Collaborate with the User Experience team● Visit the UX Lab in Asia 4● Sign up to join us in user experience activities, www.ibm.com/software/ucd/lotusur

● Follow us...─ On Facebook: www.facebook.com/lotusdesign─ On Twitter: www.twitter.com/lotusdesign─ On blogs:

– NotesDesignBlog for Lotus Notes (www.NotesDesignBlog.com)– synch.rono.us for Lotus Connections– Discussions regarding the User Experience of Lotus Sametime:

https://www.ibm.com/developerworks/mydeveloperworks/blogs/josefscherpa/?lang=en

● General Community Resources─ Developerworks https://www.ibm.com/developerworks/community/─ Social Media Aggretagor: www.PlanetLotus.org─ Public deployment of Lotus Connections: www.bleedyellow.com

Page 263: Ls11show108

© 2011 IBM Corporation

Review of what we covered ●Overview of where the various clients can be extended

●Administrator's perspective on extending the clients

─Marie-the-admin wants to SECURELY deploy the right extensions to the right people

●Developer's perspective on extending the clients

─Kathy-the-developer wants to develop useful panel and toolbar extensions

●End-users perspective on using the extensions

─Philippe the end user just wants to get more work done, faster

Page 264: Ls11show108

© 2011 IBM Corporation

Legal Disclaimer© IBM Corporation 2011. All Rights Reserved.

The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.

References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.

All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer.

IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino, Quickr, Sametime, WebSphere, UC2, PartnerWorld and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both. Unyte is a trademark of WebDialogs, Inc., in the United States, other countries, or both.

Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries.Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.Intel, Intel Centrino, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

UNIX is a registered trademark of The Open Group in the United States and other countries.

Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.Other company, product, or service names may be trademarks or service marks of others.

All references to Renovations efer to a fictitious company and are used for illustration purposes only.