Service SDK Developer's Guide For
Total Page:16
File Type:pdf, Size:1020Kb
Service SDK Developer’s Guide for iOS Version 2.0.2 @salesforcedocs Last updated: December 21, 2016 © Copyright 2000–2016 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of salesforce.com, inc., as are other names and marks. Other marks appearing herein may be trademarks of their respective owners. CONTENTS Service SDK Developer’s Guide for iOS . 1 Release Notes . 2 Service Cloud Setup . 6 SDK Setup . 27 Quick Start Tutorials . 33 Using Knowledge . 51 Using Case Management . 71 Using Live Agent Chat . 93 Using SOS . 103 SDK Customizations . 131 Troubleshooting . 153 Reference Documentation . 160 Additional Resources . 298 Index . 299 SERVICE SDK DEVELOPER’S GUIDE FOR IOS The Service SDK for mobile devices makes it easy to give customers access to powerful Service Cloud features right from within your native mobile app. You can make these Service Cloud elements feel organic to your app and have things up and running quickly. This developer’s guide helps you get started with the Service SDK. SDK Version 2.0.2. This documentation describes the following component versions, which are packaged together in this version of the SDK: Component Version Number Knowledge 2.0.0 Case Management 1.2.0 Live Agent Chat 1.1.1 SOS 3.2.2 ServiceCore (common component used by all features) 1.2.0 Release Notes Check out the new features and known issues for the iOS Service SDK. Service Cloud Setup Set up Service Cloud in your org before using the SDK. SDK Setup Set up the SDK to start using Service Cloud features in your mobile app. Quick Start Tutorials Get going quickly with these short introductory tutorials. Using Knowledge Adding the Knowledge experience to your app. Using Case Management Adding the Case Management experience to your app. Using Live Agent Chat Adding the Live Agent Chat experience to your app. Using SOS Adding the SOS experience to your app. SDK Customizations Once you’ve played around with some of the SDK features, use this section to learn how to customize the Service SDK user interface so that it fits the look and feel of your app. This section also contains guidance on remote notifications and instructions for localizing strings in all supported languages. Troubleshooting Get some guidance when you run into issues. 1 Service SDK Developer’s Guide for iOS Release Notes Reference Documentation Reference documentation for the Service SDK. Additional Resources If you’re looking for other resources, check out this list of links to related documentation. Release Notes Check out the new features and known issues for the iOS Service SDK. Version 2.0.2 (12/15/2016) Fixes: • SOS: Fixed an issue where leaving a secure text field doesn't resume screen sharing. Version 2.0.1 (12/2/2016) New Features: • SOS: Updated to version 2.9.2 of OpenTok. • SOS: Added logging for Quality of Service (QOS) information from OpenTok on audio and video streams to Splunk. Fixes: • SOS: Fixed an issue where the 'Screen Sharing Disabled' notification was not disappearing when screen sharing is turned back on and the user mic is muted. • SOS: Upgraded all OpenTok errors to be uniform with Widget and Android. • Live Agent Chat: Fixed the issue where the UI wouldn't appear when launching a session in non-blocking mode without any pre-chat fields. • Live Agent Chat: Fixed the issue where availability checks caused the SDK to crash. Version 2.0.0 (11/10/2016) New Features: • Knowledge: Users can view specific knowledge bases associated with their user profile using authenticated users. To learn more, see Knowledge as an Authenticated User. • Knowledge: You can display specific articles using SCSArticleViewController. To learn more, see Customize the Presentation for Knowledge. • Case Management: You can deflect case creation by pointing users to related knowledge base articles. To learn more, see Configure Case Deflection. • Case Management: Message bubbles support tappable hyperlinks. Text can be copied with a long press. • Live Agent Chat: You can check for agent availability before attempting to start a session. To learn more, see Check Live Agent Availability. • Live Agent Chat: You can use a dropdown list as a pre-chat field using SCSPrechatPickerObject. To learn more, see Configure a Live Agent Chat Session. • Live Agent Chat: Message bubbles support tappable hyperlinks. Text can be copied with a long press. 2 Service SDK Developer’s Guide for iOS Release Notes • SOS: Image branding now supported. To learn more, see Customize Images. • SOS: You can programmatically enable and disable screen sharing. To learn more, see Enable and Disable Screen Sharing. • SOS: Updated to OpenTok version 2.9.1. • SOS: SOS now supports elegant reconnects when there are network issues. • SOS: UI displays when the session is disabled. • SOS: Added a value to the SOSOptions object that allows users to specify a starting location for the agent stream (initialAgentStreamPosition). • SOS: Added the VoiceOver accessibility feature to SOS. API Changes: • Knowledge: SCSArticleViewController added to display specific articles. • Knowledge: SCSMutableArticleQuery added for use when creating a query. • Knowledge: SCSArticleQuery is immutable. • Case Management: SCSCasePublisherViewControllerDelegate now supports methods for case deflection. • Live Agent Chat: SCSPrechatPickerObject and SCSPrechatPickerOption added for use with a pre-chat field. • SOS: SOSScreenSharing added for enabling and disabling screen sharing. A screenSharing property has also been added to SOSSessionManager. • SOS: SOSOptions added initialAgentStreamPosition property to set the default position of the agent stream. • SOS: SOSUIAgentStreamReceivable can tell you when the recording view has changed. Fixes: • Knowledge: Fixed the issue where minimized article view does not appear after Case Publisher is closed. • Case Management: Fixed an issue where tapping on a case list item could crash the app. • Case Management: Fixed an issue where the case detail view crashed when loading content. • Live Agent Chat: Fixed the issue where the user end session alert would not be dismissed when an agent ends a session while the alert is visible. • Live Agent Chat: Fixed the issue where Chat occasionally forced status bar style change. • Live Agent Chat: Fixed the issue where starting another session mid-session was destructive to ongoing session. • SOS: Fixed an issue where agent availability was not setting the state to unknown when a error occurred. • SOS: Fixed an issue where the mute icon is not shown in the camera view after the flashlight icon is shown. • SOS: Fixed an issue where the SDK ends a session when the widget temporarily disconnects. • SOS: Fixed an issue where the agentName background view is wrong when loading the UI. • SOS: Fixed an issue where the recordingView was not displaying properly or working with branding. Known Issues: • When you customize the appearance using a new instance of SCAppearanceConfiguration and assign it to the SCServiceCloud.appearanceConfiguration property, the view controller becomes invisible if it's pushed (rather than presented modally). Workaround: You can avoid this problem by using the existing instance of SCServiceCloud.appearanceConfiguration instead of instantiating a new one. • Although some accessibility features have been added to this version, the SDK does not yet support VoiceOver for Knowledge, Case Management, or Live Agent Chat. • If you archive a framework and then export the archive using the Xcode command line tool (xcodebuild), you’ll get “Invalid Code Signing Entitlements” errors when you try to upload your app to the app store. This is a known issue with Apple’s tools. Workaround: Archive and export using Xcode’s user interface. 3 Service SDK Developer’s Guide for iOS Release Notes • An issue with Xcode 8 when using the iOS 10 simulator results in a build error about "adding a keychain item". This error has been filed with Apple as radar #27422249. Workaround: Turn on Keychain Sharing in your build target's Capabilities. • Knowledge: Images uploaded with CKEditor don't work for authenticated users when specifying a non-community URL for your Knowledge configuration. In that situation, images will not appear. Workaround: Use web links to inline images hosted elsewhere. • Knowledge: When the same article is in multiple categories, the Show More button may not work properly. Workaround: Don't assign multiple categories to one article. • Case Management: Case Publisher view fails to open in app when you add a Blank Space to the Case Action layout. Workaround: Remove Blank Space from the Case Action layout. • Case Management: If you display the case detail view controller (SCSCaseDetailViewController) without assigning a case ID, the view will be a blank, black window. Workaround: Be sure to initialize the case detail view controller with the case ID using initWithCaseId:. • Case Management: Read-only fields in Case Action layouts display as editable fields when creating a new case using the SDK’s Case Publisher. Workaround: Ensure that there are no read-only fields in the Case Action layout you use to create cases with the SDK. • Live Agent Chat: The UI for a chat session doesn't appear when launching chat in non-blocking mode without any pre-chat fields. Workaround: Add pre-chat fields, or start session in full-screen mode. See Configure a Live Agent Chat Session for more information. • SOS: The size of the agent placeholder icon (named “avatar”) must be exactly 61x55 pixels (@1x), 122x110 (@2x), 183x165 (@3x). If you attempt to use a different resolution, the agent stream view will not be centered. Version 1.2.0 (9/15/2016) New Features: • Case Management: Added the ability to customize the Case Publisher submission success view. To learn more, see Customize the Case Publisher Result View. API Changes: • Case Management: SCSCasePublisherViewControllerDelegate updated with a new delegate method to support the new Case Publisher submission success view. To learn more, see Customize the Case Publisher Result View.