Commit Graph

15063 Commits

Author SHA1 Message Date
Travis Cross a7ef0919e7 Improve channel variable name to srtp_allow_idle_gaps
This was momentarily called force_send_silence_when_idle, but that was
non-obvious as you had to set that value to true to be able to not
send silence when idle.  This name describes the purpose much better.
2014-03-04 02:09:33 +00:00
Travis Cross b6a10585bb Avoid repeating ourselves in generating silence
We were handling the "send silence but not comfort noise" case in both
silence_stream_file_read and switch_generate_sln_silence.  This
changes the former to rely on the latter.
2014-03-04 02:09:28 +00:00
Travis Cross 6f11c1636b Add force_send_silence_when_idle channel variable
If set to true, this prevents us from overriding the value of
send_silence_when_idle.  When that is unset or set to zero and SRTP is
engaged, we typically override the value because many devices can't
handle gaps in the SRTP stream.

This variable is mostly for testing whether particular devices can
handle this behavior.  Use at your own risk.
2014-03-04 02:07:30 +00:00
Travis Cross 8fe324c404 Preserve value of send_silence_when_idle if possible
In commit 55d01d3def we set
send_silence_when_idle to -1 rather than 400 when SRTP is engaged.
But this left no way to enable white noise silence when desired.

When SRTP is engaged we can't simply not send RTP because it breaks
too many devices.  So we need to prevent send_silence_when_idle from
being unset or being set to zero.  This change allows it to be set to
other values so as to feed white noise rather than all zeros into the
codec.
2014-03-04 02:07:24 +00:00
Travis Cross 5d6b793623 Fix handling of send_silence_when_idle==0 in switch_ivr_sleep
When the channel variable send_silence_when_idle was set to zero,
switch_ivr_sleep was calling SWITCH_IVR_VERIFY_SILENCE_DIVISOR on it
anyway, causing it to be set to 400.  The only way to get the behavior
of not sending silence when idle was to unset the variable completely.

This corrects the behavior such that setting the value to zero has the
same effect as leaving it unset.
2014-03-04 02:06:32 +00:00
Chris Rienzo 3072573c84 FS-6296 --resolve mod_rayo: fixed crash on <prompt> bad request 2014-03-03 19:01:47 -05:00
Anthony Minessale de758448e4 add timeout <seconds> to mod_curl api call 2014-03-03 22:58:56 +05:00
Travis Cross 30d1684d69 Make OS X's lame UNIX happy with mod_mongo Makefile
Apparently OS X ships a sed that requires an argument to -i.
2014-03-03 15:41:33 +00:00
Travis Cross 09079098d1 Output newline after json output in mod_json_cdr
In UNIX, text files by definition end with a newline.
2014-03-03 01:27:31 +00:00
Travis Cross 3bd9c60f8e Handle too-short write(3)s in mod_json_cdr
write(3) can write fewer bytes than was requested for any number of
reasons.  The correct behavior is to retry unless there is an error.

If there is an error, try to unlink the file; no sense in leaving
corrupted data laying around.
2014-03-03 01:27:30 +00:00
Travis Cross fdee9d940a Deal with read errors in switch_xml.c
Unlike fread(3), read(3) will return -1 on error.  We were assigning
the result of read to a potentially unsigned variable, and passing the
result down to switch_xml_parse_str() where it would end up
determining how many bytes to malloc(3).
2014-03-02 10:36:14 +00:00
Travis Cross c31aa5d38f Log channel UUID by default
We want people to have this on so that when we're looking at reported
log files we can tell what is going on.
2014-03-02 10:29:29 +00:00
Travis Cross e51cca5991 Document purpose of sofia profile aliasing 2014-03-02 10:26:16 +00:00
Travis Cross 5d706aa4fc Optimize switch_split_user_domain a bit
This avoids searching the string repeatedly with strchr.
2014-03-02 09:49:21 +00:00
Travis Cross 1060a188ce Refactor and fix edge cases in switch_split_user_domain
We were incorrectly parsing usernames and domains starting with "sip"
if there was no sip: or sips: scheme in the string.

We were also incorrectly parsing usernames containing a colon even if
a scheme was given.

This also refactors the function for hopefully greater clarity.
2014-03-02 09:29:23 +00:00
Travis Cross 2dcac7d350 Fix switch_split_user_domain handling of sips: URLs
In commit 7efeabbd88 Anthony fixed the
handling of sip:example.com and sips:example.com URLs, however he
introduced a regression causing URLs starting with 's' to be parsed
incorrectly.

In commit 7d2456ea27 Brian fixed the
regression, but introduced a regression causing sips:example.com URLs
to be handled incorrectly.
2014-03-02 08:12:33 +00:00
Raymond Chandler 3ad8d246b0 use newSQL 2014-03-02 03:11:12 -05:00
Brian West 002be95364 FS-6226Prevent DTMF from traversing bridged channels, but still allow me to send DTMF via API or dp app (uuid_send_dtmf or send_dtmf) 2014-03-01 10:06:47 -06:00
Anthony Minessale 7ef86923aa FS-5895 --resolve 2014-03-01 04:55:20 +05:00
Anthony Minessale 6b49d591a9 add sip_force_nat_mode so you can engange nat mode manually 2014-03-01 04:43:18 +05:00
Travis Cross b61800cbf2 Send silent packets when idle with SRTP
Originally we did the same thing with SRTP that we do without SRTP,
which is to simply not send packets when e.g. sleep is called.

