Can a script calling a MulticastRTP channel answer automatically?

Hello, everyone. Recently, I was trying to call the multicast channel through a script, and I found that there was no automatic answer. However, when I call the normal SIP channel through the script, the automatic reply can be realized with the setup of SIPAddHeader on it.
The script is as follows:

Channel: Local/725@paging-channel
Context: auto-page-725
Callerid: pagingcall-725<AutoPage725>
Extension: 725
Priority: 1
MaxRetries: 0
Set: VAR1=custom/default

The dialing rules are as follows:

[auto-page-725]                                                                        
include => auto-page-725-custom                                                                                    
exten => _PAGE.,1,GotoIf($[ ${PBXUSER} = ${EXTEN:4} ]?skipself)                        
exten => _PAGE.,n(AVAIL),ChanIsAvail(${DB(PBXUSER/${EXTEN:4}/dial)},s)                 
exten => _PAGE.,n,GotoIf($["${AVAILORIGCHAN}" == ""]?skipself)                         
exten => _PAGE.,n,GotoIf($["${DB(DND/${DB(PBXUSER/${EXTEN:4}/user)})}" = "1"]?skipself)
exten => _PAGE.,n(SKIPCHECK),Macro(autoanswer,${EXTEN:4})                              
exten => _PAGE.,n,Set(__ORIGCHANNEL=${CHANNEL})                                        
exten => _PAGE.,n,Set(__TCHANNEL=${CALLERCHANNEL})                                     
exten => _PAGE.,n,Dial(${DIAL},${DTIME},G(msg))                                                                    
exten => _PAGE.,n(skipself),Hangup                                                                                 
; Dial message helper                                                                                              
exten => _PAGE.,n(msg),Goto(anum,1)                                                    
exten => _PAGE.,n,Goto(cnum)                                                           
; Playback message to called party                                                     
exten => _PAGE.,n(cnum),Set(PAGING_RETRY1=1)                                           
exten => _PAGE.,n,GotoIf($[${PAGING_RETRY1}>1]?final)                                  
exten => _PAGE.,n,Playback(custom/default)                                             
exten => _PAGE.,n,Set(PAGING_RETRY1=$[${PAGING_RETRY1}+1])                             
exten => _PAGE.,n,Goto(13)                                                             
exten => _PAGE.,n(final),Noop(TCHANNEL is ${TCHANNEL})                                 
exten => _PAGE.,n,ChannelRedirect(${TCHANNEL},paging-hangup,hangup,1)                                                                                     
; Playback message to calling party                                              
exten => anum,1,Hangup                                                           
exten => 725,1,Answer                                                            
exten => 725,n,Macro(user-callerid,)                                             
exten => 725,n,Set(_PBXUSER=${PBXUSER})                                          
exten => 725,n,Set(_SIPURI=)                                                           
exten => 725,n,Set(_ALERTINFO=Alert-Info: Ring Answer)                                 
exten => 725,n,Set(_CALLINFO=Call-Info: <uri>\;answer-after=0)                         
exten => 725,n,Set(_SIPURI=intercom=true)                                              
exten => 725,n,Set(_DTIME=30)                                                        
exten => 725,n,Set(_ANSWERMACRO=)                                                               
exten => 725,n,Set(_CALLERCHANNEL=${CHANNEL})                                                 
exten => 725,n,Set(_PAGINGMEMBER=)                                              
exten => 725,n,Set(__FORWARD_CONTEXT=block-cf)                                         
exten => 725,n,Page(Local/PAGE104@auto-page-725&Local/PAGE102@auto-page-725,d)                                                                                                
;--== end of [auto-page-725] ==--; 

[macro-autoanswer]
include => macro-autoanswer-custom
exten => s,1,Set(DIAL=${DB(PBXUSER/${ARG1}/dial)})
exten => s,n,GotoIf($["${DB(PBXUSER/${ARG1}/autoanswer/macro)}" != "" ]?macro)
exten => s,n,Set(phone=${SIPPEER(${CUT(DIAL,/,2)},useragent)})
exten => s,n,ExecIf($["${phone:0:5}" = "Mitel"]?Set(CALLINFO=Call-Info: <sip:broadworks.net>\;answer-after=0))
exten => s,n,ExecIf($["${ALERTINFO}" != ""]?SipAddHeader(${ALERTINFO}))
exten => s,n,ExecIf($["${CALLINFO}" != ""]?SipAddHeader(${CALLINFO}))
exten => s,n,ExecIf($["${SIPURI}" != ""]?Set(__SIP_URI_OPTIONS=${SIPURI}))
exten => s,n+2(macro),Macro(${DB(PBXUSER/${ARG1}/autoanswer/macro)},${ARG1})
;--== end of [macro-autoanswer] ==--;

The above dialing rule implements automatic reply for the normal SIP channel. The SipAddHeader for automatic reply is set in macro-autoanswer, so the extension (e.g. SIP/104) will automatically answer and play the music (e.g. custom/default) after the script runs.

