3596 Commits

Author SHA1 Message Date
Anthony Minessale
9c1e6037c9 FS-6954 #comment we fixed another bug and this is the side effect which is completely valid, too bad you can never fix broken t38 endpoints. Can you please test this patch 2014-11-05 11:51:30 -06:00
Anthony Minessale
a4971693d3 FS-6890 #comment please test 2014-11-05 11:35:16 -06:00
Brian West
32a9ff3d39 Merge pull request #60 in FS/freeswitch from ~SJTHOMASON/freeswitch:FS-6823 to master
* commit 'afb00b2ecc8a9b049801f3f475c80e1111070fa8':
  Force rport on ADTRAN TA Devices
2014-11-04 07:36:36 -06:00
Brian West
39be877760 One place we said Failed Registration, the other we said Registration Failed, lets try to be consistent. 2014-10-30 10:40:52 -05:00
Anthony Minessale
52ae551d1a FS-6954 #resolve #comment technically the new way is more correct but there is no hope for making fax endpoints follow a real spec. This should take care of it. 2014-10-30 10:15:10 -05:00
Brian West
3b9f0c32e6 FS-6927 #comment allow sub millisecond resolution for option ping times 2014-10-29 16:01:28 -05:00
Anthony Minessale
443ab8a8db FS-5949 #resolve 2014-10-28 13:38:06 -05:00
Brian West
75815877d6 FS-6688 #resolve 2014-10-27 14:14:21 -05:00
Brian West
f772b400bf FS-6939 please do pull request next time. ;) 2014-10-27 14:12:55 -05:00
Brian West
26af9c3d67 FS-6939 #resolve 2014-10-27 12:23:44 -05:00
Brian West
f1ee4ba4d7 Merge branch 'master' of ssh://stash.freeswitch.org:7999/fs/freeswitch 2014-10-16 17:03:57 -05:00
Brian West
15e9e68064 FS-6927 #resolve #comment This display option ping times in the gateway status on sofia status gateways or individual gateway status output 2014-10-16 17:03:37 -05:00
Anthony Minessale
2e10407336 actual fix for commit cff5209ca3582994dae1353372e2f91b345ab959 which was in the wrong place 2014-10-16 16:04:15 -05:00
Anthony Minessale
3bdbdd4abf revert cff5209ca3582994dae1353372e2f91b345ab959 2014-10-16 14:39:59 -05:00
Matteo Brancaleoni
beb1d17921 FS-6400 Improve sip ping generation by distributing them across an interval 2014-10-14 14:24:21 +02:00
Anthony Minessale
cff5209ca3 fix leak of nua handle due to reference counting that must be between 3 to 7 years old. Effects all calls with auth/challenge on INVITE 2014-10-13 18:06:32 -05:00
Anthony Minessale
e4e9b1b9f9 have resume media on hold not send invite back out at the holder but rather enable media in the 200ok 2014-10-10 16:09:43 -05:00
Travis Cross
b5294c53d6 Fix crash on transport=tls with non-TLS profile
We use the transport of the Contact header of the remote UAC to decide
which of our own Contact addresses we should use when replying to a
SUBSCRIBE or sending a presence NOTIFY.

If TLS is not enabled on a Sofia profile, then the TLS Contacts for
that profile are NULL.  Unfortunately we were using these NULL values
uncritically when the remote UAC sent us a Contact header with a TLS
transport and our own Sofia profile did not have TLS enabled.

With this commit we fall back to our TCP Contact address when the
remote Contact is TLS and our Sofia profile does not have TLS enabled.
2014-10-10 18:36:37 +00:00
Michael Jerris
855cc4b4e0 add 908-retry-seconds gateway param to set reg retry time when getting a 908 for backup interfaces to connect quickly 2014-10-09 14:43:23 -04:00
Mike Jerris
34bc98cafa Merge pull request #47 in FS/freeswitch from ~FLAVIO/freeswitch-fs-5106:master to master
* commit '56535519043201c723467c66c772d7519a2b6f62':
  FS-5106 fire an event when a sip client doesn't respond to option-ping