At commits d63323977f and
5259814aee we enabled sending silence
packets with comfort noise when SRTP is active.  We appear to have
done this for interop purposes; many devices can't handle gaps in the
stream of SRTP packets.

But our current comfort noise implementation doesn't take the codec
rate into account (FS-6291), so on 16kHz codecs the constant we chose
created an annoying level of static between sound file playback.

With this commit we preserve the sending of SRTP packets during idle
periods, but make those packets completely silent.

Thanks-to: Anthony Minessale <anthm@freeswitch.org>

FS-5053 --resolve
2014-02-28 23:14:42 +00:00
Anthony Minessale 5ba089e11f FS-5461 --resolve you tricked me I said make 1 patch with all of it
Conflicts:
	src/mod/applications/mod_conference/mod_conference.c
2014-03-01 00:28:40 +05:00
Anthony Minessale e7bb220c6b FS-4441 FS-5461 --resolve
Conflicts:
	src/mod/applications/mod_conference/mod_conference.c
2014-03-01 00:26:09 +05:00
Anthony Minessale 35d7dbe809 add sip_refer_to_params 2014-03-01 00:13:49 +05:00
Anthony Minessale a22deb92d1 FS-6287 this should either prevent the problem or spell out what is causing it. please test 2014-02-28 23:23:49 +05:00
Anthony Minessale b0d7ee2f86 FS-5886 --resolve add NDLB_broken_opus_sdp which must be set as a global variable in var.xml or switch.conf.xml to enable broken opus mode for back compat with counterpath mobile 2014-02-28 21:58:15 +05:00
Anthony Minessale 7763cfebc0 FS-6289 --resolve regression from 1fba654845 2014-02-28 21:43:57 +05:00
Anthony Minessale f3059cdf49 fix race condition where a transferring leg could be hungup on by the bridge partner from the previous bridge because of hangup held leg detection. The leg which was hungup when held doesn't realize the other leg has already moved on from the bridge because it was transferred and is already on its way to connect to the new destination 2014-02-28 07:16:05 +05:00
Brian West a048d2b638 FS-5934 force_transfer_context not being honored if you happen to do an attended this patch makes perfect sense. 2014-02-27 14:11:16 -06:00
Anthony Minessale a0ba6de40d FS-6272 --resolve
Conflicts:
	src/include/switch_types.h
2014-02-27 03:26:22 +05:00
Brian West e8c163c1ee FS-6250 fix regression from 7efeabbd88, don't discrimiate against people that have s as the first character in their user names 2014-02-27 02:27:39 +05:00
William King aabf813ae1 FS-5888 --resolve Rather than changing the default behavior I've updated the log line to be more accurate. Also fixed the problem where the delay was being overwritten. 2014-02-23 17:22:36 -08:00
Seven Du c0481e62f8 FS-6235 try this patch, this will send you a DOWN state at last 2014-02-23 08:33:27 +08:00
Anthony Minessale 518b98fd9d FS-6235 2014-02-23 05:17:21 +05:00
Ken Rice a9c0a46141 FS-4620 --resolve expose to dl_to_user and dl_to_host as chan vars 2014-02-21 16:51:40 -06:00
Anthony Minessale 39cd0c5f45 make hangup or end of bridge trigger unhold action for held legs 2014-02-21 13:26:15 -06:00
Anthony Minessale a9115f8c5b Fix make -j 2014-02-20 03:58:46 +05:00
Anthony Minessale b498361532 FS-6241 --resolve 2014-02-20 01:26:12 +05:00
Raymond Chandler e33b01511b FS-5845 --resolve 2014-02-17 16:15:24 -05:00
Nathan Neulinger bdc788f39e FS-6231 add support for sending call waiting tone when a simultaneous call is received --resolve 2014-02-17 13:24:52 -06:00
Anthony Minessale 98cff8ad38 FS-6002 --resolve there is no switch_core_media in stable, this should do it 2014-02-17 22:32:41 +05:00
Anthony Minessale c6d46ae454 FS-6229 try this (stable edition) 2014-02-17 22:11:07 +05:00
Jeff Lenk 4fe481cb49 FS-5377 --resolve 2014-02-15 23:15:58 -06:00
Anthony Minessale 5bddc33113 FS-6230 --resolve There was no NAT detection enabled on the calls, this patch will activate it explicitly when used with force-rport to avoid a similar problem with other users
Conflicts:
	src/mod/endpoints/mod_sofia/sofia.c
2014-02-14 23:52:13 +05:00
Anthony Minessale ab3f4f395b regression from 8f82979d8a using wrong values to calculate buffer size
Conflicts:
	src/mod/applications/mod_conference/mod_conference.c
2014-02-14 22:42:13 +05:00
Anthony Minessale 10242c3040 FS-6228 --resolve 2014-02-14 21:05:06 +05:00
Anthony Minessale 28e8194de9 FS-6223 --resolve 2014-02-13 22:12:09 +05:00
Chris Rienzo 3bb135ffcc FS-6218 --resolve 2014-02-13 09:18:10 -05:00
Anthony Minessale 27bfa2b65e FS-6217 --resolve 2014-02-13 06:22:24 +05:00
Anthony Minessale bdc4005678 FS-6221 --resolve 2014-02-13 03:26:47 +05:00