Diversion to History-Info Header Interworking

When configured for this interworking, the ESBC takes the following steps for all Diversion headers in the incoming initial INVITE:

  1. Create a new History-Info header.
  2. Add the index header parameter.
  3. Set the value for the first header to 1. Append .1 to the value of the last_index_value for the subsequent headers.
  4. If the Diversion header contains a privacy parameter, add the Privacy header parameter to the History-Info header using the following conversion table.
    Diversion Privacy History-Info Privacy
    full history
    name history
    uri history
    off none
  5. If the previous Diversion header contains a reason parameter, add the cause header parameter to the History-Info header using the following conversion table. The ESBC does not add a cause parameter to the first History-info entry.
    Diversion Reason History-Info Cause
    unknown 404 (default value)
    unconditional 302
    user-busy 486
    no-answer 408
    deflection 480
    unavailable 404
    time-of-day 404
    do-not-disturb 404
    follow-me 404
    out-of-service 404
    away 404
  6. If the presented reason parameter is not in the table above, set the parameter to the default value of 404.
  7. Remove the diversion header from the outgoing INVITE.

The diagram below provides an example flow and the header text used for this example.