The asterisk log is as follows:

  -- Attempting call on Local/725@paging-channel for 725@auto-page-725:1 (Retry 1)
    -- Executing [725@paging-channel:1] Answer("Local/725@paging-channel-0000000b;2", "") in new stack
       > Channel Local/725@paging-channel-0000000b;1 was answered.
    -- Executing [725@auto-page-725:1] Answer("Local/725@paging-channel-0000000b;1", "") in new stack
    -- Executing [725@auto-page-725:2] Macro("Local/725@paging-channel-0000000b;1", "user-callerid,") in new stack
    -- Executing [s@macro-user-callerid:1] Set("Local/725@paging-channel-0000000b;1", "PBXUSER=") in new stack
    -- Executing [s@macro-user-callerid:2] GotoIf("Local/725@paging-channel-0000000b;1", "0?continue") in new stack
    -- Executing [s@macro-user-callerid:3] ExecIf("Local/725@paging-channel-0000000b;1", "1?Set(REALCALLERIDNUM=AutoPage725)") in new stack
    -- Executing [s@macro-user-callerid:4] Set("Local/725@paging-channel-0000000b;1", "PBXUSER=") in new stack
    -- Executing [s@macro-user-callerid:5] Set("Local/725@paging-channel-0000000b;1", "PBXUSERCIDNAME=") in new stack
    -- Executing [s@macro-user-callerid:6] GotoIf("Local/725@paging-channel-0000000b;1", "1?continue") in new stack
    -- Goto (macro-user-callerid,s,10)
    -- Executing [s@macro-user-callerid:10] Set("Local/725@paging-channel-0000000b;1", "CALLERID(number)=AutoPage725") in new stack
    -- Executing [s@macro-user-callerid:11] Set("Local/725@paging-channel-0000000b;1", "CALLERID(name)=autopage-725") in new stack
    -- Executing [s@macro-user-callerid:12] Set("Local/725@paging-channel-0000000b;1", "USERCONTEXT=""") in new stack
    -- Executing [s@macro-user-callerid:13] NoOp("Local/725@paging-channel-0000000b;1", "Using CallerID == "autopage-725" <AutoPage725> USERCONTEXT == """) in new stack
    -- Executing [725@auto-page-725:3] Set("Local/725@paging-channel-0000000b;1", "_PBXUSER=") in new stack
    -- Executing [725@auto-page-725:4] Set("Local/725@paging-channel-0000000b;1", "_SIPURI=") in new stack
    -- Executing [725@auto-page-725:5] Set("Local/725@paging-channel-0000000b;1", "_ALERTINFO=Alert-Info: Auto Answer") in new stack
    -- Executing [725@auto-page-725:6] Set("Local/725@paging-channel-0000000b;1", "_CALLINFO=Call-Info: <uri>;answer-after=0") in new stack
    -- Executing [725@auto-page-725:7] Set("Local/725@paging-channel-0000000b;1", "_SIPURI=intercom=true") in new stack
    -- Executing [725@auto-page-725:8] Set("Local/725@paging-channel-0000000b;1", "_DTIME=30") in new stack
    -- Executing [725@auto-page-725:9] Set("Local/725@paging-channel-0000000b;1", "_ANSWERMACRO=") in new stack
    -- Executing [725@auto-page-725:10] Set("Local/725@paging-channel-0000000b;1", "_CALLERCHANNEL=Local/725@paging-channel-0000000b;1") in new stack
    -- Executing [725@auto-page-725:11] Set("Local/725@paging-channel-0000000b;1", "_PAGINGMEMBER=") in new stack
    -- Executing [725@auto-page-725:12] Set("Local/725@paging-channel-0000000b;1", "__FORWARD_CONTEXT=block-cf") in new stack
    -- Executing [725@auto-page-725:13] Page("Local/725@paging-channel-0000000b;1", "Local/PAGE104@auto-page-725,d") in new stack
    -- Called PAGE104@auto-page-725
    -- Executing [725@paging-channel:2] Wait("Local/725@paging-channel-0000000b;2", "6") in new stack
    -- <Local/725@paging-channel-0000000b;1> Playing 'beep.gsm' (language 'en')
[2020-04-23 10:31:00] WARNING[6234]: ast_expr2.fl:468 ast_yyerror: ast_yyerror():  syntax error: syntax error, unexpected '=', expecting $end; Input:
  = 104 
  ^
[2020-04-23 10:31:00] WARNING[6234]: ast_expr2.fl:472 ast_yyerror: If you have questions, please refer to https://wiki.asterisk.org/wiki/display/AST/Channel+Variables
    -- Executing [PAGE104@auto-page-725:1] GotoIf("Local/PAGE104@auto-page-725-0000000c;2", "?skipself") in new stack
[2020-04-23 10:31:00] NOTICE[6234]: db.c:338 db_get_common: *buffer is SIP/104
    -- Executing [PAGE104@auto-page-725:2] ChanIsAvail("Local/PAGE104@auto-page-725-0000000c;2", "SIP/104,s") in new stack
  == Using SIP VIDEO TOS bits 136
  == Using SIP VIDEO CoS mark 4
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
    -- Executing [PAGE104@auto-page-725:3] GotoIf("Local/PAGE104@auto-page-725-0000000c;2", "0?skipself") in new stack
