Hendrik Magilsen
2005-Apr-06 13:17 UTC
[Asterisk-Users] SIP messages truncated to 256 characters
-----Original Message----- From: Hendrik Magilsen [mailto:hmagilsen@hotmail.com] Sent: Wednesday, April 06, 2005 4:13 PM To: asterisk-users@lists.digium.com Subject: SIP messages truncated to 256 characters I'm troubleshooting a REFER message. It appears that incoming REFER message details are being truncated to 256 characters. I'm dealing with a SIP provider that sends out large reference strings. The r: parameter is just a bit bigger than the 256 characters asterisk seems to be truncating to, consequently it loses part of the reference domain and the transaction fails. I'm poking through the source code in chan_sip.c, but C is not my strong suit, can someone point me to the variable declarations for incoming message strings so I can increase the size and recompile to see if this sorts out my call issue? What is sent r: <sip:conference@xxx.xxx.xxx.xxx:5060;nt_end_pt=YM0+~Kc*n2erQnte~QOiq1.rjXp6i ~CQ0QA~Nv2sHe6vi8Q~MQaK9crHbcS~RP2k4X~NsDetMEGucDEzCbwuMDYw7DVwj+V*ROTPQz3~L nhSc5g~M10qdt-tnadpz1tW4YO3c0t-5dzd9cetMlZPeA1c2.~T4SW01tJk5003172o~UHdFFm~N Af4imazaS;nt_server_host=xxx.xxx.xxx.xxx> What Asterisk sees Apr 6 15:32:23 WARNING[31877]: chan_sip.c:995 ditch_braces: No closing brace in '<sip:conference@xxx.xxx.xxx.xxx:5060;nt_end_pt=YM0+~Kc*n2erQnte~QOiq1.rjXp6 i~CQ0QA~Nv2sHe6vi8Q~MQaK9crHbcS~RP2k4X~NsDetMEGucDEzCbwuMDYw7DVwj+V*ROTPQz3~ LnhSc5g~M10qdt-tnadpz1tW4YO3c0t-5dzd9cetMlZPeA1c2.~T4SW01tJk5003172o~UHdFFm~ NAf4imazaS;nt_server_host=xxx' Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20050406/535e72c7/attachment.htm
Mikael Magnusson
2005-Apr-06 13:47 UTC
[Asterisk-Users] SIP messages truncated to 256 characters
On Wed, Apr 06, 2005 at 04:17:00PM -0400, Hendrik Magilsen wrote:> I'm troubleshooting a REFER message. It appears that incoming REFER message > details are being truncated to 256 characters. I'm dealing with a SIP > provider that sends out large reference strings. The r: parameter is just a > bit bigger than the 256 characters asterisk seems to be truncating to, > consequently it loses part of the reference domain and the transaction > fails. I'm poking through the source code in chan_sip.c, but C is not my > strong suit, can someone point me to the variable declarations for incoming > message strings so I can increase the size and recompile to see if this > sorts out my call issue? >Probably one of the tmp variables in get_refer_info. /Mikael Magnusson
Hendrik Magilsen
2005-Apr-07 13:42 UTC
[Asterisk-Users] SIP REFER - find brick wall, bang head, repeat!
I'm struggling with an implementation of asterisk between two SIP providers. Provider "A" provides DID numbers to Provider "B", and asterisk sits in the middle in effectively a back-to-back configuration to try to solve some compatibility problems between A-B. So point-to-point everything works as expected However, the end user at Provider "B" typically wants to do things such as conference call. Within Provider "B"'s network conferencing is managed by a separate SIP conference server. All parties are transferred to the conference server and given a bridge reference token. What appears to be happening is that the information contained in the REFER sent to the asterisk (which are connection details for the conference bridge) is not carried over to the subsequent INVITE. I believe that when the refer comes in only the first part of the message which contains the destination conference@xxx.xxx.xxx.xxx is matched against the dialplan in extensions.conf, but when the call is made it doesn't carry over any of the reference information and starts a whole new call tag. Am I stretching beyond the capabilities of Asterisk in this application? Should I be looking at a SER implementation instead to get asterisk out of the middle of a B2B arrangement? My head hurts so I'm asking the community at large. Here is an abbreviated callflow to make it easier to understand Provider A Provider B Asterisk | | | | | | |>F1 INVITE (sdp)------------------------------>| | | | |<------------------------------- Trying 100 F2<| | | | | |<------(sdp) INVITE F3<| | | | | |>F4 100 Trying ------->| | | | | |>F8 180 Ringing ------>| | | | |<------------------------------ Ringing 180 F9<| | | | | |>F10 200 OK (sdp)----->| | | | | |<------------- ACK F11<| | | | |<-----------------------------(sdp) OK 200 F12<| | | | |>F13 ACK ------------------------------------->| | | | | | | | |>F23 REFER ----------->| | | | | |<---- Accepted 202 F24<| | | | | |<-(sipfrag) NOTIFY F25<| | | | | |<------------- BYE F26<| | | | | |<-----(sdp) INVITE F27<| | | | | |>F28 100 Trying ------>| | | | | |>F29 100 Trying ------>| | | | | |>F30 200 OK ---------->| | | | | |>F31 404 Not Found --->| | | | | |<------------- ACK F32<| | | | | |>F33 BYE ------------->| | | | | |<---------- OK 200 F34<| | | | |<------------------------------------- BYE F35<| | | | |>F36 200 OK ---------------------------------->| Thanks in advance Hendrik