Successfully reported this slideshow.
Your SlideShare is downloading. ×

IBM Connect 2014 SHOW501 Mastering Social Development Using the IBM Collaboration QuickStart

Loading in …3

Check these out next

1 of 190 Ad

More Related Content

Slideshows for you (19)


Similar to IBM Connect 2014 SHOW501 Mastering Social Development Using the IBM Collaboration QuickStart (20)

Recently uploaded (20)


IBM Connect 2014 SHOW501 Mastering Social Development Using the IBM Collaboration QuickStart

  1. 1. SHOW501: Mastering Social Development Using the IBM Collaboration QuickStart Paul Bastide, IBM © 2014 IBM Corporation
  2. 2. Please Note 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. 2
  3. 3. This Session IBM Collaboration QuickStart for Social Business is a preconfigured software development environment for developing your custom social applications. The QuickStart environment has IBM Domino, IBM Connections and IBM Sametime configured, and ready to use for development on IBM SoftLayer. The session shows you how to extend a DVD rental application to integrate fully into the IBM social experience. During the session, you’ll learn how you can take advantage of the development environment by step-by-step instruction, and how to use the IBM Social Business Toolkit SDK features to build a social application. The session also provides guidance on enabling your applications for the IBM SmartCloud for Social Business. 3
  4. 4. Agenda Start §  Introduction §  Start and Request Request §  Configure your Environment §  Explore Social Business Scenarios Configure §  Play with the Social Business APIs §  Setup your Development Environment Explore §  Extend and Demonstrate an Application §  Summary Develop §  Resources §  Questions and Answers 4 Demonstrate
  6. 6. About Paul Bastide §  Works with software developers and partners to accelerate IBM Collaboration and IBM Social Business Application Development §  Leads work on the IBM Collaboration QuickStart for Social Business §  Pushes the leading edge, ever since joining IBM in 2004 §  Twitter: @prb112 §  LinkedIn: §  Blog: §  Email: 6
  7. 7. What is going to be covered… §  To request your instance of the IBM Collaboration QuickStart for Social Business on SoftLayer. §  To setup your development environment with the IBM Social Business Toolkit SDK. §  To connect, customize and prepare the IBM Collaboration QuickStart for Social Business for your development and demonstration needs. §  To use the IBM Collaboration QuickStart to extend any application. §  To explore Social Business scenarios with the OpenNTF Trouble Tickets application. §  To explore development of the Social Capabilities with the IBM Social Business Toolkit Playground. 7 §  To reconfigure development to work with the IBM SmartCloud for Social Business.
  8. 8. Terminology Term Definition Term Definition Cloud On Demand Computing with consumption based billing SOAP Simple Object Access Protocol CloudLayer™ SoftLayer’s platform for cloud computing XML Extensible Markup Language JSON JavaScript Object Notation SBT IBM Social Business Toolkit Renovations A demonstration organization NOSQL Not Only SQL SSH SFTP Secure FTP API Programming Interface CPU Virtual Processor Allocation REST 8 Secure Shell Common Pattern for Web Interfaces
  9. 9. IBM Collaboration QuickStart for Social Business The IBM Collaboration QuickStart for Social Business is a SoftLayer image. –  Preinstalled with 85 user profiles including names, email addresses, user photos and more. –  Designed for ease-of-use and minimal administration –  Quickly get an instance without any installation, hardware or maintenance. –  All you need is Internet Access. -  SSH, SFTP, Web Browser 5th Iteration: v3.5 9
  10. 10. The preconfigured environment comes with an established reports-to-chain. Tip: The Welcome Web Page has user ids listed.
  11. 11. IBM Domino 9.0.1 IBM Domino Social Edition IBM Connections Wizards IBM DB2 db2inst1 LDAP (Domino) HTTP (iNotes) Architecture BLOGS FILES DOGEAR MOBILE FORUM PEOPLEDB HOMEPAGE WIKIS TroubleTickets.nsf METRICS SNCOMM QM.nsf METRICS OPNACT IBM Sametime 9.0 Databases DB WebSphere AppServer Developer Mode WebSphere AppServer Playground.nsf Update Site / Plugins Firewalled / No Access OpenNTF Ext Library WebSphere AppServer 8.5.5 Connections Server Connections Mail SBTK Server OpenNTF Bazaar Sametime Proxy Server OpenNTF SBTSDK Single Cell Deployment Manager HTTPS/8601 IBM HTTP Server 8.5.5 HTTP HTTPS SSH 11 WebSphere Plugin 8.5.5 Server SSH Minimal Open Firewall Ports Zero Installs WebSphere AppServer 8.5.5 LDAP HTTP HTTPS SAMETIME Fully Integrated Single Cell LDAP Social Capabilities Not Designed For Sensitive or Personal Data
  12. 12. You can always find the details on the instance. §  Navigate to http://hostname §  Click Welcome / User Ids / About 12 Favorite IDs are and
  13. 13. START AND REQUEST 13
  14. 14. SoftLayer §  Customers in 140 Countries §  Over 100,000 devices §  13 Data Centers §  17 Points of Presence SoftLayer provides world-wide services with a standardized modular infrastructure; triple network architecture and powerful automation 14
  15. 15. Architecture •  Only infrastructure solution with a common management interface and API across a unified architecture •  Customers mix and match bare metal servers, virtual server instances and turnkey private clouds and manage them from a single control panel or API •  All deployed on-demand and provisioned automatically in realtime •  You control the servers. You get a basic level of support. 15
  16. 16. Sign Up §  Navigate to §  Request an Order for CloudLayer™ –  Customized Resource Needs –  Hourly and Monthly Pricing –  Rapid Access and Deployment 16
  17. 17. We are going to skip the account setup, and go right to the QuickStart image. 17 You pick the image. You decide where you want it to go… Virtual or Dedicated.
  18. 18. Option One: Control Panel 18
  19. 19. Option Two: Navigate to SoftLayer’s Management Portal We Select Option 2. Heads-up: There is no single sing on between control and manage. 19 Navigate to
  20. 20. Login §  Enter Username §  Enter Password §  Click Login 20
  21. 21. Chicken or Egg… Account Administrator or User §  Your account administrator should be sure to add you to the account and give you permissions to create instances and interact with your instances. §  Click Administrative > User Administration §  Select the User §  Add the Attributes –  CloudLayer Computing Instances –  Support / Sales –  Allow Access to All Instances 21 §  Click Edit User Profile
  22. 22. Navigate to CloudLayer™ > Computing Click CloudLayer™ > Computing CloudLayer™ is the hosted virtual machine environment 22
  23. 23. You See… and Navigate to Public Images Quick Actions Click Public Images Images already created 23 *WARNING* This process to request the image is different than today’s actual *WARNING*
  24. 24. Find the QuickStart •  •  •  •  24 Select Criteria > Template Name Select Method > Contain Enter Date > quickstart Click Search TIP: Searches are case-insensitive and much faster than browsing
  25. 25. Results and Read to Order •  Click Order •  Select hourly computing instance You can price each option out, before, completing an order. Consider Long Term vs Short Term needs. 25
  26. 26. The Image – Immediate Access to the Image §  Final Licensing Terms are being reviewed for the Image. §  You’ll need to send me your account to get Early Access. §  For Now… §  Click CloudLayer™ §  Click Computing §  Click Image Templates §  You’ll see the image. §  Click Order 26
  27. 27. Send a note with your SoftLayer Account # §  Click Administrative > User Administration §  Click on a User §  Identify the Account §  Send the Account # in a Mail Requesting to be added. §  The mail should be addressed to 27
  28. 28. Select a Data Center Click Show Data Centers Select the one closest to you and your customer WDC01 TIP: We make the image available in all datacenters 28
  29. 29. Wait… I have a doubt about Washington DC Data Center §  SoftLayer has speed tests for each data center. §  Navigate to datacenters/washington-dc §  Click on Speed Test §  TIP: You can also do your own test using the download files. 29
  30. 30. Activate the Data Center Test §  Click on your data center –  Washington DC is on the left-middle 30
  31. 31. Review the Test §  Review the Tests –  Look at the Transfer Rates –  This is to and from the Data Center §  Close the Dialog §  Modify the selection if you don’t like the results. 31
  32. 32. Configure Server Click Show Computing Instance Select the right number of CPUs TIP: 2 CPUs is Bare Bones 4 CPU and more is the Best 32
  33. 33. Configure Server §  Click Show Ram §  Click 8GB §  Requirement: You must have 8GB or More of Memory. Technically, you can lower it, if you increase your swapfile. 33
  34. 34. Select the Software §  Click Show Operating System §  Select Red Hat® Enterprise Linux® 6 – Minimal Install (64 bit) 34
  35. 35. Select Storage §  Click Show First Disk §  Select 100 GB (Local) 35 In some Data Centers, 100G SAN is the only option available. TIP: You must select at least 100G, the base software is 37G installed.
  36. 36. Scroll Down and Continue Your Order §  Navigate down the page §  Review Networking and Monitoring §  Click Continue with Your Order 36 TIP: the image you are ordering has ICMP/PING disabled. Each element has costs Look to the right for the added up costs
  37. 37. Add and Go to Checkout §  Click Add and Go to Checkout §  The order is verified… 37
  38. 38. Scroll Down and Review the Order §  Scroll Down and Review the Order 38
  39. 39. Enter a Hostname §  Enter hostname quickstartdemo1 §  Enter domain §  Scroll Down The domain should be your company’s domain, and you should add the name to your DNS server when you know the IP. You can also select a faux domain, just make sure it does not exist by using .internal 39
  40. 40. Finalize Your Order §  Select I Agree §  Click Finalize Your Order 40
  41. 41. You get notified…. §  You’ll get an email. §  You’ll get the receipt. §  Your instance is going to be up for configuration between 4 and 45 minutes. 41
  42. 42. Go Back to Your CloudLayer™ > Computing §  Click CloudLayer™ > Computing §  You’ll notice Transaction in Progress §  You’ll also see your IP. §  Grab this IP, and go register it in your demonstration Domain. 42
  43. 43. Register it for your domain Tip: You can configure SoftLayer to manage the DNS Name Servers for your domain or subdomain. Each Instance is automatically configured for the right domain name. §  Edit your zone file §  Add the servername (quickstart01) to the zone file §  Save the Zone File 43 Or
  44. 44. Wait a second…. Paul I don’t have access… what do I do. §  Every SoftLayer IP has a PTR record. nslookup ${IP} §  You can always add a hosts file entry to your Development System. Options §  You can use a temporary DNS forwarder / provider such as noip §  We can override this in the setup of the QuickStart 44 Action
  45. 45. Time Passes… Time Passes… The new instance is now ready to configure 45
  47. 47. Navigate to Management Portal §  Click on CloudLayer™ > Computing §  Of course, you may have to login again. 47
  48. 48. Find Your Machine §  Scroll down to find your machine ( §  On the row with the machine, click View 48
  49. 49. Grab the Information for your instance §  Write down your IP/ Username/ Password §  IP: §  User: root §  Password: XXXXX §  You can logout. 49
  50. 50. Launch a Terminal §  Click Launchpad §  Click on iTerm 2 §  The Terminal window is brought up. §  iTerm 2 is available at home §  PuTTY© is available at ~sgtatham/putty/download.html 50
  51. 51. Yes. You are going to use SSH. §  Type ssh root@ §  Type Yes §  Enter your password §  TIP: Please remember to put root@ this ensures you login with the right initial id. §  Type whoami if there is a doubt 51
  52. 52. Activate the Wizard §  First Step is to Activate the Wizard 52
  53. 53. Review the License and Accept it. §  Read and Page Down through the License §  Select I Accept (Control + C to Decline) §  You can always rerun it MUST RUN with SUPER USER PERMISSIONS 53
  54. 54. Enter the hostname §  Edit the hostname to be whatever you so desire. §  Tab to OK §  Click Enter §  TIP: You should have a minimum of SERVERNAME.DOMAIN §  EG You can always come back and change again. All properties are stored in /local/qsi/props/ 54
  55. 55. Check the Single Sign On Domain §  Edit as you need §  Tab to OK §  Click Enter §  The wizard actually strips out the host from the hostname. So you can then go ahead and edit to match your desired domain. 55 TIP: You can change this later. More restrictive is better to start. §  Examples are: – – –
  56. 56. Enter the User Password §  Enter a password. §  Tab to OK §  Click Enter *WARNING* the password is visible as you enter it. This password is for the 85 demonstration users 56 You can also manually change these in names.nsf and webadmin.nsf
  57. 57. Enter the Admin Password §  Enter the admin password §  Tab to OK §  Click Enter *WARNING* the password is visible as you enter it. This password is for the qsiadmin user 57 You can also change wasadmin password and deny access to the original notes admin user.
  58. 58. Confirm the Details for the QuickStart §  Review the Details §  Tab to Confirm §  Click Enter 58
  59. 59. Changing Hostname + Populating Users §  The QuickStart is now configuring the Server for the hostname and domain you gave. §  It’s populating 85 demo users. –  Notes User ID –  Notes Mail File –  Connections User –  Sametime User Takes 10-20 minutes to complete. Don’t Close the Terminal. 59 §  Log is /local/qsi/temp/ ibm_appdev.log
  60. 60. I am in Trouble…. My Connection was dropped §  Here is some quick advice. Everything done here is recoverable. §  Login as Root, and type shutdown –r nor §  Wait for it to come back up §  Run again §  Check /local/qsi/temp/ibm_appdev.log (it’ll tell where the wizard left off). 60
  61. 61. 10 to 20 Minutes later… You have a configured and running IBM Collaboration QuickStart for Social Business. 61
  62. 62. Open a New Terminal Tab and Login Again §  Click Shell > New Tab §  Type ssh userid@hostname §  Enter Password 62
  63. 63. Start using a non-ROOT user §  Type passwd sbtuser §  Enter your new password §  Retype the password *You can double check the password works as expected via a new SSH session to the QuickStart* 63
  64. 64. Login More Securely §  Enter §  Disables root from logging into the image, sbtuser is now only able to login §  Does not destroy any active sessions. §  Use sbtuser from then on 64
  65. 65. Manage the Server 65
  66. 66. Manage the QuickStart Instance §  You control the QuickStart §  Switch back to the iTerm Window §  Type httpStatus §  Type httpStatus restart §  All the calls are wrapped so the calls to control the services are as a privileged user. §  Typing the command without any parameters shows the help. 66
  67. 67. The Various Scripts Service Script What it Does conxStatus Controls IBM Connections dbStatus Controls IBM DB2® domStatus Controls IBM Domino® httpStatus Controls IBM Http Server pxStatus Controls IBM Sametime® Proxy Server sbtStatus Controls IBM Social Business Toolkit Server qsiStatus Controls all of the Services *Useful after a reboot or power outage 67 Common parameters: stop start help Some have kill, log, restart. These services do not automatically start on power on.
  68. 68. Some Key Linux Commands §  Some commands require elevated privelege, to Get Root Access –  sudo –s §  To Restart –  sudo shutdown –r now §  To check performance –  top §  To check disk space –  df –h §  To find the largest files –  /local/qsi/sys/debug/ 68
  69. 69. Configure for the Demo Applications and Development DVD Rental Application Movie 1 Movie 2 Movie 3 Movie 4 69
  70. 70. Enable 3rd Party Access via OAuth ■  ■  ■  l  l  70 Open Authorization, commonly referred to as OAuth, is an open standard for authorization. OAuth is: ─  Token-based ─  Given to 3rd Parties ─  Set with a Duration A user, or company, grants a third part access to stored information without having to use or know a usernamepassword pair. Authorize https://demo.sdkdemo:444/oauth2/endpoint/connectionsProvider/authorize Token
  71. 71. Gather Details and Decide your App Details §  Login via SSH –  ssh sbtuser@SERVERNAME §  sudo /local/qsi/conx/util/ create myapp myapp http://localhost:8080/fiveStar/oauth_cb ~/sbtkey §  You just called a process to register your application for an OAuth Key. 71
  72. 72. Oh…. Sugar… I think I made a mistake…. §  Let’s check the OAuth Keys §  Type sudo /local/qsi/conx/util/ list §  Yep… There it is… I wanted https:// 72 §  Use a JS formatter to get a nice look and feel
  73. 73. Edit the Key §  To Edit the Key… §  sudo /local/qsi/conx/util/ editmyapp myapp https://localhost:8443/fiveStar/oauth_cb ~/ sbtkey 73
  74. 74. Display the OAuth Key §  Type cat sbtkey §  Select the Text (the last line) §  Right Click Copy §  Copy to TextApp §  In production, this key is considered sensitive data. §  We are going to use this key in our application development. Save it for easy access. 74
  76. 76. Scenario §  Shoot… Frank’s badge doesn’t work. It’s time to open a trouble ticket. §  Lucille comes to the Rescue. §  Lucille sees the Ticket in her mail and her activity stream. §  Lucille helps Frank in record time. 76
  77. 77. Switch to a Browser Window §  Open Firefox §  Navigate to http://<hostname>>/ §  Click on Profiles §  OpenNTF Trouble Tickets is a sample application with developer code include to demonstrate Social capabilities and integration between IBM Domino®, XPages, and IBM Connections. Access to OpenNTF’s TroubleTickets App 77 TIP: Use Private Browsing to get clean starts.
  78. 78. First.. We want to use create a network connections §  Click Login 78
  79. 79. Login §  Enter User Name – lsuarez §  Enter Password §  Click Login 79
  80. 80. Find Frank §  Locate the Search Box §  Enter Frank Adams §  Click on Frank Adams Name 80
  81. 81. Invite to My Network §  Click Invite to my Network 81
  82. 82. Click Send Invitation §  Click Send Invitation 82
  83. 83. Log Out §  Click the Carat Next to Lucille’s Name 83 §  Click Signout
  84. 84. Login with Frank §  Click Login §  Enter Username – fadams §  Enter Password §  Click Login 84
  85. 85. Click My Profile §  Click on My Profile 85
  86. 86. Click 1 New Invitation §  Click 1 New Invitation 86
  87. 87. Accept Network Connection §  Click Accept §  Click Frank’s Name §  Sign Out 87
  88. 88. Navigate back to Trouble Tickets §  Navigate back to http://HOSTNAME/ §  Click on Trouble Tickets §  Our previous steps allow us to take advantage of the social network connections in resolving our Trouble Tickets. 88
  89. 89. Login to Trouble Tickets §  Enter username – fadams §  Enter password - ********* §  Click Login §  TIP: This login form comes from IBM iNotes and is not the default login. You might see something different if you put it on your own IBM Domino® Server. 89 §  If no prompt to login, recommend hitting iwaredir.nsf, before TroubleTickets.nsf.
  90. 90. Trouble Tickets Trouble Tickets is a demonstration workflow, as you can see it has some very standard features. Let’s see what it does with regards to Social Features. Click New Ticket 90
  91. 91. Enter a Ticket §  Enter Summary §  Select Category –  Badges §  Click Priority –  High §  Enter Details §  Click Save 91
  92. 92. Submit the Ticket §  Click Submit §  Click OK 92
  93. 93. You get confirmation §  You see the confirmation §  It’s submitted an email to Frank and Lucille who are responsible for Badges. 93
  94. 94. Click to Assign §  Click Assign §  Click Drop Down §  Select 94 §  Click Assign
  95. 95. Launch into IBM Connections §  Navigate to http:// <hostname>/ §  Click on Homepage §  Homepage is the starting point for IBM Connections and of the activity stream. 95
  96. 96. WAIT Mozilla Firefox says its Insecure. §  Expand I Understand the Risks §  There are 3 ports that you’ll get this warning on: –  8601 –  444 –  443 §  These are all selfsigned certificates. 96
  97. 97. Click Add Exception §  Click Add Exception 97
  98. 98. Add the Certificate to the Browser Trust Store §  Click Get Certificate §  Click Confirm Security Exception §  You don’t need to permanently store this security exception, it’s just handy. §  Similar warnings appear in Google Chrome™ and Apple Safari®. 98
  99. 99. Log out as Frank… we want the Lucille Homepage §  Heads up, we’re using a Single Sign On Experience via LTPA. §  Click the the Carat 99 §  Click Logout
  100. 100. Login as Lucille §  Enter lsuarez §  Enter password - ******* §  Click Login 100
  101. 101. Open the Mail in IBM Connections Mail §  Click on Mail §  Find the Ticket Note 101 §  Click on the Note
  102. 102. Interact with the Embedded Experience in IBM Connections Mail §  Interact with the Trouble Ticket’s Embedded Experience §  Click Close 102
  103. 103. View Your Pending Actions §  Click Action Required §  Click on the Trouble Tickets Entry 103
  104. 104. Interact with the Embedded Experience §  Interact with the Embedded Experience §  Click Resolve §  Workflow Complete 104
  105. 105. You may notice in the lower right… You could have send an instant message. Click on Instant Messaging Icon TIP: You may need to disable popup blocking. 105
  106. 106. Start and Close a Conversation §  Click on the User ID §  Open a Conversation §  Click Close §  Click Close Again 106
  107. 107. If we have a doubt… We check the Log file §  For IBM Connections, type –  conxStatus log §  For IBM Domino, type –  tail –f /var/log/domino §  For IBM Sametime, type –  pxStatus log 107 §  Control + C Closes the Log
  108. 108. There is a near full set of IBM Collaboration Solutions applications on the instance §  You can use: –  IBM Sametime® –  IBM Connections –  IBM Domino® –  IBM Domino® Social Edition –  XPages §  You can use all of the APIs to develop your application. §  Let’s explore how we can do that. 108
  110. 110. IBM Social Business Toolkit SDK Playground §  The IBM Social Business Toolkit SDK Playground is a web-based live demonstration of the JavaScript and Java APIs that are exposed by the SDK. The Playground contains a large set of code snippets and examples that you can customize and use in your own applications. §  In the latest builds of the IBM Social Business Toolkit SDK Playground also offers an API Explorer. §  The latest builds are hosted on IBM Greenhouse. 110
  111. 111. Explore APIs and Code Snippets §  Navigate to the http://<hostname>/ §  Click Playground 111
  112. 112. Switch to HTTPS §  Click Here to Switch to HTTPS §  Tip: If prompted to review a Security Exception, do what we did for the prior SSL certificate. 112
  113. 113. Check the JavaScript Snippets Tabs §  Click JavaScript Snippets Tab 113
  114. 114. Navigate the Tree for a Sample §  Click Endpoint §  Select On Premises §  Expand Social 114
  115. 115. Find the Right Sample §  Expand Communities §  Scroll down for API §  Expand API §  Click on CreateCommunity 115
  116. 116. Edit, Run and Login §  Edit the Title and Content so it adds the word “My” §  Click Run §  Enter Fadams 116 §  Enter password
  117. 117. Create a Community §  Review the Response 117
  118. 118. Continually Edit the Code Inline --- HTML/CSS/JS §  You can edit the JavaScript, HTML, CSS, and custom properties of the code snippet. §  Look at the HTML Code §  Enter a new line of HTML in the HTML Area §  You can save any changes as a new snippet. 118
  119. 119. Run and View… Also Known as Play. §  Click Run §  Review the Changes §  We can reuse any of these snippets later. 119
  120. 120. Look for Profiles Features §  Click Social > Profiles > Controls §  Click My Profile Panel §  Edit the email 120 §  Another reusable component we can take advantage of in the development of any Application.
  121. 121. There are extensive components in the Playground §  The Playground samples shows API requests and Reusable Controls §  There are 100s of samples. §  We are continuing to add more API Coverage and Samples. 121 §  Note this build demonstrated is 11 29 2013’s deliverable.
  123. 123. The IBM Social Business Toolkit SDK §  The IBM Social Business Toolkit SDK enables developers to: –  Leverage IBM Collaboration Solutions –  Reduce Boiler Plate Code –  Rapidly Develop with Java®, JavaScript, PHP, iOS® –  More Easily Extend Apps with Seamless Experiences –  Lots of Samples –  Latest Design Patterns (eg promises) §  Please refer to for more Application Development sessions. 123
  124. 124. Use the IBM Social Business Toolkit SDK §  Navigate to IBM Social Business Toolkit SDK Page on 124 §  Click on Downloads/Releases Code is on GitHub
  125. 125. Download the Latest Builds §  Click on the Latest Release §  Click on the Downloads Link §  Select Save to File §  Click OK 125
  126. 126. Open the Folder §  Click Download §  Right Click sbtsdk-<BUILDNUMBER>.zip §  Click Show in Finder 126
  127. 127. Extract the SDK §  Right Click on the ZIP §  Click Open With §  Click Archive –  Use Your Favorite ZIP Utility §  TIP: I like to have a folder to store my development utilities. ~/Desktop/Dev 127 *I have already extracted this build into /Dev
  128. 128. Open ./SBTSDK and setup Tomcat §  Double Click on Tomcat to Extract §  You see … 128
  129. 129. Launch Your Favorite Development Environment §  Navigate to ~/Desktop/Dev/ eclipse §  Double Click on Eclipse® §  Enter Workspace ~/Desktop/ Dev/workspace §  You can use the latest Eclipse §  I previously installed Eclipse and Apple®’s Java® Runtime. 129
  130. 130. Switch to the Workbench §  Switch to Workbench 130
  131. 131. Click on Servers §  Click on Servers Tab §  Click on the Link to Create New Server 131
  132. 132. Define a Server §  Expand Apache §  Select Tomcat v7.0 Server §  Click Next 132
  133. 133. Locate the Tomcat §  Click Browse §  Navigate to ~/Dev/sbtsdk/tomcat/apchetomcat-7.0.30 §  Click Open §  Click Finish 133
  134. 134. Point to Tomcat’s Workspace §  Double Click On Server §  Find Server Locations §  Click “Use Tomcat Installation” §  Click File > Save 134
  135. 135. Change the Trust Store Password §  Expand Servers > Tomcat <VERSION> §  Double Click on server.xml §  Find keystorePass 135 §  Change passw0rd to WebAS
  136. 136. Prepare the Application §  Click Launchpad §  Click Filezilla §  Click File > Site Manager §  You can download Filezilla from their website. 136
  137. 137. Create a New Site §  Click New Site §  Enter QSI §  Enter Hostname – §  Select Protocol –  SFTP 137
  138. 138. Connect §  Select Logon Type –  Normal §  Enter username –  sbtuser (or root) §  Enter password –  Passw0rd or whatever you set. §  Click Connect §  It’s now saved for future use. 138
  139. 139. Accept the Server’s Host Key §  Click Always Trust this Host §  Click OK 139
  140. 140. Download the Most Current KeyStore §  Open Filezilla §  Open Site Manager > QSI §  On Right, Navigate to / local/qsi/temp/ §  On Left, Navigate to ~/ Desktop/Dev/sbtsdk/ tomcat/~version~/conf §  Download keystore-new 140
  141. 141. Edit the Name in Finder §  Click Finder §  Navigate to ~/Desktop/ Dev/sbtsdk/tomcat/ ~version~/conf §  Double Click keystore §  Rename to keystore-old §  Double Click keystorenew §  Rename to keystore 141
  142. 142. Edit §  Switch Back to Finder §  Double Click on §  Find §  Click Open 142
  143. 143. Edit the Configuration File §  Edit the connectionsOA2.url and connections.url to match our new hostname §  Edit connectionsOA2.con sumerSecret to match our secret §  Edit appId and consumerKey to be myApp §  Click File > Save 143
  144. 144. Find Domino §  CTRL + F §  Find domino.url §  Enter §  Click File > Save Ready to Rock and Roll with Tomcat 144
  146. 146. A Simple Application… And it’s now Social §  Time to demonstrate how to develop with the IBM Social Business Toolkit SDK and the IBM Collaboration QuickStart for Social Business. DVD Rentals §  Five Start is an application which has DVDs and Rental Receipts. –  IBM Domino Databases (NSFs) used as a JSON repository –  Java Server Pages (JSPs) §  Simple Customer System where you can order and checkout. §  We are going to build a community around the user data. 146 IBM Domino is a great NoSQL solution
  147. 147. Navigate to the Database and Upload §  In the Left Panel, Navigate to Users > USERNAME > Desktop > Dev §  On the Right Panel, Navigate to local > nd > notesdata §  Drag the Database to the Queue §  Right Click > Process Queue 147
  148. 148. Click on Success and Exit §  Click Success Transfer (or Failed Transfer if you don’t see your upload) §  Click FileZilla > Exit §  You can also use this method to upload Features and Plugins to /local/nd/ notesdata/domino/workspace/ 148
  149. 149. OK… Database is there… now Sign and Permit §  Click iTerm §  Type ssh sbtuser@<HOSTNAME> §  Enter password 149
  150. 150. Time to use SUDO §  Sudo allows users with permissions to act as root for certain functions. sbtuser has 100% sudo privileges. §  Type sudo -s –  Gets ROOT shell §  Type chown notes:notes /local/nd/notesdata/DVDSample.nsf –  Changes file permissions to notes (*the service user for Domino) §  You can use this to deploy any database to the QuickStart. 150
  151. 151. Sign the Database §  Type su – notes §  Run the sign command /local/qsi/ dom/util/databases/ ${DATABASE} §  Review the Log §  Type Exit 151
  152. 152. Show Receipt §  Click Firefox §  Open a New Tab §  Enter §  Click on Receipt 152
  153. 153. Reveal the JSON Data §  You see the old school view. §  Let’s see it as JSON §  Find the ? in the URL §  Append after ? ReadViewEntries&OutputFormat =JSON §  Navigate to the new URL DVDSample.nsf/ a194d867bb19023c85257c6600 0c4034? ReadViewEntries&OutputFormat =JSON 153
  154. 154. TIP: You can enable Domino Data Services for Any View §  You can right-click on Any View §  Click on Properties §  Click on the 5th Tab §  Click Allow Domino Data Service Operations §  Click File > Save §  A fine reference is 154
  155. 155. DVD Rentals We’re ready to develop our DVD integration 155
  156. 156. Start a New Project §  Click File > New > Dynamic Web Project 156
  157. 157. Give it a name §  Enter Five Star §  Click Next §  … §  Click Next §  … §  Select Generate web.xml §  Click Finish 157
  158. 158. Project Properties §  Right Click fiveStar §  Click Properties §  Click On Deployment Assembly 158
  159. 159. Add an Assembly §  Click Add §  Select Archives from File System §  Click Next 159
  160. 160. Add… Find… Add §  Click Add §  Navigate to ~/ Desktop/Dev/sbtsdk/ sources/ sbt.sample.web/lib §  Select All the JARs §  Click Open 160
  161. 161. Confirm the Project Setup §  Click Finish §  Click OK 161
  162. 162. Add to web.xml and manage-beans.xml §  Navigate to ~/Dev/sbtsdk/ sources/ src/main/webapp §  Copy web.xml and managedbeans.xml §  Switch Back to Eclipse §  Paste into WEB-INF 162
  163. 163. Grab the Domino Bean §  Click Launchpad §  Click TextEdit §  Click File > Open §  Navigate to ~/Dev/ DominoBean.rtf §  Select All §  Edit > Copy §  Switch Back to Eclipse §  Note, here I have selected an AnonymousEndpoint. 163 §  You have many choices. DominoBasicEndpoint DominoSSOEndpoint
  164. 164. Add to the Managed Beans §  Double Click on managed-beans.xml §  Find the last managed-bean §  Click Edit > Paste 164
  165. 165. Go to the Top and Add the Endpoint to the List §  Find Endpoints §  Enter Value - ,domino §  Click File > Save 165
  166. 166. Create the Default Java Server Page §  Right Click File > New > JSP File §  We can use the SDK’s Java Code or JS Code. 166
  167. 167. Enter the File Name and Finish §  Enter movies.jsp §  Click Finish 167
  168. 168. Setup the SCRIPT Tags for the Page §  Open movies.jsp §  Enter <script type="text/javascript" src="/sbt.dojo180/dojo/dojo.js" djConfig="parseOnLoad: true"></script> <script type="text/javascript" src=”/fivestart/library?lib=dojo&ver=1.8.0"></script> §  Click File > Save 168
  169. 169. Enter the Domino JS Code §  Click TextEdit §  Click File > Open §  Open ~/Dev/ JSForDominoUsers.rtf §  Copy the Text §  Switch to Eclipse §  Paste in the Body §  Click File > Save 169
  170. 170. Enter the Subsequent Function §  Chaining promises is a technique which is often used. One function completes, and the next one is triggered. §  Find require syntax §  Append sbt/connections/CommunityService §  Add object CommunityService 170
  171. 171. Rewrite promise.then §  Find promise.then §  Delete the contents 171
  172. 172. Update the Promise with a new Call §  Open Finder §  Open ~/Dev/Promise.rtf §  Copy the contents §  Paste in the then definition 172
  173. 173. Run it §  Click Run §  Click Finish 173
  174. 174. Copy the URL §  Copy the URL §  Paste the URL §  Click Firebug §  Refresh the Page 174
  175. 175. Login §  Enter User Name –  Fadams §  Enter Password §  Click OK 175
  176. 176. Validate §  Navigate to http://domainname §  Click Communities 176
  177. 177. Check the Community §  Click on Test Community 177
  178. 178. Validate §  There are our four people in the community. Simple and formulated around 178 §  The social data
  179. 179. How to switch to OAuth2 §  Navigate back to Eclipse §  Find var communityService = new CommunityService(); §  Insert connectionsOA2 179
  180. 180. Java: Mashup of Domino Data and Social Data using the SDK The Mashup is created with the IBM Social Business Toolkit SDK. –  IBM Connections using Social –  IBM Domino using JSON Data 180
  181. 181. IBM SmartCloud for Social Business §  You can open the managed-beans.xml §  Change the Endpoint to SmartCloudBasicEndpoint with the right URL. §  Also, you can create a new OAuth Key, and insert it in place. §  Reuse existing managed-bean from sbt.samples.web 181
  182. 182. SUMMARY 182
  183. 183. Summary •  You learned how to: •  To request an instance of the IBM Collaboration Quickstart for Social Business on SoftLayer. •  To connect, customize and prepare the IBM Collaboration Quickstart for Social Business for your development and demonstration needs. •  To explore Social Business scenarios with the OpenNTF Trouble Tickets application •  To explore the Social Capabilities with the IBM Social Business Toolkit Playground •  To setup your development environment with the IBM Social Business Toolkit SDK •  To use the IBM Collaboration Quickstart to extend any application. 183
  184. 184. Questions and Answers 184
  185. 185. RESOURCES 185
  186. 186. Title Link IBM Social Business Developer Page IBM Social Business Toolkit SDK StackOverflow: ibmsbt ibmsbt IBM Social Business Application Development Wiki IBM Social Business Toolkit Playground SBTPlayground.nsf 186
  187. 187. Engage Online §  SocialBiz User Group –  Join the epicenter of Notes and Collaboration user groups §  Follow us on Twitter –  @IBMConnect and @IBMSocialBiz §  LinkedIn –  Participate in the IBM Social Business group on LinkedIn: §  Facebook –  Like IBM Social Business on Facebook §  Social Business Insights blog –  Read and engage with our bloggers 187
  188. 188. Paul Bastide is in Meet the Developers all week long. Meet the Developers 188
  189. 189. §  Access Connect Online to complete your session surveys using any: –  Web or mobile browser –  Connect Online kiosk onsite 189
  190. 190. Acknowledgements and Disclaimers 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. © 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 Collaboration Solutions and IBM DB2, IBM WebSphere Application Server, IBM Connections, IBM Sametime, IBM Domino, IBM Sametime Communicate 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 Java is a Trademark of Oracle. Google Chrome is a Registered Trademark of Google Inc. Apple Safari is a registered trademark of Apple Inc. Other company, product, or service names may be trademarks or service marks of others. 190