Flows Handling NPLI for Unregistered Emergency Calls

The diagram below shows an example flow for an unregistered emergency MO call. In this scenario, you have enabled the NPLI feature and set the hold-emergency-calls-for-loc-info parameter.

  1. Because you have configured the NPLI management feature, the SBC holds the unregistered emergency INVITE, waiting for the RAR.
  2. When the RAR comes with the 3GPP-User-Location-INFO AVP, the SBC constructs the PANI header in unregistered emergency INVITE and sends towards UAS. (Recall that, if the RAR comes without location information, the SBC uses your default PANI, if configured.)
  3. When the SBC receives the 18x/200OK, it sends the AAR to the PCRF again. This time, however, it does not contain NPLI AVPs, and the SBC holds the 18x/200OK until it receives the AAA.
  4. As soon as AAA comes, the SBC uses the cached PANI or the default PANI to insert a PANI header in the 18x/200OK and sends it to the UE. (Recall that, if you have not configured a default PANI, the SBC does not send a PANI header to the UE.)
This image depicts the OCSBC handling an unregistered emergency call.

Note:

if the SBC has already send out the PANI header in the 18x to UE, then it does not send a PANI header within any subsequent 18x/200OK with SDP. Regardless, receiving any 18x/200OK with SDP continues to trigger the AAR, and the wait for the AAA.

Contrast this flow above with the one below, which depicts an unregistered emergency MO call. This time, you have not configured the SBC with the NPLI management feature, but you have configured the hold-emergency-calls-for-loc-info.

  1. Upon receiving the unregistered emergency INVITE, the SBC sends an AAR without NPLI AVP’s and waits for AAA to come. The SBC does not wait for a RAR.
  2. When the AAA arrives without location information, the SBC sends the INVITE to the UAS with the default PANI, if configured.

    Note:

    If the SBC does not receive an AAA, it drops the call and sends a 503 error to the UAC.
  3. As soon as it receives the AAA, the SBC forwards the INVITE without PANI.
  4. The call proceeds normally without any PANI.
  5. Any subsequent Rx dips do not include the NPLI AVP.
This image depicts the OCSBC handling an unregistered emergency call when the NPLI feature is disabled.

The next flow presents a successful unregistered emergency MO call with an Offer-less Invite.

  1. Upon receiving the unregistered emergency INVITE, the SBC does not send out an AAR because the INVITE has no SDP. Instead, it simply forwards the INVITE without any PANI.
  2. Upon receiving a 200 OK with an SDP Offer, the SBC now generates an AAR with NPLI AVP’s, and sends it to the PCRF.
  3. The SBC receives the AAA, it starts its hold timer and waits for the RAR, which includes NPLI.
  4. Upon receiving the RAR, the SBC constructs the PANI, adds it to the 200 OK, and sends it to the UAC.
  5. The SBC saves this NPLI in its cache, keeping the NPLI valid for the duration of your cache-loc-info-expire configuration.
  6. When the ACK arrives, the SBC retrieves the stored NPLI and, ultimately, sends the PANI to the core/ target UAS.

Note:

If you configure cache-loc-info-expire to zero, the SBC retains the NPLI for the duration of the session. This is recommended for using this PANI feature for unregistered emergency flows.
This image depicts the OCSBC handling an unregistered emergency call when there is no SDP in the initial INVITE.