[2020-04-23 10:31:00] NOTICE[6234]: db.c:338 db_get_common: *buffer is 104
[2020-04-23 10:31:00] NOTICE[6234]: db.c:338 db_get_common: *buffer is 0
    -- Executing [PAGE104@auto-page-725:4] GotoIf("Local/PAGE104@auto-page-725-0000000c;2", "0?skipself") in new stack
    -- Executing [PAGE104@auto-page-725:5] Macro("Local/PAGE104@auto-page-725-0000000c;2", "autoanswer,104") in new stack
[2020-04-23 10:31:00] NOTICE[6234]: db.c:338 db_get_common: *buffer is SIP/104
    -- Executing [s@macro-autoanswer:1] Set("Local/PAGE104@auto-page-725-0000000c;2", "DIAL=SIP/104") in new stack
    -- Executing [s@macro-autoanswer:2] GotoIf("Local/PAGE104@auto-page-725-0000000c;2", "0?macro") in new stack
    -- Executing [s@macro-autoanswer:3] Set("Local/PAGE104@auto-page-725-0000000c;2", "phone=Fanvil X3S 2.4.0.5487 0c383e09d153") in new stack
    -- Executing [s@macro-autoanswer:4] ExecIf("Local/PAGE104@auto-page-725-0000000c;2", "0?Set(CALLINFO=Call-Info: <sip:broadworks.net>;answer-after=0)") in new stack
    -- Executing [s@macro-autoanswer:5] ExecIf("Local/PAGE104@auto-page-725-0000000c;2", "1?SipAddHeader(Alert-Info: Auto Answer)") in new stack
    -- Executing [s@macro-autoanswer:6] ExecIf("Local/PAGE104@auto-page-725-0000000c;2", "1?SipAddHeader(Call-Info: <uri>;answer-after=0)") in new stack
    -- Executing [s@macro-autoanswer:7] ExecIf("Local/PAGE104@auto-page-725-0000000c;2", "1?Set(__SIP_URI_OPTIONS=intercom=true)") in new stack
    -- Executing [PAGE104@auto-page-725:6] Set("Local/PAGE104@auto-page-725-0000000c;2", "__ORIGCHANNEL=Local/PAGE104@auto-page-725-0000000c;2") in new stack
    -- Executing [PAGE104@auto-page-725:7] Set("Local/PAGE104@auto-page-725-0000000c;2", "__TCHANNEL=Local/725@paging-channel-0000000b;1") in new stack
    -- Executing [PAGE104@auto-page-725:8] Dial("Local/PAGE104@auto-page-725-0000000c;2", "SIP/104,30,G(msg)") in new stack
  == Using SIP VIDEO TOS bits 136
  == Using SIP VIDEO CoS mark 4
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
[2020-04-23 10:31:00] NOTICE[6234]: app_dial.c:2506 dial_exec_full: Called SIP/104
    -- Called SIP/104
    -- SIP/104-00000008 is ringing
    -- Local/PAGE104@auto-page-725-0000000c;1 is ringing
    -- SIP/104-00000008 is ringing
[2020-04-23 10:31:00] WARNING[6232]: channel.c:5765 ast_request: No channel type registered for 'DAHDI'
    -- Created MeetMe conference 1023 for conference '931808743d'
[2020-04-23 10:31:01] WARNING[1428]: chan_sip.c:9290 process_sdp: Ignoring video media offer because port number is zero
    -- SIP/104-00000008 answered Local/PAGE104@auto-page-725-0000000c;2
    -- Executing [PAGE104@auto-page-725:10] Goto("Local/PAGE104@auto-page-725-0000000c;2", "anum,1") in new stack
    -- Goto (auto-page-725,anum,1)
    -- Executing [anum@auto-page-725:1] Hangup("Local/PAGE104@auto-page-725-0000000c;2", "") in new stack
  == Spawn extension (auto-page-725, anum, 1) exited non-zero on 'Local/PAGE104@auto-page-725-0000000c;2'
[2020-04-23 10:31:01] NOTICE[6234]: cdr_sqlite3_custom.c:512 ast_sqlite3_log: line is 512,src is AutoPage725,dst is anum,dcontext is auto-page-725
    -- Executing [PAGE104@auto-page-725:11] Goto("SIP/104-00000008", "cnum") in new stack
    -- Goto (auto-page-725,PAGE104,12)
    -- Executing [PAGE104@auto-page-725:12] Set("SIP/104-00000008", "PAGING_RETRY1=1") in new stack
    -- Executing [PAGE104@auto-page-725:13] GotoIf("SIP/104-00000008", "0?final") in new stack
    -- Executing [PAGE104@auto-page-725:14] Playback("SIP/104-00000008", "custom/default") in new stack
    -- <SIP/104-00000008> Playing 'custom/default.gsm' (language 'en')