2014-10-07 14:06:34 -05:00
Anthony Minessale
2051a86df2 FS-6889 #resolve 2014-10-07 13:47:44 -05:00
Mike Jerris
6860b41763 Merge pull request #83 in FS/freeswitch from ~MKVONARX/freeswitch-fs-6710:FS-6710 to master
* commit '490efb7177ddcd3e61018f02c1435362937e8b15':
  FS-6710: fix incorrect comparison for Min-SE values between SIP INVITE and local configuration
2014-10-07 11:50:19 -05:00
Mike Jerris
d4929443f9 Merge pull request #59 in FS/freeswitch from ~SJTHOMASON/freeswitch:FS-5868 to master
* commit '747322dcc6f4db1bffc985c9bcff0bd32a2682a9':
  Remove Contact header from BYE and CANCEL requests.
2014-10-07 11:47:40 -05:00
Markus von Arx
490efb7177 FS-6710: fix incorrect comparison for Min-SE values between SIP INVITE and local configuration 2014-10-07 10:41:36 +02:00
Anthony Minessale
b2ae5f4cc2 few bugs on recent new features 2014-10-03 15:36:23 -05:00
Anthony Minessale
bde2e2da51 FS-6889 #resolve 2014-10-03 11:34:42 -05:00
Jeff Lenk
ae5d86515a FS-6884 #comment these were mostly simple warnings 2014-10-02 19:20:35 -05:00
Anthony Minessale
10a3fa55ef %FEATURE add bypass_media_resume_on_hold and bypass_media_after_hold variables to be set to true to enable these functions on a per channel basis 2014-10-02 17:49:09 -05:00
Anthony Minessale
43733a6166 FS-6886 #comment addition of ignoring unhold as well 2014-10-02 15:48:29 -05:00
Spencer Thomason
afb00b2ecc Force rport on ADTRAN TA Devices
ADTRAN Total Access devices do not support sending the rport parameter in
the Via header. This allows us to detect the device and force rport when
using the "safe" parameter, enabling the device to be used behind NAT.

FS-6823 #resolve
2014-10-02 13:09:15 -07:00
Spencer Thomason
747322dcc6 Remove Contact header from BYE and CANCEL requests.
Per rfc3261 the Contact header is not applicable and MUST not appear in
the request.

FS-5868 #resolve
2014-10-02 12:24:46 -07:00
Anthony Minessale
9e9175321a FS-6886 #resolve 2014-10-02 11:30:13 -05:00
Flavio Grossi
5653551904 FS-5106 fire an event when a sip client doesn't respond to option-ping
When all-reg-options-ping is enabled, this adds a new custom event to mod_sofia
(sofia::sip_user_state), which is fired when a client stops responding to such
ping packets (or when it is reachable again).

Add two needed new columns to the sip_registrations table:
  - ping_status, which is "Reachable" or "Unreachable" depending on the client
    status;
  - ping_count, which tracks the number of ping responses received and is used
    to provide some kind of hysteresis to avoid firing the event in case of
    transitory network failures.

Then ping_count is checked against two threshold values, sip-user-ping-min
and sip-user-ping-max in a similar fashion as the ping-{max,min} options for
the gateways. These two values are configurable in the profile's xml
configuration file.

Also, if unregister-on-options-fail is enabled, the client is unregistered
based on the number of OPTIONS failure which is also checked against the
sip-user-ping-{min,max} values.
2014-10-02 12:34:47 +02:00
Anthony Minessale
789e1481ed FS-6880 #resolve #comment I would think that in real life once the call agreed on a codec it would only offer the negotiated codecs but we can fix this to always filter for good measure. I am not sure what the ramifications are of filtering responses but I think this patch will do so as well. 2014-10-01 13:03:50 -05:00
Brian West
644b41f792 FS-6874 #resolve 2014-09-30 17:05:06 -05:00
Anthony Minessale
24084adf77 %FEATURE Add new feature to filter the SDP on bypass_media calls to remove or limit codecs.
VARIABLE: bypass_media_sdp_filter

Can be set globally or per leg on the inbound side of a bypass_media bridge.

VALID FILTERS:

remove(): Removes the specified codec if it exists in the SDP.
only():   Removes all codecs besides the one specified (providing that it exists in the sdp) (will not remove telephone-event))

EXAMPLE 1 (remove everything leaving only g729):

  <action application="set" data="bypass_media_sdp_filter=only(g729)"/>
  <action application="set" data="bypass_media=true"/>
  <action application="bridge" data="sofia/internal/1238@conference.freeswitch.org"/>

