Asterisk 13.7 Multiple Call Problem

Hi,

I use asterisk 13.7 with PJSIP and I have simple dailplan;

exten=>5151,1,Dial(PJSIP/5151&PJSIP/4068&PJSIP/5189&PJSIP/4057)
exten=>5151,n,HangUp()

When I try to call 5151, 5151,4068,5189,4057 are ringing everything fine at the moment.
Problem is: while someone(5151,4068,5189,4057 ) pick up the call other endpoints have missed call, but the call are answered that’s why according to me it must not be. When I try different client (deskphone,softphone), I have same reason. Do anyone have an idea?

  • [s@macro-isy-vm-dial:19] Dial(“PJSIP/gck_ast_mast-000809d”, “PJSIP/5151&PJSIP/4068&PJSIP/5189&PJSIP/4057”) in new stack
    – Called PJSIP/5151
    – Called PJSIP/4068
    – Called PJSIP/5189
    – Called PJSIP/4057
    – PJSIP/5151-0000809f connected line has changed. Saving it until answer for PJSIP/gck_ast_mast-0000809d
    – PJSIP/4068-000080a0 connected line has changed. Saving it until answer for PJSIP/gck_ast_mast-0000809d
    – PJSIP/4057-000080a2 connected line has changed. Saving it until answer for PJSIP/gck_ast_mast-0000809d
    – PJSIP/5189-000080a1 connected line has changed. Saving it until answer for PJSIP/gck_ast_mast-0000809d
    – PJSIP/4057-000080a2 is ringing
    – PJSIP/5189-000080a1 is ringing
    – PJSIP/4068-000080a0 is ringing

Use the ‘c’ option for Dial. Asterisk will then send “call completed elsewhere” to the other endpoints. But, the endpoint will have to respond to it. There’s nothing else Asterisk can do.

Actualy I have tried but nothing happen.
exten=>5151,1,Dial(PJSIP/5151&PJSIP/4068&PJSIP/5189&PJSIP/4057,20,c)

If you provide a SIP trace (pjsip set logger on) of a complete attempt we can confirm that the proper header was sent. If it was then Asterisk has done what it can, it’s up to the phone to understand it and know that the call was answered elsewhere.

I called from 4073 to 5151 and 4057 answered but 4068,5189 have missed call. Trace link bellow:


thanks for your help.

Asterisk is sending the correct header:

Reason: SIP;cause=200;text=“Call completed elsewhere”

To indicate that the call was answered elsewhere. It’s up to the device in question to understand it and not mark it as a missed call, which it doesn’t appear to support. There’s nothing we can do in Asterisk to change this.