[2020-04-23 10:31:01] NOTICE[6234]: cdr_manager.c:174 manager_log: manager->dst:anum
    -- Executing [PAGE104@auto-page-725:15] Set("SIP/104-00000008", "PAGING_RETRY1=2") in new stack
    -- Executing [PAGE104@auto-page-725:16] Goto("SIP/104-00000008", "13") in new stack
    -- Goto (auto-page-725,PAGE104,13)
    -- Executing [PAGE104@auto-page-725:13] GotoIf("SIP/104-00000008", "1?final") in new stack
    -- Goto (auto-page-725,PAGE104,17)
    -- Executing [PAGE104@auto-page-725:17] NoOp("SIP/104-00000008", "TCHANNEL is Local/725@paging-channel-0000000b;1") in new stack
    -- Executing [PAGE104@auto-page-725:18] ChannelRedirect("SIP/104-00000008", "Local/725@paging-channel-0000000b;1,paging-hangup,hangup,1") in new stack
  == Spawn extension (paging-hangup, hangup, 1) exited non-zero on 'Local/725@paging-channel-0000000b;1'
    -- Executing [hangup@paging-hangup:1] Hangup("Local/725@paging-channel-0000000b;1", "") in new stack
  == Spawn extension (paging-hangup, hangup, 1) exited non-zero on 'Local/725@paging-channel-0000000b;1'

Now I am trying to implement automatic reply to the multicast channel. The dialing rules are as follows:

[auto-page-724]                                                                        
include => auto-page-724-custom                                                                                                                                        
exten => _MCST.,1,Noop(mcst is ${EXTEN})                                        
exten => _MCST.,n,Set(__DIALEXTEN=MulticastRTP/basic/${EXTEN:4})                     
exten => _MCST.,n,Set(__ORIGCHANNEL=${CHANNEL})                                                 
exten => _MCST.,n,Set(__TCHANNEL=${CALLERCHANNEL})                                            
exten => _MCST.,n,Dial(${DIALEXTEN},${DTIME},G(msg))                            
; Dial message helper                                                                  
exten => _MCST.,n(msg),Goto(anum,1)                                                    
exten => _MCST.,n,Goto(cnum)                                                    
; Playback message to called party                                                                            
exten => _MCST.,n(cnum),Set(PAGING_RETRY1=1)                                    
exten => _MCST.,n,GotoIf($[${PAGING_RETRY1}>1]?final)                           
exten => _MCST.,n,Playback(custom/default)                                      
exten => _MCST.,n,Set(PAGING_RETRY1=$[${PAGING_RETRY1}+1]) 
exten => _MCST.,n,Goto(9)                                                       
exten => _MCST.,n(final),Noop(TCHANNEL is ${TCHANNEL})                          
exten => _MCST.,n,ChannelRedirect(${TCHANNEL},paging-hangup,hangup,1)           
; Playback message to calling party                                   
exten => anum,1,Hangup                                                
exten => 724,1,Answer                                                 
exten => 724,n,Macro(user-callerid,)                                                                                       
exten => 724,n,Set(_CALLERCHANNEL=${CHANNEL})                                                                                                                    
exten => 724,n,Page(Local/MCST226.1.1.1:245@auto-page-724,q)                                                  
                                                                                
;--== end of [auto-page-724] ==--;

