Saltar al contenido principal

iOS: implementar una Inbox

En esta página aprenderá cómo crear una bandeja de entrada dentro de su aplicación con todas las opciones a su disposición para crear una excelente experiencia de correo electrónico para sus usuarios.

Con nuestra biblioteca, es extremadamente sencillo implementar una bandeja de entrada en la aplicación. Configurar una bandeja de entrada aumenta significativamente la tasa de participación de tus notificaciones simplemente porque los mensajes siempre estarán disponibles en tu aplicación.

La funcionalidad de la bandeja de entrada la activan de forma predeterminada los equipos de Actito al configurar su integración.

Después de habilitar esta función, puede comenzar a implementar su bandeja de entrada en cualquier controlador de vista de su aplicación.

Bandeja de entrada a nivel de dispositivo

El enfoque estándar es utilizar la bandeja de entrada a nivel de dispositivo. Cada dispositivo tendrá su propia bandeja de entrada independiente, independientemente del usuario asociado. La bandeja de entrada a nivel de dispositivo está disponible a través del módulo NotificareInboxKit. La bandeja de entrada en sí está expuesta a través de NotificareInboxDelegate, por lo que es muy fácil conectar su controlador de vista a una lista de elementos en la bandeja de entrada, por ejemplo:

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

De la misma forma, puedes escuchar la cantidad de mensajes no leídos.

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

Si deseas obtener los datos en cualquier momento, siempre podrás recibir los artículos y la insignia en la bandeja de entrada.

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

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

Administrar elementos de la bandeja de entrada

Suponiendo que tiene una referencia a un elemento, para abrir un elemento desde la Bandeja de entrada simplemente haría algo como esto:

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
}
}

Para eliminar elementos de la bandeja de entrada, invocará el siguiente método:

let item: NotificareInboxItem

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

}

Además, también puedes marcar un mensaje como leído llamando al siguiente método:

let item: NotificareInboxItem

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

}

O marque todos los mensajes como leídos llamando al siguiente método:

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

}

Para eliminar todos los elementos de la Bandeja de entrada, siga estos pasos:

Notificare.shared.inbox().clear {

}