EXAMPLE 2 (remove everything leaving only g729 and also remove dtmf):

  <action application="set" data="bypass_media_sdp_filter=only(g729)|remove(telephone-event)"/>
  <action application="set" data="bypass_media=true"/>
  <action application="bridge" data="sofia/internal/1238@conference.freeswitch.org"/>

EXAMPLE 3 (remove alaw and speex):

  <action application="set" data="bypass_media_sdp_filter=remove(pcma)|remove(speex)"/>
  <action application="set" data="bypass_media=true"/>
  <action application="bridge" data="sofia/internal/1238@conference.freeswitch.org"/>
2014-10-01 01:28:10 +05:00
Travis Cross
5bd35471f7 Add var to suppress Privacy: none header
Apparently the MetaSwitch guys incorrectly interpret `Privacy: none`
as `Privacy: id`.

ref: RFC 3325

Reported-by: Stéphane Alnet <stephane@shimaore.net>

FS-6817 #resolve
2014-09-11 19:56:19 +00:00
Anthony Minessale
7144b25254 obey sip_copy_custom_headers on bye 2014-09-12 00:37:19 +05:00
Anthony Minessale
77c99b6306 FS-6806 #resolve #comment off by 1 error in last fix 2014-09-10 20:32:36 +05:00
Antonio
69d5cda6d6 resolve FS-6809 2014-09-09 15:33:19 +02:00
Mike Jerris
98c8a9b508 Merge pull request #38 in FS/freeswitch from ~ALEXDG/freeswitch-event-for-gateway-ping:master to master
* commit '388e9638de7c14e00272777245dacc87cf09fc1c':
  F-5946 add the patches. if in the sofia gateway config the param pin-monitoring is true, then every ping result raise an sofia::gateway-state event
2014-09-08 14:35:47 -05:00
Anthony Minessale
a73583b5f3 FS-6806 #resolve 2014-09-09 00:09:31 +05:00
Alexander Haugg
388e9638de F-5946 add the patches. if in the sofia gateway config the param pin-monitoring is true, then every ping result raise an sofia::gateway-state event 2014-09-05 10:57:01 +02:00
Travis Cross
5c29d8d4fa Show gateway uptime in seconds
In `sofia status gateway ...` let's show the uptime in seconds rather
than in microseconds.  We'll output the uptime in microseconds in
`xmlstatus` and we'll label it as such.
2014-09-04 05:39:26 +00:00
Steven Ayre
93bd5833c2 Add uptime property to mod_sofia gateways
The 'UP' status indicates a gateway is online as determined by
registration and/or SIP OPTIONS pinging.

The time the gateway has been in the 'UP' status is recorded,
and can be monitored using 'sofia status' and 'sofia xmlstatus'.

This can be used to detect and graph when there are outages.

ref: FS-6772

Reviewed-by: Travis Cross <tc@traviscross.com>
2014-09-04 03:43:36 +00:00
Travis Cross
5a209a9680 Remove misleading tport example from configs
As an example of using mod_sofia's gateway parameter `contact-params`
we'd used the value `tport=tcp`.  Looking around, it's clear this has
misled people into believing you can specify `tport=tcp` to make the
gateway use TCP or `tport=tls` to make the gateway use TLS.  This does
not work.

The actual contact parameter is named `transport` rather than `tport`,
and you shouldn't use `transport` in `contact-params` because we
automatically add a `transport` to the Contact: based on the value of
`register-transport` (even if the gateway is set to not register).

It's clear why this would be confusing, so we'll just remove this as
an example.
2014-08-27 23:15:45 +00:00
Brian West
1dc44067cd FS-6770 #resolve 2014-08-27 13:28:15 -05:00
Stan Gor
64060c7dbd Add sofia gateway parameter "destination-prefix"
FS-5497 add sofia gateway parameter destination-prefix in case you need to send Invites to your provider with prefix only to this gateway
2014-08-19 11:54:09 -07:00
Anthony Minessale
e3e84a7820 FS-6679 #resolve 2014-08-09 02:13:00 +05:00
Anthony Minessale
5075d4af0d fix typo that can lead to seg 2014-07-30 22:17:47 +05:00