Then I tested it and found that the asterisk log showed that the multicast channel had answered, but the extension that actually subscribed to the multicast IP was not connected. The log is as follows:

    -- Attempting call on Local/724@paging-channel for 724@auto-page-724:1 (Retry 1)
    -- Executing [724@paging-channel:1] Answer("Local/724@paging-channel-00000007;2", "") in new stack
       > Channel Local/724@paging-channel-00000007;1 was answered.
    -- Executing [724@auto-page-724:1] Answer("Local/724@paging-channel-00000007;1", "") in new stack
    -- Executing [724@auto-page-724:2] Macro("Local/724@paging-channel-00000007;1", "user-callerid,") in new stack
    -- Executing [s@macro-user-callerid:1] Set("Local/724@paging-channel-00000007;1", "PBXUSER=") in new stack
    -- Executing [s@macro-user-callerid:2] GotoIf("Local/724@paging-channel-00000007;1", "0?continue") in new stack
    -- Executing [s@macro-user-callerid:3] ExecIf("Local/724@paging-channel-00000007;1", "1?Set(REALCALLERIDNUM=AutoPage724)") in new stack
    -- Executing [s@macro-user-callerid:4] Set("Local/724@paging-channel-00000007;1", "PBXUSER=") in new stack
    -- Executing [s@macro-user-callerid:5] Set("Local/724@paging-channel-00000007;1", "PBXUSERCIDNAME=") in new stack
    -- Executing [s@macro-user-callerid:6] GotoIf("Local/724@paging-channel-00000007;1", "1?continue") in new stack
    -- Goto (macro-user-callerid,s,10)
    -- Executing [s@macro-user-callerid:10] Set("Local/724@paging-channel-00000007;1", "CALLERID(number)=AutoPage724") in new stack
    -- Executing [s@macro-user-callerid:11] Set("Local/724@paging-channel-00000007;1", "CALLERID(name)=autopage-724") in new stack
    -- Executing [s@macro-user-callerid:12] Set("Local/724@paging-channel-00000007;1", "USERCONTEXT=""") in new stack
    -- Executing [s@macro-user-callerid:13] NoOp("Local/724@paging-channel-00000007;1", "Using CallerID == "autopage-724" <AutoPage724> USERCONTEXT == """) in new stack
    -- Executing [724@auto-page-724:3] Set("Local/724@paging-channel-00000007;1", "_PBXUSER=") in new stack
    -- Executing [724@auto-page-724:4] Set("Local/724@paging-channel-00000007;1", "_SIPURI=") in new stack
    -- Executing [724@auto-page-724:5] Set("Local/724@paging-channel-00000007;1", "_ALERTINFO=Alert-Info: Ring Answer") in new stack
    -- Executing [724@auto-page-724:6] Set("Local/724@paging-channel-00000007;1", "_CALLINFO=Call-Info: <uri>;answer-after=0") in new stack
    -- Executing [724@auto-page-724:7] Set("Local/724@paging-channel-00000007;1", "_SIPURI=intercom=true") in new stack
    -- Executing [724@auto-page-724:8] Set("Local/724@paging-channel-00000007;1", "_DTIME=30") in new stack
    -- Executing [724@auto-page-724:9] Set("Local/724@paging-channel-00000007;1", "_ANSWERMACRO=") in new stack
    -- Executing [724@auto-page-724:10] Set("Local/724@paging-channel-00000007;1", "_CALLERCHANNEL=Local/724@paging-channel-00000007;1") in new stack
    -- Executing [724@auto-page-724:11] Set("Local/724@paging-channel-00000007;1", "_PAGINGMEMBER=") in new stack
    -- Executing [724@auto-page-724:12] Set("Local/724@paging-channel-00000007;1", "__FORWARD_CONTEXT=block-cf") in new stack
    -- Executing [724@auto-page-724:13] Page("Local/724@paging-channel-00000007;1", "Local/MCST226.1.1.1:245@auto-page-724,q") in new stack
    -- Called MCST226.1.1.1:245@auto-page-724
[2020-04-23 17:41:00] WARNING[1715]: channel.c:5765 ast_request: No channel type registered for 'DAHDI'
    -- Created MeetMe conference 1023 for conference '497767569d'
    -- Executing [MCST226.1.1.1:245@auto-page-724:1] NoOp("Local/MCST226.1.1.1:245@auto-page-724-00000008;2", "mcst is MCST226.1.1.1:245") in new stack
    -- Executing [MCST226.1.1.1:245@auto-page-724:2] Set("Local/MCST226.1.1.1:245@auto-page-724-00000008;2", "__DIALEXTEN=MulticastRTP/basic/226.1.1.1:245") in new stack
    -- Executing [MCST226.1.1.1:245@auto-page-724:3] Set("Local/MCST226.1.1.1:245@auto-page-724-00000008;2", "__ORIGCHANNEL=Local/MCST226.1.1.1:245@auto-page-724-00000008;2") in new stack
    -- Executing [MCST226.1.1.1:245@auto-page-724:4] Set("Local/MCST226.1.1.1:245@auto-page-724-00000008;2", "__TCHANNEL=Local/724@paging-channel-00000007;1") in new stack
    -- Executing [MCST226.1.1.1:245@auto-page-724:5] Dial("Local/MCST226.1.1.1:245@auto-page-724-00000008;2", "MulticastRTP/basic/226.1.1.1:245,30,G(msg)") in new stack
[2020-04-23 17:41:00] NOTICE[1717]: app_dial.c:2506 dial_exec_full: Called MulticastRTP/basic/226.1.1.1:245
    -- Called MulticastRTP/basic/226.1.1.1:245
    -- MulticastRTP/0x5ee580 answered Local/MCST226.1.1.1:245@auto-page-724-00000008;2
    -- Executing [MCST226.1.1.1:245@auto-page-724:6] Goto("Local/MCST226.1.1.1:245@auto-page-724-00000008;2", "anum,1") in new stack
    -- Goto (auto-page-724,anum,1)
    -- Executing [anum@auto-page-724:1] Hangup("Local/MCST226.1.1.1:245@auto-page-724-00000008;2", "") in new stack
  == Spawn extension (auto-page-724, anum, 1) exited non-zero on 'Local/MCST226.1.1.1:245@auto-page-724-00000008;2'
    -- Executing [724@paging-channel:2] Wait("Local/724@paging-channel-00000007;2", "6") in new stack
[2020-04-23 17:41:00] NOTICE[1717]: cdr_sqlite3_custom.c:512 ast_sqlite3_log: line is 512,src is AutoPage724,dst is anum,dcontext is auto-page-724
    -- Executing [MCST226.1.1.1:245@auto-page-724:7] Goto("MulticastRTP/0x5ee580", "cnum") in new stack
    -- Goto (auto-page-724,MCST226.1.1.1:245,8)
    -- Executing [MCST226.1.1.1:245@auto-page-724:8] Set("MulticastRTP/0x5ee580", "PAGING_RETRY1=1") in new stack
    -- Executing [MCST226.1.1.1:245@auto-page-724:9] GotoIf("MulticastRTP/0x5ee580", "0?final") in new stack
    -- Executing [MCST226.1.1.1:245@auto-page-724:10] Playback("MulticastRTP/0x5ee580", "custom/default") in new stack
    -- <MulticastRTP/0x5ee580> Playing 'custom/default.gsm' (language 'en')
