entwicklercamp 2014lab 3-1: setting up social edition beispiel embedded experiences lab 3-3:...

37
© 2014 IBM Corporation iNotes und XPages Matthias Schneider Leading Technical Sales Professional - IBM Social Business and Collaboration Solutions IBM Deutschland GmbH EntwicklerCamp 2014

Upload: others

Post on 22-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

  • © 2014 IBM Corporation

    iNotes und XPagesMatthias Schneider

    Leading Technical Sales Professional - IBM Social Business and Collaboration SolutionsIBM Deutschland GmbH

    EntwicklerCamp 2014

  • © 2014 IBM Corporation

    Embedded Experiences: XPages in iNotes iNotes-Elemente in XPages Die Praxis: Jetzt dürfen Sie ran! Q & A

    Agenda

  • © 2014 IBM Corporation

    Wie anpassbar ist iNotes

    Alles was zum Browser geht, wird über Designelemente gesteuert – eigentlich wie bei Notes...

    Aber... Es gibt grundlegende Unterschiede zu XPages und “normalen” Domino Webanwendungen─ Die Verarbeitung erfolgt hybrid, d.h. nicht nur über das Template gesteuert

    ─ Nutzung einer eingeschränkten Liste an Domino Web-Kommandos und einigen speziellen URL-Argumenten

    ─ Verwendung von Tags zur Steuerung der Felder, die über ein POST von der jeweiligen Seite übertragen werden dürfen

    ─ Verwendung spezieller Server-seitiger Formeln

    ─ Weitgehender Verzicht auf Agenten (Wie wir sehen werden, kann ich die aber verwenden.)

    Grundlegende Herausforderung: Verstehen, was ich anfassen muss um das gewünschte Verhalten zu erzielen

  • © 2014 IBM Corporation

    mail\JUser.nsf

    iNotes\Forms9.nsf

    Referenzen

    Domino Server

    iNotes\Forms9_x.nsf

    Browser

    Design von Ansichten

    Daten

    Großteil des Designs:

    CSS, JavaScript, Bilder, HTML

    Anpassungen

    mail9.ntfForms9_x.ntf

    Referenzen

    Rendering in iNotes

  • © 2014 IBM Corporation

    Embedded Experiences und OpenSocial Gadgets

    Embedded Experiences ermöglichen es dem Anwender, Einträge aus dem ActivityStream zu öffnen und mit ihnen im Kontext zu interagieren – aber noch weitaus mehr!

    Support für Embedded Experiences:─ IBM Connections 4 CR2 (Persönliche und Community Activity Streams)

    ─ IBM Connections 4 CR2 Mail

    ─ IBM Notes 9 und IBM iNotes 9

    Embedded Experiences enthalten entweder ...─ Beliebige Webseiten oder...

    ─ OpenSocial Gadgets

    XPages!!

  • © 2014 IBM Corporation

    Web Pages vs OpenSocial Gadgets in Embedded Experiences

    Webseiten─ URLs zu Webseiten, Rendering in iFrames

    ─ Kontext wird via URL-Parameter übergeben

    ─ SSO und Basic Authentication

    ─ (Zugriff auf IBM Connections via IBM Connections REST API)

    OpenSocial Gadgets─ XML Descriptoren

    ─ Kontext wird via OpenSocial Container übergeben

    ─ OAuth und SSO (SSO nur in IBM Connections 4, nicht IBM Notes 9)

    ─ OAuth zu Drittanbietern wird über den Container gesteuert

    ─ Zugriff auf IBM Connections via IBM Connections REST API

    ─ Erweiterung von Menüs und Aktionsleisten

    ─ Zwei Arten (Beide verwenden iFrames)– URL Content– HTML Content

  • © 2014 IBM Corporation

    Beispiel: Embedded Experiences – ohne Connections!!

    Vorbereitung:─ Einrichtung von OpenSocial für Notes und iNotes

    ─ https://www.ibmdw.net/social/docs/enabling-opensocial-gadget-support-on-ibm-notes-and-domino-9-0/

    Beispiel-Anwendung:─ Trouble Tickets Notes-to-XPages Example

    ─ http://www.openntf.org/internal/home.nsf/project.xsp?r=project/Trouble%20Tickets%20Notes-to-XPages%20Example/summary

    ─ Erfordert SBTK

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

    Erweiterung von Aktionen

    Menüs und Aktionsleisten lassen sich über OpenSocial Gadgets nahezu beliebig erweitern

    Verwendung der OpenSocial Container Services API und der folgenden Services:

    – gadgets.selection: Andocken am Ereignis-Modell der Auswahl innerhalb des Containers– gadgets.actions: Andocken an Schaltflächen und Menüeinträgen im Container-UI– gadgets.views: Öffnen und Schließen von Gadgets und Seiten im Container

    Erweiterungspunkte für IBM Notes und IBM iNotes und deren existierende Popup-Menüs und Toolbars

  • © 2014 IBM Corporation

    Beispiel: OpenSocial Gadgets in iNotes

    Beispiel-Anwendung:─ Trouble Tickets Notes-to-XPages Example

    ─ http://www.openntf.org/internal/home.nsf/project.xsp?r=project/Trouble%20Tickets%20Notes-to-XPages%20Example/summary

    ─ Eine leere Datenbank mit einem Gadget...

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

    ]]>

    *

    ...

    OpenTickets.xml

  • © 2014 IBM Corporation

    function status(str) { document.getElementById("status").innerHTML = str; if (gadgets.util.hasFeature('dynamic-height')) { gadgets.window.adjustHeight(); } }

    function findMessage(selection) { selection = [].concat(selection); var message; for (var i = 0, selected; !message && (selected = selection[i]); i++) { if (selected.type && selected.dataObject && selected.type.toLowerCase() == 'opensocial.message')

    { message = selected.dataObject; }

    } return message; }

    function searchTicket(selection) { var message = findMessage(selection); var said=message.senderId; var url="http://nd9de.pscbln.de.ibm.com/TroubleTicketsSE.nsf/employeeHome.xsp?name=" if (said) { var said2=said.substring(said.indexOf(":")+1);

    url=url+said2; } document.getElementById('XPageGadget').src=url; } …

  • © 2014 IBM Corporation

    ...

    gadgets.util.registerOnLoadHandler(function() { gadgets.actions.updateAction({

    id: "org-trouble-searchTicketMessage", callback: searchTicket });

    if (gadgets.util.hasFeature('dynamic-height')) { gadgets.window.adjustHeight(); } });

    ]]>

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

    iNotes-Designelemente für XPages

    content─ Anzeige des iNotes-Kalenders

    content─ iNotes Kalender-Storagekomponente

    content─ iCal-Storagekomponente

    content─ Anzeige einer Ansicht als iNotes-Listenansicht

    content─ Spalte einer iNotes-Listenansicht

    content─ Design einer iNotes-Listenansicht

    content─ Storagekomponente einer iNotes-Listenansicht

  • © 2014 IBM Corporation

  • © 2014 IBM Corporation

    Beispiel

  • © 2014 IBM Corporation

    Beispiel

    ● iNotes-spezifisches Format der Daten (vordefinierte Spalten etc.)

  • © 2014 IBM Corporation

    Und jetzt...

    ...dürfen Sie ran!

  • © 2014 IBM Corporation

    Schritte Einrichtung von OpenSocial und Embedded Experiences

    ─ Lab 3-1: Setting up Social Edition

    Beispiel Embedded Experiences─ Lab 3-3: Embedded Experiences and Activity Streams

    ─ für 9.0.1: – TroubleTicketsSE.nsf– Social Business Toolkit SDK – 20140125– Leere gadgets.nsf mit importierter OpenTickets.xml (Dateien)

    Beispiel iNotes Custom Controls─ XPDemo1.nsf – oder Teamroom...

    Was brauchen Sie?─ Domino 9.x

    ─ Designer 9.x

    ─ Übungsunterlagen + Code Snippets

  • © 2014 IBM Corporation

    Fragen?