Skip to main content
For the DialogShift Phone AI to successfully forward calls to internal extensions within the hotel PBX, some specific configurations are required.
Prerequisite: DialogShift Phone AI is successfully registered in the PBX.
To forward an incoming call to an internal extension, the Phone AI initiates a new SIP call within the PBX. As soon as the connection to the target extension is established, the originally received call is connected to the new conversation partner. Technically, this corresponds to a classic “Attended Transfer”. Below is an example of a SIP INVITE sent by the Phone AI to the PBX to start a transfer:
For the receiving extension to display the calling guest’s number, the trunk from DialogShift must be equipped with the appropriate “Trust”.

Checklist for PBX Configuration

1. Activate trust status for P-Asserted-Identity (PAI)

The phone system must be configured to trust the SIP headers sent by our trunk. Only if the trunk is considered a trusted source will the system use the P-Asserted-Identity (PAI) contained therein for further call signaling.
  • Setting to check: Look for options in the trunk settings such as:
    • Trust PAI / Trust PAI
    • Trust RPID/PAI
    • Trusted Identity
    • Connected Line ID / Accept PAI
  • Action: Activate this setting for the DialogShift SIP trunk.

2. Check call forwarding rules

The phone system decides which number is signaled during a transfer. This logic is often configurable per extension or globally.
  • Setting to check: Review the call handling or forwarding rules. Often there’s a choice here:
    • Show original caller (or “Original Caller”) <— This is the desired behavior.
    • Show forwarding party (or “Forwarding Party”) <— This is probably the current setting.
  • Action: Ensure the rule provides for displaying the original caller.

3. Ensure caller ID passthrough

Some systems have a global setting that allows taking over the incoming caller ID for outgoing calls (as in a transfer).
  • Setting to check: Look for terms like:
    • Passthrough Caller ID
    • Caller ID passthrough on transfer
    • Use origin caller ID
  • Action: Activate this function if available.

4. Check outgoing call route configuration

A forwarded call uses an outgoing route of the phone system. If a fixed number (Outbound CallerID) is configured on this route, it overrides all other information.
  • Setting to check: Review the outgoing route used for forwarding.
  • Action: Ensure the “Outbound CallerID” field on this route is empty or explicitly set to take the caller ID from the calling channel and not enforce a fixed number.

Specific Instructions for PBX Systems

Here you’ll find instructions for some of the most common phone systems.
In STARFACE, the DialogShift trunk must be classified as “trusted” for the correct number to be signaled.
  1. Classify trunk as trusted:
    • Log in as administrator to the STARFACE web interface.
    • Go to Admin -> Lines and select the DialogShift SIP trunk.
    • Look for an option like “Trust P-Asserted-Identity” or “Trust PAI” in the line settings. This is often found in the advanced settings. Activate this option.
  2. Activate CLIP No Screening:
    • Ensure that “CLIP no screening” function is activated for the trunk. This allows the trunk to signal any caller ID.
  3. Caller ID display on transfer:
    • Check the forwarding settings of the respective users or groups. Often you can set here whether the caller ID of the original caller or the forwarding party is displayed. Choose “original caller”.
In 3CX, the caller ID signaling for the SIP trunk must be configured to read the P-Asserted-Identity from the SIP header.
  1. Adjust incoming parameters:
    • Navigate to SIP Trunks in the 3CX management console.
    • Select the DialogShift SIP trunk and click Edit.
    • Go to the Incoming Parameters tab.
  2. Configure caller identification:
    • Find the “Call Source Identification” section.
    • Set the fields for “Calling Number” and “Caller Name” to use the values from the P-Asserted-Identity: User Part and P-Asserted-Identity: Display Name of the SIP header.
In Cisco Unified Communications Manager (CUCM), caller ID handling is controlled via profiles assigned to the SIP trunk.
  1. Configure SIP profile:
    • Navigate in Cisco Unified CM Administration to Device > Device Settings > SIP Profile.
    • Create or edit the SIP profile assigned to the DialogShift trunk.
    • Look for options for handling identity headers. Ensure “Asserted-Identity” is considered trusted. Often there’s an option like “Calling Party Identity Source” that should be set to “P-Asserted-Identity”.
  2. SIP trunk security profile:
    • Go to System > Security > SIP Trunk Security Profile.
    • Ensure the profile assigned to the trunk accepts incoming P-Asserted-Identity headers. Activate options like “Accept unsolicited notification” and “Accept replaces header” if necessary.
  3. Trunk configuration:
    • Under Device > Trunk, assign the configured profiles to the DialogShift trunk.
In Mitel systems, the trust relationship for SIP headers is configured in the SIP Peer Profile.
  1. Create/edit SIP Peer Profile:
    • Log into the System Administration Tool.
    • Navigate to SIP Peer Profile and select the profile for the DialogShift trunk.
  2. Adjust signaling and headers:
    • Go to the “Signaling and Header manipulation” tab.
    • Look for options that control trust in incoming headers. Activate options like “Trust P-Asserted-Identity”.
  3. Check SDP options:
    • In the “SDP Options” tab, ensure the option “Prevent the Use of IP Address 0.0.0.0 in SDP Messages” is set to “Yes” as this is crucial for compatibility.
    • The option “Renegotiate SDP on all In-coming Calls” should also be activated to avoid codec conflicts.
The Phone AI can be connected to and operated with the Telekom Cloud PBX. When transferring a call, however, the extension only shows the Phone AI’s number, not the number of the calling guest. In our experience so far, this cannot be changed with the settings described on this page.
In Asterisk-based systems, configuration depends on whether the older chan_sip or the modern pjsip driver is used.For pjsip (recommended):
  1. Endpoint configuration (pjsip.conf):
    • Edit the endpoint responsible for the DialogShift trunk.
    • Add the option trust_id_inbound = yes. This instructs Asterisk to trust the caller ID from the P-Asserted-Identity or Remote-Party-ID headers.
    • Optionally, you can force the use of the PAI header with caller_id_from_pai = yes.
For chan_sip (deprecated):
  1. Peer configuration (sip.conf):
    • Edit the peer entry ([dialogshift-trunk]) for your trunk.
    • Add the option trustrpid = yes. Although the name suggests “RPID”, this option is usually also used for trusting PAI headers.

Incompatible Phone Systems

  • Avaya IP Office: This phone system has only a very limited SIP implementation, which unfortunately is not compatible with Phone AI. However, it is possible to install an SBC proxy in front of the phone system to make it SIP-compatible.