Skip to content

Commit

Permalink
Release 10.3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
intercom-ios-release-robot committed Sep 22, 2021
1 parent 15d76b5 commit 248db98
Show file tree
Hide file tree
Showing 57 changed files with 1,366 additions and 63 deletions.
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,20 @@
## 10.3.0
###### Release Date: 22-09-2021

Reduce customer inquiries for your team and provide faster resolutions for your customers – without sacrificing a great experience. We’ve redesigned our Messenger with an integrated help center experience that increases customer engagement by up to 3x to help you deliver the best self-serve support.

### 🚀 Enhancements
* A new article search card on your Messenger’s home screen.
* There are now two conversation cards, just as with our web Messenger; one for existing and one for new conversations. This gives more emphasis to existing conversations, reducing the chance of duplicates being created.
* Optionally require specific customers to attempt to self-serve to answer their question before they can reach out to a teammate.
* Place the article search card at the top of the Messenger home screen to give your self-serve content more prominence.
* Uncover insights and opportunities to optimize your self-serve support by using our updated Articles reporting.
* A number of improvements for accessibility features in the Messenger, with more coming in future updates.
* If you’ve set a custom icon for the Intercom launcher, that icon will now be used in your app as well.
* Support for iOS 15 is also included in this release.

![IMG_3473](https://user-images.githubusercontent.com/31664218/134324507-1b239870-4923-4b63-b3f3-58952e62d0da.PNG)

## 10.2.0
###### Release Date: 20-09-2021

Expand Down
2 changes: 1 addition & 1 deletion Intercom.podspec
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Pod::Spec.new do |s|
s.name = 'Intercom'
s.version = '10.2.0'
s.version = '10.3.0'
s.summary = 'The Intercom iOS SDK, for integrating Intercom into your iOS application.'
s.license = { :type => "Apache 2.0", :file => "LICENSE" }
s.authors = {"Brian Boyle"=>"brian.boyle@intercom.io", "Mike McNamara"=>"mike.mcnamara@intercom.io", "Katherine Brennan"=>"katherine.brennan@intercom.io", "Himanshi Goyal"=>"himanshi.goyal@intercom.io"}
Expand Down
Binary file not shown.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@ import os
@objc @_Concurrency.MainActor(unsafe) weak public var startConversationDelegate: HelpCenterStartConversationViewDelegate?
@objc deinit
}
@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class StartConversationCard : ConversationCard {
@_Concurrency.MainActor(unsafe) @objc override public init(cardInfo: ConversationCardInfoProtocol, delegate: ConversationCardDelegate)
@objc deinit
}
@_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class AvailableTeammatesView : UIKit.UIStackView {
@objc deinit
}
Expand All @@ -26,6 +30,11 @@ import os
@objc @_Concurrency.MainActor(unsafe) public func heightForCard(width: CoreGraphics.CGFloat) -> CoreGraphics.CGFloat
@objc deinit
}
@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class InboxCell : UIKit.UITableViewCell {
@objc @_Concurrency.MainActor(unsafe) public func configure(name: Swift.String, sentTime: Swift.String, summary: Swift.String, adminsToShow: [Intercom_Private.ICMParticipant], unread: Swift.Bool, showDividerLine: Swift.Bool)
@_Concurrency.MainActor(unsafe) @objc override dynamic public func traitCollectionDidChange(_ previousTraitCollection: UIKit.UITraitCollection?)
@objc deinit
}
@_inheritsConvenienceInitializers @objc @_Concurrency.MainActor(unsafe) public class TouchTransparentCollectionView : UIKit.UICollectionView {
@_Concurrency.MainActor(unsafe) @objc override dynamic public func point(inside point: CoreGraphics.CGPoint, with event: UIKit.UIEvent?) -> Swift.Bool
@_Concurrency.MainActor(unsafe) @objc override dynamic public init(frame: CoreGraphics.CGRect, collectionViewLayout layout: UIKit.UICollectionViewLayout)
Expand Down Expand Up @@ -81,6 +90,52 @@ extension Intercom {
public class func fetchHelpCenterCollection(_ collectionId: Swift.String, completion: @escaping (Swift.Result<HelpCenterCollectionContent, ICMHelpCenterDataError>) -> Swift.Void)
public class func searchHelpCenter(_ searchTerm: Swift.String, completion: @escaping (Swift.Result<[HelpCenterArticleSearchResult], ICMHelpCenterDataError>) -> Swift.Void)
}
@objc public protocol ConversationCardInfoProtocol {
@objc var prominantStyling: Swift.Bool { get }
@objc var accessToTeammateEnabled: Swift.Bool { get }
@objc var hasRecentConversations: Swift.Bool { get }
@objc var hasOtherConversations: Swift.Bool { get }
@objc var startConversationCardDisplayed: Swift.Bool { get }
}
@objc public class ConversationCardInfo : ObjectiveC.NSObject, ConversationCardInfoProtocol {
@objc final public let prominantStyling: Swift.Bool
@objc public var startConversationCardDisplayed: Swift.Bool
@objc public var accessToTeammateEnabled: Swift.Bool {
@objc get
}
@objc public var hasRecentConversations: Swift.Bool {
@objc get
}
@objc public var hasOtherConversations: Swift.Bool {
@objc get
}
@objc public init(prominantStyling: Swift.Bool = false, config: Intercom_Private.ICMConfigProtocol = ICMConfig.shared(), dataManager: Intercom_Private.ICMDataManagerProtocol = ICMDataManager.shared())
@objc deinit
}
@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class ConversationHistoryCard : ConversationCard, Intercom_Private.ICMRecentConversationsViewControllerDelegate {
@objc @_Concurrency.MainActor(unsafe) public var recentConversationsVC: Intercom_Private.ICMRecentConversationsViewController
@_Concurrency.MainActor(unsafe) @objc public func reloadConversationHistoryCard()
@_Concurrency.MainActor(unsafe) @objc public func navigate(toViewController viewController: UIKit.UIViewController)
@_Concurrency.MainActor(unsafe) @objc override public init(cardInfo: ConversationCardInfoProtocol, delegate: ConversationCardDelegate)
@objc deinit
}
@objc public protocol ConversationCardDelegate {
@objc func startNewConversation()
@objc func viewPreviousConversations()
@objc func reloadConversationHistoryCard()
@objc func navigateToViewController(_ viewController: UIKit.UIViewController)
}
@_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class ConversationCard : UIKit.UIView {
@objc @_Concurrency.MainActor(unsafe) public static var maxRecentConversationsCount: Swift.Int
@objc @_Concurrency.MainActor(unsafe) public static var viewPadding: CoreGraphics.CGFloat
@objc @_Concurrency.MainActor(unsafe) public init(cardInfo: ConversationCardInfoProtocol, delegate: ConversationCardDelegate)
@objc @_Concurrency.MainActor(unsafe) public func heightForCard(width: CoreGraphics.CGFloat) -> CoreGraphics.CGFloat
@_Concurrency.MainActor(unsafe) @objc override dynamic public func traitCollectionDidChange(_ previousTraitCollection: UIKit.UITraitCollection?)
@objc deinit
}
extension ConversationCard : SeeAllConversationsViewDelegate {
@_Concurrency.MainActor(unsafe) @objc dynamic public func viewPreviousConversations()
}
@_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class HelpCenterContainerViewController : UIKit.UIViewController {
@objc @_Concurrency.MainActor(unsafe) public convenience init(withCollections collectionIds: [Swift.String])
@objc @_Concurrency.MainActor(unsafe) public convenience init(withCollection collectionId: Swift.String)
Expand All @@ -93,3 +148,6 @@ extension Intercom {
extension HelpCenterContainerViewController : Intercom_Private.ICMErrorViewDelegate {
@_Concurrency.MainActor(unsafe) @objc dynamic public func didSelectErrorAction()
}
@objc public protocol SeeAllConversationsViewDelegate {
@objc func viewPreviousConversations()
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@ import os
@objc @_Concurrency.MainActor(unsafe) weak public var startConversationDelegate: HelpCenterStartConversationViewDelegate?
@objc deinit
}
@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class StartConversationCard : ConversationCard {
@_Concurrency.MainActor(unsafe) @objc override public init(cardInfo: ConversationCardInfoProtocol, delegate: ConversationCardDelegate)
@objc deinit
}
@_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class AvailableTeammatesView : UIKit.UIStackView {
@objc deinit
}
Expand All @@ -26,6 +30,11 @@ import os
@objc @_Concurrency.MainActor(unsafe) public func heightForCard(width: CoreGraphics.CGFloat) -> CoreGraphics.CGFloat
@objc deinit
}
@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class InboxCell : UIKit.UITableViewCell {
@objc @_Concurrency.MainActor(unsafe) public func configure(name: Swift.String, sentTime: Swift.String, summary: Swift.String, adminsToShow: [Intercom_Private.ICMParticipant], unread: Swift.Bool, showDividerLine: Swift.Bool)
@_Concurrency.MainActor(unsafe) @objc override dynamic public func traitCollectionDidChange(_ previousTraitCollection: UIKit.UITraitCollection?)
@objc deinit
}
@_inheritsConvenienceInitializers @objc @_Concurrency.MainActor(unsafe) public class TouchTransparentCollectionView : UIKit.UICollectionView {
@_Concurrency.MainActor(unsafe) @objc override dynamic public func point(inside point: CoreGraphics.CGPoint, with event: UIKit.UIEvent?) -> Swift.Bool
@_Concurrency.MainActor(unsafe) @objc override dynamic public init(frame: CoreGraphics.CGRect, collectionViewLayout layout: UIKit.UICollectionViewLayout)
Expand Down Expand Up @@ -81,6 +90,52 @@ extension Intercom {
public class func fetchHelpCenterCollection(_ collectionId: Swift.String, completion: @escaping (Swift.Result<HelpCenterCollectionContent, ICMHelpCenterDataError>) -> Swift.Void)
public class func searchHelpCenter(_ searchTerm: Swift.String, completion: @escaping (Swift.Result<[HelpCenterArticleSearchResult], ICMHelpCenterDataError>) -> Swift.Void)
}
@objc public protocol ConversationCardInfoProtocol {
@objc var prominantStyling: Swift.Bool { get }
@objc var accessToTeammateEnabled: Swift.Bool { get }
@objc var hasRecentConversations: Swift.Bool { get }
@objc var hasOtherConversations: Swift.Bool { get }
@objc var startConversationCardDisplayed: Swift.Bool { get }
}
@objc public class ConversationCardInfo : ObjectiveC.NSObject, ConversationCardInfoProtocol {
@objc final public let prominantStyling: Swift.Bool
@objc public var startConversationCardDisplayed: Swift.Bool
@objc public var accessToTeammateEnabled: Swift.Bool {
@objc get
}
@objc public var hasRecentConversations: Swift.Bool {
@objc get
}
@objc public var hasOtherConversations: Swift.Bool {
@objc get
}
@objc public init(prominantStyling: Swift.Bool = false, config: Intercom_Private.ICMConfigProtocol = ICMConfig.shared(), dataManager: Intercom_Private.ICMDataManagerProtocol = ICMDataManager.shared())
@objc deinit
}
@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class ConversationHistoryCard : ConversationCard, Intercom_Private.ICMRecentConversationsViewControllerDelegate {
@objc @_Concurrency.MainActor(unsafe) public var recentConversationsVC: Intercom_Private.ICMRecentConversationsViewController
@_Concurrency.MainActor(unsafe) @objc public func reloadConversationHistoryCard()
@_Concurrency.MainActor(unsafe) @objc public func navigate(toViewController viewController: UIKit.UIViewController)
@_Concurrency.MainActor(unsafe) @objc override public init(cardInfo: ConversationCardInfoProtocol, delegate: ConversationCardDelegate)
@objc deinit
}
@objc public protocol ConversationCardDelegate {
@objc func startNewConversation()
@objc func viewPreviousConversations()
@objc func reloadConversationHistoryCard()
@objc func navigateToViewController(_ viewController: UIKit.UIViewController)
}
@_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class ConversationCard : UIKit.UIView {
@objc @_Concurrency.MainActor(unsafe) public static var maxRecentConversationsCount: Swift.Int
@objc @_Concurrency.MainActor(unsafe) public static var viewPadding: CoreGraphics.CGFloat
@objc @_Concurrency.MainActor(unsafe) public init(cardInfo: ConversationCardInfoProtocol, delegate: ConversationCardDelegate)
@objc @_Concurrency.MainActor(unsafe) public func heightForCard(width: CoreGraphics.CGFloat) -> CoreGraphics.CGFloat
@_Concurrency.MainActor(unsafe) @objc override dynamic public func traitCollectionDidChange(_ previousTraitCollection: UIKit.UITraitCollection?)
@objc deinit
}
extension ConversationCard : SeeAllConversationsViewDelegate {
@_Concurrency.MainActor(unsafe) @objc dynamic public func viewPreviousConversations()
}
@_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class HelpCenterContainerViewController : UIKit.UIViewController {
@objc @_Concurrency.MainActor(unsafe) public convenience init(withCollections collectionIds: [Swift.String])
@objc @_Concurrency.MainActor(unsafe) public convenience init(withCollection collectionId: Swift.String)
Expand All @@ -93,3 +148,6 @@ extension Intercom {
extension HelpCenterContainerViewController : Intercom_Private.ICMErrorViewDelegate {
@_Concurrency.MainActor(unsafe) @objc dynamic public func didSelectErrorAction()
}
@objc public protocol SeeAllConversationsViewDelegate {
@objc func viewPreviousConversations()
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@ import os
@objc @_Concurrency.MainActor(unsafe) weak public var startConversationDelegate: HelpCenterStartConversationViewDelegate?
@objc deinit
}
@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class StartConversationCard : ConversationCard {
@_Concurrency.MainActor(unsafe) @objc override public init(cardInfo: ConversationCardInfoProtocol, delegate: ConversationCardDelegate)
@objc deinit
}
@_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class AvailableTeammatesView : UIKit.UIStackView {
@objc deinit
}
Expand All @@ -26,6 +30,11 @@ import os
@objc @_Concurrency.MainActor(unsafe) public func heightForCard(width: CoreGraphics.CGFloat) -> CoreGraphics.CGFloat
@objc deinit
}
@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class InboxCell : UIKit.UITableViewCell {
@objc @_Concurrency.MainActor(unsafe) public func configure(name: Swift.String, sentTime: Swift.String, summary: Swift.String, adminsToShow: [Intercom_Private.ICMParticipant], unread: Swift.Bool, showDividerLine: Swift.Bool)
@_Concurrency.MainActor(unsafe) @objc override dynamic public func traitCollectionDidChange(_ previousTraitCollection: UIKit.UITraitCollection?)
@objc deinit
}
@_inheritsConvenienceInitializers @objc @_Concurrency.MainActor(unsafe) public class TouchTransparentCollectionView : UIKit.UICollectionView {
@_Concurrency.MainActor(unsafe) @objc override dynamic public func point(inside point: CoreGraphics.CGPoint, with event: UIKit.UIEvent?) -> Swift.Bool
@_Concurrency.MainActor(unsafe) @objc override dynamic public init(frame: CoreGraphics.CGRect, collectionViewLayout layout: UIKit.UICollectionViewLayout)
Expand Down Expand Up @@ -81,6 +90,52 @@ extension Intercom {
public class func fetchHelpCenterCollection(_ collectionId: Swift.String, completion: @escaping (Swift.Result<HelpCenterCollectionContent, ICMHelpCenterDataError>) -> Swift.Void)
public class func searchHelpCenter(_ searchTerm: Swift.String, completion: @escaping (Swift.Result<[HelpCenterArticleSearchResult], ICMHelpCenterDataError>) -> Swift.Void)
}
@objc public protocol ConversationCardInfoProtocol {
@objc var prominantStyling: Swift.Bool { get }
@objc var accessToTeammateEnabled: Swift.Bool { get }
@objc var hasRecentConversations: Swift.Bool { get }
@objc var hasOtherConversations: Swift.Bool { get }
@objc var startConversationCardDisplayed: Swift.Bool { get }
}
@objc public class ConversationCardInfo : ObjectiveC.NSObject, ConversationCardInfoProtocol {
@objc final public let prominantStyling: Swift.Bool
@objc public var startConversationCardDisplayed: Swift.Bool
@objc public var accessToTeammateEnabled: Swift.Bool {
@objc get
}
@objc public var hasRecentConversations: Swift.Bool {
@objc get
}
@objc public var hasOtherConversations: Swift.Bool {
@objc get
}
@objc public init(prominantStyling: Swift.Bool = false, config: Intercom_Private.ICMConfigProtocol = ICMConfig.shared(), dataManager: Intercom_Private.ICMDataManagerProtocol = ICMDataManager.shared())
@objc deinit
}
@_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class ConversationHistoryCard : ConversationCard, Intercom_Private.ICMRecentConversationsViewControllerDelegate {
@objc @_Concurrency.MainActor(unsafe) public var recentConversationsVC: Intercom_Private.ICMRecentConversationsViewController
@_Concurrency.MainActor(unsafe) @objc public func reloadConversationHistoryCard()
@_Concurrency.MainActor(unsafe) @objc public func navigate(toViewController viewController: UIKit.UIViewController)
@_Concurrency.MainActor(unsafe) @objc override public init(cardInfo: ConversationCardInfoProtocol, delegate: ConversationCardDelegate)
@objc deinit
}
@objc public protocol ConversationCardDelegate {
@objc func startNewConversation()
@objc func viewPreviousConversations()
@objc func reloadConversationHistoryCard()
@objc func navigateToViewController(_ viewController: UIKit.UIViewController)
}
@_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class ConversationCard : UIKit.UIView {
@objc @_Concurrency.MainActor(unsafe) public static var maxRecentConversationsCount: Swift.Int
@objc @_Concurrency.MainActor(unsafe) public static var viewPadding: CoreGraphics.CGFloat
@objc @_Concurrency.MainActor(unsafe) public init(cardInfo: ConversationCardInfoProtocol, delegate: ConversationCardDelegate)
@objc @_Concurrency.MainActor(unsafe) public func heightForCard(width: CoreGraphics.CGFloat) -> CoreGraphics.CGFloat
@_Concurrency.MainActor(unsafe) @objc override dynamic public func traitCollectionDidChange(_ previousTraitCollection: UIKit.UITraitCollection?)
@objc deinit
}
extension ConversationCard : SeeAllConversationsViewDelegate {
@_Concurrency.MainActor(unsafe) @objc dynamic public func viewPreviousConversations()
}
@_hasMissingDesignatedInitializers @objc @_Concurrency.MainActor(unsafe) public class HelpCenterContainerViewController : UIKit.UIViewController {
@objc @_Concurrency.MainActor(unsafe) public convenience init(withCollections collectionIds: [Swift.String])
@objc @_Concurrency.MainActor(unsafe) public convenience init(withCollection collectionId: Swift.String)
Expand All @@ -93,3 +148,6 @@ extension Intercom {
extension HelpCenterContainerViewController : Intercom_Private.ICMErrorViewDelegate {
@_Concurrency.MainActor(unsafe) @objc dynamic public func didSelectErrorAction()
}
@objc public protocol SeeAllConversationsViewDelegate {
@objc func viewPreviousConversations()
}
Loading

0 comments on commit 248db98

Please sign in to comment.