Yate Community Forum

Yate server => Yate bugs => Topic started by: rodrigopassos on August 21, 2013, 08:41:06 PM

Title: Wave channel can't hangup
Post by: rodrigopassos on August 21, 2013, 08:41:06 PM
Hi Yate,

I have a problem after play an invalid message.
The message are played after routing script check the called number isn't in the database.
In attached, follow the last core dump.
The sniffer is:
Sniffed 'chan.startup' time=1377127841.577546
  thread=0x20b6550 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['id'] = 'sip/1199'
  param['module'] = 'sip'
  param['status'] = 'incoming'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['answered'] = 'false'
  param['direction'] = 'incoming'
  param['domain'] = '200.142.110.150'
  param['callid'] = 'sip/54cb09255dc587a0534b497873c49000@187.16.77.18/1a6e83b8/'
  param['caller'] = '35508743'
  param['called'] = '1'
Returned false 'chan.startup' delay=0.000687
  thread=0x20b6550 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['id'] = 'sip/1199'
  param['module'] = 'sip'
  param['status'] = 'incoming'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['answered'] = 'false'
  param['direction'] = 'incoming'
  param['domain'] = '200.142.110.150'
  param['callid'] = 'sip/54cb09255dc587a0534b497873c49000@187.16.77.18/1a6e83b8/'
  param['caller'] = '35508743'
  param['called'] = '1'
  param['handlers'] = 'javascript:15,cdrbuild:50'

Sniffed 'call.cdr' time=1377127841.578189 (broadcast)
  thread=0x20b6550 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['time'] = '1377127841.578'
  param['chan'] = 'sip/1199'
  param['cdrid'] = '1322'
  param['runid'] = '1377120718'
  param['operation'] = 'initialize'
  param['direction'] = 'incoming'
  param['duration'] = '0.001'
  param['billtime'] = '0.000'
  param['ringtime'] = '0.000'
  param['status'] = 'incoming'
  param['external'] = '35508743'
  param['cdrwrite'] = 'true'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['caller'] = '35508743'
  param['called'] = '1'
Sniffed 'call.preroute' time=1377127841.492305
thread=0x7f6f0804c010 'Call Router'
  data=(nil)
  retval='(null)'
  param['id'] = 'sip/1199'
  param['module'] = 'sip'
  param['status'] = 'incoming'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['answered'] = 'false'
  param['direction'] = 'incoming'
  param['callid'] = 'sip/54cb09255dc587a0534b497873c49000@187.16.77.18/1a6e83b8/'
  param['caller'] = '35508743'
  param['called'] = '1'
  param['antiloop'] = '19'
  param['ip_host'] = '187.16.77.18'
  param['ip_port'] = '5062'
  param['ip_transport'] = 'UDP'
  param['sip_uri'] = 'sip:1@200.142.110.150'
  param['sip_from'] = 'sip:35508743@200.142.110.150'
  param['sip_to'] = '<sip:1@200.142.110.150>'
  param['sip_callid'] = '54cb09255dc587a0534b497873c49000@187.16.77.18'
  param['device'] = 'ATL+  (1008030)'
  param['sip_contact'] = '<sip:35508743@187.16.77.18:5062>'
  param['sip_allow'] = 'INVITE,CANCEL,ACK,BYE,NOTIFY,REFER,OPTIONS,INFO,MESSAGE,UPDATE'
  param['sip_supported'] = 'replaces'
  param['sip_content-type'] = 'application/sdp'
  param['sip_user-agent'] = 'ATL+  (1008030)'
  param['newcall'] = 'true'
  param['domain'] = '200.142.110.150'
  param['username'] = ''
  param['xsip_nonce_age'] = '0'
  param['rtp_addr'] = '187.16.77.18'
  param['media'] = 'yes'
  param['formats'] = 'alaw'
  param['transport'] = 'RTP/AVP'
  param['rtp_mapping'] = 'alaw=8'
  param['rtp_rfc2833'] = '101'
  param['rtp_port'] = '20100'
  param['sdp_rtcp'] = '20101'
  param['sdp_sendrecv'] = ''
  param['rtp_forward'] = 'possible'

