Commit Graph

16492 Commits

Author SHA1 Message Date
Anthony Minessale c411f8c7a9 queue more messages 2014-07-26 02:24:15 +05:00
Anthony Minessale 4f1b09a3ca add switch_socket_waitlist for waiting on multiple sockets and abstract it to poll and select so windows can use it too 2014-07-25 00:23:08 +05:00
Anthony Minessale 004c5ab2b0 fix some issues with duplicate chat events and some cleanup 2014-07-24 22:58:12 +05:00
Brian West d9eafdf0cb FS-6681: fix dup of audio/wav and add audio/x-wav 2014-07-24 08:30:44 -05:00
Brian West ac265ce495 FS-6682: fix arg order on switch_channel_export_variable called from switch_channel_export_variable_printf #resolve 2014-07-24 08:28:38 -05:00
Anthony Minessale bbcbb24ca4 followup commit on last verto changes 2014-07-24 02:44:34 -04:00
Anthony Minessale 7596689865 add chat to demo 2014-07-24 10:13:39 +05:00
Anthony Minessale 7c01f06e74 use final_delivery variable in chat plan to indicate that you do not want to deliver the message to its intended recipient because you have already pre-empted the message 2014-07-24 10:13:38 +05:00
Nathan Neulinger 3d5d8163b3 mod_skinny:
Changes by Ryan Lantzer <lantzer@mst.edu> to correct the generation of
line_instance value in outbound ringer requests as part of trying to
diagnose 79x1 series phones not using the correct ring tone for
calls coming into secondary lines.
2014-07-23 17:26:24 -05:00
Brian West 6eda1c0f04 tweak timeout a little as it was changing to 1000000 on the 5th try on return from switch_interval_time_from_timeval on OpenBSD 2014-07-23 15:39:33 -05:00
Nathan Neulinger cf786b184d FS-6685 mod_skinny: fix behavior of ring if other SLA extension is active 2014-07-23 13:31:06 -05:00
Brian West 1be1219afe FS-6680 #resolve 2014-07-23 11:28:07 -05:00
Brian West f11c40d889 FS-6680 #resolve 2014-07-23 11:26:25 -05:00
Anthony Minessale f0d1be5f41 reduce radius for auto positioning 2014-07-23 01:05:55 +05:00
Anthony Minessale 025e65a0cd fix resampler issue caused by refactoring impacting audio quality of resampled calls in the conference 2014-07-23 01:04:35 +05:00
Anthony Minessale 93983e63cc revert fd9d77feee 2014-07-23 01:01:44 +05:00
Moises Silva d6574e8c0f dos2unix a bunch of files
For some reason these files would get marked as modified
just after a fresh clone on Linux
2014-07-22 15:04:28 -04:00
Travis Cross a537d80372 Add new module: mod_prefix
mod_prefix is an in-memory data store optimized for fast lookups
according to the longest prefix match (LPM) rule.

Tables of key-value string pairs in JSON format can be loaded at
startup via configuration and at runtime via the API.

The implementation uses a bitwise trie (aka binary prefix tree), so
arbitrary string keys are supported.
2014-07-22 15:28:31 +00:00
Anthony Minessale 7e08d2123d FS-6663 #resolve 2014-07-22 02:05:32 +05:00
Brian West 940171c623 FS-6670 #resolve #comment Doh, see this one is dangerous 2014-07-21 16:04:36 -05:00
William King d208484a1c Fixing linefeed for mod_managed 2014-07-21 14:00:55 -07:00
Brian West c15663cba2 FS-6670 #resolve #comment This should resolve this fun stuff. 2014-07-21 15:58:32 -05:00
Brian West 5ea1729568 FS-6674 #comment you can do pull requests via stash.freeswitch.org #resolve 2014-07-21 06:48:10 -05:00
Peter Olsson 17d6c5b850 FS-6578 #comment fixed #resolve 2014-07-19 18:06:01 +02:00
Anthony Minessale ff2edeb219 add blind-reg param to verto 2014-07-19 00:42:49 +05:00
Anthony Minessale 997e921721 add transfer command 2014-07-19 00:32:09 +05:00
Travis Cross 9a1df3e3e0 Remove the legacy mod_spidermonkey
Without libjs in tree, this can't realistically be built.  Our legacy
is stored in the version control history.
2014-07-18 19:03:12 +00:00
Anthony Minessale II 83a4305003 Merge pull request #6 in FS/freeswitch from ~FRANCOIS/fs-6568:master to master
* commit 'e3b0d7219e1ea269ccd7c5f04747ad21f62c73b2':
  Fix BLF confusion when dealing with the same extension in multiple domains
