Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its...

46
1 Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your IBM Notes Application investment in a Browser Stefan Neth [email protected] IBM Collaboration Solutions Client Technical Specialist

Transcript of Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its...

Page 1: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

1

Track 3 Session 5

IBM Notes Browser Plug-in:Leverage your IBM Notes Application investment in a Browser

Stefan Neth [email protected]

IBM Collaboration Solutions Client Technical Specialist

Page 2: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

22

IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion.

Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision.

The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion

Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.

Please Note

Page 3: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

3

Agenda

Why IBM Notes Browser Plug-in? Goals of IBM Notes Browser Plug-in Packaging & Installation Customizing Notes Browser Plug-in What we are working on Future Possibilities

Page 4: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

44

Why IBM Notes Browser Plug-in?

Page 5: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

5

What majority of Notes/Domino customers have

LotusScript/Formula/NIF/NSF

NSF Storage Local or Remote

Notes ClientCustom Applications

Notes Client (Basic or Std) Large number of Custom

Notes/Domino applications Domino based mail

Page 6: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

6

Where the customers would like to move to – Browser Based environment

Page 7: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

7

What Customers have been using to work around

Use IBM iNotes or IBM Notes web (SmartCloud) for Mail

Migrate critical applications to Xpages

Install Notes Client for remaining Notes/Domino Applications

* requires a context switch between mail & applications

Page 8: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

8

IBM Notes Browser Plug-in – Helping migrate your Notes environment to browser based.

Page 9: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

9

Goals : IBM Notes Browser Plug-in

Page 10: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

10

Goals of Notes Browser Plug-in

Provide seamless access to your existing Notes/Domino applications – Unmodified

Expose all the relevant Notes Client functionality in a browser

What is it? Supported Platforms & Components

Easier installation & upgrade

Page 11: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

11

Benefits of Notes Browser Plug-in

Extends the availability of Notes/Domino application from a browser.

Leverage IBM iNotes for accessing your mail

Integration with IBM iNotes from IBM Notes Browser Plug-in

Continue to leverage your investment in Domino applications

No modifications required to use your existing applications inside a Web Browser

Continuation of the same user interface & workflow

Support for workflow involving mail

No context switching between browser & Notes Client.

Enables standardization of web browser as primary access point for all business applications

Page 12: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

12

Goals of Notes Browser Plug-in

Provide seamless access to your existing Notes/Domino applications – Unmodified

Expose all the relevant Notes Client functionality in a browser

What is it? Supported Platforms & Components

Easier installation & upgrade

Page 13: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

13

Functionality Supported

Welcome page supporting– Links to Most recently used applications for easy access– Link to access Notes workspace

Notes Workspace

Notes Replicator

Notes Bookmarks – migrated to Browser's favorites

Toolbar, Statusbar, Infobox

Entire application logic – lotusscript, formula language

All the design elements – Forms, views, …

Page 14: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

14

IBM Notes Browser Plug-in Homepage

Tips

Links to most recently used applications

Page 15: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

15

Notes application in the browser

Notes Application Area

Notes Menus

Notes Statusbar

Notes Toolbar

iNotes Access

Page 16: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

16

DEMO

Page 17: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

17

Goals of Notes Browser Plug-in

Provide seamless access to your existing Notes/Domino applications – Unmodified

Expose all the relevant Notes Client functionality in a browser

What is it? Supported Platforms & Components

Easier installation & upgrade

Page 18: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

18

What is it? Components of the Notes Browser Plug-in:

– Small subset of Notes Components (only what’s required to run custom app)– Encapsulated in the browser using plug-in components– IPC mechanism for communication between these 2 components– Your application logic

Encapsulated in browser plug-in

Standard installer or managed deployment options.

NO support for Notes Mail (recommend using iNotes or Notes web)

Workflow applications using back-end mail functionality will continue to work

Access to applications via – browser bookmarks (migration of existing Notes bookmarks)– document/view/application link in documents– Support for Notes URL's in the browser.

Page 19: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

19

Summary of functionality

Supported Operating Systems– Microsoft® Windows – 7, 8– Citrix

Supported Browsers– Internet Explorer 8, 9, 10 & 11– Firefox 24 ESR,

Page 20: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

20

Summary of functionality

• Base Level Functionality─ Unless otherwise explicitly stated, only features available in Basic Client will be available─ Existing Customer's Notes Application to work unchanged

User interface components like Frameset, Views, document, action bar within the application, and the scripts (DB/view/document) will work as in Notes.

─ Application (Notes content) is shown in it's own browser tab─ Notes Toolbar (continue to support customer toolbar icons)─ Top-level menus & Context Menus (right-click)─ Notes Status Bar

Page 21: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

21

Summary of functionality

Additional Functionality─ Migration of Notes bookmarks to Browser Favorite bookmarks ─ Leverage browser’s bookmarking feature ─ Access to Local or Server Replica and databases─ Support for

Roaming Users Desktop Policies Replication

─ Email Operations to be passed to iNotes─ Co-existence with Notes Standard Client

