InboxMessageの読み込み遅延について
はじめに
Salesforceのプッシュ通知機能でInboxMessageを送った際にInboxMessages取得に遅延が発生し、取得できないことがあります。
MarketingCroundSDKのドキュメントを見ると以下の2つのNotificationが用意されているようでした。
SFMCInboxMessagesRefreshCompleteNotification:更新プロセスが完了したときに通知されます
SFMCInboxMessagesNewInboxMessagesNotification:新しい受信ボックスメッセージがある場合に投稿されます
完了の受け取り
こちらの完了通知は新規のinboxMessageを受け取っていない時にも通知が飛びます。
その為、取得したInboxMessageをViewに反映させている場合は、更新完了を待ってからViewへの反映を行うのが良いかと思います。
NotificationCenter.default.addObserver(self,
selector: #selector(inboxMessagesRefreshComplete(_:)),
name: NSNotification.Name(rawValue: "SFMCInboxMessagesNewInboxMessagesNotification"),
object: nil)
@objc func inboxMessagesRefreshComplete(_ notification: Notification?) {
//viewをreloadする処理
}