9 Session Translation

Session translations are changes to a layer-5 endpoint header. Session translations can modify SIP headers like the To, From, Diversion, History-Info, or P-Asserted-Id headers. They can also modify parameters like ISUP calling party, ISUP called party, ISUP generic number, ISUP redirect number, and ISUP original called number. They can modify the To and From headers of H323 messages.

With session translations, you can strip address prefixes added by external gateways. Or you can add a string tag to an address for the ESBC's local policy routing and then remove the tag upon egress. The most common use of session translation is to add or remove a "1" or a "+" from a phone number sent from or addressed to a device.

Session translations are applied to inbound and outbound call legs independently. On the inbound call leg (Call Leg A), session translations are performed after HMRs and before routing occurs. On the outbound call leg (Call Leg B), session translations are performed after routing and before HMRs.

The session translation implementation diagram is described above.

Session translations are attached to either session agents or to realms. Session translations attached to session agents take precedence over session translations attached to realms. If no session translation is applied to a session agent, then the ESBC will use the session translation applied to a realm. If a session translation is applied to both a realm and session agent, the translation attached to the session agent will apply. If session agents and realms have no associated translations, then all headers will remain in their original state as they pass through the ESBC.

ESBC session translations are implemented in three steps.
  1. First, the individual translation rules are defined in the translation-rules element.
  2. Next, the translation rules are grouped in a specified order in the session-trans-rule subelement of the session-translation element.
  3. Finally, session translations are attached to either session agents or realms in the session-agent element or realm-config element.