Extract verifyResults Content for DIV Passports for 3GPP

In the case of 3GPP, if the response from the STI server includes multiple reason values, the SBC includes two reason values in the SIP Reason header:

  • cause & text specific to shaken PASSporT verification
  • cause & text specific to first div PASSporT verification

By default, the SBC does not extract and parse the content in the verifyResults header during 3GPP verification response processing. When you enable the man-compliance option, however, the SBC does perform this function. This allows the SBC to fetch the reasonCode and reasonText based on PPT type SHAKEN and the first index of PPT type DIV.

The SBC is required to fetch reasonText and reasonCode based on PPT type and order of DIV PPTs received within the context of its current implementation.

Extracting and parsing this header allows the SBC to use this reasonText and reasonCode information to better identify a verstat of, for example TN-Validation-Failed. The SBC ultimately uses the corresponding DIV ppt received in the VerifyResults to populate reasonText and reasonCode.

Note:

The SBC identifies the first index of a DIV PPT based on how it is received in the incoming INVITE.

An example of an applicable 3GPP verification response is presented below.

{"verificationResponse":
{
"verifyResults": [
{"verifyResult": {"status": "fail", "ppt": "shaken", “reasonCode": 438, "reasonText": "Identity signature payload does not match the re-constructed one", "passport": "eyJhbGciOiJFUzI1NiIsInBwdCI6InNoYWtlbiIsIn....."}},
{"verifyResult": {"status": "fail", "ppt": "div", "reasonCode": 438, "reasonText": "Identity signature payload does not match the re-constructed one", "passport": "eyJhbGciOiJFUzI1NiIsInBwdCI6uPuDqJ8ua..........."}}
].
 "verstatValue": "TN-Validation-Failed"
}
}