Commit Graph

568 Commits

Author SHA1 Message Date
Muhammad Zaka 589a0e682e FS-9276 new feature proxy in-dialog calls sip notify and info similar to proxy hold 2016-08-01 11:44:12 +01:00
François 78c2ed0526 FS-9241 Use tls_public_url instead of tls_url in INVITE Contact when NAT is detected 2016-07-05 17:15:04 +02:00
Muhammad Zaka 05cc770818 FS-9192-proxy-hold: proxy hold when proxy media and proxy mode are disabled; its similiar to proxy-refer 2016-06-15 10:10:47 +01:00
Anthony Minessale b9d31dc9b7 FS-9214: fix 3pcc behavior
Fix callflow issues with  3pcc=true and 3pcc=proxy and interactions with sip_wait_for_aleg_ack
removes passthrough of 183 on 3pcc=proxy (that was previously not functioning)
2016-06-07 11:43:08 -05:00
Sergey Khripchenko 2766eaf49e FS-9225: [mod_sofia] Allow to force SIP REGISTER Expires: to be within configured range.
Allow to force SIP REGISTER Expires: to be within MIN and MAX values.
Not just to force it to one specific value using "sip-force-expires".

New profile parameters:
  "sip-force-expires-min"
  "sip-force-expires-max"
2016-06-03 05:30:01 -07:00
Anthony Minessale 0a8e115b98 FS-9060: [mod_sofia] correct issues with hold and broken soa negotiations after performing a bypass media reinvite 2016-04-22 12:26:13 -05:00
Mike Jerris 9ec3253563 Merge pull request #771 in FS/freeswitch from ~SAFAROV/freeswitch2:FS-7125 to master
* commit 'ff1c384e13f07afaac98334532667ebf8093a1f1':
  FS-7125 Added sofia event "wrong_calls_state". This is for fail2ban logging
2016-03-29 14:06:54 -05:00
Sergey Safarov ff1c384e13 FS-7125 Added sofia event "wrong_calls_state". This is for fail2ban logging 2016-03-29 21:21:38 +03:00
Anthony Minessale 0335cc3291 FS-8918 #resolve [10 Second timeout after Notify during Proxy refer.] 2016-03-28 13:14:38 -05:00
Anthony Minessale 8423f28d43 FS-8841 #resolve [Debian - FS Hang ] 2016-03-17 18:48:59 -05:00
Brian West 2c031e4b91 FS-8879 #resolve [SIP UPDATE and attended transfer] 2016-02-26 17:44:33 -06:00
Luis Azedo f80d6cc551 FS-8763 [mod_sofia] set is_auth on switch_ivr_set_user result 2016-01-20 16:09:17 +00:00
Michael Jerris 5509a62706 FS-8042, FS-8182: add ping time (in ms) to sip_registrations table, displays as part of the show commands that show registration details, add force_ping=true user var to force options ping on individual registered endpoints 2015-09-21 12:13:28 -05:00
karl anderson 58043483cd FS-7773 [mod_sofia] transfer events #resolve 2015-07-10 19:46:10 +01:00
karl anderson b2b9555d34 FS-7760 #resolve
added xml fetch for channels to externally support nightmare transfer
depends on channel-xml-fetch-on-nightmare-transfer profile param (default is disabled)
2015-07-03 19:28:17 +01:00
Anthony Minessale c9065a85b6 FS-7602 add some of 3b2d00f3e6 from verto to sip and refactor some code to keep sip working like verto 2015-06-02 21:20:03 -05:00
Mike Jerris 95c387315e Merge pull request #33 in FS/freeswitch from ~MOY/freeswitch:sip-watch-headers to master
* commit '3df55b9bb5325ed0f7273576264c5aa94a8a6810':
  Add sip_watched_headers variable to launch events when a SIP message contains a given SIP header
2015-06-02 11:19:05 -05:00
Moises Silva 3df55b9bb5 Add sip_watched_headers variable to launch events when a SIP message contains a given SIP header
FS-6801 #resolve
2015-06-02 00:47:18 -04:00
Anthony Minessale bc152ed9d8 FS-7500: set 500ms min on retransmit of outdated xml based intraframe request that EVERYTHING still seems to use 2015-05-28 12:47:31 -05:00
Rajesh Panicker 5db8a0c16b FS-7228 - Max Register Refresh before the Register is challenged for credentials 2015-02-06 10:16:36 -08:00
Anthony Minessale 65502293cf FS-6890 #comment revert 2014-11-12 13:09:39 -06:00
Anthony Minessale a279bf38af FS-6890 #comment please test 2014-11-11 12:56:40 -06:00
Anthony Minessale f66f2cae8c FS-6890 #comment please test 2014-11-06 17:13:02 -06:00
Brian West 3b9f0c32e6 FS-6927 #comment allow sub millisecond resolution for option ping times 2014-10-29 16:01:28 -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
Matteo Brancaleoni beb1d17921 FS-6400 Improve sip ping generation by distributing them across an interval 2014-10-14 14:24:21 +02: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 bde2e2da51 FS-6889 #resolve 2014-10-03 11:34:42 -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
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
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
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
Brian West 28e90addf2 FS-5501 fire event on profile start 2014-07-09 08:53:14 -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
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 49ee6781a5 FS-6540 please test 2014-06-05 23:49:50 +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
Russell Treleaven 3666029ff0 add auth-subscriptions flag. sofia ua can now optionally challenge subscrition requests 2014-05-16 19:05:35 +00:00
Anthony Minessale cc06d9181b FS-4779 FS-6467 the behaviour from 4479 is now masked behind the param 3pcc-reinvite-bridged-on-ack FS-6467 please test master 2014-04-28 22:10:14 +05:00
Anthony Minessale 79ebcb104b add enable-chat sofia profile param which defaults to true when not present, set to false to turn off the chat interface in sofia 2014-04-19 12:29:10 -05:00
Anthony Minessale a4a792488b add generic keepalive system and implement it in sofia to send MESSAGE or INFO packets in-dialog at specified interval.
Adds app: enable_keepalive 0|<seconds>
This app can be run in the dialplan or with execute_on_* type variables for B-legs.

Adds sofia param: keepalive-method  : defaults to MESSAGE can also be "INFO"
This param sets which SIP method to use.
2014-04-16 06:10:25 +05:00
Raymond Chandler 052638186b add parsing of user params on invite 2014-04-15 12:48:07 -04:00
Anthony Minessale c02a5e67b8 FS-6413 --resolve with this patch you will need to make sure the boxes have the clocks synced and both started inside the same occurence of the most recent new year. 2014-03-31 15:23:50 -05:00
Anthony Minessale 8f703c7a78 FS-6353 regression from 7ba257ecd6 2014-03-14 18:34:08 -04:00
Anthony Minessale e37616e36d do not retry so fast on failed outbound subs 2014-03-14 12:55:50 -05:00
Anthony Minessale 7ba257ecd6 FS-6353 --resolve 2014-03-13 10:23:13 -05:00
Anthony Minessale 5c8a3b12fd Convert some behaviors to optional.
These all were set before but now are disabled by default because they are not proper to have enabled without a good reason.

tcp-unreg-on-socket-close

If registration is TCP or TLS and socket connection is interrupted, unregister the client.

tcp-always-nat

Treat all TCP connections as NATTED, this causes all traffic back to the phone to reuse the existing TCP socket but may
cause problems when not used with TCP keepalive.

tls-always-nat

Same as tcp-always-nat but only for TLS connections.
2014-03-11 15:17:02 -05:00