Plug-in Installed as part of standard client install Cannot be run at the same time

─ Continued availability of NSD for serviceability

Page 22: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

22

Goals of Notes Browser Plug-in

Provide seamless access to your existing Notes/Domino applications – Unmodified

Expose all the relevant Notes Client functionality in a browser

Smaller package size

Easier installation & upgrade

Page 23: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

23

Notes Browser Plug-in : Installation & Setup Goals

● Keep the Installation Package to a minimum

● Keep the installation as simple as possible● Minimum number of options● Multi-user

● Ensure we handle existing installation & data● Data migration – MUMA (Multi-user migration Agent integration)

● Setup to be simple

Page 24: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

24

Summary of functionality

● Browser Plug-in stand-alone Install Package - use this if you only want NBP with iNotes or Notes web- removes any other Notes client from the system.

● Min Package ~ 65MB

● Max Package ~ 125MB (includes JVM & Viewers)

● OR Can also be installed as part of “Notes Standard Client” install● Plug-in is installed & registered for both Firefox &

Internet Explorer.

● Bookmarks migration/synchronization upon 1st user launch

Page 25: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

25

Customizing IBM Notes Browser Plug-in

Page 26: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

26

Notes Browser Plug-in: CustomizationBrowser Extension – Extending the web browser's functionality

Add toolbar buttons & custom search bar in web browser Modify html content in a specific web page Add custom URL protocol like notes://, skype: etc.

Browser Extension is browser dependant.– For Mozilla Firefox, Mozilla Extension. – For MSIE, Browser Helper Object (BHO)

You can modify Notes Browser Plug-in UI by creating your own Browser Extension.

Browser Extension allows to add functionality to web browser and enhance the user interface in web browser.

Page 27: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

27

Notes Browser Plug-in: Customization Mozilla Extension - Browser Extension for Mozilla Firefox

Mozilla Extension– Mozilla version of Browser Extension.– Allows to add new functionality to Mozilla applications such as Firefox, SeaMonkey and

Thunderbird.

– Script based. XUL (XML UI Language) and JavaScript supported.

– Dev Environment can be one of the followings:● Your text editor● Add-on Builder (online)● Add-on SDK (for desktop)

– https://developer.mozilla.org/en-US/docs/Extensions– https://addons.mozilla.org/en-US/developers/builder

Page 28: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

28

Notes Browser Plug-in: Customization Browser Helper Object - Browser Extension for Microsoft Internet Explorer

Browser Helper Object (BHO)– Microsoft version of Browser Extension– Allows to add new functionality to Internet Explorer and Windows Explorer.– C++ / ATL / COM based

– Dev Environment: ● Microsoft Visual Studio (or Microsot Visual C++)

– http://msdn.microsoft.com/en-us/library/aa753587%28v=vs.85%29.aspx– http://msdn.microsoft.com/en-us/library/bb250489%28v=vs.85%29.aspx

Page 29: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

29

Inside Notes Browser Plug-inNotes Browser Plug-in for Mozilla Firefox

Notes Browser Plug-in for Mozilla Firefox –

Notes Browser Plug-in (Mozilla Extension)

C:\Program Files\IBM\Notes\mozilla

NotesContent.html embeds Notes native control in browser

Page 30: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

30

Inside Notes Browser Plug-inNotes Browser Plug-in for Mozilla Firefox

Notes Browser Plug-in for Mozilla Firefox – Built as a Mozilla Extension.

– Location: C:\Program Files\IBM\Notes\mozilla–

* NPAPI plug-in displays native controls in <embed> or <object> element in html.– Adobe Flash Plug-in displays Flash control in html– Java Applet viewer Plug-in displays Java Applet in html

NotesContent.html Embeds Notes NPAPI Plug-in and shows Notes UI in the html.

npntapi.dll Notes NPAPI plug-in. reparents Notes native control.

Page 31: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

31

Inside Notes Browser Plug-inNotes Browser Plug-in for Microsoft Internet Explorer

Notes Browser Plug-in for Microsoft Internet Explorer–

Notes Browser Plug-in (MSIE version)

C:\Program Files\IBM\Notes\msie

NotesContent.html embeds Notes native control in browser

Page 32: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

32

Inside Notes Browser Plug-inNotes Browser Plug-in for Microsoft Internet Explorer

Notes Browser Plug-in for Microsoft Internet Explorer– Built as a Browser Helper Object (BHO)

– Location: C:\Program Files\IBM\Notes\msie

NotesContent.html Embeds Notes NPAPI Plug-in and shows Notes UI in the html.

npntapi.dll Notes NPAPI plug-in. reparents Notes native control.

nnpapirt.dll NPAPI Runtime engine. runs Notes NPAPI plug-in on Internet Explorer.

nnotebho.dll Notes BHO. implements notes: url, activate tab, and save confirmation dialog so on.

Page 33: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

33

Inside Notes Browser Plug-inNotesContent.html

NotesContent.html embeds Notes native control using <embed> or <object> element. MSIE version:

C:\Program Files\IBM\Notes\msie\NotesContent.html Mozilla Firefox version:

