caller id when pickup call - group-intercept

Mikeme

Member
Apr 26, 2021
186
4
18
39
Hi,
spend few hours on this, when pickup call (*8) the picked phone shows on screen *8.
i have read a lot about that..
double checked the caller ID header on phone that been set to PAI-RPID-FROM(even try other modes).
once checking the pcap trace there is no mention for the caller id, only in remote party id - *8
also i try to log the caller id and check in fs_cli, still no show :(

the following is the group-intercept dialplan, any suggest?

Code:
<extension name="group-intercept" continue="false" uuid="b600c24a-0f04-4d8a-b64d-740dfa7a2811">
    <condition field="destination_number" expression="^\*8$"/>
    <condition field="${sip_h_X-intercept_uuid}" expression="^(.+)$" break="on-true">
        <action application="intercept" data="$1"/>
    </condition>
    <condition field="" expression="">
        <action application="answer" data=""/>
        <action application="lua" data="intercept_group.lua inbound"/>
    </condition>
</extension>
 

whut

Member
Dec 23, 2022
228
22
18
What information does the CDR display when you intercept the call?

Have you tried adding the CID into the intercept dialplan?
 

Mikeme

Member
Apr 26, 2021
186
4
18
39
CDR Showed ext 200 dial *8.
Nothing more than that.
I also try to set on dialplan static caller I'd like 0000
But it's not take effect.
Please advise.
 

Mikeme

Member
Apr 26, 2021
186
4
18
39
this is updated dialplan whne try differnts ways to pass the CID, nothing help :(
group-intercept dialplan -

Code:
<extension name="group-intercept" continue="false" uuid="1614b71a-31e5-494e-9397-30d2b2c649ba">
    <condition field="destination_number" expression="^\*8$"/>
    <condition field="${sip_h_X-intercept_uuid}" expression="^(.+)$" break="on-true">
        <action application="intercept" data="$1"/>
    </condition>
    <condition field="" expression="">
        <action application="answer" data=""/>
        <action application="set" data="effective_caller_id_number=${effective_caller_id_number}"/>
        <action application="set" data="caller_id_number=${caller_id_number}"/>
        <action application="set" data="sip_from_user=${sip_from_user}"/>
        <action application="log" data="NOTICE, Effective Caller ID: ${effective_caller_id_number} | Caller ID: ${caller_id_number} | SIP From User: ${sip_from_user}"/>
        <action application="lua" data="intercept_group.lua"/>
    </condition>
</extension>
 

Mikeme

Member
Apr 26, 2021
186
4
18
39
Play around with Remote Party id.
Seems like system not supporting Remote Party id.
Any place to set it?
 

pbxguru

New Member
Nov 7, 2024
11
1
3
49
Are you using Yealink phones? Wondering of two options: 1) Create a special gateway for your dialplan and under advanced settings, set SIP CID Type to rpid - 2) If Yealink phone, some include a DTMF suppress (hide) feature.

Hope this helps?
 

Mikeme

Member
Apr 26, 2021
186
4
18
39
Are you using Yealink phones? Wondering of two options: 1) Create a special gateway for your dialplan and under advanced settings, set SIP CID Type to rpid - 2) If Yealink phone, some include a DTMF suppress (hide) feature.

Hope this helps?
I made another few testing, it's seems like Fusionpbx send to phone in the 183 sdp, remote party id of *8 and not the original caller id, since that phone provide *8 on screen.
Also test on local Asterisk wich do set the original caller id at the 183 SDP.

So the question is how to set the remote party id of original caller in 183 message...(from Fusionpbx to ip phone).

The testing made with few brands, Yealink, Fanvil and Grandstream.
But the brand or phones is not the issue, the issue clearly is in Fusionpbx 183 message.
 

whut

