GXP1405 handset suddenly refusing inbound calls

Hi Guys.

I’ve got asterisk 1.8.28.0 running under Centos 6.5 (yes, I know its old, an upgrade is in the works) and I’ve got a few Grandstream GXP 1405 handsets along with a few Yealink SIP-T19E handsets.

Everything has been working perfectly for about a year, until one day a user said they aren’t getting any incoming calls. I verified it - it goes straight to voicemail (I.e. “The person at extension *** is on the phone”). I’ve captured the asterisk log below.

So far, I’ve done a full factory reset of the phone (several times) and re-provisioned it - no cigar. I’ve enabled auto answer on the handset from the web interface to see if it’ll pick up - nope, still "Person at extension *** is on the phone). The phone call however call out - that functionality works perfectly.

Any insights?

  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
    -- Executing [102@from-internal:1] Set("SIP/100-00000497", "__RINGTIMER=15") in new stack
    -- Executing [102@from-internal:2] Macro("SIP/100-00000497", "exten-vm,102,102,0,0,0") in new stack
    -- Executing [s@macro-exten-vm:1] Macro("SIP/100-00000497", "user-callerid,") in new stack
    -- Executing [s@macro-user-callerid:1] Set("SIP/100-00000497", "TOUCH_MONITOR=1589331401.242961") in new stack
    -- Executing [s@macro-user-callerid:2] Set("SIP/100-00000497", "AMPUSER=100") in new stack
    -- Executing [s@macro-user-callerid:3] GotoIf("SIP/100-00000497", "0?report") in new stack
    -- Executing [s@macro-user-callerid:4] ExecIf("SIP/100-00000497", "1?Set(REALCALLERIDNUM=100)") in new stack
    -- Executing [s@macro-user-callerid:5] Set("SIP/100-00000497", "AMPUSER=100") in new stack
    -- Executing [s@macro-user-callerid:6] GotoIf("SIP/100-00000497", "0?limit") in new stack
    -- Executing [s@macro-user-callerid:7] Set("SIP/100-00000497", "AMPUSERCIDNAME=Wendy (100)") in new stack
    -- Executing [s@macro-user-callerid:8] GotoIf("SIP/100-00000497", "0?report") in new stack
    -- Executing [s@macro-user-callerid:9] Set("SIP/100-00000497", "AMPUSERCID=100") in new stack
    -- Executing [s@macro-user-callerid:10] Set("SIP/100-00000497", "__DIAL_OPTIONS=tr") in new stack
    -- Executing [s@macro-user-callerid:11] Set("SIP/100-00000497", "CALLERID(all)="Wendy (100)" <100>") in new stack
    -- Executing [s@macro-user-callerid:12] GotoIf("SIP/100-00000497", "0?limit") in new stack
    -- Executing [s@macro-user-callerid:13] ExecIf("SIP/100-00000497", "0?Set(GROUP(concurrency_limit)=100)") in new stack
    -- Executing [s@macro-user-callerid:14] GosubIf("SIP/100-00000497", "7?sub-ccss,s,1(macro-exten-vm,102)") in new stack
    -- Executing [s@sub-ccss:1] ExecIf("SIP/100-00000497", "0?Return()") in new stack
    -- Executing [s@sub-ccss:2] Set("SIP/100-00000497", "CCSS_SETUP=TRUE") in new stack
    -- Executing [s@sub-ccss:3] GosubIf("SIP/100-00000497", "7?monitor_config,1(macro-exten-vm,102):monitor_default,1(macro-exten-vm,102)") in new stack
    -- Executing [monitor_config@sub-ccss:1] Set("SIP/100-00000497", "CALLCOMPLETION(cc_monitor_policy)=generic") in new stack
    -- Executing [monitor_config@sub-ccss:2] GotoIf("SIP/100-00000497", "1?set_monitor") in new stack
    -- Goto (sub-ccss,monitor_config,5)
    -- Executing [monitor_config@sub-ccss:5] Set("SIP/100-00000497", "CALLCOMPLETION(cc_max_monitors)=") in new stack
    -- Executing [monitor_config@sub-ccss:6] Return("SIP/100-00000497", "TRUE") in new stack
    -- Executing [s@sub-ccss:4] GosubIf("SIP/100-00000497", "7?agent_config,1():agent_default,1()") in new stack
    -- Executing [agent_config@sub-ccss:1] Set("SIP/100-00000497", "CALLCOMPLETION(cc_agent_policy)=generic") in new stack
    -- Executing [agent_config@sub-ccss:2] Set("SIP/100-00000497", "CALLCOMPLETION(cc_offer_timer)=30") in new stack
    -- Executing [agent_config@sub-ccss:3] Set("SIP/100-00000497", "CALLCOMPLETION(ccbs_available_timer)=") in new stack
    -- Executing [agent_config@sub-ccss:4] Set("SIP/100-00000497", "CALLCOMPLETION(ccnr_available_timer)=") in new stack
    -- Executing [agent_config@sub-ccss:5] Set("SIP/100-00000497", "CALLCOMPLETION(cc_callback_macro)=ccss-default") in new stack
    -- Executing [agent_config@sub-ccss:6] ExecIf("SIP/100-00000497", "1?Set(CALLCOMPLETION(cc_recall_timer)=)") in new stack
    -- Executing [agent_config@sub-ccss:7] ExecIf("SIP/100-00000497", "1?Set(CALLCOMPLETION(cc_max_agents)=)") in new stack
    -- Executing [agent_config@sub-ccss:8] ExecIf("SIP/100-00000497", "0?Set(CALLCOMPLETION(cc_agent_dialstring)=Local/100_102@from-ccss-)") in new stack
    -- Executing [agent_config@sub-ccss:9] Set("SIP/100-00000497", "CALLCOMPLETION(cc_callback_macro)=ccss-default") in new stack
    -- Executing [agent_config@sub-ccss:10] Return("SIP/100-00000497", "") in new stack
    -- Executing [s@sub-ccss:5] Set("SIP/100-00000497", "DB(AMPUSER/100/ccss/last_number)=102") in new stack
    -- Executing [s@sub-ccss:6] Return("SIP/100-00000497", "") in new stack
    -- Executing [s@macro-user-callerid:15] ExecIf("SIP/100-00000497", "0?Set(CHANNEL(language)=)") in new stack
    -- Executing [s@macro-user-callerid:16] GotoIf("SIP/100-00000497", "0?continue") in new stack
    -- Executing [s@macro-user-callerid:17] Set("SIP/100-00000497", "__TTL=64") in new stack
    -- Executing [s@macro-user-callerid:18] GotoIf("SIP/100-00000497", "1?continue") in new stack
    -- Goto (macro-user-callerid,s,29)
    -- Executing [s@macro-user-callerid:29] Set("SIP/100-00000497", "CALLERID(number)=100") in new stack
    -- Executing [s@macro-user-callerid:30] Set("SIP/100-00000497", "CALLERID(name)=Wendy (100)") in new stack
    -- Executing [s@macro-user-callerid:31] Set("SIP/100-00000497", "CDR(cnum)=100") in new stack
    -- Executing [s@macro-user-callerid:32] Set("SIP/100-00000497", "CDR(cnam)=Wendy (100)") in new stack
    -- Executing [s@macro-user-callerid:33] Set("SIP/100-00000497", "CHANNEL(language)=en") in new stack
    -- Executing [s@macro-exten-vm:2] Set("SIP/100-00000497", "RingGroupMethod=none") in new stack
    -- Executing [s@macro-exten-vm:3] Set("SIP/100-00000497", "__EXTTOCALL=102") in new stack
    -- Executing [s@macro-exten-vm:4] Set("SIP/100-00000497", "__PICKUPMARK=102") in new stack
    -- Executing [s@macro-exten-vm:5] Set("SIP/100-00000497", "RT=15") in new stack
    -- Executing [s@macro-exten-vm:6] Gosub("SIP/100-00000497", "sub-record-check,s,1(exten,102,dontcare)") in new stack
    -- Executing [s@sub-record-check:1] GotoIf("SIP/100-00000497", "0?initialized") in new stack
    -- Executing [s@sub-record-check:2] Set("SIP/100-00000497", "__REC_STATUS=INITIALIZED") in new stack
    -- Executing [s@sub-record-check:3] Set("SIP/100-00000497", "NOW=1589331401") in new stack
    -- Executing [s@sub-record-check:4] Set("SIP/100-00000497", "__DAY=13") in new stack
    -- Executing [s@sub-record-check:5] Set("SIP/100-00000497", "__MONTH=05") in new stack
    -- Executing [s@sub-record-check:6] Set("SIP/100-00000497", "__YEAR=2020") in new stack
    -- Executing [s@sub-record-check:7] Set("SIP/100-00000497", "__TIMESTR=20200513-125641") in new stack
    -- Executing [s@sub-record-check:8] Set("SIP/100-00000497", "__FROMEXTEN=100") in new stack
    -- Executing [s@sub-record-check:9] Set("SIP/100-00000497", "__MON_FMT=wav") in new stack
    -- Executing [s@sub-record-check:10] NoOp("SIP/100-00000497", "Recordings initialized") in new stack
    -- Executing [s@sub-record-check:11] ExecIf("SIP/100-00000497", "0?Set(ARG3=dontcare)") in new stack
    -- Executing [s@sub-record-check:12] Set("SIP/100-00000497", "REC_POLICY_MODE_SAVE=") in new stack
    -- Executing [s@sub-record-check:13] ExecIf("SIP/100-00000497", "0?Set(REC_STATUS=NO)") in new stack
    -- Executing [s@sub-record-check:14] GotoIf("SIP/100-00000497", "5?checkaction") in new stack
    -- Goto (sub-record-check,s,17)
    -- Executing [s@sub-record-check:17] GotoIf("SIP/100-00000497", "1?sub-record-check,exten,1") in new stack
    -- Goto (sub-record-check,exten,1)
    -- Executing [exten@sub-record-check:1] NoOp("SIP/100-00000497", "Exten Recording Check between 100 and 102") in new stack
    -- Executing [exten@sub-record-check:2] Set("SIP/100-00000497", "CALLTYPE=internal") in new stack
    -- Executing [exten@sub-record-check:3] ExecIf("SIP/100-00000497", "0?Set(CALLTYPE=)") in new stack
    -- Executing [exten@sub-record-check:4] Set("SIP/100-00000497", "CALLEE=dontcare") in new stack
    -- Executing [exten@sub-record-check:5] ExecIf("SIP/100-00000497", "0?Set(CALLEE=dontcare)") in new stack
    -- Executing [exten@sub-record-check:6] GotoIf("SIP/100-00000497", "0?callee") in new stack
    -- Executing [exten@sub-record-check:7] GotoIf("SIP/100-00000497", "1?caller") in new stack
    -- Goto (sub-record-check,exten,13)
    -- Executing [exten@sub-record-check:13] Set("SIP/100-00000497", "RECMODE=dontcare") in new stack
    -- Executing [exten@sub-record-check:14] ExecIf("SIP/100-00000497", "0?Set(RECMODE=dontcare)") in new stack
    -- Executing [exten@sub-record-check:15] ExecIf("SIP/100-00000497", "1?Set(RECMODE=dontcare)") in new stack
    -- Executing [exten@sub-record-check:16] Gosub("SIP/100-00000497", "recordcheck,1(dontcare,internal,102)") in new stack
    -- Executing [recordcheck@sub-record-check:1] NoOp("SIP/100-00000497", "Starting recording check against dontcare") in new stack
    -- Executing [recordcheck@sub-record-check:2] Goto("SIP/100-00000497", "dontcare") in new stack
    -- Goto (sub-record-check,recordcheck,3)
    -- Executing [recordcheck@sub-record-check:3] Return("SIP/100-00000497", "") in new stack
    -- Executing [exten@sub-record-check:17] Return("SIP/100-00000497", "") in new stack
    -- Executing [s@macro-exten-vm:7] Macro("SIP/100-00000497", "dial-one,15,tr,102") in new stack
    -- Executing [s@macro-dial-one:1] Set("SIP/100-00000497", "DEXTEN=102") in new stack
    -- Executing [s@macro-dial-one:2] Set("SIP/100-00000497", "DIALSTATUS_CW=") in new stack
    -- Executing [s@macro-dial-one:3] GosubIf("SIP/100-00000497", "0?screen,1()") in new stack
    -- Executing [s@macro-dial-one:4] GosubIf("SIP/100-00000497", "0?cf,1()") in new stack
    -- Executing [s@macro-dial-one:5] GotoIf("SIP/100-00000497", "0?skip1") in new stack
    -- Executing [s@macro-dial-one:6] Set("SIP/100-00000497", "DEXTEN=") in new stack
    -- Executing [s@macro-dial-one:7] Set("SIP/100-00000497", "DIALSTATUS=BUSY") in new stack
    -- Executing [s@macro-dial-one:8] GotoIf("SIP/100-00000497", "1?nodial") in new stack
    -- Goto (macro-dial-one,s,49)
    -- Executing [s@macro-dial-one:49] ExecIf("SIP/100-00000497", "0?Set(DIALSTATUS=NOANSWER)") in new stack
    -- Executing [s@macro-dial-one:50] NoOp("SIP/100-00000497", "Returned from dial-one with nothing to call and DIALSTATUS: BUSY") in new stack
    -- Executing [s@macro-dial-one:51] MacroExit("SIP/100-00000497", "") in new stack
    -- Executing [s@macro-exten-vm:8] Set("SIP/100-00000497", "SV_DIALSTATUS=BUSY") in new stack
    -- Executing [s@macro-exten-vm:9] GosubIf("SIP/100-00000497", "0?docfu,1()") in new stack
    -- Executing [s@macro-exten-vm:10] GosubIf("SIP/100-00000497", "0?docfb,1()") in new stack
    -- Executing [s@macro-exten-vm:11] Set("SIP/100-00000497", "DIALSTATUS=BUSY") in new stack
    -- Executing [s@macro-exten-vm:12] ExecIf("SIP/100-00000497", "0?MacroExit()") in new stack
    -- Executing [s@macro-exten-vm:13] GotoIf("SIP/100-00000497", "0?s-BUSY,1") in new stack
    -- Executing [s@macro-exten-vm:14] Macro("SIP/100-00000497", "vm,102,BUSY,") in new stack
    -- Executing [s@macro-vm:1] Macro("SIP/100-00000497", "user-callerid,SKIPTTL") in new stack
    -- Executing [s@macro-user-callerid:1] Set("SIP/100-00000497", "TOUCH_MONITOR=1589331401.242961") in new stack
    -- Executing [s@macro-user-callerid:2] Set("SIP/100-00000497", "AMPUSER=100") in new stack
    -- Executing [s@macro-user-callerid:3] GotoIf("SIP/100-00000497", "11?report") in new stack
    -- Goto (macro-user-callerid,s,16)
    -- Executing [s@macro-user-callerid:16] GotoIf("SIP/100-00000497", "1?continue") in new stack
    -- Goto (macro-user-callerid,s,29)
    -- Executing [s@macro-user-callerid:29] Set("SIP/100-00000497", "CALLERID(number)=100") in new stack
    -- Executing [s@macro-user-callerid:30] Set("SIP/100-00000497", "CALLERID(name)=Wendy (100)") in new stack
    -- Executing [s@macro-user-callerid:31] Set("SIP/100-00000497", "CDR(cnum)=100") in new stack
    -- Executing [s@macro-user-callerid:32] Set("SIP/100-00000497", "CDR(cnam)=Wendy (100)") in new stack
    -- Executing [s@macro-user-callerid:33] Set("SIP/100-00000497", "CHANNEL(language)=en") in new stack
    -- Executing [s@macro-vm:2] Set("SIP/100-00000497", "VMGAIN=") in new stack
    -- Executing [s@macro-vm:3] Macro("SIP/100-00000497", "blkvm-check,") in new stack
    -- Executing [s@macro-blkvm-check:1] Set("SIP/100-00000497", "GOSUB_RETVAL=") in new stack
    -- Executing [s@macro-blkvm-check:2] ExecIf("SIP/100-00000497", "0?Set(GOSUB_RETVAL=TRUE)") in new stack
    -- Executing [s@macro-blkvm-check:3] MacroExit("SIP/100-00000497", "") in new stack
    -- Executing [s@macro-vm:4] GotoIf("SIP/100-00000497", "1?vmx,1") in new stack
    -- Goto (macro-vm,vmx,1)
    -- Executing [vmx@macro-vm:1] Set("SIP/100-00000497", "MEXTEN=102") in new stack
    -- Executing [vmx@macro-vm:2] Set("SIP/100-00000497", "MMODE=BUSY") in new stack
    -- Executing [vmx@macro-vm:3] Set("SIP/100-00000497", "RETVM=") in new stack
    -- Executing [vmx@macro-vm:4] Set("SIP/100-00000497", "MODE=busy") in new stack
    -- Executing [vmx@macro-vm:5] Macro("SIP/100-00000497", "get-vmcontext,102") in new stack
    -- Executing [s@macro-get-vmcontext:1] Set("SIP/100-00000497", "VMCONTEXT=default") in new stack
    -- Executing [s@macro-get-vmcontext:2] GotoIf("SIP/100-00000497", "0?200:300") in new stack
    -- Goto (macro-get-vmcontext,s,300)
    -- Executing [s@macro-get-vmcontext:300] NoOp("SIP/100-00000497", "") in new stack
    -- Executing [vmx@macro-vm:6] Set("SIP/100-00000497", "MODE=busy") in new stack
    -- Executing [vmx@macro-vm:7] NoOp("SIP/100-00000497", "MODE IS: busy") in new stack
    -- Executing [vmx@macro-vm:8] GotoIf("SIP/100-00000497", "1?chknomsg") in new stack
    -- Goto (macro-vm,vmx,10)
    -- Executing [vmx@macro-vm:10] GotoIf("SIP/100-00000497", "0?s-BUSY,1") in new stack
    -- Executing [vmx@macro-vm:11] GotoIf("SIP/100-00000497", "1?notdirect") in new stack
    -- Goto (macro-vm,vmx,13)
    -- Executing [vmx@macro-vm:13] NoOp("SIP/100-00000497", "Checking if ext 102 is enabled: ") in new stack
    -- Executing [vmx@macro-vm:14] GotoIf("SIP/100-00000497", "1?s-BUSY,1") in new stack
    -- Goto (macro-vm,s-BUSY,1)
    -- Executing [s-BUSY@macro-vm:1] NoOp("SIP/100-00000497", "BUSY voicemail") in new stack
    -- Executing [s-BUSY@macro-vm:2] Macro("SIP/100-00000497", "get-vmcontext,102") in new stack
    -- Executing [s@macro-get-vmcontext:1] Set("SIP/100-00000497", "VMCONTEXT=default") in new stack
    -- Executing [s@macro-get-vmcontext:2] GotoIf("SIP/100-00000497", "0?200:300") in new stack
    -- Goto (macro-get-vmcontext,s,300)
    -- Executing [s@macro-get-vmcontext:300] NoOp("SIP/100-00000497", "") in new stack
    -- Executing [s-BUSY@macro-vm:3] VoiceMail("SIP/100-00000497", "102@default,b") in new stack
    -- <SIP/100-00000497> Playing 'vm-theperson.gsm' (language 'en')
    -- <SIP/100-00000497> Playing 'digits/1.gsm' (language 'en')
    -- <SIP/100-00000497> Playing 'digits/0.gsm' (language 'en')
    -- <SIP/100-00000497> Playing 'digits/2.gsm' (language 'en')
  == Spawn extension (macro-vm, s-BUSY, 3) exited non-zero on 'SIP/100-00000497' in macro 'vm'
  == Spawn extension (macro-exten-vm, s, 14) exited non-zero on 'SIP/100-00000497' in macro 'exten-vm'
  == Spawn extension (from-internal, 102, 2) exited non-zero on 'SIP/100-00000497'
    -- Executing [h@from-internal:1] Hangup("SIP/100-00000497", "") in new stack
  == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/100-00000497'

