This is driving my clients nuts.
Rebooting all the phones once a day seems to keep it mostly in check, but it seems to be somewhat random about when calls magically drop back to being on-hold.
I got a solid set of logs from it happening at one location and added a few notes:
# Call comes into a ring group and rings the phones:
[2022-09-14 11:33:19] VERBOSE[24619][C-00006628] app_dial.c: PJSIP/4407-00014d07 is ringing
[2022-09-14 11:33:19] VERBOSE[24619][C-00006628] app_dial.c: PJSIP/4405-00014d06 is ringing
[2022-09-14 11:33:19] VERBOSE[24619][C-00006628] app_dial.c: PJSIP/4404-00014d05 is ringing
[2022-09-14 11:33:19] VERBOSE[24619][C-00006628] app_dial.c: PJSIP/4402-00014d04 is ringing
# ext 4402 picks up the call, talks with the caller:
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] app_dial.c: PJSIP/4402-00014d04 answered PJSIP/Twilio-00014d03
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:1] ExecIf("PJSIP/4402-00014d04", "0?Set(CDR(recordingfile)=.wav)") in new stack
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:2] Set("PJSIP/4402-00014d04", "__MACRO_RESULT=") in new stack
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:3] Set("PJSIP/4402-00014d04", "CFIGNORE=") in new stack
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:4] Set("PJSIP/4402-00014d04", "MASTER_CHANNEL(CFIGNORE)=") in new stack
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:5] Set("PJSIP/4402-00014d04", "FORWARD_CONTEXT=from-internal") in new stack
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:6] Set("PJSIP/4402-00014d04", "MASTER_CHANNEL(FORWARD_CONTEXT)=from-internal") in new stack
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:7] Macro("PJSIP/4402-00014d04", "blkvm-clr,") in new stack
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:1] Set("PJSIP/4402-00014d04", "SHARED(BLKVM,PJSIP/Twilio-00014d03)=") in new stack
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:2] Set("PJSIP/4402-00014d04", "GOSUB_RETVAL=") in new stack
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:3] MacroExit("PJSIP/4402-00014d04", "") in new stack
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:8] ExecIf("PJSIP/4402-00014d04", "0?Set(MASTER_CHANNEL(CONNECTEDLINE(num))=4402/sip:[email protected]:55038;ob)") in new stack
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:9] ExecIf("PJSIP/4402-00014d04", "0?Set(MASTER_CHANNEL(CONNECTEDLINE(name))=)") in new stack
[2022-09-14 11:33:22] VERBOSE[25799][C-00006628] bridge_channel.c: Channel PJSIP/4402-00014d04 joined 'simple_bridge' basic-bridge <babb54f0-11a2-443f-ba89-28fab0f2423b>
[2022-09-14 11:33:22] VERBOSE[24619][C-00006628] bridge_channel.c: Channel PJSIP/Twilio-00014d03 joined 'simple_bridge' basic-bridge <babb54f0-11a2-443f-ba89-28fab0f2423b>
# ext 4402 parks the caller:
[2022-09-14 11:33:51] VERBOSE[24619][C-00006628] bridge_channel.c: Channel PJSIP/Twilio-00014d03 left 'simple_bridge' basic-bridge <babb54f0-11a2-443f-ba89-28fab0f2423b>
[2022-09-14 11:33:51] VERBOSE[24619][C-00006628] parking/parking_bridge.c: Parking 'PJSIP/Twilio-00014d03' in 'parkinglot_34' at space 4451
[2022-09-14 11:33:51] VERBOSE[24619][C-00006628] bridge_channel.c: Channel PJSIP/Twilio-00014d03 joined 'holding_bridge' parking-bridge <7f445761-ff5a-4b86-96ad-6b5773c773e1>
[2022-09-14 11:33:51] VERBOSE[24619][C-00006628] res_musiconhold.c: Started music on hold, class 'default', on channel 'PJSIP/Twilio-00014d03'
[2022-09-14 11:33:51] VERBOSE[25799][C-00006628] file.c: <PJSIP/4402-00014d04> Playing 'digits/4.ulaw' (language 'en')
[2022-09-14 11:33:51] VERBOSE[25799][C-00006628] file.c: <PJSIP/4402-00014d04> Playing 'digits/4.ulaw' (language 'en')
[2022-09-14 11:33:51] VERBOSE[25799][C-00006628] file.c: <PJSIP/4402-00014d04> Playing 'digits/5.ulaw' (language 'en')
[2022-09-14 11:33:51] VERBOSE[25799][C-00006628] file.c: <PJSIP/4402-00014d04> Playing 'digits/1.ulaw' (language 'en')
[2022-09-14 11:33:51] VERBOSE[25799][C-00006628] bridge_channel.c: Channel PJSIP/4402-00014d04 left 'simple_bridge' basic-bridge <babb54f0-11a2-443f-ba89-28fab0f2423b>
# corresponding debug logs from ext 4402 during parking:
Sep 14 18:33:22 192.168.142.102 phone: Unknown state in update_call(): call_status.CONNECTING.1.5247-46."REDACTED-CALLER-NAME" <sip:[email protected]\.ne\.svr\.ip>.<sip:[email protected]\.ne\.srv\.ip:5060>.200.OK.active.role.callee.local_info.<sip:[email protected]\.use\.r\.ip;ob
Sep 14 18:33:50 192.168.142.102 xyz: KEY 99-[ c ] 1
Sep 14 18:33:50 192.168.142.102 xyz: AppScreen::redraw()
Sep 14 18:33:50 192.168.142.102 ae: app parking_freepbx shown.
Sep 14 18:33:50 192.168.142.102 ae: cURL::init Method GET Url https://voice.customer.tld:3443/applications.php/parking/main?user=4402&linestate=CONNECTED SSL Secure
Sep 14 18:33:50 192.168.142.102 xyz: KEY 99-[ c ] 0
Sep 14 18:33:51 192.168.142.102 ae: parking_freepbx: Showing page of type action.
Sep 14 18:33:51 192.168.142.102 ae: hiding apps per dbus request.
Sep 14 18:33:51 192.168.142.102 ae: hiding app contacts show failed.
Sep 14 18:33:51 192.168.142.102 ae: hiding app appscreen show failed.
Sep 14 18:33:51 192.168.142.102 ae: hiding app phonemenu show failed.
Sep 14 18:33:51 192.168.142.102 ae: hiding app parking_freepbx show failed.
Sep 14 18:33:51 192.168.142.102 ae: hiding app contactmanager_freepbx show failed.
Sep 14 18:33:51 192.168.142.102 ae: hiding app donotdisturb_freepbx show failed.
Sep 14 18:33:52 192.168.142.102 core[5247]: callbridge: 12:33:52.233 src/broadcom_p .....pjsua_check_snd_dev_idle no-op
Sep 14 18:33:52 192.168.142.102 core[5247]: callbridge: 12:33:52.240 src/state.c .......validate_call_state: Error getting call info for call_id 25
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx: builtin_callapi.js:65: TypeError: undefined is not a function
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx: handler(msg) ;
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx:
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx:
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx:
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx:
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx:
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx:
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx:
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx:
Sep 14 18:33:52 192.168.142.102 core[5247]: callbridge: 12:33:52.298 src/state.c .......validate_call_state: Error getting call info for call_id 25
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx:
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx:
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx:
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx:
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx: ^
Sep 14 18:33:52 192.168.142.102 ae: parking_freepbx: TypeError: undefined is not a function#012 at CALL_NON_FUNCTION (native)#012 at builtin_callapi.js:65:13#012 at Array.forEach (native)#012 at Object.<anonymous> (builtin_callapi.js:64:25)#012 at handle_handled_call
# ext 4402 starts making an outbound call:
Sep 14 18:33:52 192.168.142.102 xyz: KEY 75-[ K ] 1
Sep 14 18:34:53 192.168.142.102 xyz: KEY 52-[ 4 ] 1
Sep 14 18:34:53 192.168.142.102 xyz: KEY 52-[ 4 ] 0
# ext 4404 unparks the call, the caller hears the beep
[2022-09-14 11:34:09] VERBOSE[24619][C-00006628] file.c: <PJSIP/Twilio-00014d03> Playing 'beep.ulaw' (language 'en')
# corresponding debug logs from ext 4404 during parking:
Sep 14 18:34:08 192.168.142.104 ae: cURL::init Method GET Url https://voice.customer.tld:3443/applications.php/parking/main?user=4404&linestate= SSL Secure
Sep 14 18:34:08 192.168.142.104 xyz: KEY 99-[ c ] 0
Sep 14 18:34:08 192.168.142.104 xyz: KEY 49-[ 1 ] 1
Sep 14 18:34:08 192.168.142.104 ae: hiding apps per dbus request.
Sep 14 18:34:08 192.168.142.104 ae: hiding app contacts show failed.
Sep 14 18:34:08 192.168.142.104 ae: hiding app appscreen show failed.
Sep 14 18:34:08 192.168.142.104 ae: hiding app phonemenu show failed.
Sep 14 18:34:08 192.168.142.104 ae: hiding app parking_freepbx show failed.
Sep 14 18:34:08 192.168.142.104 core[3565]: callbridge: 12:34:08.968 src/broadcom_p .pjsua_set_snd_dev no-op
Sep 14 18:34:08 192.168.142.104 ae: hiding app contactmanager_freepbx show failed.
Sep 14 18:34:08 192.168.142.104 ae: hiding app donotdisturb_freepbx show failed.
Sep 14 18:34:09 192.168.142.104 ae: parking_freepbx: Showing page of type directory.
Sep 14 18:34:09 192.168.142.104 xyz: KEY 49-[ 1 ] 0
Sep 14 18:34:10 192.168.142.104 xyz: KEY 75-[ K ] 0
Sep 14 18:34:11 192.168.142.104 phone: call_photo_result cURL error file:/tmp/4451.png event:response.id.guiPho_4451.ResponseType.cURL.InternalErrors.404
Sep 14 18:34:11 192.168.142.104 phone: call_photo_result cURL error file:/tmp/4451.png event:response.id.guiPho_4451.ResponseType.cURL.InternalErrors.404
# Here's where ext 4404 says the caller "magically" went back into park without hitting anything on the phone. Ext 4404 can hear the call drop and starts bringing up the parking menu to connect to the call again:
[2022-09-14 11:34:20] VERBOSE[24619][C-00006628] bridge_channel.c: Channel PJSIP/Twilio-00014d03 left 'simple_bridge' basic-bridge <857056f6-0a3b-45a4-b979-132ed9ed0889>
[2022-09-14 11:34:20] VERBOSE[24619][C-00006628] parking/parking_bridge.c: Parking 'PJSIP/Twilio-00014d03' in 'parkinglot_34' at space 4451
[2022-09-14 11:34:20] VERBOSE[24619][C-00006628] bridge_channel.c: Channel PJSIP/Twilio-00014d03 joined 'holding_bridge' parking-bridge <7f445761-ff5a-4b86-96ad-6b5773c773e1>
[2022-09-14 11:34:20] VERBOSE[24619][C-00006628] res_musiconhold.c: Started music on hold, class 'default', on channel 'PJSIP/Twilio-00014d03'
# corresponding debug logs from ext 4404 showing them picking up the call that magically parked. There is no gap between this and the previous log lines from this extension.
Sep 14 18:34:19 192.168.142.104 ae: cURL::init Method GET Url https://voice.customer.tld:3443/applications.php/parking/main?user=4404&linestate=CONNECTED SSL Secure
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx: Showing page of type action.
Sep 14 18:34:20 192.168.142.104 core[3565]: callbridge: 12:34:20.790 src/broadcom_p .....pjsua_check_snd_dev_idle no-op
Sep 14 18:34:20 192.168.142.104 core[3565]: callbridge: 12:34:20.794 src/state.c .......validate_call_state: Error getting call info for call_id 14
Sep 14 18:34:20 192.168.142.104 core[3565]: callbridge: 12:34:20.798 src/state.c .......validate_call_state: Error getting call info for call_id 14
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx: builtin_callapi.js:65: TypeError: undefined is not a function
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx: handler(msg) ;
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx:
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx:
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx:
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx:
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx:
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx:
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx:
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx:
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx:
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx:
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx:
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx:
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx: ^
Sep 14 18:34:20 192.168.142.104 ae: parking_freepbx: TypeError: undefined is not a function#012 at CALL_NON_FUNCTION (native)#012 at builtin_callapi.js:65:13#012 at Array.forEach (native)#012 at Object.<anonymous> (builtin_callapi.js:64:25)#012 at handle_handled_call
Sep 14 18:34:22 192.168.142.104 xyz: KEY 99-[ c ] 1
Sep 14 18:34:22 192.168.142.104 xyz: AppScreen::redraw()
Sep 14 18:34:22 192.168.142.104 ae: app parking_freepbx shown.
Sep 14 18:34:22 192.168.142.104 ae: cURL::init Method GET Url https://voice.customer.tld:3443/applications.php/parking/main?user=4404&linestate= SSL Secure
Sep 14 18:34:22 192.168.142.104 xyz: KEY 99-[ c ] 0
Sep 14 18:34:22 192.168.142.104 ae: parking_freepbx: Showing page of type directory.
Sep 14 18:34:23 192.168.142.104 xyz: KEY 49-[ 1 ] 1
Sep 14 18:34:23 192.168.142.104 ae: hiding apps per dbus request.
Sep 14 18:34:23 192.168.142.104 ae: hiding app contacts show failed.
Sep 14 18:34:23 192.168.142.104 ae: hiding app appscreen show failed.
Sep 14 18:34:23 192.168.142.104 ae: hiding app phonemenu show failed.
Sep 14 18:34:23 192.168.142.104 ae: hiding app parking_freepbx show failed.
Sep 14 18:34:23 192.168.142.104 ae: hiding app contactmanager_freepbx show failed.
Sep 14 18:34:23 192.168.142.104 ae: hiding app donotdisturb_freepbx show failed.
Sep 14 18:34:23 192.168.142.104 xyz: KEY 49-[ 1 ] 0
Sep 14 18:34:23 192.168.142.104 core[3565]: callbridge: 12:34:23.784 src/broadcom_p .pjsua_set_snd_dev no-op
# ext 4404 successfully picks up the call and everyone hears the beep:
[2022-09-14 11:34:24] VERBOSE[24619][C-00006628] file.c: <PJSIP/Twilio-00014d03> Playing 'beep.ulaw' (language 'en')
# random additional junk in the 4404 debug logs:
Sep 14 18:34:25 192.168.142.104 phone: call_photo_result cURL error file:/tmp/4451.png event:response.id.guiPho_4451.ResponseType.cURL.InternalErrors.404
Sep 14 18:34:26 192.168.142.104 phone: call_photo_result cURL error file:/tmp/4451.png event:response.id.guiPho_4451.ResponseType.cURL.InternalErrors.404
# ext 4404 finishes up quickly with the caller and hangs up:
[2022-09-14 11:36:29] VERBOSE[24619][C-00006628] bridge_channel.c: Channel PJSIP/Twilio-00014d03 left 'simple_bridge' basic-bridge <86d462f8-d4e5-40bf-929e-09825e19bea5>
[2022-09-14 11:36:29] VERBOSE[24619][C-00006628] app_macro.c: Spawn extension (macro-dial, s, 37) exited non-zero on 'PJSIP/Twilio-00014d03' in macro 'dial'
[2022-09-14 11:36:29] VERBOSE[24619][C-00006628] pbx.c: Spawn extension (ext-group, 4401, 18) exited non-zero on 'PJSIP/Twilio-00014d03'
[2022-09-14 11:36:29] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:1] Macro("PJSIP/Twilio-00014d03", "hangupcall,") in new stack
[2022-09-14 11:36:29] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:1] GotoIf("PJSIP/Twilio-00014d03", "1?theend") in new stack
[2022-09-14 11:36:29] VERBOSE[24619][C-00006628] pbx_builtins.c: Goto (macro-hangupcall,s,3)
[2022-09-14 11:36:29] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:3] ExecIf("PJSIP/Twilio-00014d03", "0?Set(CDR(recordingfile)=)") in new stack
[2022-09-14 11:36:29] VERBOSE[24619][C-00006628] pbx.c: Executing [[email protected]:4] Hangup("PJSIP/Twilio-00014d03", "") in new stack
[2022-09-14 11:36:29] VERBOSE[24619][C-00006628] app_macro.c: Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'PJSIP/Twilio-00014d03' in macro 'hangupcall'
[2022-09-14 11:36:29] VERBOSE[24619][C-00006628] pbx.c: Spawn extension (ext-group, h, 1) exited non-zero on 'PJSIP/Twilio-00014d03'
# ext 4404 debug logs from the hang-up:
Sep 14 18:36:29 192.168.142.104 core[3565]: callbridge: 12:36:29.162 sip_transactio !Failed to lock transaction for icmp; ignoring.
Sep 14 18:36:29 192.168.142.104 core[3565]: callbridge: 12:36:29.182 sip_transactio Failed to lock transaction for icmp; ignoring.
Sep 14 18:36:29 192.168.142.104 core[3565]: callbridge: 12:36:29.375 src/broadcom_p ......pjsua_check_snd_dev_idle no-op
Unfortunately there doesn’t appear to be any decent logging at the moment the call magically goes back on hold.
I’ve dug around the call flow and looked at settings and don’t see anything that could be related.
Calls come, match with an inbound route and play an IVR. This caller chose an option that dropped them into a ring group for the phones, and that’s where the asterisk log starts.
Each location has its own private park group (Parking Pro module).