Returned true 'call.preroute' delay=0.167831
  thread=0x7f6f0804c010 'Call Router'
  data=(nil)
  retval='(null)'
  param['id'] = 'sip/1199'
  param['module'] = 'sip'
  param['status'] = 'incoming'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['answered'] = 'false'
  param['direction'] = 'incoming'
  param['callid'] = 'sip/54cb09255dc587a0534b497873c49000@187.16.77.18/1a6e83b8/'
  param['caller'] = '35508743'
  param['called'] = '1'
  param['antiloop'] = '19'
  param['ip_host'] = '187.16.77.18'
  param['ip_port'] = '5062'
  param['ip_transport'] = 'UDP'
  param['sip_uri'] = 'sip:1@200.142.110.150'
  param['sip_from'] = 'sip:35508743@200.142.110.150'
  param['sip_to'] = '<sip:1@200.142.110.150>'
  param['sip_callid'] = '54cb09255dc587a0534b497873c49000@187.16.77.18'
  param['device'] = 'ATL+  (1008030)'
  param['sip_contact'] = '<sip:35508743@187.16.77.18:5062>'
  param['sip_allow'] = 'INVITE,CANCEL,ACK,BYE,NOTIFY,REFER,OPTIONS,INFO,MESSAGE,UPDATE'
  param['sip_supported'] = 'replaces'
  param['sip_content-type'] = 'application/sdp'
  param['sip_user-agent'] = 'ATL+  (1008030)'
  param['newcall'] = 'true'
  param['domain'] = '200.142.110.150'
  param['username'] = ''
  param['xsip_nonce_age'] = '0'
  param['rtp_addr'] = '187.16.77.18'
  param['media'] = 'yes'
  param['formats'] = 'alaw'
  param['transport'] = 'RTP/AVP'
  param['rtp_mapping'] = 'alaw=8'
  param['rtp_rfc2833'] = '101'
  param['rtp_port'] = '20100'
  param['sdp_rtcp'] = '20101'
  param['sdp_sendrecv'] = ''
  param['rtp_forward'] = 'possible'
Sniffed 'call.route' time=1377127841.492305
  thread=0x7f6f0804c010 'Call Router'
  data=(nil)
  retval='(null)'
  param['id'] = 'sip/1199'
  param['module'] = 'sip'
  param['status'] = 'incoming'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['answered'] = 'false'
  param['direction'] = 'incoming'
  param['callid'] = 'sip/54cb09255dc587a0534b497873c49000@187.16.77.18/1a6e83b8/'
  param['caller'] = '35508743'
  param['called'] = '1'
  param['antiloop'] = '19'
  param['ip_host'] = '187.16.77.18'
  param['ip_port'] = '5062'
  param['ip_transport'] = 'UDP'
  param['sip_uri'] = 'sip:1@200.142.110.150'
  param['sip_from'] = 'sip:35508743@200.142.110.150'
  param['sip_to'] = '<sip:1@200.142.110.150>'
  param['sip_callid'] = '54cb09255dc587a0534b497873c49000@187.16.77.18'
  param['device'] = 'ATL+  (1008030)'
  param['sip_contact'] = '<sip:35508743@187.16.77.18:5062>'
  param['sip_allow'] = 'INVITE,CANCEL,ACK,BYE,NOTIFY,REFER,OPTIONS,INFO,MESSAGE,UPDATE'
  param['sip_supported'] = 'replaces'
  param['sip_content-type'] = 'application/sdp'
  param['sip_user-agent'] = 'ATL+  (1008030)'
  param['newcall'] = 'true'
  param['domain'] = '200.142.110.150'
  param['username'] = ''
  param['xsip_nonce_age'] = '0'
  param['rtp_addr'] = '187.16.77.18'
  param['media'] = 'yes'
  param['formats'] = 'alaw'
  param['transport'] = 'RTP/AVP'
  param['rtp_mapping'] = 'alaw=8'
  param['rtp_rfc2833'] = '101'
  param['rtp_port'] = '20100'
  param['sdp_rtcp'] = '20101'
  param['sdp_sendrecv'] = ''
  param['rtp_forward'] = 'possible'