2014-07-18 12:27:19 -05:00
Anthony Minessale e7700c0ac4 FS-6665 #resolve #comment This should fix it 2014-07-18 22:05:15 +05:00
Brian West 835fae4227 Any browser (Firefox, Chrome, Opera) that can run Verto can do TLS1.2, We shouldn't lower the bar when we don't need too. 2014-07-18 09:10:15 -05:00
Jeff Lenk f781ec9a5a FS-6542 missed file 2014-07-17 23:54:34 -05:00
Anthony Minessale 3ce4ae962b FS-6540 #comment please test this patch for the added notify functionality 2014-07-17 22:35:04 -05:00
Travis Cross a0e19e1c7f Use system portaudio library
This removes our in-tree version of portaudio-19 and migrates
mod_portaudio and mod_portaudio_stream to use the system version of
the library.  Our detection of the system library relies on
pkg-config.
2014-07-17 21:15:53 +00:00
Anthony Minessale a2921e269c update verto with some fixes and enhancements with reconnection 2014-07-18 01:04:04 +05:00
Jeff Lenk 419a2a617d FS-6542 oart 1 this will break vs2012 temporarily unless you manually delete libs\portaudio 2014-07-17 00:34:42 -05:00
Jeff Lenk ae670ad924 FS-6615 reswig vs2010 2014-07-16 15:24:03 -05:00
Anthony Minessale 6c80281ce9 buffer websocket headers and body before sending to avoid fragmentation 2014-07-17 01:07:57 +05:00
Chris Rienzo 3df080a79f FS-6447 #close SUBSCRIBER_ABSENT also needs handling. Thanks to Ben Langfeld. 2014-07-16 13:21:19 -04:00
Anthony Minessale 91d405a2c1 call recovery_track on recovering channels once the recovery has completed and fix race condition with repeated recovery 2014-07-16 21:40:23 +05:00
Nathan Neulinger b6566b8354 FS-5384 enable the flash indicator on ring 2014-07-16 10:42:30 -05:00
Anthony Minessale 3a00260dc6 FS-6615 test this patch 2014-07-16 19:33:10 +05:00
Nathan Neulinger 958d9d9b21 FS-5384 implement support for ring-on-active and ring-on-idle attributes - right now, will just switch from 'ring' to 'indicate only' if set to 0, defaults to 1/on 2014-07-16 09:05:15 -05:00
Travis Cross 1b7360159a Associate "sending early media" log with session 2014-07-16 04:57:39 +00:00
Travis Cross aab164b3e6 make swigall 2014-07-16 03:52:09 +00:00
Travis Cross d1ec643286 Improve name of new console log function
The new console log function here isn't any more of a channel log than
the old one.  The name was bad, and no one could have been using this
yet since we just ran reswig.  We'll take the same tack the kernel
developers do when replacing a function with an otherwise equivalent
one with a better API.
2014-07-16 03:52:08 +00:00
Travis Cross 74262ee964 Add `session::consoleLog2()`
This allows emitting log messages that include the file name and line
number of the call.  Because we have the session object here, the log
messages can be correctly associated with the session from which they
were emitted.

As when the kernel developers need to 'fix' a system call, we'll just
add a number to the name of the existing function.
2014-07-16 03:52:08 +00:00
Brian West 502cd3f659 fix verto compile error on arm 2014-07-15 21:01:38 -05:00
Travis Cross 3526ca5cb5 Allow setting threshold for RTP auto adjust
If we see a certain number of RTP packets from a host and port other
than was negotiated, we adjust to send our RTP to that host and port.
Traditionally we've waited for 10 packets.  This commit makes the
threshold adjustable by setting the channel variable
`rtp_auto_adjust_threshold` to any positive value less than 2^16.
2014-07-16 01:32:18 +00:00
Brian West 4042571003 swigall 2014-07-15 19:09:24 -05:00
Anthony Minessale e75d706746 remove select call from switch_nat.c 2014-07-16 03:01:34 +05:00
Anthony Minessale c58e64bf6d add some more headers to sip messages 2014-07-16 00:55:46 +05:00
Anthony Minessale db63dc5884 drop connection on bad write 2014-07-16 00:37:09 +05:00
Mike Jerris 6dca24bb2a Merge pull request #5 in FS/freeswitch from ~KATHLEEN.KING/freeswitch-fork:clang-warnings-werror to master
* commit '1affff9db4aaa29ab66f9f5db76f575eeabd86b5':
  Fixed a clang-3.5 missing-prototype warning and added doxygen documentation for switch_channel_set_presence_data_vals. #doxygen
  Fixed dead code.
  Fixed trucation of value warning.
  Removed a useless called to abs.
  Removed an autological-pointer-compare from src/switch_utils.c.
  Fixed trucation of value warning.
