Skip to content

Commit a3ab1e7

Browse files
committed
Fixes
1 parent b8af9b1 commit a3ab1e7

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

swift-sdk/Internal/in-app/InAppManager+Functions.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import Foundation
66

77
enum MessagesProcessorResult {
88
case show(message: IterableInAppMessage, messagesMap: OrderedDictionary<String, IterableInAppMessage>)
9-
case noShow(messagesMap: OrderedDictionary<String, IterableInAppMessage>)
9+
case noShow(message: IterableInAppMessage?, messagesMap: OrderedDictionary<String, IterableInAppMessage>)
1010
}
1111

1212
struct MessagesProcessor {
@@ -32,9 +32,9 @@ struct MessagesProcessor {
3232
return processMessages()
3333
case let .skipAndConsume(message):
3434
updateMessage(message, didProcessTrigger: true, consumed: true)
35-
return processMessages()
35+
return .noShow(message: message, messagesMap: messagesMap)
3636
case .none, .wait:
37-
return .noShow(messagesMap: messagesMap)
37+
return .noShow(message: nil, messagesMap: messagesMap)
3838
}
3939
}
4040

swift-sdk/Internal/in-app/InAppManager.swift

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -286,7 +286,7 @@ class InAppManager: NSObject, IterableInternalInAppManagerProtocol {
286286

287287
private func getMessagesMap(fromMessagesProcessorResult messagesProcessorResult: MessagesProcessorResult) -> OrderedDictionary<String, IterableInAppMessage> {
288288
switch messagesProcessorResult {
289-
case let .noShow(messagesMap: messagesMap):
289+
case let .noShow(message: _, messagesMap: messagesMap):
290290
return messagesMap
291291
case .show(message: _, messagesMap: let messagesMap):
292292
return messagesMap
@@ -300,14 +300,21 @@ class InAppManager: NSObject, IterableInternalInAppManagerProtocol {
300300
ITBDebug("Setting last display time: \(String(describing: lastDisplayTime))")
301301

302302
show(message: message, consume: !message.saveToInbox)
303-
}
303+
}
304304
}
305305

306306
private func processAndShowMessage(messagesMap: OrderedDictionary<String, IterableInAppMessage>) {
307307
var processor = MessagesProcessor(inAppDelegate: inAppDelegate, inAppDisplayChecker: self, messagesMap: messagesMap)
308308
let messagesProcessorResult = processor.processMessages()
309309
self.messagesMap = getMessagesMap(fromMessagesProcessorResult: messagesProcessorResult)
310310

311+
if case let .noShow(message, _) = messagesProcessorResult,
312+
let message = message, message.isJsonOnly {
313+
requestHandler?.inAppConsume(message.messageId,
314+
onSuccess: nil,
315+
onFailure: nil)
316+
}
317+
311318
showMessage(fromMessagesProcessorResult: messagesProcessorResult)
312319
}
313320

0 commit comments

Comments
 (0)