Aller au contenu principal

iOS - Implémenter une Inbox

Dans cette page, vous apprendrez comment créer une boîte de réception (inbox) au sein de votre application avec toutes les options à votre disposition pour créer une excellente expérience de messagerie pour vos utilisateurs.

Avec notre bibliothèque, il est extrêmement simple de mettre en œuvre une boîte de réception intégrée à l'application. La mise en place d'une boîte de réception augmente considérablement le taux d'engagement de vos notifications simplement parce que les messages seront toujours disponibles dans votre application.

La fonctionnalité boîte de réception est activée par défaut par les équipes Actito lors de la mise en place de votre intégration.

Après avoir activé cette fonctionnalité, vous pouvez commencer à implémenter votre boîte de réception dans n'importe quel contrôleur de vue de votre application.

Boîte de réception au niveau de l'appareil

L'approche standard consiste à utiliser la boîte de réception au niveau de l'appareil. Chaque appareil aura sa propre boîte de réception indépendante, quel que soit l'utilisateur associé. La boîte de réception au niveau de l'appareil est disponible via le module NotificareInboxKit. La boîte de réception elle-même est exposée via NotificareInboxDelegate, il est donc très facile de connecter votre contrôleur de vue à une liste d'éléments de la boîte de réception, par exemple :

extension InboxViewController: NotificareInboxDelegate {
func notificare(_ notificare: NotificareInbox, didUpdateInbox items: [NotificareInboxItem]) {
// Do something with the items.
}
}

De la même manière, vous pouvez écouter le nombre de messages non lus.

extension InboxViewController: NotificareInboxDelegate {
func notificare(_ notificare: NotificareInbox, didUpdateBadge badge: Int) {
// Do something with the badge.
}
}

Si vous souhaitez obtenir les données à tout moment, vous pouvez toujours recevoir les articles et le badge dans la boîte de réception.

// Items
Notificare.shared.inbox().items

// Badge
Notificare.shared.inbox().badge

Gérer les éléments de la boîte de réception

En supposant que vous déteniez une référence à un élément, pour ouvrir un élément de la boîte de réception, vous feriez simplement quelque chose comme ceci :

let item: NotificareInboxItem

Notificare.shared.inbox().open(item) { result in
switch result {
case let .success(notification):
// Optional: Present the notification with Push UI.
Notificare.shared.pushUI().presentNotification(notification)
break

case let .failure(error):
// handle the error
break
}
}

Pour supprimer des éléments de la boîte de réception, vous invoquerez la méthode suivante :

let item: NotificareInboxItem

Notificare.shared.inbox().remove(item) { result in

}

De plus, vous pouvez également marquer un message comme lu en appelant la méthode suivante :

let item: NotificareInboxItem

Notificare.shared.inbox().markAsRead(item) { result in

}

Ou marquez tous les messages comme lus en appelant la méthode suivante :

Notificare.shared.inbox().markAllAsRead { result in

}

Pour supprimer tous les éléments de la boîte de réception, procédez comme suit :

Notificare.shared.inbox().clear {

}