Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE
Allow-Events: talk, hold, conference, presence, dialog, line-seize, call-info, sla, include-session-description, presence.winfo, message-summary, refer
------------------------------------------------------------------------
recv 1357 bytes from udp/[210.7.45.66]:5060 at 02:46:48.739816:
------------------------------------------------------------------------
SIP/2.0 200 OK
Via: SIP/2.0/UDP 210.7.46.240;rport=5060;branch=z9hG4bKZrKQvvHNSy64m
Call-ID: 1d80cd44-781c-1231-8db7-0050568a49fc
CSeq: 47499340 INVITE
Contact: <sip:+61269337555@210.7.45.66:5060;transport=udp>
User-Agent: FreeSWITCH-mod_sofia/1.2.11+git~20130723T222215Z~55b6b8424f
Accept: application/sdp
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE
Supported: timer, precondition, path, replaces
Allow-Events: talk, hold, conference, presence, dialog, line-seize, call-info, sla, include-session-description, presence.winfo, message-summary, refer
Content-Type: application/sdp
Content-Disposition: session
Content-Length: 242
X-FS-Display-Name: Outbound Call
x-inin-crn: 1101488375;loc=%3cRegionDefaultLocation%3e
X-FS-Support: update_display,send_info
v=0
o=FreeSWITCH 914114385 914114386 IN IP4 210.7.45.66
s=FreeSWITCH
c=IN IP4 210.7.45.66
t=0 0
m=audio 17704 RTP/AVP 8 101
a=rtpmap:8 PCMA/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
m=video 0 RTP/AVP 96
a=rtpmap:96 /0
The PBX then balks and sends a 500 error to my softphone
send 704 bytes to udp/[210.7.45.66]:5060 at 02:46:48.740796:
------------------------------------------------------------------------
BYE sip:+61269337555@210.7.45.66:5060;transport=udp SIP/2.0
Via: SIP/2.0/UDP 210.7.46.240;rport;branch=z9hG4bK1a68ZjKvKgKac
Max-Forwards: 70
Call-ID: 1d80cd44-781c-1231-8db7-0050568a49fc
CSeq: 47499341 BYE
Contact: <sip:gw+sbc@210.7.46.240:5060;transport=udp;gw=sbc>
User-Agent: FreeSWITCH-mod_sofia/1.3.13b+git~20130223T185558Z~28680c5e58
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE
Supported: timer, precondition, path, replaces
Reason: SIP;cause=488;text="Incomplete offer/answer"
Content-Length: 0
------------------------------------------------------------------------
Then I see this in the logs straight after
2013-08-05 14:46:48.736200 [DEBUG] sofia.c:1431 nua_i_media_error: unknown event 22: 988 Incomplete offer/answer
The only thing odd about the SDP packet that I get back is the attribute after the m=video line. I think FreeSWITCH sees this, doesn't ignore the a= line like it should, and then gets upset with not being able to match anything before the "/0". RFC 4566 (5.13) says that
"If an attribute is received that is not understood, it MUST be ignored by the receiver."
So FreeSWITCH should be ignoring any "a=" attributes after it gets a "m=" line with a 0 port, but should also ignore the attribute if it can't match (but maybe leave a warning/notice in logs)?
Does this look right? Has anyone else seen this, and is there a workaround?
Cheers
Sam