Member
Dec 23, 2022
228
22
18
this is updated dialplan whne try differnts ways to pass the CID, nothing help :(
group-intercept dialplan -

Code:
<extension name="group-intercept" continue="false" uuid="1614b71a-31e5-494e-9397-30d2b2c649ba">
    <condition field="destination_number" expression="^\*8$"/>
    <condition field="${sip_h_X-intercept_uuid}" expression="^(.+)$" break="on-true">
        <action application="intercept" data="$1"/>
    </condition>
    <condition field="" expression="">
        <action application="answer" data=""/>
        <action application="set" data="effective_caller_id_number=${effective_caller_id_number}"/>
        <action application="set" data="caller_id_number=${caller_id_number}"/>
        <action application="set" data="sip_from_user=${sip_from_user}"/>
        <action application="log" data="NOTICE, Effective Caller ID: ${effective_caller_id_number} | Caller ID: ${caller_id_number} | SIP From User: ${sip_from_user}"/>
        <action application="lua" data="intercept_group.lua"/>
    </condition>
</extension>
I believe you would want to set the caller ID in both groups of conditions. As you have it set I would interpret CID to only be set when you do not dial *8. With that, I would set the CID to the *8 group/block. Which points to dutifully test both the `group-intercept` and the `intercept-ext` dialplans.

If we look at the intercept lua we only see caller ID shows up in the `select_group_extensions` function. But this looks to be the CID of the extension in a call group that is dialing the intercept action.

So I believe the desire to display the inbound CID on the phone is much more complicated! :confused:
 

Mikeme

Member
Apr 26, 2021
186
4
18
39
well, i double check it with Yealink phone once i set caller id from: remote party id its do work, and i can see on trace that once its Yealink phone, Fusionpbx send (SDP) UPDATE, and in case of using Fanvil phone the (SDP) UPDATE is not sended to ip phone.
the Q is whats make the Fusionpbx to send this UPDATE in the SIP message in case of Yealink?
is it something in Yealink Invite maybe, cause i didn't see anything different between the Fanvil/Yealink invites....


y_invite.png




f_invite.png
 

pbxguru

New Member
Nov 7, 2024
11
1
3
49
Q is whats make the Fusionpbx to send this UPDATE in the SIP message in case of Yealink?

FusionPBX does not send UPDATES. It's simply following RFC3311 call flow procedures acting as the "UAS" for this call leg. Based on your call flow, a dialog has been accepted with the initial INVITE, and then a second INVITE in form of SDP UPDATE is sent by the "UAC", or Yealink IP Phone. Then, I see a 200 response from FusionPBX. So, it's following what the RFC states,

If a UA receives an UPDATE for an existing dialog, it MUST check any
version identifiers in the session description or, if there are no
version identifiers, the content of the session description to see if
it has changed. If the session description has changed, the UAS MUST
adjust the session parameters accordingly and generate an answer in
the 2xx response.

Basically, this tells me Yealink device is truly updating the rpid, whereas with the lack of any SDP Updates from the Fanvil device, it tells me Fanvil phone is not properly configured to send an updated caller-id, or not working correctly. Have you tried another model Fanvil?
 

Mikeme

Member
Apr 26, 2021
186
4
18
39
FusionPBX does not send UPDATES. It's simply following RFC3311 call flow procedures acting as the "UAS" for this call leg. Based on your call flow, a dialog has been accepted with the initial INVITE, and then a second INVITE in form of SDP UPDATE is sent by the "UAC", or Yealink IP Phone. Then, I see a 200 response from FusionPBX. So, it's following what the RFC states,



Basically, this tells me Yealink device is truly updating the rpid, whereas with the lack of any SDP Updates from the Fanvil device, it tells me Fanvil phone is not properly configured to send an updated caller-id, or not working correctly. Have you tried another model Fanvil?
Appreciate your help and explanation!

I still try to understand which parameter is sent by Yealink that makes Fusionpbx respond with UPDATE so I be able to configure the fanvil as well(or even search for it)
Since already set RPID-PAI FROM in Fanvil phone.

Also tried few models and firmware of Fanvil and all are acting the same.
 

Mikeme

Member
Apr 26, 2021
186
4
18
39
If anyone can point for missing parameters from Fanvil invite trace vs Yealink I'll appreciate it.
I can open a ticket for Fanvil once I'll know what to ask for. I'm not professional with SIP protocol much that..
since that, I'm asking your professional advise.