[asterisk-bugs] [JIRA] (ASTERISK-25848) app_queue: Wrong channel in CONNECT and COMPLETECALLER events when call pickup feature code is used
N A (JIRA)
noreply at issues.asterisk.org
Sat Jul 23 16:17:09 CDT 2022
[ https://issues.asterisk.org/jira/browse/ASTERISK-25848?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=259786#comment-259786 ]
N A commented on ASTERISK-25848:
--------------------------------
I can see how this would be problematic, but something to consider:
There isn't anything that necessarily dictates the channel picking up (using *8) is even in the queue. It could be some other random phone.
In that case, what do you show as the answerer? Some endpoint that's not even in the queue?
How do you know if the same agent didn't answer from a different phone, or if it was a different agent at a different phone, or a non-agent altogether? In the first case, what you get here might actually be the desired behavior.
I don't think this is really handled particularly, but adjusting the output for this issue to the other agent would create issues it not done carefully, so it's not clear that this is really a bug per se, just a design choice.
> app_queue: Wrong channel in CONNECT and COMPLETECALLER events when call pickup feature code is used
> ---------------------------------------------------------------------------------------------------
>
> Key: ASTERISK-25848
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-25848
> Project: Asterisk
> Issue Type: Bug
> Security Level: None
> Components: Applications/app_queue
> Affects Versions: 11.18.0, 11.22.0-rc1, 13.18.4
> Environment: Linux Centos
> Reporter: Anton Satskiy
> Assignee: Unassigned
> Severity: Critical
> Attachments: 25848_extensions.txt, 25848_features.txt, 25848_queues.txt, 25848_sip.txt
>
>
> have call in queue it shows that it was answered by 4003
> ============================
> {noformat}
> [root at asterisk ~]# grep --color "1456128646.157422" /var/log/asterisk/queue_log-20160228
> 1456128688|1456128646.157422|800|NONE|ENTERQUEUE||0967145750|2
> 1456128717|1456128646.157422|800|SIP/4003|CONNECT|29|1456128688.157426|28
> 1456128817|1456128646.157422|800|SIP/4003|COMPLETECALLER|29|100|2
> {noformat}
> ============================
> BUT IN FACT call was PICK UPPED by 4001 using features
> {noformat}
> [root at asterisk ~]# grep --color "1456128646.157422" /var/log/asterisk/full-20160228
> [Feb 22 10:11:28] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [~~s~~@mix:2] MSet("SIP/3590640-000209b9", "CDR(recordingfile)=3590640_1456128646.157422") in new stack
> [Feb 22 10:11:28] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [~~s~~@mix:3] MixMonitor("SIP/3590640-000209b9", "3590640_1456128646.157422.wav,b") in new stack
> [root at asterisk ~]# grep --color "C-0000f165" /var/log/asterisk/full-20160228
> [Feb 22 10:10:46] VERBOSE[2070][C-0000f165] netsock2.c: == Using SIP RTP CoS mark 5
> [Feb 22 10:10:46] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at incoming:1] Set("SIP/3590640-000209b9", "CALLERID(name)=RU") in new stack
> [Feb 22 10:10:46] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at incoming:2] GotoIfTime("SIP/3590640-000209b9", "9:00-19:30,mon-fri,*,*?4") in new stack
> [Feb 22 10:10:46] VERBOSE[9760][C-0000f165] pbx.c: -- Goto (incoming,3590640,4)
> [Feb 22 10:10:46] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at incoming:4] Goto("SIP/3590640-000209b9", "working") in new stack
> [Feb 22 10:10:46] VERBOSE[9760][C-0000f165] pbx.c: -- Goto (incoming,3590640,13)
> [Feb 22 10:10:46] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at incoming:13] Progress("SIP/3590640-000209b9", "") in new stack
> [Feb 22 10:10:46] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at incoming:14] MSet("SIP/3590640-000209b9", "EXT=3590640") in new stack
> [Feb 22 10:10:46] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at incoming:15] Set("SIP/3590640-000209b9", "CHANNEL(language)=ru") in new stack
> [Feb 22 10:10:46] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at incoming:16] Playback("SIP/3590640-000209b9", "01_HELLO/01_HELLO") in new stack
> [Feb 22 10:10:46] VERBOSE[9760][C-0000f165] res_rtp_asterisk.c: > 0x7f9b1c19d490 -- Probation passed - setting RTP source address to 95.67.3.3:14380
> [Feb 22 10:10:46] VERBOSE[9760][C-0000f165] file.c: -- <SIP/3590640-000209b9> Playing '01_HELLO/01_HELLO.slin' (language 'ru')
> [Feb 22 10:10:49] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at incoming:17] Wait("SIP/3590640-000209b9", "2") in new stack
> [Feb 22 10:10:51] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at incoming:18] BackGround("SIP/3590640-000209b9", "02_CHOICE_LANGUAGES/02_CHOICE_LANGUAGES") in new stack
> [Feb 22 10:10:51] VERBOSE[9760][C-0000f165] file.c: -- <SIP/3590640-000209b9> Playing '02_CHOICE_LANGUAGES/02_CHOICE_LANGUAGES.slin' (language 'ru')
> [Feb 22 10:10:55] DTMF[9760][C-0000f165] channel.c: DTMF begin '2' received on SIP/3590640-000209b9
> [Feb 22 10:10:55] DTMF[9760][C-0000f165] channel.c: DTMF begin ignored '2' on SIP/3590640-000209b9
> [Feb 22 10:10:55] DTMF[9760][C-0000f165] channel.c: DTMF end '2' received on SIP/3590640-000209b9, duration 260 ms
> [Feb 22 10:10:55] DTMF[9760][C-0000f165] channel.c: DTMF end passthrough '2' on SIP/3590640-000209b9
> [Feb 22 10:11:00] VERBOSE[9760][C-0000f165] pbx.c: == CDR updated on SIP/3590640-000209b9
> [Feb 22 10:11:00] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [2 at incoming:1] Set("SIP/3590640-000209b9", "CHANNEL(language)=ua") in new stack
> [Feb 22 10:11:00] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [2 at incoming:2] Set("SIP/3590640-000209b9", "CALLERID(name)=UA") in new stack
> [Feb 22 10:11:00] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [2 at incoming:3] Goto("SIP/3590640-000209b9", "ua_start,3590640,1") in new stack
> [Feb 22 10:11:00] VERBOSE[9760][C-0000f165] pbx.c: -- Goto (ua_start,3590640,1)
> [Feb 22 10:11:00] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at ua_start:1] Set("SIP/3590640-000209b9", "CHANNEL(language)=ua") in new stack
> [Feb 22 10:11:00] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at ua_start:2] Set("SIP/3590640-000209b9", "TIMEOUT(digit)=3") in new stack
> [Feb 22 10:11:00] VERBOSE[9760][C-0000f165] func_timeout.c: -- Digit timeout set to 3.000
> [Feb 22 10:11:00] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at ua_start:3] BackGround("SIP/3590640-000209b9", "01_QUALITY_OF_THE_SERVICE/01_QUALITY_OF_THE_SERVICE") in new stack
> [Feb 22 10:11:00] VERBOSE[9760][C-0000f165] file.c: -- <SIP/3590640-000209b9> Playing '01_QUALITY_OF_THE_SERVICE/01_QUALITY_OF_THE_SERVICE.slin' (language 'ua')
> [Feb 22 10:11:22] DTMF[9760][C-0000f165] channel.c: DTMF begin '3' received on SIP/3590640-000209b9
> [Feb 22 10:11:22] DTMF[9760][C-0000f165] channel.c: DTMF begin ignored '3' on SIP/3590640-000209b9
> [Feb 22 10:11:22] DTMF[9760][C-0000f165] channel.c: DTMF end '3' received on SIP/3590640-000209b9, duration 240 ms
> [Feb 22 10:11:22] DTMF[9760][C-0000f165] channel.c: DTMF end passthrough '3' on SIP/3590640-000209b9
> [Feb 22 10:11:25] VERBOSE[9760][C-0000f165] pbx.c: == CDR updated on SIP/3590640-000209b9
> [Feb 22 10:11:25] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3 at ua_start:1] Goto("SIP/3590640-000209b9", "ua_step1_3,3590640,1") in new stack
> [Feb 22 10:11:25] VERBOSE[9760][C-0000f165] pbx.c: -- Goto (ua_step1_3,3590640,1)
> [Feb 22 10:11:25] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at ua_step1_3:1] BackGround("SIP/3590640-000209b9", "10_STAY_ONLINE_PLEASE/10_STAY_ONLINE_PLEASE") in new stack
> [Feb 22 10:11:25] VERBOSE[9760][C-0000f165] file.c: -- <SIP/3590640-000209b9> Playing '10_STAY_ONLINE_PLEASE/10_STAY_ONLINE_PLEASE.slin' (language 'ua')
> [Feb 22 10:11:28] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at ua_step1_3:2] Gosub("SIP/3590640-000209b9", "mix,~~s~~,1(3590640)") in new stack
> [Feb 22 10:11:28] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [~~s~~@mix:1] MSet("SIP/3590640-000209b9", "LOCAL(EXT)=3590640") in new stack
> [Feb 22 10:11:28] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [~~s~~@mix:2] MSet("SIP/3590640-000209b9", "CDR(recordingfile)=3590640_1456128646.157422") in new stack
> [Feb 22 10:11:28] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [~~s~~@mix:3] MixMonitor("SIP/3590640-000209b9", "3590640_1456128646.157422.wav,b") in new stack
> [Feb 22 10:11:28] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [~~s~~@mix:4] Return("SIP/3590640-000209b9", "") in new stack
> [Feb 22 10:11:28] VERBOSE[9775][C-0000f165] app_mixmonitor.c: == Begin MixMonitor Recording SIP/3590640-000209b9
> [Feb 22 10:11:28] VERBOSE[9760][C-0000f165] pbx.c: -- Executing [3590640 at ua_step1_3:3] Queue("SIP/3590640-000209b9", "800,Xxt") in new stack
> [Feb 22 10:11:28] VERBOSE[9760][C-0000f165] res_musiconhold.c: -- Started music on hold, class 'default', on SIP/3590640-000209b9
> [Feb 22 10:11:28] VERBOSE[9760][C-0000f165] netsock2.c: == Using SIP RTP CoS mark 5
> [Feb 22 10:11:28] VERBOSE[9760][C-0000f165] app_queue.c: -- Called SIP/4003
> [Feb 22 10:11:28] VERBOSE[9760][C-0000f165] app_queue.c: -- SIP/4003-000209bd is ringing
> [Feb 22 10:11:57] VERBOSE[9760][C-0000f165] app_queue.c: -- SIP/4001-000209c3 answered SIP/3590640-000209b9
> [Feb 22 10:11:57] VERBOSE[9760][C-0000f165] res_musiconhold.c: -- Stopped music on hold on SIP/3590640-000209b9
> [Feb 22 10:13:37] VERBOSE[9760][C-0000f165] pbx.c: == Spawn extension (ua_step1_3, 3590640, 3) exited non-zero on 'SIP/3590640-000209b9'
> [Feb 22 10:13:37] VERBOSE[9775][C-0000f165] app_mixmonitor.c: == MixMonitor close filestream (mixed)
> [Feb 22 10:13:37] VERBOSE[9775][C-0000f165] app_mixmonitor.c: == End MixMonitor Recording SIP/3590640-000209b9
> {noformat}
> My features
> Pickup *8
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list