Interface IPushReceipt

All Known Implementing Classes:
PushReceiptImpl

public interface IPushReceipt
A client's report about one notification it was sent: that it was shown, or that the user clicked it. Delivered to IPushNotificationListener.onNotificationReceived(IPushReceipt) and IPushNotificationListener.onNotificationAction(IPushReceipt, String).

The report reaches the server over the client session through the Push Notification channel, PushChannelProps under $env (ruled 2026-09-24 RR-1 B; built by P4-11), carrying the data.iizi member the server wrote into the notification (PUSH-WIRE-CONTRACT section 6.2). A notification the server did not send carries no message ID and produces no receipt. On a Browser the Service Worker records what it shows and what is clicked whether or not a page is open, and a page with a channel hands the records over; on Cordova a tap that starts the application is kept until a session exists (PUSH-PROPS-DESIGN section 7). The user is the reporting session's, the device the one its channel reported, the time the device's clock.

Author:
Christopher Mindus
  • Method Summary

    Modifier and Type
    Method
    Description
    Gets the application ID the notification was sent for.
    Gets the device UUID of the device that reported.
    Gets the message ID the server assigned when it sent the notification.
    long
    Gets the time of the event on the device, as the device's clock reported it.
    Gets the topic the notification was sent for.
    long
    Gets the ID of the user whose device reported.
  • Method Details

    • getMessageID

      String getMessageID()
      Gets the message ID the server assigned when it sent the notification.
      Returns:
      The message ID, a UUID, never null.
    • getUserID

      long getUserID()
      Gets the ID of the user whose device reported.
      Returns:
      The user ID, IZS.USERS.uid.
    • getDeviceUUID

      String getDeviceUUID()
      Gets the device UUID of the device that reported.
      Returns:
      The canonical 36-character UUID, never null.
    • getAppID

      String getAppID()
      Gets the application ID the notification was sent for.
      Returns:
      The canonical application ID, never null.
    • getTopic

      String getTopic()
      Gets the topic the notification was sent for.
      Returns:
      The topic, the empty string for the application level; never null.
    • getTimestamp

      long getTimestamp()
      Gets the time of the event on the device, as the device's clock reported it.
      Returns:
      Epoch milliseconds.