[2020-04-23 17:41:00] NOTICE[1717]: cdr_manager.c:174 manager_log: manager->dst:anum
    -- Executing [MCST226.1.1.1:245@auto-page-724:11] Set("MulticastRTP/0x5ee580", "PAGING_RETRY1=2") in new stack
    -- Executing [MCST226.1.1.1:245@auto-page-724:12] Goto("MulticastRTP/0x5ee580", "9") in new stack
    -- Goto (auto-page-724,MCST226.1.1.1:245,9)
    -- Executing [MCST226.1.1.1:245@auto-page-724:9] GotoIf("MulticastRTP/0x5ee580", "1?final") in new stack
    -- Goto (auto-page-724,MCST226.1.1.1:245,13)
    -- Executing [MCST226.1.1.1:245@auto-page-724:13] NoOp("MulticastRTP/0x5ee580", "TCHANNEL is Local/724@paging-channel-00000007;1") in new stack
    -- Executing [MCST226.1.1.1:245@auto-page-724:14] ChannelRedirect("MulticastRTP/0x5ee580", "Local/724@paging-channel-00000007;1,paging-hangup,hangup,1") in new stack
  == Spawn extension (paging-hangup, hangup, 1) exited non-zero on 'Local/724@paging-channel-00000007;1'
    -- Executing [hangup@paging-hangup:1] Hangup("Local/724@paging-channel-00000007;1", "") in new stack
  == Spawn extension (paging-hangup, hangup, 1) exited non-zero on 'Local/724@paging-channel-00000007;1'
  == Spawn extension (paging-channel, 724, 2) exited non-zero on 'Local/724@paging-channel-00000007;2'

I think the multicast channel should have a default response built-in Settings, because the normal call to the multicast channel (e.g. exten = > 800, 1, Dial (MulticastRTP/basic / 226.1.1.1:1025)) will make the phone automatically reply, and to talk to each other. However, it seems that the script calling the multicast channel cannot be answered automatically. I would appreciate it if anyone could give me some advice.

With multicast there is no call and there is no ability to tell the other side to auto answer. Its behavior is completely up to it as to what it does. It just listens for audio on the multicast address and then reacts to it.

Thank you for your reply. If there is no autoreply for multicast, how do I script to the corresponding multicast address? I can connect to the multicast address when dialing manually, same operation, why can not use script? I hope you can give me some more advice. Thanks.

Your output did not show dialing multicast directly without a script. It showed dialing the endpoints directly. If dialing multicast directly is working and the other isn’t, then compare the difference.

The dialing rules for manual dialing are as follows:

[ext-paging-724]                                                                                                   
include => ext-paging-724-custom             
exten => _MCST.,1,Set(__ORIGCHANNEL=${CHANNEL})               
exten => _MCST.,n,Set(__DIALEXTEN=${EXTEN:4})                                              
exten => _MCST.,n,GotoIf($[ "${ENABLEANNOUNCEMENT}" == "yes" ]?enabled:disabled)
exten => _MCST.,n(enabled),Dial(${DIALEXTEN},${DTIME},G(msg))                   
exten => _MCST.,n(disabled),Dial(${DIALEXTEN},${DTIME},A(beep))                 
exten => _MCST.,n(skipself),Hangup 
; Dial message helper                                                           
exten => _MCST.,n(msg),Goto(callee)                                              
exten => _MCST.,n,Goto(called)                                                   
; Playback message to calling party                                              
exten => _MCST.,n(callee),Noop(This channel is Callee Channel)                   
exten => _MCST.,n(waitagain),Wait(3)                                             
exten => _MCST.,n,Goto(waitagain)                                                
; Playback message to called party                                                     
exten => _MCST.,n(called),Set(PAGING_RETRY1=1)                                         
exten => _MCST.,n,GotoIf($[${PAGING_RETRY1}>1]?final)                                  
exten => _MCST.,n,Playback(custom/default)                                      
exten => _MCST.,n,Set(PAGING_RETRY1=$[${PAGING_RETRY1}+1])                      
exten => _MCST.,n,Goto(13)                                                      
exten => _MCST.,n(final),Noop(${ORIGCHANNEL})                   
exten => _MCST.,n,Bridge(${ORIGCHANNEL})                       
exten => 724,1,Answer                                           
exten => 724,n,Macro(user-callerid,)                                             
exten => 724,n,Set(_PBXUSER=${PBXUSER})                                         
exten => 724,n,Set(_SIPURI=)                                                    
exten => 724,n,Set(_ALERTINFO=Alert-Info: Ring Answer)                          
exten => 724,n,Set(_CALLINFO=Call-Info: <uri>\;answer-after=0)                       
exten => 724,n,Set(_SIPURI=intercom=true)                                                       
exten => 724,n,Set(_DTIME=30)                                                                 
exten => 724,n,Set(_ANSWERMACRO=)                                               
exten => 724,n,Set(_ENABLEANNOUNCEMENT=yes)                                      
exten => 724,n,Set(__FORWARD_CONTEXT=block-cf)                                  
exten => 724,n,Page(Local/MCST226.1.1.1:245@ext-paging-724,q)                   
                                                                                                              