-- Executing [s@macro-dial-one:1] Set("SIP/100-00000497", "DEXTEN=102") in new stack
-- Executing [s@macro-dial-one:2] Set("SIP/100-00000497", "DIALSTATUS_CW=") in new stack
-- Executing [s@macro-dial-one:3] GosubIf("SIP/100-00000497", "0?screen,1()") in new stack
-- Executing [s@macro-dial-one:4] GosubIf("SIP/100-00000497", "0?cf,1()") in new stack
-- Executing [s@macro-dial-one:5] GotoIf("SIP/100-00000497", "0?skip1") in new stack
-- Executing [s@macro-dial-one:6] Set("SIP/100-00000497", "DEXTEN=") in new stack
-- Executing [s@macro-dial-one:7] Set("SIP/100-00000497", "DIALSTATUS=BUSY") in new stack
-- Executing [s@macro-dial-one:8] GotoIf("SIP/100-00000497", "1?nodial") in new stack
-- Goto (macro-dial-one,s,49)
-- Executing [s@macro-dial-one:49] ExecIf("SIP/100-00000497", "0?Set(DIALSTATUS=NOANSWER)") in new stack
-- Executing [s@macro-dial-one:50] NoOp("SIP/100-00000497", "Returned from dial-one with nothing to call and DIALSTATUS: BUSY") in new stack
-- Executing [s@macro-dial-one:51] MacroExit("SIP/100-00000497", "") in new stack

There is no dial attempt to the SIP device 102, mybe it checks the device status before attempt to dial

With a complex dialplan, like this, you need to get support from the people who wrote it (in particular, this forum does not support FreePBX dialplans).

If that person isn’t traceable, it will be necessary to see the source code of the dialplan, as the trace ford not show the structure of function calls and expressions and the names of variables.

This may be a dumb thing to say, but we have run into this multiple times with our phones, and the problem turned out to be that somewhat had toggled the Transfer button on the phone. In one case, the phone had been moved and someone had inadvertently put their thumb on the button in transport.
sometimes the answer is simple.

If it isn’t, I’m no help :wink:

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