2014-07-14 17:38:21 -05:00
Anthony Minessale ab292dc33d add some more signal tracking to verto 2014-07-14 21:25:43 +05:00
Anthony Minessale fd9d77feee add clear channel for mono participants while in a conference with 3d callers 2014-07-12 03:31:26 +05:00
Anthony Minessale a03963fb92 fold livetables into verto obj and expose moderator mode 2014-07-12 03:27:08 +05:00
Brian West 07f4c6204e FS-6646 --resolve 2014-07-11 11:03:22 -05:00
Chris Rienzo eae1c4477a mod_graylog2: additional input checks on LOG_FIELDS[] 2014-07-11 10:38:29 -04:00
Brian West a0a8a66525 FS-6420 2014-07-10 10:17:54 -05:00
Chris Rienzo e79f87216a mod_graylog2: additional fields can now be specified by adding LOG_FIELDS[name=string_value,@#name=number_value] to beginning of log. Added _microtimestamp additional field since graylog2 only has millisecond timestamp precision. 2014-07-10 10:25:20 -04:00
Anthony Minessale 88940d3833 log websocket write failures 2014-07-09 13:30:14 -05:00
Michael Jerris f2887fb89e CID:1224272 Dereference after null check. member can not actually be NULL in any of the scenarios calling this function 2014-07-09 14:32:38 -04:00
Mike Jerris 68a8bb7fff Merge pull request #9 in FS/freeswitch from ~PFOURNIER/freeswitch:feature/fax_enable_tep to master
* commit '0fb179acf2246b896f1a66cfb96da68e9d2675f7':
  Add new option to request TEP to be used for an outbound fax call
2014-07-09 11:54:16 -05:00
Brian West 36fd87a67a Merge pull request #7 in FS/freeswitch from ~PFOURNIER/freeswitch:bugfix/t38_require_timer to master
* commit '21ae587063eb3b55c690f47cf9299a539ec25415':
  Disabling Require timer for T.38 re-Invites cause problems
2014-07-09 10:49:04 -05:00
Brian West f18a773ca2 Merge pull request #8 in FS/freeswitch from ~PFOURNIER/freeswitch:bugfix/fax_disable_ecm to master
* commit '5d31c9b9fe2ae6dead163c60974a41fec4fac3fc':
  It was impossible to disable ECM with T.38 in gateway mode
2014-07-09 10:48:56 -05:00
Brian West a99df48984 FS-4861 improve logging when using c++ wrapper 2014-07-09 09:09:45 -05:00
Brian West 9a4e29d785 FS-4870 2014-07-09 09:08:05 -05:00
Brian West 28e90addf2 FS-5501 fire event on profile start 2014-07-09 08:53:14 -05:00
Brian West ec008234e9 FS-5516 allow get params in URL 2014-07-09 08:52:01 -05:00
Brian West a79a9ea9ed FS-6373 2014-07-09 08:25:54 -05:00
Brian West 8951d26f8c FS-6626 fix winter DST issue 2014-07-09 07:58:11 -05:00
Brian West e1d814b7e7 FS-6565 2014-07-09 07:45:55 -05:00
Brian West 99d0f134e7 FS-6566 2014-07-09 07:44:37 -05:00
Patrice Fournier 0fb179acf2 Add new option to request TEP to be used for an outbound fax call 2014-07-08 01:06:32 -04:00
Patrice Fournier 5d31c9b9fe It was impossible to disable ECM with T.38 in gateway mode 2014-07-08 01:05:28 -04:00
Patrice Fournier 21ae587063 Disabling Require timer for T.38 re-Invites cause problems
Disabling Require timer for T.38 re-Invites tells the remote side it
doesn't need to refresh the session but FreeSwitch will still terminate
the call if the remote session doesn't refresh.
2014-07-08 01:00:52 -04:00
François e3b0d7219e Fix BLF confusion when dealing with the same extension in multiple domains 2014-07-06 16:57:50 +02:00
Brian West cdbed1f66e Update to use PocketSphinx 0.8 2014-07-05 09:14:06 -05:00
Travis Cross c17d58b856 Refactor the curl PUT read callback 2014-07-04 07:47:04 +00:00
Travis Cross 2fea35282f Advance the data_stream data pointer 2014-07-04 07:43:59 +00:00
Travis Cross a84b76be2a Add PUT support to mod_curl `curl` api and app
With both the `curl` api command and application, you can now ask for
data to be PUT where previously it could only be sent via POST.
2014-07-04 07:40:13 +00:00
Kathleen King 1affff9db4 Fixed a clang-3.5 missing-prototype warning and added doxygen
documentation for switch_channel_set_presence_data_vals. #doxygen
2014-07-03 18:51:14 -07:00
Kathleen King 2d85726ecd Fixed dead code.
While reviewing code I noticed some dead code. It was not possible to
default to the channel variable because the parameter could not be
both full and empty.

If the parameter is not a non zero length string then the code looked
like it was intending to default to the channel variable
'presence_data_cols'. If neither of these are the case it is a noop.

By enabling the dead code, you now have access to set the
'presence_data_cols' in the dialplan or scripts like lua.
2014-07-03 17:03:01 -07:00
Mike Jerris e9ef4b143c Merge pull request #2 in FS/freeswitch from ~KATHLEEN.KING/freeswitch-fork:doxygen-switch_apr.h to master
* commit '64fc3f7934888175b80e0cdd3a065d717d0a9014':
  Changed the function parameter name in the function definition to match the updated parameter name in the function declaration. #doxygen
  Changed the variable name for clarity.
2014-07-03 16:45:52 -05:00
Kathleen King 85699480b3 Fixed trucation of value warning.
There was a parameter mismatch between abs(), which expects an int,
and atol() which returns a long. Since max_drift is defined as an int,
there is no need to pars q as a long rather than an int.
2014-07-03 14:41:24 -07:00
Kathleen King 64fc3f7934 Changed the function parameter name in the function definition to
match the updated parameter name in the function declaration. #doxygen
2014-07-03 14:19:33 -07:00
Kathleen King aef569172b Removed a useless called to abs.
Clang 3.5 reported the following error: error: taking the absolute
value of unsigned type 'unsigned int' has no effect
[-Werror,-Wabsolute-value]

Subtracting unsigned variables will never be negative and will either
be the small expected value or will wrap to a very big value. This
code is trying to determine if the difference between these timestamps
is greater than 16000.

The variables last_write_ts and this_ts deal with timestamps. In the
normal case this_ts will be a larger timestamp than
last_write_ts. This change will maintain the intended behavior of
reseting the video if the difference is larger than
16000 and in the abnormal case this value would wrap and still exceed
the 16000.
2014-07-03 13:17:12 -07:00
Kathleen King 24e5c13283 Removed an autological-pointer-compare from src/switch_utils.c.
Building with Clang 3.5 gave the following warning: error: comparison
of array 'iface_out.sin6_addr.__in6_u.__u6_addr8' equal to a null
pointer is always false [-Werror,-Wtautological-pointer-compare]

This is a problem because as it is written the check will never be
true. A pointer to a structure within a structure will never be null. The
intention was either to null check the pointer or to check if the IP
address itself was not zero.

From context in the code this appeared to be a pointer null check so I
removed it.
2014-07-03 12:12:22 -07:00
Anthony Minessale 831d5892b9 preserve timer name for recovery 2014-07-03 23:50:14 +05:00
Kathleen King 89f7196a6e Fixed trucation of value warning.
There was a parameter mismatch between abs(), which expects an int,
and atol() which returns a long. Since max_drift is defined as an int,
there is no need to pars q as a long rather than an int.
2014-07-03 10:53:19 -07:00
Mike Jerris 64763398fa Merge pull request #4 in FS/freeswitch from ~KATHLEEN.KING/freeswitch-fork:doxygen-switch_regex.h-2 to master
* commit '35755d37d5dd47c2f8470ca9a294b55f124ee1e7':
  Fixed parameter name of variable in switch_regex_match_partial. #doxygen
2014-07-03 12:03:04 -05:00
Ken Rice 8732abef40 test commit hooks, whitespace change only 2014-07-03 08:50:04 -05:00
Brian West 4a51650b16 reswig 2014-07-03 08:09:18 -05:00
Kathleen King f47ecb25a1 Changed the variable name for clarity. 2014-07-02 20:10:31 -07:00
Kathleen King 35755d37d5 Fixed parameter name of variable in
switch_regex_match_partial. #doxygen
2014-07-02 17:46:55 -07:00
Anthony Minessale 39200cd13b increase memory for buffers to hold new decoded stereo codecs 2014-07-03 02:55:21 +05:00
Anthony Minessale 99f15662e2 fix jb endless loop of missing packets 2014-07-03 02:16:32 +05:00
Anthony Minessale 9e0d1d6841 only count unmuted channels in positioning 2014-07-02 22:57:29 +05:00
Jeff Lenk 9807a92a70 vs2010 reswig 2014-07-02 12:46:26 -05:00
Anthony Minessale f0d16d0d18 expand positioning api usage 2014-07-02 04:49:16 +05:00
Anthony Minessale 1518240bab FS-6637 try this instead 2014-07-01 23:59:40 +05:00
Anthony Minessale 0f017814dd FS-6637 nevermind, this is already in the code 2014-07-01 23:53:45 +05:00
Anthony Minessale 5d70df9b1c FS-6637 try this patch 2014-07-01 22:32:02 +05:00
Anthony Minessale 2423fc7d0f FS-6540 This should proxy all refers now, the param has changed to proxy-refer 2014-06-30 12:53:22 -05:00
Anthony Minessale 7f9348dbc3 fix volume adjustments in stereo conference 2014-06-30 23:39:42 +05:00
Anthony Minessale 41a7d1cf31 some refactoring to make new stereo stuff more stable 2014-06-30 23:00:45 +05:00
Anthony Minessale 591ea9e9ca tweaks 2014-06-30 04:39:46 +05:00
Anthony Minessale 0bb7f1659f check for member channel 2014-06-30 01:59:21 +05:00
Travis Cross c1f1f8b98e Check for too many SRTP errors before warning
We're checking whether we've hit the warning threshold before checking
whether we should just end the call.  This causes an off-by-one error
where we take one SRTP error more than intended.

This commit reverses the order of the tests.
2014-06-29 20:49:46 +00:00
Anthony Minessale 0ac78cacc3 add openal code to mod_conference 2014-06-30 01:23:08 +05:00
Anthony Minessale 1a56298c53 add 44.1khz codec defs 2014-06-30 01:23:07 +05:00
Travis Cross 7741f403f1 Handle SRTP_READ_ERROR in mod_rayo 2014-06-28 06:42:57 +00:00
Travis Cross f31641f4bf Allow more SRTP errors before killing call
In a carrier interop we saw the call get killed for SRTP failures
during a reinvite.  We're wondering if the SRTP errors may have been
transitory and if it may have recovered after a few more packets.

It's debatable whether we should kill calls at all for SRTP auth
failures; semantically the right thing to do when a MAC fails is to
ignore the packet completely.  So raising this limit to 100 packets
shouldn't do any harm.  With this change we still warn at 10 errors
and every 10 errors thereafter.
2014-06-28 03:57:20 +00:00
Travis Cross 7406be6927 Relay cause of hangup on SRTP failure
We hangup the channel after receiving 10 SRTP packets in a row with a
bad auth tag or that are replayed.  Prior to this commit we were
indicating a normal clearing.  When doing interop and looking first at
packet traces, this made freeswitch's behavior look surprising.  With
this commit we'll indicate more loudly what's happening.
2014-06-28 01:18:50 +00:00
Travis Cross 52892b312a Fix misspelled function
switch_rtp_set_invalid_handler has been misspelled as
switch_rtp_set_invald_handler going all the way back to the
beginning.  So while it's possible that someone somewhere could be
relying on this misspelling, I think it's more likely that no one has
used it much and that's why it wasn't spotted.  We don't even use it
ourselves anywhere anymore.

Introduced in commit: 828e03715f
2014-06-28 00:32:41 +00:00
Travis Cross fc247a223f Add editor footer to core files missing it 2014-06-27 23:55:27 +00:00
Travis Cross 52fb53cba4 Allow reincarnation from mod_sofia's shutdown-on-fail
mod_sofia's parameter shutdown-on-fail now accepts the value
"reincarnate-now".  This will cause the switch to exit immediately
with a non-zero exit code so that the supervisor can recover the
switch.  For this to work you have to pass in -reincarnate or
-reincarnate-reexec to freeswitch.
2014-06-27 22:18:39 +00:00
Travis Cross 80ed14ab3e Ensure mod_sofia params can be unset or reset
This is the result of auditing each mod_sofia profile parameter to
ensure that it can be unset or reset after being set.  One use-case
for this being done correctly is so a later parameter in a
configuration file can reliably override an earlier one, which is
useful for setups with layered include files.
2014-06-26 09:04:56 +00:00
Travis Cross 75feed68fc Avoid leaking memory on sofia profile reload
We were leaking the string values of apply-candidate-acl parameters.
2014-06-26 08:39:55 +00:00
Travis Cross 63351a1061 Terminate format_cdr json files with newline
In UNIX, text files by definition end with a newline.
2014-06-25 23:30:54 +00:00
Travis Cross d5fa28417e Allow setting format of log filename in format_cdr
This commit allows you to set a `log-file` string parameter in a
format_cdr profile.  This string is a template that may (and should!)
contain variables.  This template will be expanded and used as the
file name of the CDR to be written.  This parameter should contain
only the template for the file name itself; the path is relative to
the `log-dir`.
2014-06-25 23:22:34 +00:00
Travis Cross f7b4ec617a Allow SIP UPDATE messages without display updates
Previously if send-display-update was set to false we would also
remove UPDATE from our Allow: headers.  This is unnecessary.  The
UPDATE message is useful in SIP transactions even if we're not sending
display updates.

With this commit, we add a new boolean profile flag, allow-update.  If
set to true we'll send Allow: UPDATE.  If set to false, we will not.
If there is a conflict with another setting that requires UPDATE
support, the allow-update parameter will win and a warning will be
printed.

ref: RFC 3311
2014-06-25 20:43:29 +00:00
Anthony Minessale ba784f2548 skip update on member channels with no json 2014-06-25 13:40:50 -05:00
Anthony Minessale b9a51bbf91 FS-6632 Trying to actually use opus in stereo broke pretending to use it in stereo 2014-06-25 21:19:07 +05:00
Anthony Minessale 062b7c6e3d duh, the code to parse the codec params from the config file wasn't there 2014-06-25 21:19:07 +05:00
Anthony Minessale c71f89a39b FS-6627 2014-06-24 15:42:07 -05:00
Brian West 1a58f05891 FS-6621 2014-06-24 14:13:10 -05:00
Seven Du 6540068faa fix compiler warning 2014-06-24 09:10:34 +08:00
Anthony Minessale 25c0f7d00c FS-6440 regression from this patch on single CPU or VM machines causes startup race 2014-06-23 23:55:52 +05:00
Eliot Gable b21f34bffc Clarify error message. 2014-06-21 19:16:50 +00:00
Brian West 058ef6923b FS-6617 fix compile error 2014-06-21 11:04:53 -05:00
Anthony Minessale 011e069652 fix recording in stereo conferences 2014-06-20 23:53:22 +05:00
Brian West 8f47f403fd FS-6612: Don't use rport in tcp or tls 2014-06-20 10:23:05 -05:00
Anthony Minessale ffa09cd1e7 various verto cleanups and fix a race in double event delivery thread creation 2014-06-20 19:21:56 +05:00
Anthony Minessale faeb00368e verto bug fixing in codec negotiation and some stereo codec stuff 2014-06-20 01:41:28 +05:00
Anthony Minessale f7c6c90749 fix null strcmp 2014-06-19 23:37:39 +05:00
Nathan Neulinger d886cc12fa mod_skinny: profile digit timeout is integer not string 2014-06-18 17:11:19 -05:00
Nathan Neulinger 65e190ce26 mod_skinny: add easy access to set blocking/non-blocking mode for skinny socket on a per-profile basis 2014-06-18 17:06:54 -05:00
Nathan Neulinger 8dabf51945 mod_skinny: socket timeout should be set in all cases, not just for blocking 2014-06-18 16:41:38 -05:00
Nathan Neulinger 06b87b83c5 mod_skinny: no warning if there is a matching entry, but no version listed 2014-06-18 12:06:27 -05:00
Nathan Neulinger 296c489143 mod_skinny: add stub for media resource notification message sent by VG224 2014-06-18 11:54:49 -05:00
Nathan Neulinger 840f7e69dd mod_skinny: always return a response to version message, since that's what CCM does 2014-06-18 11:44:25 -05:00
Nathan Neulinger 4eabd3ab95 mod_skinny: handle additional escaping in log messages to reduce screen/console issues 2014-06-18 10:19:42 -05:00
Nathan Neulinger e279ae8203 FS-6605 add support for automatic dialing when off-hook/ringdown --resolve 2014-06-18 08:40:28 -05:00
Nathan Neulinger 723ea00855 FS-6607 add further not from wiki page about IPv6 support 2014-06-17 19:53:45 -05:00
Nathan Neulinger 1e249d61c3 FS-6607 add notice of IPv6 support for mod_skinny 2014-06-17 19:36:55 -05:00
Michael Jerris 412abaddde no one seems to be okay with actually installing perl modules because it might require the permissions to acutally do so, instead, let the users figure out how to install them themselves so they can figure out how to have permissions and where they acutally go by themselves with no direction from us 2014-06-17 20:19:22 -04:00
Anthony Minessale b077217d44 FS-6337 2014-06-18 01:19:14 +05:00
Anthony Minessale 3c08104874 remove unused code 2014-06-18 01:17:35 +05:00
Nathan Neulinger d5856a4197 FS-477 fix inappropriate firing of timeout after call proceeds --resolve 2014-06-17 14:56:21 -05:00
Michael Jerris c76c132692 FS-6604: needs DESTDIR 2014-06-17 11:53:10 -05:00
Michael Jerris 6e05bfba13 FS-6604: install to archlib not sitelibexp 2014-06-17 11:19:02 -05:00
Michael Jerris 82dbc5d2b9 FS-6604: install to archlib not sitelibexp 2014-06-17 10:35:17 -05:00
Chris Rienzo 3c7c167581 mod_rayo: improved idle detection- call is idle only if no active components and not joined 2014-06-16 14:39:17 -04:00
Brian West 10719e58c8 work around macro definition of fileno breaking our c++ code 2014-06-16 11:14:42 -05:00
Brian West 23259812ac FS-6593 --resolve this isn't used, I've tested. 2014-06-16 10:42:58 -05:00
Travis Cross 13e02278a1 Use portable version of strerror_r()
FS-6596 --resolve
2014-06-16 13:45:39 +00:00
Jeff Lenk 9e600ec938 FS-6591 --resolve If you are still using spidermonkey you should migrate to v8 2014-06-13 22:49:01 -05:00
Jeff Lenk dc2f5cc491 vs2010 reswig 2014-06-13 22:41:37 -05:00
Anthony Minessale c0e7e7b88c add reset function to clear some state data in the rtp session 2014-06-14 07:05:00 +05:00
Anthony Minessale 280e816a90 FS-6590 --resolve 2014-06-14 04:56:55 +05:00
Anthony Minessale 9108a08a47 fix build 2014-06-13 23:15:41 +05:00
Chris Rienzo 633dfe2a56 FS-6535 mod_rayo: close recognizer when input component is complete 2014-06-13 12:34:19 -04:00
Chris Rienzo 1511fe3ee8 mod_rayo: rework component inheritance- component now inherits parent call/mixer mutex and parent reference counting moved to base class 2014-06-13 12:16:26 -04:00
Chris Rienzo 730d2f88ba mod_rayo: rename reference counting functions to something more sensible 2014-06-13 11:33:33 -04:00
Chris Rienzo 9aa5102142 FS-6535 mod_rayo: compile error 2014-06-13 10:08:49 -04:00
Chris Rienzo 4c54f45f4a FS-6535 mod_rayo: allow unimrcp recognizer w/ profile specified 2014-06-13 10:05:53 -04:00
Brian West 950de7fc5c reswig 2014-06-13 07:49:34 -05:00
Anthony Minessale c375e336bc add debugging 2014-06-13 06:06:14 -04:00
Anthony Minessale 41cea5c751 remove debug 2014-06-13 05:01:37 -04:00
Anthony Minessale 4e5ecdf995 only run plc on mono channels 2014-06-13 03:02:12 -04:00
Anthony Minessale 33541dcfd9 add logging 2014-06-13 03:02:09 -04:00
Anthony Minessale 4ffbf23ffa stereo refactoring 2014-06-13 01:49:16 -04:00
Jeff Lenk 56ef59e9ad vs2010 reswig and fix mod_rss for recent stereo changes 2014-06-12 22:48:21 -05:00
Chris Rienzo c82ac3afbf FS-6535 mod_rayo: fix double lock on speech detection failure 2014-06-12 23:24:35 -04:00
Chris Rienzo bb6869b7ab FS-6535 --resolve mod_rayo: allow multiple grammars (including dtmf) when using unimrcp 2014-06-12 22:56:34 -04:00
Anthony Minessale 0f62c4cd62 FS-6440 --resolve 2014-06-13 05:46:40 +05:00
Anthony Minessale ed7264b6d3 doh 2014-06-13 05:28:14 +05:00
Anthony Minessale 7642d846a9 some more channels updates 2014-06-13 05:13:43 +05:00
Anthony Minessale 579a051867 add channels param the the silence generator function 2014-06-13 04:49:44 +05:00
Chris Rienzo ab5278c02f stereo: fix mod_flite, mod_ssml, mod_unimrcp compile errors 2014-06-12 17:41:52 -04:00
Anthony Minessale 97cc089826 fix compile errs 2014-06-12 13:12:39 -04:00
Anthony Minessale 928a989de1 first pass of stereo support 2014-06-12 22:06:33 +05:00
Michael Jerris b333714906 fix coverity warnings 2014-06-11 17:11:47 -05:00
Michael Jerris bfaf20c2f3 fix install 2014-06-11 15:20:38 -05:00
Michael Jerris 1ffb1ee0d0 WIP 2014-06-11 12:48:46 -05:00
Travis Cross 12da85ef61 Check for execv(3) errors when reincarnating
When -reincarnate-reexec is given we run execv to restart FS.  If
argv[0] isn't a full pathname then execv is going to fail.  While not
common for a FS system started by init, this is a common occurrence
when FS is started from the shell.

Now if execv fails, we'll try execvp.  If that fails too then we'll
fall back on the normal reincarnation behavior.

Previously what would happen in that case is god would descend from
the heavens and become mortal.  Leaving heaven absent, all hope for
reincarnation was lost.

(That is, we'd simply return from reincarnate_protect and the
supervisor process would become the new instance of FS, so the trick
would only work once.)
2014-06-10 23:52:36 +00:00
Travis Cross 03202e3017 Add fsctl command to summon reincarnation
If you start freeswitch with -reincarnate or -reincarnate-reexec, FS
will restart automatically in the event of an unexpected exit.

Currently, you can cause FS to immediately call exit(0) with `fsctl
shutdown now`, or you can have it call abort() with `fsctl crash`.
Which are both nice, but if you have reincarnation engaged, you really
might want FS to call exit([non-zero]) so the great supervisor
immediately breathes life back into your system.

This is now available via `fsctl shutdown reincarnate now`.
2014-06-10 22:39:27 +00:00
Nathan Neulinger 148c21c6b2 FS-477 mod_skinny fix leaked lock 2014-06-09 12:34:52 -05:00
Nathan Neulinger 2974734479 FS-477 mod_skinny: re-add ability to set digit timeout in patterns, update example configs 2014-06-09 12:29:47 -05:00
Nathan Neulinger 8b6fd66f34 FS-477 default to 10 seconds to avoid noticeable impact on current users until variable timeout support re-added 2014-06-09 10:56:52 -05:00
Simon Wunderlich 31a181a4b5 mod_skinny: implement digit timeout for dialing
For numbers with variable length, there should be a timeout to wait for
further digits before routing the number. This has been prepared with
the skinny-wait target, which waited forever. This patch implements the
digit timeout which routes the call after the timeout has elapsed. The
timeout can be configured in the mod_skinny XML settings
("digit-timeout") and defaults to 2 seconds.

This implementation has been requested and sponsored by Blackned GmbH.

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
Signed-off-by: Nathan Neulinger <nneul@neulinger.org>
2014-06-09 10:55:36 -05:00
Anthony Minessale 49ee6781a5 FS-6540 please test 2014-06-05 23:49:50 +05:00
Anthony Minessale 37a194d956 FS-6555: move -w to the right place so it silences the warnings in generated code instead of using gnu makeisms that didn't actually fix the problem 2014-06-04 20:43:38 +05:00
Anthony Minessale 3ab1044d6e FS-6562 --resolve 2014-06-03 15:16:45 -04:00
Brian West 6722e3dfea fix regression from regression 2014-06-02 19:25:04 -05:00
Brian West f358c35b67 remove debug line 2014-06-02 19:21:02 -05:00
Anthony Minessale a7b9329a08 FS-6446 regression fixed 2014-06-02 19:09:48 -05:00
Anthony Minessale 0eda5cb80f suppress audio flaw tally when coming off hold 2014-06-02 19:09:10 -05:00
Anthony Minessale 956da6d689 Modify sofia profile to attempt to bind to the interface up to 3 tries with a 5 second wait between attempts.
Add new profile params bind-attempts and bind-attempt-interval to modify default behavior.
--NEEDSDOCS
2014-06-02 22:47:26 +05:00
Seven Du ead290870a fix compiler warning for implicit convertion 2014-06-01 08:09:49 +08:00
Anthony Minessale 495db48f5a make device state code more accurate 2014-05-31 00:30:59 +05:00
Travis Cross 79a888de2c Revert addition of PERL_GCC_PEDANTIC to CFLAGS
Brian and I decided to handle this by just stripping -ansi -pedantic
from the mod_perl build instead.

Revert "Since we can't tell if the system perl was built with
pedantic, we have a problem because we default debug enabled which
uses AX_CFLAGS_WARN_ALL_ANSI, For the GNU CC compiler it will be
-Wall (and -ansi -pedantic) The result is added to the shellvar being
CFLAGS by default.  Which then gets included for building mod_perl,
Either way I think this is the correct corse of action to overcome
these new builds of mod_perl."

This reverts commit cb94340e26.
2014-05-30 15:40:46 +00:00
Travis Cross 750e2bae36 Build mod_perl without pedantic flags even when debugging
This means we don't have to set PERL_GCC_PEDANTIC which removes
assertions that are helpful for debugging.
2014-05-30 15:37:14 +00:00
Brian West cb94340e26 Since we can't tell if the system perl was built with pedantic, we have a problem because we default debug enabled which uses AX_CFLAGS_WARN_ALL_ANSI, For the GNU CC compiler it will be -Wall (and -ansi -pedantic) The result is added to the shellvar being CFLAGS by default. Which then gets included for building mod_perl, Either way I think this is the correct corse of action to overcome these new builds of mod_perl. 2014-05-29 21:13:07 -05:00
Michael Jerris 6092524f17 CID:1174726 Dereference before null check, CID:1214199 Dereference null return value; refactor channel_outgoing_channel to have failure conditions first to reduce indenting level 2014-05-29 21:59:26 +00:00
Anthony Minessale 0d7b1ff42a chrome now requires longer ice password 2014-05-29 15:46:31 -04:00
Travis Cross b53a6c2b2e Remove unused assignment
If we don't find it, we create a new one, and if we do find it, we
don't use it.
2014-05-29 16:01:09 +00:00
William King 2b0c9a1482 FS-6560 --resolve 2014-05-29 08:37:21 -07:00
Travis Cross 609982cf2f Remove redundant check for null
We're asserting now, and we would have already blown up from
dereferencing earlier.
2014-05-29 14:25:49 +00:00
Travis Cross 6663692ff7 Assert on implied failure to malloc
switch_event_expand_headers should only return null on a malloc
failure, so we might as well just assert here.
2014-05-29 14:24:48 +00:00
Travis Cross e66d24622a Fix potential dereference of null pointer
The node could conceivably disappear before we grab the globals mutex
and we'd get back a null pointer.
2014-05-29 14:11:33 +00:00
Travis Cross 17137d089d Add missing parenthesis pair
This would have briefly prevented setting outbound_per_cycle from the
mod_fifo config file.
2014-05-29 13:21:22 +00:00
Travis Cross 84fe7b0794 Remove tautological condition check
We already decided to goto end if node is null, so it cannot be null
here.
2014-05-29 13:15:44 +00:00
Travis Cross bf59d57dab Add missing parenthesis pair
This would have briefly caused the importance value in the fifo config
file to be ignored.
2014-05-29 13:10:23 +00:00
Anthony Minessale 50dfce2845 FS-6513 --resolve This function was assuming the app was being run with execute_on_media so it did not properly check for established media. Now it will use the scheduler method automatically when this state is detected. 2014-05-29 01:14:28 +05:00
Travis Cross a976badec7 Document the length limit of fifo_outbound_uuid
Ask me sometime how I was "reminded" of this.
2014-05-28 17:04:46 +00:00
Anthony Minessale 5138f4d5a7 add new stub module mod_rtc dummy signaling-free media engine endpoint 2014-05-28 07:31:24 +05:00
Travis Cross 00b25baa42 mod_fifo: Explain session message unbridge constant 2014-05-28 01:32:11 +00:00
Travis Cross 144fea57b2 mod_fifo: Add missing has_outbound to docstring 2014-05-28 01:32:11 +00:00
Travis Cross 42e9615900 mod_fifo: Add missing tab completions 2014-05-28 01:32:10 +00:00
Travis Cross 06805452d8 mod_fifo: Cleanup documentation formatting 2014-05-28 01:32:10 +00:00
Travis Cross 431d7d97c7 mod_fifo: Document effect of fifo strategy and importance 2014-05-28 01:32:10 +00:00
Travis Cross 96012ffb3a mod_fifo: Document the enterprise strategy 2014-05-28 01:32:10 +00:00
Travis Cross e2596b3f30 mod_fifo: Document the ringall strategy 2014-05-28 01:32:09 +00:00
Travis Cross 1b5a1c1e1d mod_fifo: Document find_consumers() 2014-05-28 01:32:09 +00:00
Travis Cross 0c25c3deb9 mod_fifo: Document node_thread_run() 2014-05-28 01:32:09 +00:00
Travis Cross 80ccaf3450 mod_fifo: Remove duplicate check in ringall strategy
We already checked the number of usable rows, and nothing has changed.
2014-05-28 01:32:08 +00:00
Travis Cross 343aee2dd8 mod_fifo: Comment manual call tracking session handler 2014-05-28 01:32:08 +00:00
Travis Cross 48acd9fe66 mod_fifo: Note source of unexplained constant 2014-05-28 01:32:08 +00:00
Travis Cross a24b0b739f mod_fifo: Avoid getting time twice
We were simply discarding unused the first time we retrieved here.
2014-05-28 01:32:07 +00:00
Travis Cross 64144d73a3 mod_fifo: Refactor to avoid a memory allocation 2014-05-28 01:32:07 +00:00
Travis Cross 011882c8dd mod_fifo: Cleanup line spacing 2014-05-28 01:32:07 +00:00
Travis Cross a5f982fd1c mod_fifo: Replace duplicate code with node_caller_count() 2014-05-28 01:32:06 +00:00
Travis Cross 597a5c1208 mod_fifo: Remove empty declaration 2014-05-28 01:32:06 +00:00
Travis Cross edecd151a5 mod_fifo: Document the read_frame_callbacks 2014-05-28 01:32:06 +00:00
Travis Cross 42ebfbfc59 mod_fifo: Document the fifo_queue_t structure 2014-05-28 01:32:06 +00:00
Travis Cross 5f4ed9c123 mod_fifo: Document fifo_chime_data::list 2014-05-28 01:32:05 +00:00
Travis Cross 2c7c15261d mod_fifo: Document caller DTMF handler 2014-05-28 01:32:05 +00:00
Travis Cross 3e6199eace mod_fifo: Remove reimplementation of strchr() 2014-05-28 01:32:05 +00:00
Travis Cross 27b3ddcc9f mod_fifo: Document the consumer DTMF callback 2014-05-28 01:32:04 +00:00
Travis Cross 7920630c8f mod_fifo: Refactor DTMF exit key matching 2014-05-28 01:32:04 +00:00
Travis Cross c34ad2c0ec mod_fifo: Avoid getting a var when we won't use it 2014-05-28 01:32:04 +00:00
Travis Cross 077579b131 mod_fifo: Document fifo_queue_popfly() 2014-05-28 01:32:03 +00:00
Travis Cross b914c2374d mod_fifo: Document fifo_queue_pop_nameval() 2014-05-28 01:32:03 +00:00
Travis Cross 1eaf4b50ca mod_fifo: Document remove parameter of fifo_queue_pop() 2014-05-28 01:32:03 +00:00
Travis Cross e241477860 mod_fifo: Tighten up some whitespace 2014-05-28 01:32:03 +00:00
Travis Cross e677da5870 mod_fifo: Refactor in create_node() 2014-05-28 01:32:02 +00:00
Travis Cross 628b6c19ab mod_fifo: Remove dead code
We were making a copy of the fifo name and stripping any domain name,
but then not using the value.
2014-05-28 01:32:02 +00:00
Travis Cross 6105e9783c mod_fifo: Refactor load_config()
Reduce number of local variables where possible; consolidate lines.
2014-05-28 01:32:02 +00:00