Returned true 'database' delay=0.001324
Returned false 'call.cdr' delay=0.083047 (broadcast)
  thread=0x20b6550 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['time'] = '1377127841.578'
  param['chan'] = 'sip/1199'
  param['cdrid'] = '1322'
  param['runid'] = '1377120718'
  param['operation'] = 'initialize'
  param['direction'] = 'incoming'
  param['duration'] = '0.001'
  param['billtime'] = '0.000'
  param['ringtime'] = '0.000'
  param['status'] = 'incoming'
  param['external'] = '35508743'
  param['cdrwrite'] = 'true'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['caller'] = '35508743'
  param['called'] = '1'
  param['handlers'] = 'queuesnotify:10,register:120'
Sniffed 'chan.masquerade' time=1377127841.000000
  thread=0x20b6550 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['id'] = 'sip/1199'
  param['message'] = 'call.execute'
  param['callto'] = 'wave/play//etc/yate/invalidCall.alaw'
Sniffed 'call.cdr' time=1377127841.661434 (broadcast)
  thread=0x2358930 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['time'] = '1377127841.578'
  param['chan'] = 'sip/1199'
  param['cdrid'] = '1322'
  param['runid'] = '1377120718'
  param['operation'] = 'update'
  param['direction'] = 'incoming'
  param['duration'] = '0.084'
  param['billtime'] = '0.000'
  param['ringtime'] = '0.000'
  param['status'] = 'prerouted'
  param['external'] = '35508743'
  param['cdrwrite'] = 'true'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['caller'] = '35508743'
  param['called'] = '1'
Returned true 'call.execute' delay=0.661667
  thread=0x20b6550 'Engine Worker'
  data=0x7f6f0806e7c0
  retval='(null)'
  param['id'] = 'sip/1199'
  param['callto'] = 'wave/play//etc/yate/invalidCall.alaw'
  param['handlers'] = 'filetransfer:10,iax:10,tone:10,sip:10,javascript:15,gvoice:20,queues:45,yrtp:50,cdrbuild:50,lateroute:75,dbwave:90,filetransfer:90,iax:90,tone:90,sip:90,analyzer:90,wave:90'
  param['module'] = 'sip'
  param['status'] = 'prerouted'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['answered'] = 'false'
  param['direction'] = 'incoming'
  param['domain'] = '200.142.110.150'
  param['callid'] = 'sip/54cb09255dc587a0534b497873c49000@187.16.77.18/1a6e83b8/'
  param['peerid'] = 'wave/155'
Sniffed 'chan.connected' time=1377127841.661632
  thread=0x20b6550 'Engine Worker'
  data=0x7f6f04003d10
  retval='(null)'
  param['id'] = 'wave/155'
  param['module'] = 'wave'
  param['status'] = 'incoming'
  param['billid'] = '1377120718-803'
  param['peerid'] = 'sip/1199'
  param['answered'] = 'false'
  param['direction'] = 'incoming'
Returned false 'chan.connected' delay=0.000363
  thread=0x20b6550 'Engine Worker'
  data=0x7f6f04003d10
  retval='(null)'
  param['id'] = 'wave/155'
  param['module'] = 'wave'
  param['status'] = 'incoming'
  param['billid'] = '1377120718-803'
  param['peerid'] = 'sip/1199'
  param['answered'] = 'false'
  param['direction'] = 'incoming'