;--== end of [ext-paging-724] ==--; 

asterisk log is as follows:

== Using SIP VIDEO TOS bits 136
  == Using SIP VIDEO CoS mark 4
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
[2020-04-23 17:51:48] NOTICE[1425]: chan_sip.c:23570 handle_request_invite: res 0
    -- Executing [724@from-ext-102:1] Goto("SIP/102-00000008", "ext-paging-724,724,1") in new stack
    -- Goto (ext-paging-724,724,1)
    -- Executing [724@ext-paging-724:1] Answer("SIP/102-00000008", "") in new stack
    -- Executing [724@ext-paging-724:2] Macro("SIP/102-00000008", "user-callerid,") in new stack
    -- Executing [s@macro-user-callerid:1] Set("SIP/102-00000008", "PBXUSER=") in new stack
    -- Executing [s@macro-user-callerid:2] GotoIf("SIP/102-00000008", "0?continue") in new stack
    -- Executing [s@macro-user-callerid:3] ExecIf("SIP/102-00000008", "1?Set(REALCALLERIDNUM=102)") in new stack
[2020-04-23 17:51:48] NOTICE[1777]: db.c:338 db_get_common: *buffer is 102
    -- Executing [s@macro-user-callerid:4] Set("SIP/102-00000008", "PBXUSER=102") in new stack
[2020-04-23 17:51:48] NOTICE[1777]: db.c:338 db_get_common: *buffer is 102
    -- Executing [s@macro-user-callerid:5] Set("SIP/102-00000008", "PBXUSERCIDNAME=102") in new stack
    -- Executing [s@macro-user-callerid:6] GotoIf("SIP/102-00000008", "0?continue") in new stack
    -- Executing [s@macro-user-callerid:7] GotoIf("SIP/102-00000008", "0?continue") in new stack
[2020-04-23 17:51:48] NOTICE[1777]: db.c:338 db_get_common: *buffer is 102
    -- Executing [s@macro-user-callerid:8] Set("SIP/102-00000008", "PBXUSERCID=102") in new stack
    -- Executing [s@macro-user-callerid:9] Set("SIP/102-00000008", "CALLERID(all)="102" <102>") in new stack
    -- Executing [s@macro-user-callerid:10] Set("SIP/102-00000008", "CALLERID(number)=102") in new stack
    -- Executing [s@macro-user-callerid:11] Set("SIP/102-00000008", "CALLERID(name)=102") in new stack
    -- Executing [s@macro-user-callerid:12] Set("SIP/102-00000008", "USERCONTEXT=from-ext-102") in new stack
    -- Executing [s@macro-user-callerid:13] NoOp("SIP/102-00000008", "Using CallerID == "102" <102> USERCONTEXT == from-ext-102") in new stack
    -- Executing [724@ext-paging-724:3] Set("SIP/102-00000008", "_PBXUSER=102") in new stack
    -- Executing [724@ext-paging-724:4] Set("SIP/102-00000008", "_SIPURI=") in new stack
    -- Executing [724@ext-paging-724:5] Set("SIP/102-00000008", "_ALERTINFO=Alert-Info: Ring Answer") in new stack
    -- Executing [724@ext-paging-724:6] Set("SIP/102-00000008", "_CALLINFO=Call-Info: <uri>;answer-after=0") in new stack
    -- Executing [724@ext-paging-724:7] Set("SIP/102-00000008", "_SIPURI=intercom=true") in new stack
    -- Executing [724@ext-paging-724:8] Set("SIP/102-00000008", "_DTIME=30") in new stack
    -- Executing [724@ext-paging-724:9] Set("SIP/102-00000008", "_ANSWERMACRO=") in new stack
    -- Executing [724@ext-paging-724:10] Set("SIP/102-00000008", "_ENABLEANNOUNCEMENT=yes") in new stack
    -- Executing [724@ext-paging-724:11] Set("SIP/102-00000008", "__FORWARD_CONTEXT=block-cf") in new stack
    -- Executing [724@ext-paging-724:12] Page("SIP/102-00000008", "Local/MCST226.1.1.1:245@ext-paging-724,q") in new stack
    -- Called MCST226.1.1.1:245@ext-paging-724
