dear arsen
iam working these days in Integration with avaya voice portal. im
trying to integrate unimrcp server version one with my tts plugin and
avaya mrcp client.
the problem is that the client send only start
session request then speak request and no end session request is sent.
after amount of time the end session request is sent.i want to control
the end session process regardless of the time out do you know how to
handle this?avaya does not send end session unless time out is occured.
Hi everyone !Has anybody integrated avaya voice portal and UniMRCP? Is there any documentation about it ?
--
You received this message because you are subscribed to the Google Groups "UniMRCP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to unimrcp+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Hi Arsen,
Did you meant that we can not directly use Unimrcp Server to contact with Avaya Voice Portal Client?
Seems like RTP is not running by wireshark, but it do use MRCPv2 actions as the logs above showed.
I'm struggling now. Are there something wrong with the configuration file or others?
Hi Jeff,I believe it works with NSS because of the transport parameter in the Contact header of SIP OK.Avaya makes a wrong assumption here. If the transport parameter is not specified, that doesn't mean that the requested transport is UDP. And in fact, they send the ACK message over TCP having set UDP in Via. Very weird.By default, UniMRCP Server / Sofia-SIP accepts both TCP and UDP connections for SIP.
<sip-transport>udp,tcp</sip-transport>And in this case, since both are supported, there shouldn't be any transport parameter in the Contact header.Anyway, to make it work with Avaya via TCP, you can do the following1) Leave only TCP in the configuration
<sip-transport>tcp</sip-transport>2) Comment or just take out the following line from the function mrcp_sofia_on_session_answer() in modules/mrcp-sofiasip/src/mrcp_sofia_server_agent.c
SIPTAG_CONTACT_STR(sofia_agent->sip_contact_str),This would allow Sofia-SIP to implicitly set the contact header with the corresponding transport parameter in the SIP OK.3) Build the serverFor further communication, please post your messages to the discussion group, instead of sending them directly to me.
On Sun, Oct 19, 2014 at 7:41 PM, Jeff Chun-Hsun Chen <jef...@gmail.com> wrote:
Hi Arsen,
OK. I'll try to configure Avaya to use UDP for SIP first.
But I hope you to see attached the Wireshark catched packets of the connection between avaya client and nuance server.
Seems like the SIP/TCP is working with Nuance MRCP Server:From: sip:mpp@VP;tag=90964d199c52e419b80033a33d8Call-ID: e0964d199c52e419c80033a33d8CSeq: 1 INVITEMax-Forwards: 70Via: SIP/2.0/TCP 10.51.216.51;branch=z9hG4bKd0ab4d199c52e419d80033a33d8User-Agent: Avaya-VoicePortal/6.0.2.0.0501Supported: 100rel, timer, replaces, join, histinfoAllow: INVITE, CANCEL, BYE, ACK, PRACK, SUBSCRIBE, NOTIFY, REFER, OPTIONS, INFO, PUBLISHContact: <sip:10.51.216.51;transport=tcp>Session-Expires: 1200;refresher=uacMin-SE: 1200Content-Type: application/sdpContent-Length: 339v=0o=- 1 1 IN IP4 10.51.216.51s=-t=0 0m=audio 23892 RTP/AVP 0 8 18 127c=IN IP4 10.51.216.51a=rtpmap:0 PCMU/8000a=rtpmap:8 PCMA/8000a=rtpmap:18 G729/8000a=rtpmap:127 telephone-event/8000a=sendonlym=application 9 TCP/MRCPv2 1c=IN IP4 10.51.231.141a=setup:activea=connection:newa=cmid:1a=resource:speechrecogSIP/2.0 200 OKVia: SIP/2.0/TCP 10.51.216.51;branch=z9hG4bKd0ab4d199c52e419d80033a33d8Contact: <sip:mrcps...@10.51.231.141:5060;transport=TCP>To: <sip:mres...@10.51.231.141>;tag=1478854fFrom: <sip:mpp@VP>;tag=90964d199c52e419b80033a33d8Call-ID: e0964d199c52e419c80033a33d8CSeq: 1 INVITEContent-Type: application/sdpContent-Length: 387v=0o=- 1413351342 1413351342 IN IP4 10.51.231.141s=Nuance MRCP session V2c=IN IP4 10.51.231.141t=0 0m=audio 7892 RTP/AVP 0 8 127 122a=rtpmap:0 pcmu/8000a=rtpmap:8 pcma/8000a=rtpmap:127 telephone-event/8000a=rtpmap:122 l16/8000a=fmtp:127 0-15a=mid:1a=recvonlym=application 6075 TCP/MRCPv2 1a=cmid:1a=setup:passivea=connection:newa=channel:1@speechrecogACK sip:mrcps...@10.51.231.141:5060;transport=TCP SIP/2.0From: <sip:mpp@VP>;tag=90964d199c52e419b80033a33d8To: <sip:mres...@10.51.231.141>;tag=1478854fCall-ID: e0964d199c52e419c80033a33d8CSeq: 1 ACKMax-Forwards: 70Via: SIP/2.0/TCP 10.51.216.51;branch=z9hG4bK2622a4199c52e419e80033a33d8User-Agent: Avaya-VoicePortal/6.0.2.0.0501Content-Length: 0BYE sip:mrcps...@10.51.231.141:5060;transport=TCP SIP/2.0From: sip:mpp@VP;tag=90964d199c52e419b80033a33d8To: sip:mres...@10.51.231.141;tag=1478854fCall-ID: e0964d199c52e419c80033a33d8CSeq: 2 BYEMax-Forwards: 70Via: SIP/2.0/TCP 10.51.216.51;branch=z9hG4bK10878a259c52e419f80033a33d8User-Agent: Avaya-VoicePortal/6.0.2.0.0501Content-Length: 0SIP/2.0 200 OKVia: SIP/2.0/TCP 10.51.216.51;branch=z9hG4bK10878a259c52e419f80033a33d8Contact: <sip:mrcps...@10.51.231.141:5060;transport=TCP>To: <sip:mres...@10.51.231.141>;tag=1478854fFrom: <sip:mpp@VP>;tag=90964d199c52e419b80033a33d8Call-ID: e0964d199c52e419c80033a33d8CSeq: 2 BYEContent-Length: 0Maybe I'm misunderstanding. Or is that meant the Nuance MRCP Server did special processing for the SIP/TCP case?
Thanks,
Jeff
2014-10-18 2:28 GMT+08:00 Arsen Chaloyan <acha...@gmail.com>:
Now, let's focus on 1.2.0 and the attempt you marked as successful. Although RTP packets were normally received and processed, SIP session was not fully established, and the problem is in how Avaya constructs the Via header in the SIP ACK message. Below are the corresponding SIP messages extracted from your network capture:I'd expect UniMRCP 1.0.0 and 1.2.0 to behave the same way in this respect, but I really don't remember all the differences between these two versions. Note that 1.0.0 is 4-years old.Hi Jeff,Much better. The more complete is the report, the closer is the resolution.
INVITE sip:mres...@10.51.231.141 SIP/2.0
From: sip:mpp@VP;tag=28b855e63854e411100033a33d8
To: sip:mres...@10.51.231.141
Call-ID: 5ab855e63854e411200033a33d8
CSeq: 1 INVITE
Max-Forwards: 70
Via: SIP/2.0/TCP 10.51.216.51;branch=z9hG4bK18cd55e63854e411300033a33d8
User-Agent: Avaya-VoicePortal/6.0.2.0.0501
Supported: 100rel, timer, replaces, join, histinfo
Allow: INVITE, CANCEL, BYE, ACK, PRACK, SUBSCRIBE, NOTIFY, REFER, OPTIONS, INFO, PUBLISH
Contact: <sip:10.51.216.51;transport=tcp>
Session-Expires: 1200;refresher=uac
Min-SE: 1200
Content-Type: application/sdp
Content-Length: 339
v=0
o=- 1 1 IN IP4 10.51.216.51
s=-
t=0 0
m=audio 23020 RTP/AVP 0 8 18 127
c=IN IP4 10.51.216.51
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:18 G729/8000
a=rtpmap:127 telephone-event/8000
a=sendonly
m=application 9 TCP/MRCPv2 1
c=IN IP4 10.51.231.141
a=setup:active
a=connection:new
a=cmid:1
a=resource:speechrecog
SIP/2.0 100 Trying
Via: SIP/2.0/TCP 10.51.216.51;branch=z9hG4bK18cd55e63854e411300033a33d8;rport=31004
From: sip:mpp@VP;tag=28b855e63854e411100033a33d8
To: sip:mres...@10.51.231.141
Call-ID: 5ab855e63854e411200033a33d8
CSeq: 1 INVITE
User-Agent: UniMRCP SofiaSIP
Content-Length: 0
SIP/2.0 200 OK
Via: SIP/2.0/TCP 10.51.216.51;branch=z9hG4bK18cd55e63854e411300033a33d8;rport=31004
From: sip:mpp@VP;tag=28b855e63854e411100033a33d8
To: <sip:mres...@10.51.231.141>;tag=34g0D8Zv0UNer
Call-ID: 5ab855e63854e411200033a33d8
CSeq: 1 INVITE
Contact: <sip:10.51.231.141:5060>
User-Agent: UniMRCP SofiaSIP
Accept: application/sdp
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, PRACK, MESSAGE, SUBSCRIBE, NOTIFY, REFER, UPDATE
Supported: timer, 100rel
Session-Expires: 1200;refresher=uac
Min-SE: 1200
Content-Type: application/sdp
Content-Disposition: session
Content-Length: 359
v=0
o=UniMRCPServer 6451443600073151064 520690701680639504 IN IP4 10.51.231.141
s=-
c=IN IP4 10.51.231.141
t=0 0
m=audio 5000 RTP/AVP 0 127
a=rtpmap:0 PCMU/8000
a=rtpmap:127 telephone-event/8000
a=fmtp:127 0-15
a=recvonly
a=mid:0
m=application 1544 TCP/MRCPv2 1
a=setup:passive
a=connection:new
a=channel:cb9cd7da2ee42148@speechrecog
a=cmid:1
ACK sip:10.51.231.141:5060 SIP/2.0
From: sip:mpp@VP;tag=28b855e63854e411100033a33d8
To: <sip:mres...@10.51.231.141>;tag=34g0D8Zv0UNer
Call-ID: 5ab855e63854e411200033a33d8
CSeq: 1 ACK
Max-Forwards: 70
Via: SIP/2.0/UDP 10.51.216.51;branch=z9hG4bK70ff6be63854e411400033a33d8
User-Agent: Avaya-VoicePortal/6.0.2.0.0501
Content-Length: 0As you noted, Sofia-SIP complains about an invalid transport in the Via header, and it does absolutely right. Instead of
Via: SIP/2.0/UDP 10.51.216.51;branch=z9hG4bK70ff6be63854e411400033a33d8there MUST have been
Via: SIP/2.0/TCP 10.51.216.51;branch=z9hG4bK18cd55e63854e411300033a33d8The SIP spec is quite clear about that. See section 17.1.1.3 (http://tools.ietf.org/html/rfc3261#section-17.1.1.3), in particular:The ACK MUST contain a single Via header field, and this MUST be equal to the top Via header field of the original request.As a result, Sofia-SIP drops the invalid ACK and keeps sending (re-transmitting) SIP OK messages to the client, and the client re-transmitting the final ACK response with no go. Eventually, the session abnormally timed out. The timeout was longer than your utterance, that's why you probably didn't notice anything wrong.You may report this to Avaya. I'm not sure if User-Agent: Avaya-VoicePortal/6.0.2.0.0501 is their latest release or not, but this particular version is definitely affected. Alternatively, try to configure Avaya to use UDP for SIP, the problem might be gone then.
On Fri, Oct 17, 2014 at 12:17 AM, Jeff Chun-Hsun Chen <jef...@gmail.com> wrote:
Hi Arsen,I'm using UniMRCP v1.0.0 Server, which did not have the <sip-message-output> and <sip-message-dump> settings.But I've found that UniMRCP v1.2.0 Server do have these settings , so today I've also tried UniMRCP v1.2.0 Server to receive the audios sent from Avaya Voice Portal.Surprisingly, it can correctly receive the audios. (and it do show MRCPv2 START-OF-INPUT action)Though I also saw the nta: Via check: invalid transport "SIP/2.0/UDP" from [clientIP]:31000 error line wih UniMRCP v1.2.0,it seems like the nta problem did not really prevent the server from receiving audios.For some reason I should use the UniMRCP v1.0.0 Server, how to find out why the problem only happened in v1.0.0 but not in v1.2.0?(the UniMRCP v1.0.0 Server used is from the SDK one, I did not change any code for this testing.)The attached file contain 2 folders:
UniMRCPv1.0.0_failedReceiveAudio: the whole session unimrcpserver-0.log (loglevel=7) file and the wireshark catched packets from server side with UniMRCPv1.0.0
UniMRCPv1.2.0_successReceiveAudio: the whole session unimrcpserver-0.log (loglevel=7) file and the wireshark catched packets from server side with UniMRCPv1.2.0Many thanks for help to check about it.
Thanks,Jeff
Hi Arsen,
After I did the changes, seems like the SIP/TCP is executing normally now. (as attached file 20141023_avaya_UniMRCPServer(sofiasipRevised).pcapng showed)
But the audio still not received in the data folder. (The pcm file is 0kb.)
There is another test that I use another MRCP client instead of avaya Client, to connect to the same UniMRCP v1.0.0 server, and the audio is successfully received by the server.This test, the SIP connection is under UDP instead of TCP. (as attached file 20141015_AnotherMRCPclient_UniMRCPServer.pcapng showed)Does the audio receiving problem happened because of the avaya SIP connection using TCP instead of UDP?