aboutsummaryrefslogtreecommitdiffstats
path: root/configs
diff options
context:
space:
mode:
authorkpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b>2009-10-05 19:53:18 +0000
committerkpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b>2009-10-05 19:53:18 +0000
commit95c96418356816b0ef2cb6688a44fb11bd61f0e5 (patch)
tree5866f1998bb2e313d43f54b045153a3fc4753986 /configs
parent09d7057b16e908be12e95f85c7fa14eb355921f9 (diff)
Merged revisions 222110 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ........ r222110 | kpfleming | 2009-10-05 14:45:00 -0500 (Mon, 05 Oct 2009) | 25 lines Allow non-compliant T.38 endpoints to be supportable via configuration option. Many T.38 endpoints incorrectly send the maximum IFP frame size they can accept as the T38FaxMaxDatagram value in their SDP, when in fact this value is supposed to be the maximum UDPTL payload size (datagram size) they can accept. If the value they supply is small enough (a commonly supplied value is '72'), T.38 UDPTL transmissions will likely fail completely because the UDPTL packets will not have enough room for a primary IFP frame and the redundancy used for error correction. If this occurs, the Asterisk UDPTL stack will emit log messages warning that data loss may occur, and that the value may need to be overridden. This patch extends the 't38pt_udptl' configuration option in sip.conf to allow the administrator to override the value supplied by the remote endpoint and supply a value that allows T.38 FAX transmissions to be successful with that endpoint. In addition, in any SIP call where the override takes effect, a debug message will be printed to that effect. This patch also removes the T38FaxMaxDatagram configuration option from udptl.conf.sample, since it has not actually had any effect for a number of releases. In addition, this patch cleans up the T.38 documentation in sip.conf.sample (which incorrectly documented that T.38 support was passthrough only). (issue #15586) Reported by: globalnetinc ........ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.1@222112 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'configs')
-rw-r--r--configs/sip.conf.sample29
-rw-r--r--configs/udptl.conf.sample4
2 files changed, 22 insertions, 11 deletions
diff --git a/configs/sip.conf.sample b/configs/sip.conf.sample
index 97d558860..9e590042a 100644
--- a/configs/sip.conf.sample
+++ b/configs/sip.conf.sample
@@ -426,20 +426,35 @@ srvlookup=yes ; Enable DNS SRV lookups on outbound calls
; the peer side of a "type=friend" object if this
; setting is turned on.
-;----------------------------------------- T.38 FAX PASSTHROUGH SUPPORT -----------------------
+;----------------------------------------- T.38 FAX SUPPORT ----------------------------------
;
; This setting is available in the [general] section as well as in device configurations.
-; Setting this to yes, enables T.38 fax (UDPTL) passthrough on SIP to SIP calls, provided
-; both parties have T38 support enabled in their Asterisk configuration
-; This has to be enabled in the general section for all devices to work. You can then
-; disable it on a per device basis.
-; T.38 faxing only works in SIP to SIP calls. It defaults to off.
-;
+; Setting this to yes enables T.38 FAX (UDPTL) on SIP calls; it defaults to off.
; t38pt_udptl = yes ; Enables T.38 with FEC error correction.
; t38pt_udptl = yes,fec ; Enables T.38 with FEC error correction.
; t38pt_udptl = yes,redundancy ; Enables T.38 with redundancy error correction.
; t38pt_udptl = yes,none ; Enables T.38 with no error correction.
;
+; In some cases, T.38 endpoints will provide a T38FaxMaxDatagram value (during T.38 setup) that
+; is based on an incorrect interpretation of the T.38 recommendation, and results in failures
+; because Asterisk does not believe it can send T.38 packets of a reasonable size to that
+; endpoint (Cisco media gateways are one example of this situation). In these cases, during a
+; T.38 call you will see warning messages on the console/in the logs from the Asterisk UDPTL
+; stack complaining about lack of buffer space to send T.38 FAX packets. If this occurs, you
+; can set an override (globally, or on a per-device basis) to make Asterisk ignore the
+; T38FaxMaxDatagram value specified by the other endpoint, and use a configured value instead.
+; This can be done by appending 'maxdatagram=<value>' to the t38pt_udptl configuration option,
+; like this:
+;
+; t38pt_udptl = yes,fec,maxdatagram=400 ; Enables T.38 with FEC error correction and overrides
+; ; the other endpoint's provided value to assume we can
+; ; send 400 byte T.38 FAX packets to it.
+;
+; FAX detection will cause the SIP channel to jump to the 'fax' extension (if it exists)
+; after T.38 is successfully negotiated.
+;
+; faxdetect = yes ; Default false
+;
;----------------------------------------- OUTBOUND SIP REGISTRATIONS ------------------------
; Asterisk can register as a SIP user agent to a SIP proxy (provider)
; Format for the register statement is:
diff --git a/configs/udptl.conf.sample b/configs/udptl.conf.sample
index 97df84213..1d635da5c 100644
--- a/configs/udptl.conf.sample
+++ b/configs/udptl.conf.sample
@@ -12,10 +12,6 @@ udptlend=4999
;
;udptlchecksums=no
;
-; The maximum length of a UDPTL packet
-;
-T38FaxMaxDatagram = 400
-;
; The number of error correction entries in a UDPTL packet
;
udptlfecentries = 3