Sniffed 'chan.connected' time=1377127841.661644
  thread=0x20b6550 'Engine Worker'
  data=0x7f6f0806e7c0
  retval='(null)'
  param['id'] = 'sip/1199'
  param['module'] = 'sip'
  param['status'] = 'prerouted'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['peerid'] = 'wave/155'
  param['answered'] = 'false'
  param['direction'] = 'incoming'
  param['domain'] = '200.142.110.150'
  param['callid'] = 'sip/54cb09255dc587a0534b497873c49000@187.16.77.18/1a6e83b8/'
Returned false 'chan.connected' delay=0.000431
  thread=0x20b6550 'Engine Worker'
  data=0x7f6f0806e7c0
  retval='(null)'
  param['id'] = 'sip/1199'
  param['module'] = 'sip'
  param['status'] = 'prerouted'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['peerid'] = 'wave/155'
  param['answered'] = 'false'
  param['direction'] = 'incoming'
  param['domain'] = '200.142.110.150'
  param['callid'] = 'sip/54cb09255dc587a0534b497873c49000@187.16.77.18/1a6e83b8/'
Returned false 'call.cdr' delay=0.085390 (broadcast)
  thread=0x2358930 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['time'] = '1377127841.578'
  param['chan'] = 'sip/1199'
  param['cdrid'] = '1322'
  param['runid'] = '1377120718'
  param['operation'] = 'update'
  param['direction'] = 'incoming'
  param['duration'] = '0.084'
  param['billtime'] = '0.000'
  param['ringtime'] = '0.000'
  param['status'] = 'prerouted'
  param['external'] = '35508743'
  param['cdrwrite'] = 'true'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['caller'] = '35508743'
  param['called'] = '1'
  param['handlers'] = 'queuesnotify:10,register:120'
Returned true 'call.route' delay=0.254281
Returned true 'call.route' delay=0.254281
  thread=0x7f6f0804c010 'Call Router'
  data=(nil)
  retval='(null)'
  param['id'] = 'sip/1199'
  param['module'] = 'sip'
  param['status'] = 'incoming'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['answered'] = 'false'
  param['direction'] = 'incoming'
  param['callid'] = 'sip/54cb09255dc587a0534b497873c49000@187.16.77.18/1a6e83b8/'
  param['caller'] = '35508743'
  param['called'] = '1'
  param['antiloop'] = '19'
  param['ip_host'] = '187.16.77.18'
  param['ip_port'] = '5062'
  param['ip_transport'] = 'UDP'
  param['sip_uri'] = 'sip:1@200.142.110.150'
  param['sip_from'] = 'sip:35508743@200.142.110.150'
  param['sip_to'] = '<sip:1@200.142.110.150>'
  param['sip_callid'] = '54cb09255dc587a0534b497873c49000@187.16.77.18'
  param['device'] = 'ATL+  (1008030)'
  param['sip_contact'] = '<sip:35508743@187.16.77.18:5062>'
  param['sip_allow'] = 'INVITE,CANCEL,ACK,BYE,NOTIFY,REFER,OPTIONS,INFO,MESSAGE,UPDATE'
  param['sip_supported'] = 'replaces'
  param['sip_content-type'] = 'application/sdp'
  param['sip_user-agent'] = 'ATL+  (1008030)'
  param['newcall'] = 'true'
  param['domain'] = '200.142.110.150'
  param['username'] = ''
  param['xsip_nonce_age'] = '0'
  param['rtp_addr'] = '187.16.77.18'
  param['media'] = 'yes'
  param['formats'] = 'alaw'
  param['transport'] = 'RTP/AVP'
  param['rtp_mapping'] = 'alaw=8'
  param['rtp_rfc2833'] = '101'
  param['rtp_port'] = '20100'
param['sdp_rtcp'] = '20101'
  param['sdp_sendrecv'] = ''
  param['rtp_forward'] = 'possible'
Sniffed 'chan.masquerade' time=1377127841.000000
  thread=0x2358930 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['id'] = 'null'
  param['message'] = 'call.progress'
  param['earlymedia'] = 'true'
