how to enhance email with embedded experiences

22
Enhancing Email With Embedded Experiences Ryan Baxter Software Engineer - IBM @ryanjbaxter IBM SBT Webinar Stanton Sievers Software Engineer – IBM @sieversj

Upload: ibm-connections-developers

Post on 12-May-2015

2.270 views

Category:

Technology


2 download

DESCRIPTION

Speakers: Ryan Baxter, @ryanjbaxter, IBM, Software Engineer – OpenSocial / Embedded Experiences Stanton Sievers, @sieversj, IBM, Software Engineer – OpenSocial / Embedded Experiences Abstract: Have you ever wondered how to send an embedded experience email to Notes, iNotes, or Connections Mail? It is not as hard as it may seem and gives your users a huge productivity boost. There are various ways to do it, including using existing APIs that you may already be using in your application today. Join us for a webinar on embedded experiences in email and learn how to add this exciting piece of functionality to your application.

TRANSCRIPT

Page 1: How to enhance Email with Embedded Experiences

Enhancing Email With Embedded Experiences

Ryan BaxterSoftware Engineer - IBM

@ryanjbaxter

IBM SBT Webinar

Stanton SieversSoftware Engineer – IBM

@sieversj

Page 2: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation2

Future Webinars

Tentatively:● 08/28: How to access the Activity Stream in IBM Connections● 09/11: How to extend the Embedded Experience in IBM Connections

Page 3: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation3

YouTube.com/IBMSBT

Page 4: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation4

Disclaimers

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.

Page 5: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation5

Embedded Experiences

● Changing the way you get notifications● The goal is to make notifications more useful and interactive● Supported in email and activity streams

● IBM Connections, IBM Connections Mail, IBM Notes 9, IBM iNotes 9● JSON + XML

Page 6: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation6

Notifications Today

Action Taken In Your App

Standard MIME Email

Activity Entry

Page 7: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation7

Notifications With Embedded Experiences

EEAction

Taken In Your App

Your App

Standard MIME Email

Activity Entry

EE Data Model

Page 8: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation8

Something Of Importance Took Place!

● Embedded experiences are almost always generated due to an action that took place in an app● Someone completed a task● Someone sent a survey to a

group of people● A travel request was submitted● A lead was entered in a CRM

system

● Now that the action took place you want to let a group of people know about it● BE SOCIAL!

Action Taken In App

Your APP

Page 9: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation9

How do you want to let people know about it?

● Email of course!● We just need to add the embedded

experiences data model to the email

● Gadget EE{ “gadget” : “http://acme.com/gagdet.xml”, “context” : { “id” : 123 }}● URL EE{“url” : “http://domino.com/myxpage.xsp”} Standard MIME

Email

Activity Entry

EE Data Model

Page 10: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation10

Email Embedded Experience

From: [email protected] To: [email protected] Subject: Social Network: Mary Has Commented On Your Status MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="XXXXboundary text" Mary has commented on your status. --XXXXboundary text Content-Type: text/plain Mary has commeneted on your status. --XXXXboundary text Content-Type: text/html <html> <!-- HTML representation here --> </html> --XXXXboundary text Content-Type: application/embed+json { "url" : "http://domino.com/myxpage.xsp" }

Page 11: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation11

Demo

Trouble Tickets Embedded Experiences Demo

Page 12: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation12

Enabling Embedded Experiences In IBM Notes and Domino 9.0

● You need to install the OpenSocial Component into IBM Notes and Domino 9.0● For Notes the OpenSocial Component is part of the installer, you just need to

enable the component during install● For Domino there is a separate installer for the OpenSocial Component that

needs to be installed

● Before you can render your first embedded experience there is some configuration you must do● Embedded experiences are web applications so we need to be careful when

rendering them as they could pose a security risk● The complete production deployment cookbook can be found on the Notes

and Domino Wiki● For developers there is a guide on the IBM Social Business Toolkit landing

page that shows the minimal steps to get going● In a future release of the QSI the OpenSocial component will be fully

configured

Page 13: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation13

Creating Embedded Experience Emails Using Notes.jar

Page 14: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation14

XPages Simple Action To Send Embedded Experience Emails

● New “Send Mail” simple action● Available in 9.0● Provides an easy way to send

mails and supports Embedded Experience mail

● You can either compose JSON by yourself or XPages will compose it based on your input.

Page 15: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation15

Sending Embedded Experiences With The SDK

● The IBM Social Business Toolkit SDK contains APIs for sending emails● Both Java and JavaScript APIs● For JavaScript include the sbt/emailservice module

● A sample snippet is located in the Utilities folder of the SBT Playground

● For Java ● Use DefaultMimeEmailFactory for all other Java apps

● The SDK APIs allow for creation of any type of MIME email including embedded experience emails

Page 16: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation16

Demo

Adding The Embedded Experience MIME Part

Page 17: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation17

Creating Embedded Experience Widgets

● You need to create a Web Page widget and enable it for embedded experiences

● The URL usually contains an id parameter● http://renovations.com/tickets.nsf/viewTicket.xsp?

action=openDocument&documentId=A46● Use wild cards (*) to create a single embedded experiences widget for all

URLs in your application

Page 18: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation18

Approving Embedded Experiences in Notes and iNotes

● Only trusted embedded experiences can run in Notes and iNotes. Catalog administrator needs to approve the widgets in Widget Catalog

Page 19: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation19

Enabling URL Embedded Experiences In Connections Mail

● By default in Connections all URL embedded experiences are disabled● To enable URL embedded experiences you need to modify whitelist in

the opensocial-config.xml file on your Connections server● You can either disable the whitelist completely so that all URL

embedded experiences render● Or you can specify certain domains or URLs you want to allow

...<url-access urlWhitelistEnabled="false">

<!-- If urlWhitelistEnabled is true you need to list URLs you want to allow here --> <!-- Below are some examples --> <!-- <host url="http://host.com/myee.html" --></url-access>...

Page 20: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation20

Demo

Approving The Embedded Experience

Page 21: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation21

Resources and Questions

● OpenSocial Component Cookbook: http://bit.ly/osc-cookbook● OpenSocial Component Developer Guide: http://bit.ly/osc-dev-guide● Home page: http://ibmdw.net/social● SDK: http://ibmsbt.openntf.org● GitHub: https://github.com/OpenNTF/SocialSDK● StackOverflow: #ibmsbt● Twitter: @ibmsbt● YouTube: http://youtube.com/ibmsbt● Playground: http://bit.ly/sbtplayground

Page 22: How to enhance Email with Embedded Experiences

© 2013 IBM Corporation22

Acknowledgements and Disclaimers

© Copyright IBM Corporation 2013. 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, Rational, the Rational logo, Telelogic, the Telelogic logo, Green Hat, the Green Hat logo, and other IBM products and services 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.shtmlOther 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.