Push Inbox

Push Inbox Overview

NetmeraInbox allows you to access and manage previously sent push notifications in an inbox-style interface. You cannot instantiate NetmeraInbox directly; instead, you must obtain an instance through the SDK and use it to interact with push notifications.

Filtering Notifications

Create a NetmeraInboxFilter instance to specify which push notifications to fetch. You can filter by:

  • Status: Read, Unread, or Deleted.

  • Categories: Filter by specific categories.

  • Expired Notifications: Include or exclude expired notifications.

  • Page Size: Number of notifications to fetch per request.

Here is a sample code to determine filtering options:

import { Netmera, NetmeraInboxFilter } from 'react-native-netmera'

     const netmeraInboxFilter = new NetmeraInboxFilter()
     //Show Read or Unread notifications
     netmeraInboxFilter.status = NetmeraPushStatus.readAndUnread
     netmeraInboxFilter.pageSize = 10
     netmeraInboxFilter.categories = ["category_1", "category_2"]
     netmeraInboxFilter.includeExpiredObjects = false

Fetching the First Page

Use fetchInboxUsingFilter() to retrieve notifications that match the filter:

fetchInboxUsingFilter() {

   let filter: NetmeraInboxFilter = {
     status: NetmeraPushStatus.readAndUnread,
     pageSize: 20
   }
   this.netmera.fetchInboxUsingFilter(filter).then(inbox => {
     console.log("FetchInbox Success: ");
   }).catch(err => {
     console.log("FetchInbox Error", err);
   });
 }

Fetching Next Pages

Once the first page is retrieved, use netmera.fetchNextPage() to get additional pages:

this.netmera.fetchNextPage().catch(inbox => {
     console.log("FetchNextPage: ");
   }).catch(err => {
     console.log("FetchNextPage error: ",err);
   });

Calling netmera.fetchNextPage() when no additional pages exist will trigger an error.

Updating Push Notification Status

Notifications can have three states:

  • Unread

  • Read

  • Deleted

Use updateStatus to change a notification's status asynchronously:

this.netmera.updatePushStatus(index, length, NetmeraPushStatus.read).then(result => {
      console.log("Update Status: ", result);
    }).catch(err => {
      console.log("Update Error: ", err);
    });

Counting Notifications by Status

Retrieve the count of notifications by status:

//get count unread push objects
    this.netmera.countForStatus(NetmeraPushStatus.unread).then(count => {
      console.log("Count: ", count);
    }).catch(err => {
      console.log(err);
    });

Last updated

Was this helpful?