Notification Service

There are three main components of the Notification Service.

Notification Service
Figure 1. Notification Service
  1. HTTP Notify — send notification requests to clients of the Sh Cache Microservice.

  2. Cache Facade — provide an interface to the Cassandra database so the service can query and update the cache.

  3. HSS Facade — provide an interface for the service to query and update the external HSS.

When receiving a Push Notification Request from the HSS, the Sh Cache Microservice has to determine which data reference the notification is for. As the Push Notification Request does not contain an AVP indicating the data reference, the service parses the user data to determine the data reference. The data reference is determined by using the first rule from the list below which applies.

Rules for determining the data reference

If the PNR does not contain any user data, the request is rejected by sending a PushNotificationAnswer with result code of DIAMETER_MISSING_AVP (5005).

Data Reference If the user data contains …​


a non-empty <RepositoryData> element


a non-empty <IMSPublicIdentity> element


an <AliasIdentities>, <AllIdentities>, <ImplicitIdentities> or <RegisteredIdentities> element


an <IFCs> element


an <SCSCFName> element


a <ChargingInformation> element


a <PSIActivation> element


a non-empty <DSAI> element


a non-empty <IPv4Address>, <IPv6Prefix> or <IPv6InterfaceIdentifier> element


a <UEReachabilityForIP> element


a <ServicePriorityLevel> element


a <ServiceLevelTraceInfo> element


a non-empty <ExtendedPriority> element

If the user data does not contain any of these elements, the request is rejected by sending a PushNotificationAnswer with result code of DIAMETER_MISSING_AVP (5005).

The following section outlines the behaviour of the Sh Cache Service for the UE reachability scenario.

UE reachability scenario

UE reachability
Figure 2. UE reachability
  1. Receive a PushNotificationRequest (PNR) from the HSS. Determine the data reference is UE_REACHABILITY_FOR_IP

  2. Query the cache for subscriber data

  3. In this case there is data in the cache …​

  4. Send a PushNotificationAnswer (PNA) to the HSS

  5. Build an HTTP request …​

  6. …​ and notify the microservice client

Previous page Next page