[Home]

Summary:ASTERISK-12157: Transfer if use AgentLogin func not prop. work
Reporter:Badalian Vyacheslav (slavon)Labels:
Date Opened:2008-06-07 01:40:37Date Closed:2011-06-07 14:08:14
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Applications/app_queue
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:Hello.

my feature map
[featuremap]
blindxfer => *3
disconnect => *0
automon => *1
atxfer => *2

Have agent 1001 that login by AgentLogin function
Situation:
1. User call to Queue "BT"
2. Agent get call.
3. Agent try atend transfer (call *2... endcall=no in agents.conf)
4. Try transfer to num 204
5. 204 up line

NOW QUESTION:
1. If Agent Drop Line - call is transfer BUT in QUEUE_LOG not have any messages about agent LOGOFF or CallEND then transfered call is end!  BlackHole... (ps. out agent must describe all its logoff and logoff at any transfer is bad idea)
2. If Agent not drop line  it cat call to *0 to dismiss transfer but it CAN'T ACCEPT it by pressing any button to get next calls in queue...

I think need
1. Add CallEnd queue log event (after its end at transfered end) and logoff if agent drop line
2. Add feature map to accept atnd. transfer

Thanks!
Comments:By: Mark Michelson (mmichelson) 2008-06-10 17:50:47

Hi slavon, I'm not 100% sure I understand what the problem is. I'll address each of your points:

<pre>
"1. If Agent Drop Line - call is transfer BUT in QUEUE_LOG not have any messages about agent LOGOFF or CallEND then transfered call is end! BlackHole... (ps. out agent must describe all its logoff and logoff at any transfer is bad idea)"
</pre>

If I understand you here, you're saying that if the agent hangs up, there are no entries in the queue log indicating the agent logged off or that the call ended. When I tried this, I had the following two lines in my queue_log file:

<pre>
1213137228|1213137147.1|CurlyQueue|Agent/1000|COMPLETECALLER|1|80|1
1213137228|1213137137.0|NONE|Agent/1000|AGENTLOGOFF|SIP/666-008d54c0|94
</pre>

There are COMPLETECALLER and AGENTLOGOFF events listed as soon as the transfer is completed. If you are expecting events to be in the queue_log after the transferred call has completed, then that is different. There is no way for app_queue to know about when 204 has finished talking to the caller because the bridge between the agent and the caller is broken when the transfer occurs.

<pre>
"2. If Agent not drop line it cat call to *0 to dismiss transfer but it CAN'T ACCEPT it by pressing any button to get next calls in queue..."
</pre>

I tried recreating this situation, too. I pressed *0 after the far end (204 in your case) picked up. The transfer was successful, the agent stayed logged in, and a COMPLETECALLER event was logged in the queue_log. All of this seems normal to me.

By: Badalian Vyacheslav (slavon) 2008-06-18 07:24:50

hmmm...

i comfirm that example 1 was wrong... i can't catch its again...

about example 2:
if i press *0 - call return alltime to agent...

in debug i see:
[Jun 18 15:57:02] DEBUG[17380] channel.c: Bridge stops bridging channels Agent/1001 and Local/204@office-mosk-1001,1
[Jun 18 15:57:02] DEBUG[17380] res_features.c: Feature interpret: chan=Agent/1001, peer=Local/204@office-mosk-1001,1, code=*0, sense=1, features=4 dynamic=(null)
[Jun 18 15:57:02] DEBUG[17380] channel.c: Hanging up channel 'Local/204@office-mosk-1001,1'

if agent drop line (put down phone) - the transfer was successful but in Queue_log no information about transfer... simple end of call, but call transfered by Asterisk feature...

i also try use *2 to complite transfer (its logic becouse i allready in transfer init state and next use function must end use it or complite...) and its try retransfer second side to therd side! wow! =)

By: Badalian Vyacheslav (slavon) 2008-07-03 06:20:57

Now i use dynamic members... close report please...

By: Mark Michelson (mmichelson) 2008-07-03 08:49:50

Closing at request of reporter.