16 April 2008 14:49high.*!
I've a quite similar problem. I'm currently integrating asterisk via openSER to the OCS 2007 environment. Normal call setup/clearing is fine already but when performing a hold on the communicator, I'm not able to unhold it (cause the hold button is still active) while getting the error message:
"An error occurred while trying to place the call on hold. Please try again. If the problem persists, contact your system administrator. More details (ID:491)"
Following scenario: I start a call at the communicator, which is forwarded via OCS mediation server -> openser -> asterisk and i trigger a call hold at the communicator.
Now though the communicator issues the re-INVITE (hold), it doesn't shows the session is on hold (the hold button in the communicator is still active).
So somehow i guess it has something to do with the SIP/SDP message "200 OK" which is sent back from asterisk (via openSER). In the re-INVITE (hold) message i see, that the SDP option "a=inactive" is issued, but the reply ("200 OK") looks pretty the normal in the SDP part (like from an initial INVITE). Somehow I think this reply must include something like "a=inactive", right?
Well my problem is that i do not exactly know, what OCS (mediation server) expects in this reply message. Is there a detailed description of the SIP protocol the OCS mediation server uses?
Here you can see the re-INVITE and below the reply from asterisk (which causes the OC not to disable the deactivate the hold button):
[ Method INVITE from 172.23.26.121:1678 (2) ]
INVITE sip:+firstname.lastname@example.org;user=phone SIP/2.0
CSEQ: 494 INVITE
VIA: SIP/2.0/TCP 172.23.26.121:1678;branch=z9hG4bKde554417
USER-AGENT: RTCC/126.96.36.199 MediationServer
CONTENT-TYPE: application/sdp; charset=utf-8
o=- 0 0 IN IP4 172.23.26.121
c=IN IP4 172.23.26.121
m=audio 62144 RTP/AVP 0 101
c=IN IP4 172.23.26.121
[ End of Request (2) ]
[ Reply 200 (OK) from 172.29.223.210:5060 concerning INVITE ]
SIP/2.0 200 OK
Via: SIP/2.0/UDP 172.29.223.209;branch=z9hG4bKe6a.015e5887.0;i=1;received=172.29.223.209
Via: SIP/2.0/TCP 172.23.26.121:1678;branch=z9hG4bKde554417
CSeq: 494 INVITE
User-Agent: Asterisk PBX
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
o=root 1443 1444 IN IP4 172.29.223.210
c=IN IP4 172.29.223.210
m=audio 17666 RTP/AVP 0 101
a=silenceSupp:off - - - -
[ End of Reply ]
Hope anyone has an idea, what's wrong here...
thx & cheers
27 Februari 2009 17:12
Since this was not answered and in case somebody stumbles upon this post experiencing the same (since even the latest version of Asterisk 1.6.1-rc1 experinces this) here is the link that will detail this (OCS not conforming to RFC and Asterisk not being work around ) and will help you to remedy the problem. Just merge the changes into chan_sip.c, run "make" again, replace chan_sip.so, and add the 'ignoresdpversion' option to sip.conf. And it works perfectly after that. The link is http://bugs.digium.com/view.php?id=13958
Hop it helps.