Returned false 'chan.masquerade' delay=0.747047
  thread=0x2358930 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['id'] = 'null'
  param['message'] = 'call.progress'
  param['earlymedia'] = 'true'
  param['handlers'] = 'filetransfer:10,iax:10,tone:10,sip:10,analyzer:10,wave:10,dumb:10,conf:10,callfork:10,jingle:10,analog:10,sig:10,mgcpgw:10'
Sniffed 'call.answered' time=1377127841.000000
  thread=0x2358930 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['id'] = 'null'
  param['rtp_forward'] = 'no'
  param['targetid'] = 'sip/1199'
Returned true 'call.answered' delay=0.747295
  thread=0x2358930 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['id'] = 'null'
  param['rtp_forward'] = 'no'
  param['targetid'] = 'sip/1199'
  param['handlers'] = 'javascript:15,callfork:20,queues:45,yrtp:50,gvoice:50,cdrbuild:50,callgen:100,filetransfer:100,iax:100,sip:100'
Sniffed 'chan.hangup' time=1377127841.000000
  thread=0x2358930 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['id'] = 'null'
  param['reason'] = 'noroute'
  param['driver'] = 'wave'
  param['targetid'] = 'sip/1199'
Returned false 'chan.hangup' delay=0.747495
  thread=0x2358930 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['id'] = 'null'
  param['reason'] = 'noroute'
  param['driver'] = 'wave'
  param['targetid'] = 'sip/1199'
  param['handlers'] = 'javascript:15,queues:45,yrtp:50,gvoice:50,monitoring:100,conf:150,cdrbuild:150'
Sniffed 'call.cdr' time=1377127841.747234 (broadcast)
  thread=0x2358930 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['time'] = '1377127841.747'
  param['chan'] = 'null'
  param['cdrid'] = '1323'
  param['runid'] = '1377120718'
  param['operation'] = 'initialize'
  param['direction'] = 'unknown'
  param['duration'] = '0.000'
  param['billtime'] = '0.747'
  param['ringtime'] = '0.000'
  param['status'] = 'unknown'
  param['cdrwrite'] = 'true'
Sniffed 'call.cdr' time=1377127841.747249 (broadcast)
  thread=0x20b6550 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['time'] = '1377127841.578'
  param['chan'] = 'sip/1199'
  param['cdrid'] = '1322'
  param['runid'] = '1377120718'
  param['operation'] = 'update'
  param['direction'] = 'incoming'
  param['duration'] = '0.170'
  param['billtime'] = '0.747'
  param['ringtime'] = '0.000'
  param['status'] = 'prerouted'
  param['external'] = '35508743'
  param['cdrwrite'] = 'true'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['caller'] = '35508743'
  param['called'] = '1'
Returned false 'call.cdr' delay=0.085780 (broadcast)
  thread=0x20b6550 'Engine Worker'
  data=(nil)
  retval='(null)'
  param['time'] = '1377127841.578'
  param['chan'] = 'sip/1199'
  param['cdrid'] = '1322'
  param['runid'] = '1377120718'
  param['operation'] = 'update'
  param['direction'] = 'incoming'
  param['duration'] = '0.170'
  param['billtime'] = '0.747'
  param['ringtime'] = '0.000'
  param['status'] = 'prerouted'
  param['external'] = '35508743'
  param['cdrwrite'] = 'true'
  param['address'] = '187.16.77.18:5062'
  param['billid'] = '1377120718-802'
  param['caller'] = '35508743'
  param['called'] = '1'
  param['handlers'] = 'queuesnotify:10,register:120'
Title: Re: Wave channel can't hangup
Post by: marian on August 22, 2013, 04:03:28 AM
Hi,

Don't masquerade a call.execute from call.route handler and return empty target.
You'll have unexpected bahaviour.

Just set the message return value to wave target.

Don't answer or hangup the call: the wave file will hangup after the prompt is played.
If you want to terminate a call don't use chan.hangup (this is just a hangup notification).
Use call.drop with id=chan_to_drop
Using chan.hangup won't terminate the channels: the wave and sip channel will stay there until disconnected.