Skip to content

Commit f2d0b9e

Browse files
Release 12.3.0
1 parent 438b1b8 commit f2d0b9e

File tree

27 files changed

+91
-39
lines changed

27 files changed

+91
-39
lines changed

CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
## 12.3.0
2+
###### Release Date: 17-05-2022
3+
4+
### 🚀 Enhancements
5+
**🖼️ New Feature : Rich Push Messages**
6+
* A picture speaks a thousand words. You can now add rich media (i.e. images) to your mobile push messages on both iOS and Android. Grab your user’s attention by adding attractive and contextual images and increase click-through rate of your push message.
7+
8+
👉 Upgrade to the latest version of the mobile SDK today to use this feature. [Additionally, to set rich push messages on iOS, follow the instructions here](https://developers.intercom.com/installing-intercom/docs/rich-push-notifications).
9+
10+
![Rich Push composer experience](https://user-images.githubusercontent.com/13782252/168840930-c744220c-f655-45f1-a7e5-686401daac0c.png)
11+
![Rich Push customer experience](https://user-images.githubusercontent.com/13782252/168841249-907353c9-d478-4a29-822a-1d253bb2fd91.png)
12+
113
## 12.2.1
214
###### Release Date: 03-05-2022
315

Intercom.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = 'Intercom'
3-
s.version = '12.2.1'
3+
s.version = '12.3.0'
44
s.summary = 'The Intercom iOS SDK, for integrating Intercom into your iOS application.'
55
s.license = { :type => "Apache 2.0", :file => "LICENSE" }
66
s.authors = {"Brian Boyle"=>"[email protected]", "Mike McNamara"=>"[email protected]", "Katherine Brennan"=>"[email protected]", "Himanshi Goyal"=>"[email protected]", "Niamh Coleman"=>"[email protected]"}

Intercom.xcframework/Info.plist

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,30 +6,30 @@
66
<array>
77
<dict>
88
<key>LibraryIdentifier</key>
9-
<string>ios-arm64_x86_64-simulator</string>
9+
<string>ios-arm64</string>
1010
<key>LibraryPath</key>
1111
<string>Intercom.framework</string>
1212
<key>SupportedArchitectures</key>
1313
<array>
1414
<string>arm64</string>
15-
<string>x86_64</string>
1615
</array>
1716
<key>SupportedPlatform</key>
1817
<string>ios</string>
19-
<key>SupportedPlatformVariant</key>
20-
<string>simulator</string>
2118
</dict>
2219
<dict>
2320
<key>LibraryIdentifier</key>
24-
<string>ios-arm64</string>
21+
<string>ios-arm64_x86_64-simulator</string>
2522
<key>LibraryPath</key>
2623
<string>Intercom.framework</string>
2724
<key>SupportedArchitectures</key>
2825
<array>
2926
<string>arm64</string>
27+
<string>x86_64</string>
3028
</array>
3129
<key>SupportedPlatform</key>
3230
<string>ios</string>
31+
<key>SupportedPlatformVariant</key>
32+
<string>simulator</string>
3333
</dict>
3434
</array>
3535
<key>CFBundlePackageType</key>

Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMEngine.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,17 @@
77
//
88

99
@protocol ICMFileUploadConfig;
10+
@protocol ICMFileDownloadConfig;
1011

1112
typedef void (^ICMHTTPEmptySuccess)(void);
13+
typedef void (^ICMHTTPDownloadContentSuccess)(NSURL *location, NSURLResponse *response);
1214
typedef void (^ICMHTTPClientError) (NSError *error);
1315
typedef void (^ICMHTTPClientProgress) (double progress);
1416

1517
@interface ICMEngine : NSObject
1618

1719
- (void)requestWithoutRedirects:(NSURLRequest *)request success:(ICMHTTPEmptySuccess)success failure:(ICMHTTPClientError)failure;
1820
- (NSURLSessionUploadTask *)uploadFileWithFileName:(NSString *)filename data:(NSData *)data uploadConfig:(id<ICMFileUploadConfig>)uploadConfig success:(ICMHTTPEmptySuccess)success progress:(ICMHTTPClientProgress)progress failure:(ICMHTTPClientError)failure;
21+
- (NSURLSessionDownloadTask *)downloadFileFrom:(NSURL *)url downloadConfig:(id<ICMFileDownloadConfig>)downloadConfig success:(ICMHTTPDownloadContentSuccess)success failure:(ICMHTTPClientError)failure;
1922

2023
@end

Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMHTTPClient.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,13 @@
2020
error:(ICMHTTPClientError)failure;
2121

2222

23-
#pragma mark - Push Notification Tokens
23+
#pragma mark - Push Notification
2424

2525
+ (void)submitDeviceTokenWithFailure:(void(^)(NSError *error))failure;
2626
+ (void)deleteDeviceToken:(NSString *)deviceTokenString
2727
forUserIdentity:(ICMUserIdentity *)userIdentity
2828
completion:(ICMHTTPEmptyBlock)completion;
29+
+ (void)downloadRichPushMediaAttachmentFrom:(NSURL *)url success:(ICMHTTPRichPushMediaDownloadSuccess)success failure:(ICMHTTPClientError)failure;
2930

3031

3132
#pragma mark - Events

Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMHTTPClientProtocol.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ typedef void (^ICMHTTPCarouselSuccess)(ICMCarousel *carousel);
4545
typedef void (^ICMHTTPArraySuccess)(NSArray *array);
4646
typedef void (^ICMHTTPDictionarySuccess)(NSDictionary *object);
4747
typedef void (^ICMHTTPComposerSuggestionsSuccess)(ICMComposerSuggestions *composerSuggestions);
48+
typedef void (^ICMHTTPRichPushMediaDownloadSuccess)(NSURL *location);
4849

4950
@protocol ICMHTTPClientProtocol
5051

Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMUtils.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ typedef NS_ENUM(NSInteger, ICMUserIdentityType) {
8888
+ (BOOL)photoUsageDescriptionPresent;
8989

9090
+ (BOOL)autoIntegratePushNotifications;
91+
+ (BOOL)isRunningNotificationServiceExtension;
9192

9293
+ (NSBundle *)intercomBundle;
9394
+ (NSBundle *)translationsBundle;
@@ -114,4 +115,6 @@ typedef NS_ENUM(NSInteger, ICMUserIdentityType) {
114115

115116
+ (CGFloat)scaleToAccessibilitySizing:(CGFloat)pointSize;
116117

118+
+ (NSString *)getFileExtensionFrom:(NSURL *)url httpResponse:(NSHTTPURLResponse *)httpResponse;
119+
117120
@end

Intercom.xcframework/ios-arm64/Intercom.framework/Headers/Intercom.h

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@
8585
#import <Intercom/ITBImageLoader.h>
8686
#import <Intercom/ITBBlock.h>
8787
#import <Intercom/IntercomConversationCustomCell.h>
88+
#import <UserNotifications/UserNotifications.h>
8889

8990
NS_ASSUME_NONNULL_BEGIN
9091

@@ -395,13 +396,24 @@ NS_ASSUME_NONNULL_BEGIN
395396
+ (BOOL)isIntercomPushNotification:(NSDictionary *)userInfo;
396397

397398
/*!
398-
Use this method to handle a push notification payload received by Intercom. You should first check if this
399-
notification was send by Intercom with `+[Intercom isIntercomPushNotification:]`.
399+
Use this method to handle a push notification payload sent by Intercom. You should first check if this
400+
notification was sent by Intercom with `+[Intercom isIntercomPushNotification:]`.
400401
401402
@note This is only needed if you have set `IntercomAutoIntegratePushNotifications` to NO in your Info.plist
402403
*/
403404
+ (void)handleIntercomPushNotification:(NSDictionary *)userInfo;
404405

406+
/*!
407+
Use this method to handle a rich push notification payload sent by Intercom in your Notification Service Extension. You should first check if this
408+
notification was sent by Intercom with `+[Intercom isIntercomPushNotification:]`. This method downloads any media specified in the payload and
409+
attaches it to the notification content.
410+
411+
@note This is only needed if you have set `IntercomAutoIntegratePushNotifications` to NO in your Notification Service Extension's Info.plist.
412+
@param notificationContent The content of the notification request received by your Notification Service Extensions's principal class.
413+
@param contentHandler The `contentHandler` block that is passed into `didReceiveNotificationRequest:withContentHandler:`.
414+
*/
415+
+ (void)handleIntercomRichPushNotificationContent:(UNNotificationContent *)notificationContent withContentHandler:(void (^)(UNNotificationContent * _Nonnull))contentHandler;
416+
405417
#pragma mark - Intercom UI Visibility
406418

407419
//=========================================================================================================
0 Bytes
Binary file not shown.
64.6 KB
Binary file not shown.

0 commit comments

Comments
 (0)