[2020-04-23 17:51:48] WARNING[1777]: channel.c:5765 ast_request: No channel type registered for 'DAHDI'
    -- Created MeetMe conference 1023 for conference '1849300186d'
    -- Executing [MCST226.1.1.1:245@ext-paging-724:1] Set("Local/MCST226.1.1.1:245@ext-paging-724-00000009;2", "__ORIGCHANNEL=Local/MCST226.1.1.1:245@ext-paging-724-00000009;2") in new stack
    -- Executing [MCST226.1.1.1:245@ext-paging-724:2] Set("Local/MCST226.1.1.1:245@ext-paging-724-00000009;2", "__DIALEXTEN=MulticastRTP/basic/226.1.1.1:245") in new stack
    -- Executing [MCST226.1.1.1:245@ext-paging-724:3] GotoIf("Local/MCST226.1.1.1:245@ext-paging-724-00000009;2", "1?enabled:disabled") in new stack
    -- Goto (ext-paging-724,MCST226.1.1.1:245,4)
    -- Executing [MCST226.1.1.1:245@ext-paging-724:4] Dial("Local/MCST226.1.1.1:245@ext-paging-724-00000009;2", "MulticastRTP/basic/226.1.1.1:245,30,G(msg)") in new stack
[2020-04-23 17:51:48] NOTICE[1778]: app_dial.c:2506 dial_exec_full: Called MulticastRTP/basic/226.1.1.1:245
    -- Called MulticastRTP/basic/226.1.1.1:245
    -- MulticastRTP/0x5bc5a0 answered Local/MCST226.1.1.1:245@ext-paging-724-00000009;2
    -- Executing [MCST226.1.1.1:245@ext-paging-724:7] Goto("Local/MCST226.1.1.1:245@ext-paging-724-00000009;2", "callee") in new stack
    -- Goto (ext-paging-724,MCST226.1.1.1:245,9)
    -- Executing [MCST226.1.1.1:245@ext-paging-724:9] NoOp("Local/MCST226.1.1.1:245@ext-paging-724-00000009;2", "This channel is Callee Channel") in new stack
    -- Executing [MCST226.1.1.1:245@ext-paging-724:10] Wait("Local/MCST226.1.1.1:245@ext-paging-724-00000009;2", "3") in new stack
    -- Executing [MCST226.1.1.1:245@ext-paging-724:8] Goto("MulticastRTP/0x5bc5a0", "called") in new stack
    -- Goto (ext-paging-724,MCST226.1.1.1:245,12)
    -- Executing [MCST226.1.1.1:245@ext-paging-724:12] Set("MulticastRTP/0x5bc5a0", "PAGING_RETRY1=1") in new stack
    -- Executing [MCST226.1.1.1:245@ext-paging-724:13] GotoIf("MulticastRTP/0x5bc5a0", "0?final") in new stack
    -- Executing [MCST226.1.1.1:245@ext-paging-724:14] Playback("MulticastRTP/0x5bc5a0", "custom/default") in new stack
    -- <MulticastRTP/0x5bc5a0> Playing 'custom/default.gsm' (language 'en')
    -- Executing [MCST226.1.1.1:245@ext-paging-724:15] Set("MulticastRTP/0x5bc5a0", "PAGING_RETRY1=2") in new stack
    -- Executing [MCST226.1.1.1:245@ext-paging-724:16] Goto("MulticastRTP/0x5bc5a0", "13") in new stack
    -- Goto (ext-paging-724,MCST226.1.1.1:245,13)
    -- Executing [MCST226.1.1.1:245@ext-paging-724:13] GotoIf("MulticastRTP/0x5bc5a0", "1?final") in new stack
    -- Goto (ext-paging-724,MCST226.1.1.1:245,17)
    -- Executing [MCST226.1.1.1:245@ext-paging-724:17] NoOp("MulticastRTP/0x5bc5a0", "Local/MCST226.1.1.1:245@ext-paging-724-00000009;2") in new stack
    -- Executing [MCST226.1.1.1:245@ext-paging-724:18] Bridge("MulticastRTP/0x5bc5a0", "Local/MCST226.1.1.1:245@ext-paging-724-00000009;2") in new stack
  == Spawn extension (ext-paging-724, MCST226.1.1.1:245, 10) exited non-zero on 'Bridge/Local/MCST226.1.1.1:245@ext-paging-724-00000009;2<ZOMBIE>'
    -- Local/MCST226.1.1.1:245@ext-paging-724-00000009;1 answered
[2020-04-23 17:51:50] NOTICE[1780]: features.c:4177 ast_bridge_call: bridge_cdr->dst:
    -- Auto fallthrough, channel 'MulticastRTP/0x5bc5a0' status is 'UNKNOWN'
  == Spawn extension (ext-paging-724, 724, 12) exited non-zero on 'SIP/102-00000008'

The difference between manual dialing and script dialing is: manual dialing, when proceeding to exten => _MCST., n (enabled), Dial ( {DIALEXTEN}, {DTIME}, G (msg)), I let the caller channel keep wait. After the called channel finishes playing music, the caller and the called channel are connected through the Bridge, and finally the caller hangs up to end the call. For automatic dialing, when proceeding to exten => _MCST., n(enabled), Dial ( {DIALEXTEN}, {DTIME}, G (msg)), I directly hang up the caller channel and wait for the called channel after playing music, redirect to hang up.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.