C:\Program Files\IBM\Notes\mozilla\chrome\content\NotesContent.html

<!doctype html><html>...<body id="body" style="margin:0;" onload="javascript:create()"><embed style="position:absolute;left:0;top:0;bottom:0;width:100%;" id="plugin" type="application/x-notes-control"/>... <embed> element embeds

Notes NAPI Plug-in, and displays Notes native control.

Page 34: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

34

Notes Browser Plug-in: CustomizationCustomizing Notes Browser Plug-in

How can we customize Notes Browser Plug-in UI ?

Don't modify / Edit NotesContent.html

Do create your own Browser Extension

Page 35: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

35

Notes Browser Plug-in: CustomizationExample - “Banner” Browser Extension for Mozilla Firefox

“Banner” Browser Extension Mozilla Extension based adds Banner in Notes Browser Plug-in UI without modifying Notes Browser Plug-in.

Notes control

Banner area

Page 36: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

36

Notes Browser Plug-in: CustomizationSample - “Banner” Browser Extension for Mozilla Firefox

How “Banner” Browser Extension works internally:1) “Banner” Browser Extension tracks every web page's open event.2) When Notes URL is opened, “Banner” Browser Extension accesses to the web page and

inserts <img> element in Notes Browser Plugin's NotesContent.html dynamically.

Banner Browser

Extension

Notes Browser Plug-in

Inserts Banner area in NotesContent.htmlusing DOM API

Creates NotesContent.html

Page 37: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

37

Notes Browser Plug-in: CustomizationSample - “Banner” Browser Extension for Mozilla Firefox

Banner Browser Extension File Structure: “banner” directory

https://developer.mozilla.org/en-US/docs/Chrome_Registration https://developer.mozilla.org/en-US/Add-ons/Install_Manifests

chrome.manifest describes a package and maps its location on disk

to a chrome URL.

install.rdf is used for Firefox to load Banner Browser

Extension.

Page 38: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

38

Notes Browser Plug-in: CustomizationSample - “Banner” Browser Extension for Mozilla Firefox

Banner Browser Extension File Structure: “banner/chrome/content” directory

browserOverlay.js tracks every

page's document open event.

browserOverlay.xul inserts

browserOverlay.js in every browser's tab.

images dir stores banner .png

Page 39: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

39

Notes Browser Plug-in: CustomizationExample - “Banner” Browser Extension for Mozilla Firefox

Banner Browser Extension File Structure:browserOverlay.js onPageLoad : function(event) {

if (event.originalTarget instanceof HTMLDocument) { var doc = event.originalTarget;

var win = doc.defaultView; var url = win.location.href.toLowerCase();

if (url.indexOf("notes:") == 0) { var img = createBannerImage(); var embed = doc.getElementsByTagName("embed")[0];

resize_embed_element(embed); doc.body.insertBefore(img, embed);

} } }

BrowserOverlay.js inserts banner image in the opened Notes page

Page 40: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

40

Notes Browser Plug-in: CustomizationExample - “Banner” Browser Extension for Mozilla Firefox

Installing “Banner” Browser Extension

banner.xpi

1) Zip banner directory2) Rename to banner.xpi3) DnD to Firefox to install

On Firefox, Installing the browser extensionis easy.

Page 41: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

41

What we are working on & Future possibilities

Page 42: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

42

A companion for Notes web

Leverage Notes Browser Plug-in for rapidly provide functionality not available in Notes web

Local Archiving─ Notes Client provides extensive archiving functionality missing from Notes web─ Leverage Notes Browser Plug-in & it's integration with Notes web to provide this

missing functionality to Notes webOffline Mail Access

─ Leverage MMR – Managed Mail Replica─ User can work on local replica with changes getting replicated with the help of Notes

Browser Plug-in

Page 43: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

43

Additional things we are investigating

Other Platform Support

Supporting more browsers

More integration with IBM iNotes, IBM Notes web

Page 44: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

4444

Engage Online

SocialBiz User Group socialbizug.org– Join the epicenter of Notes and Collaboration user groups

Follow us on Twitter– @IBMConnect and @IBMSocialBiz

LinkedIn http://bit.ly/SBComm– Participate in the IBM Social Business group on LinkedIn:

Facebook https://www.facebook.com/IBMSocialBiz– Like IBM Social Business on Facebook

Social Business Insights blog ibm.com/blogs/socialbusiness– Read and engage with our bloggers

Engage Online

Page 45: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

4545

Page 46: Track 3 Session 5 IBM Notes Browser Plug-in:Leverage your ... · 2 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice

4646

© Copyright IBM Corporation 2014. All rights reserved.

U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

IBM, the IBM logo, ibm.com, IBM Connections, IBM Notes Social Edition, IBM iNotes Social Edition, IBM Notes Browser Plug-in, IBM SmartCloud, IBM SmartCloud Notes web are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml

Other company, product, or service names may be trademarks or service marks of others.

Availability. 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.

The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS-IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation 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.

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. 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.

Acknowledgements and Disclaimers