Details

    • Type: New Feature New Feature
    • Status: Closed
    • Severity: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Target Release Version/s: None
    • Component/s: Applications/app_fax
    • Labels:
      None

      Description

      Hi all,

      I'm sending you patch containing new application app_faxgateway.c
      ("FaxGateway") which is able to mediate T30 to T38 and vice versa.
      Feature is using spands library (I used spandsp-0.0.4pre18 and spandsp-0.0.5pre4).

      Best regards
      Daniel.

                • ADDITIONAL INFORMATION ******

      This entry is continuation of http://bugs.digium.com/view.php?id=12931 that has been closed because of the new feature = trunk submit rule.

      The app_faxgateway exists for version 1.4.20.1 and 1.6.0-beta9 as well.

      <offsite-patch-links-removed>

      ~~~~~~~~~~~~~~~~~

      Note, the patches in this issue will not be merged into the Asterisk code base unless they are changed/rewritten to use the API created for T.38 Gateway support.

      More information about the approach and the API are available on the mailing lists:

      http://lists.digium.com/pipermail/asterisk-dev/2010-April/043789.html
      http://lists.digium.com/pipermail/asterisk-dev/2010-September/046344.html

      1. asterisk-1.6.2.13.patch
        33 kB
        Denis Luzin
      2. asterisk-1.6.2.6-t38gw-dial-patch.txt
        31 kB
        klaus3000
      3. asterisk-1.6.2.9-t38gw-dial.patch
        30 kB
        cervajs
      4. faxgateway-1.8.patch
        101 kB
        Gregory Hinton Nietsky
      5. faxgateway-1.8-v2.patch
        118 kB
        Gregory Hinton Nietsky
      6. faxlog.txt
        196 kB
        copas2
      7. framehook-pre-1.8.5.patch
        4 kB
        Gregory Hinton Nietsky
      8. t38fail.pcap
        12 kB
      9. t38fail2.pcap
        139 kB

        Issue Links

          Activity

          Hide
          Aleksandr Gordeev added a comment - - edited

          With patch (https://issues.asterisk.org/view.php?id=13405) :
          faxgateway-1.8.patch2 [^] (84,979 bytes) 2011-06-03 08:28 [wget patch] [License OK (v3.0)]
          not work attended transef, blind transfer is work.

          Show
          Aleksandr Gordeev added a comment - - edited With patch ( https://issues.asterisk.org/view.php?id=13405 ) : faxgateway-1.8.patch2 [^] (84,979 bytes) 2011-06-03 08:28 [wget patch] [License OK (v3.0)] not work attended transef, blind transfer is work.
          Hide
          Marc added a comment -

          Hello,
          In asterisk 10 beta.
          I'm tryign to send fax using Asterisk T38 Gateway : Not working : it repeat 3 times DSI/CIS sequence en BYE. Whith same source fax and destination fax, when i use a SPA2102 with T38 enabled, it works !! See capture :

          With asterisk 10 beta (T38 Gateway is 109.77.77.10) => FAIL :

          Time 109.77.77.10
              109.77.77.9
          35,152 INVITE SDP (g711A GSM g711U telephone-eventRTP...e-101) SIP From: "100" <sip:100@109.77.77.10 To:<sip:0411111111@109.77.77.9
            (5060) ------------------> (5060)
          35,152 100 Trying   SIP Status
            (5060) <------------------ (5060)
          36,540 180 Ringing SIP Status
            (5060) <------------------ (5060)
          36,540 183 Session Progress SDP (g711A g711U GSM tele...ne-eventRTPType-101) SIP Status
            (5060) <------------------ (5060)
          36,658 RTP (g711U) RTP Num packets:771 Duration:15.399s SSRC:0x3400AA55
            (15162) ------------------> (11708)
          36,677 RTP (g711U) RTP Num packets:877 Duration:17.603s SSRC:0x2AB49D5C
            (15162) <------------------ (11708)
          52,075 200 OK SDP (g711A g711U GSM telephone-eventRTP...e-101) SIP Status
            (5060) <------------------ (5060)
          52,076 ACK   SIP Request
            (5060) ------------------> (5060)
          52,078 RTP (g711U) RTP Num packets:246 Duration:4.898s SSRC:0x3400AA55
            (15162) ------------------> (11708)
          56,981 INVITE SDP (t38) SIP Request
            (5060) <------------------ (5060)
          56,981 100 Trying   SIP Status
            (5060) ------------------> (5060)
          57,083 200 OK SDP (t38) SIP Status
            (5060) ------------------> (5060)
          57,083 no-signal   t38:t30 Ind:no-signal
            (4191) ------------------> (4873)
          57,083 ACK   SIP Request
            (5060) <------------------ (5060)
          57,125 no-signal   t38:t30 Ind:no-signal
            (4191) ------------------> (4873)
          59,921 no-signal   t38:t30 Ind:no-signal
            (4191) <------------------ (4873)
          64,962 v21-preamble t38:t30 Ind:v21-preamble
            (4191) <------------------ (4873)
          66,623 NSF   t38:v21:HDLC:Non-Standard Facilities
            (4191) <------------------ (4873)
          67,343 CSI Num: 0411111111 t38:v21:HDLC:Called Subscriber Identification
            (4191) <------------------ (4873)
          67,703 DIS DSR:ITU-T V.27 ter and V.29 t38:v21:HDLC:Digital Identification Signal
            (4191) <------------------ (4873)
          67,763 no-signal   t38:t30 Ind:no-signal
            (4191) <------------------ (4873)
          72,844 v21-preamble t38:t30 Ind:v21-preamble
            (4191) <------------------ (4873)
          74,485 NSF   t38:v21:HDLC:Non-Standard Facilities
            (4191) <------------------ (4873)
          75,204 CSI Num: 0411111111 t38:v21:HDLC:Called Subscriber Identification
            (4191) <------------------ (4873)
          75,564 DIS DSR:ITU-T V.27 ter and V.29 t38:v21:HDLC:Digital Identification Signal
            (4191) <------------------ (4873)
          75,625 no-signal   t38:t30 Ind:no-signal
            (4191) <------------------ (4873)
          80,700 v21-preamble t38:t30 Ind:v21-preamble
            (4191) <------------------ (4873)
          82,361 NSF   t38:v21:HDLC:Non-Standard Facilities
            (4191) <------------------ (4873)
          83,081 CSI Num: 0411111111 t38:v21:HDLC:Called Subscriber Identification
            (4191) <------------------ (4873)
          83,441 DIS DSR:ITU-T V.27 ter and V.29 t38:v21:HDLC:Digital Identification Signal
            (4191) <------------------ (4873)
          83,501 no-signal   t38:t30 Ind:no-signal
            (4191) <------------------ (4873)
          86,098 BYE   SIP Request
            (5060) ------------------> (5060)
          86,099 200 OK   SIP Status
            (5060) <------------------ (5060)

          With SPA2102 T38 enabled mode (asterisk 10 beta is T38 passthrough) => SUCCESS:

          Time 109.77.77.10
              109.77.77.9
          6,898 INVITE SDP (t38) SIP From: "100" <sip:100@109.77.77.10 To:<sip:0411111111@109.77.77.9
            (5060) ------------------> (5060)
          6,898 100 Trying   SIP Status
            (5060) <------------------ (5060)
          6,928 200 OK SDP (t38) SIP Status
            (5060) <------------------ (5060)
          6,929 ACK   SIP Request
            (5060) ------------------> (5060)
          7,034 no-signal   t38:t30 Ind:no-signal
            (4158) ------------------> (4992)
          8,983 ced   t38:t30 Ind:ced
            (4158) <------------------ (4992)
          11,648 v21-preamble t38:t30 Ind:v21-preamble
            (4158) <------------------ (4992)
          13,068 NSF   t38:v21:HDLC:Non-Standard Facilities
            (4158) <------------------ (4992)
          13,768 CSI Num: 0411111111 t38:v21:HDLC:Called Subscriber Identification
            (4158) <------------------ (4992)
          14,110 DIS DSR:ITU-T V.27 ter and V.29 t38:v21:HDLC:Digital Identification Signal
            (4158) <------------------ (4992)
          14,208 no-signal   t38:t30 Ind:no-signal
            (4158) <------------------ (4992)
          14,957 v21-preamble t38:t30 Ind:v21-preamble
            (4158) ------------------> (4992)
          16,697 TSI Num: Fax t38:v21:HDLC:Transmitting Subscriber Identification
            (4158) ------------------> (4992)
          17,156 DCS DSR:9600 bit/s, ITU-T V.29 t38:v21:HDLC:Digital Command Signal
            (4158) ------------------> (4992)
          17,176 no-signal   t38:t30 Ind:no-signal
            (4158) ------------------> (4992)
          17,197 v29-9600-training t38:t30 Ind:v29-9600-training
            (4158) ------------------> (4992)
          17,697 t4-non-ecm-data:v29-9600 t38:t4-non-ecm-data:v29-9600 Duration: 1,50s No packet lost
            (4158) ------------------> (4992)
          19,214 no-signal   t38:t30 Ind:no-signal
            (4158) ------------------> (4992)
          19,889 v21-preamble t38:t30 Ind:v21-preamble
            (4158) <------------------ (4992)
          21,005 CFR   t38:v21:HDLC:Confirmation To Receive
            (4158) <------------------ (4992)
          21,104 no-signal   t38:t30 Ind:no-signal
            (4158) <------------------ (4992)
          22,077 v29-9600-training t38:t30 Ind:v29-9600-training
            (4158) ------------------> (4992)
          22,097 t4-non-ecm-data:v29-9600 t38:t4-non-ecm-data:v29-9600 Duration: 49,07s No packet lost
            (4158) ------------------> (4992)
          71,192 no-signal   t38:t30 Ind:no-signal
            (4158) ------------------> (4992)
          71,354 v21-preamble t38:t30 Ind:v21-preamble
            (4158) ------------------> (4992)
          72,455 EOP   t38:v21:HDLC:End Of Procedure
            (4158) ------------------> (4992)
          72,534 no-signal   t38:t30 Ind:no-signal
            (4158) ------------------> (4992)
          72,926 v21-preamble t38:t30 Ind:v21-preamble
            (4158) <------------------ (4992)
          74,066 MCF   t38:v21:HDLC:Message Confirmation
            (4158) <------------------ (4992)
          74,166 no-signal   t38:t30 Ind:no-signal
            (4158) <------------------ (4992)
          74,754 v21-preamble t38:t30 Ind:v21-preamble
            (4158) ------------------> (4992)
          75,954 DCN   t38:v21:HDLC:Disconnect
            (4158) ------------------> (4992)
          76,032 no-signal   t38:t30 Ind:no-signal
            (4158) ------------------> (4992)
          76,993 BYE   SIP Request
            (5060) ------------------> (5060)
          76,993 200 OK   SIP Status
            (5060) <------------------ (5060)

          Do you have an idea ?
          Thanks.

          Show
          Marc added a comment - Hello, In asterisk 10 beta. I'm tryign to send fax using Asterisk T38 Gateway : Not working : it repeat 3 times DSI/CIS sequence en BYE. Whith same source fax and destination fax, when i use a SPA2102 with T38 enabled, it works !! See capture : With asterisk 10 beta (T38 Gateway is 109.77.77.10) => FAIL : Time 109.77.77.10     109.77.77.9 35,152 INVITE SDP (g711A GSM g711U telephone-eventRTP...e-101) SIP From: "100" <sip:100@109.77.77.10 To:<sip:0411111111@109.77.77.9   (5060) ------------------> (5060) 35,152 100 Trying   SIP Status   (5060) <------------------ (5060) 36,540 180 Ringing SIP Status   (5060) <------------------ (5060) 36,540 183 Session Progress SDP (g711A g711U GSM tele...ne-eventRTPType-101) SIP Status   (5060) <------------------ (5060) 36,658 RTP (g711U) RTP Num packets:771 Duration:15.399s SSRC:0x3400AA55   (15162) ------------------> (11708) 36,677 RTP (g711U) RTP Num packets:877 Duration:17.603s SSRC:0x2AB49D5C   (15162) <------------------ (11708) 52,075 200 OK SDP (g711A g711U GSM telephone-eventRTP...e-101) SIP Status   (5060) <------------------ (5060) 52,076 ACK   SIP Request   (5060) ------------------> (5060) 52,078 RTP (g711U) RTP Num packets:246 Duration:4.898s SSRC:0x3400AA55   (15162) ------------------> (11708) 56,981 INVITE SDP (t38) SIP Request   (5060) <------------------ (5060) 56,981 100 Trying   SIP Status   (5060) ------------------> (5060) 57,083 200 OK SDP (t38) SIP Status   (5060) ------------------> (5060) 57,083 no-signal   t38:t30 Ind:no-signal   (4191) ------------------> (4873) 57,083 ACK   SIP Request   (5060) <------------------ (5060) 57,125 no-signal   t38:t30 Ind:no-signal   (4191) ------------------> (4873) 59,921 no-signal   t38:t30 Ind:no-signal   (4191) <------------------ (4873) 64,962 v21-preamble t38:t30 Ind:v21-preamble   (4191) <------------------ (4873) 66,623 NSF   t38:v21:HDLC:Non-Standard Facilities   (4191) <------------------ (4873) 67,343 CSI Num: 0411111111 t38:v21:HDLC:Called Subscriber Identification   (4191) <------------------ (4873) 67,703 DIS DSR:ITU-T V.27 ter and V.29 t38:v21:HDLC:Digital Identification Signal   (4191) <------------------ (4873) 67,763 no-signal   t38:t30 Ind:no-signal   (4191) <------------------ (4873) 72,844 v21-preamble t38:t30 Ind:v21-preamble   (4191) <------------------ (4873) 74,485 NSF   t38:v21:HDLC:Non-Standard Facilities   (4191) <------------------ (4873) 75,204 CSI Num: 0411111111 t38:v21:HDLC:Called Subscriber Identification   (4191) <------------------ (4873) 75,564 DIS DSR:ITU-T V.27 ter and V.29 t38:v21:HDLC:Digital Identification Signal   (4191) <------------------ (4873) 75,625 no-signal   t38:t30 Ind:no-signal   (4191) <------------------ (4873) 80,700 v21-preamble t38:t30 Ind:v21-preamble   (4191) <------------------ (4873) 82,361 NSF   t38:v21:HDLC:Non-Standard Facilities   (4191) <------------------ (4873) 83,081 CSI Num: 0411111111 t38:v21:HDLC:Called Subscriber Identification   (4191) <------------------ (4873) 83,441 DIS DSR:ITU-T V.27 ter and V.29 t38:v21:HDLC:Digital Identification Signal   (4191) <------------------ (4873) 83,501 no-signal   t38:t30 Ind:no-signal   (4191) <------------------ (4873) 86,098 BYE   SIP Request   (5060) ------------------> (5060) 86,099 200 OK   SIP Status   (5060) <------------------ (5060) With SPA2102 T38 enabled mode (asterisk 10 beta is T38 passthrough) => SUCCESS: Time 109.77.77.10     109.77.77.9 6,898 INVITE SDP (t38) SIP From: "100" <sip:100@109.77.77.10 To:<sip:0411111111@109.77.77.9   (5060) ------------------> (5060) 6,898 100 Trying   SIP Status   (5060) <------------------ (5060) 6,928 200 OK SDP (t38) SIP Status   (5060) <------------------ (5060) 6,929 ACK   SIP Request   (5060) ------------------> (5060) 7,034 no-signal   t38:t30 Ind:no-signal   (4158) ------------------> (4992) 8,983 ced   t38:t30 Ind:ced   (4158) <------------------ (4992) 11,648 v21-preamble t38:t30 Ind:v21-preamble   (4158) <------------------ (4992) 13,068 NSF   t38:v21:HDLC:Non-Standard Facilities   (4158) <------------------ (4992) 13,768 CSI Num: 0411111111 t38:v21:HDLC:Called Subscriber Identification   (4158) <------------------ (4992) 14,110 DIS DSR:ITU-T V.27 ter and V.29 t38:v21:HDLC:Digital Identification Signal   (4158) <------------------ (4992) 14,208 no-signal   t38:t30 Ind:no-signal   (4158) <------------------ (4992) 14,957 v21-preamble t38:t30 Ind:v21-preamble   (4158) ------------------> (4992) 16,697 TSI Num: Fax t38:v21:HDLC:Transmitting Subscriber Identification   (4158) ------------------> (4992) 17,156 DCS DSR:9600 bit/s, ITU-T V.29 t38:v21:HDLC:Digital Command Signal   (4158) ------------------> (4992) 17,176 no-signal   t38:t30 Ind:no-signal   (4158) ------------------> (4992) 17,197 v29-9600-training t38:t30 Ind:v29-9600-training   (4158) ------------------> (4992) 17,697 t4-non-ecm-data:v29-9600 t38:t4-non-ecm-data:v29-9600 Duration: 1,50s No packet lost   (4158) ------------------> (4992) 19,214 no-signal   t38:t30 Ind:no-signal   (4158) ------------------> (4992) 19,889 v21-preamble t38:t30 Ind:v21-preamble   (4158) <------------------ (4992) 21,005 CFR   t38:v21:HDLC:Confirmation To Receive   (4158) <------------------ (4992) 21,104 no-signal   t38:t30 Ind:no-signal   (4158) <------------------ (4992) 22,077 v29-9600-training t38:t30 Ind:v29-9600-training   (4158) ------------------> (4992) 22,097 t4-non-ecm-data:v29-9600 t38:t4-non-ecm-data:v29-9600 Duration: 49,07s No packet lost   (4158) ------------------> (4992) 71,192 no-signal   t38:t30 Ind:no-signal   (4158) ------------------> (4992) 71,354 v21-preamble t38:t30 Ind:v21-preamble   (4158) ------------------> (4992) 72,455 EOP   t38:v21:HDLC:End Of Procedure   (4158) ------------------> (4992) 72,534 no-signal   t38:t30 Ind:no-signal   (4158) ------------------> (4992) 72,926 v21-preamble t38:t30 Ind:v21-preamble   (4158) <------------------ (4992) 74,066 MCF   t38:v21:HDLC:Message Confirmation   (4158) <------------------ (4992) 74,166 no-signal   t38:t30 Ind:no-signal   (4158) <------------------ (4992) 74,754 v21-preamble t38:t30 Ind:v21-preamble   (4158) ------------------> (4992) 75,954 DCN   t38:v21:HDLC:Disconnect   (4158) ------------------> (4992) 76,032 no-signal   t38:t30 Ind:no-signal   (4158) ------------------> (4992) 76,993 BYE   SIP Request   (5060) ------------------> (5060) 76,993 200 OK   SIP Status   (5060) <------------------ (5060) Do you have an idea ? Thanks.
          Hide
          Marc added a comment -

          What i see in comparaison is : After remote fax has send his TSI and DCS/TSR,
          Asterisk t38gw should send in reply his TSI and DCS/TSR. But it doesn't did it..

          So after 5 second, remote fax send again his TSI , DCS 4 times then Bye ...

          Show
          Marc added a comment - What i see in comparaison is : After remote fax has send his TSI and DCS/TSR, Asterisk t38gw should send in reply his TSI and DCS/TSR. But it doesn't did it.. So after 5 second, remote fax send again his TSI , DCS 4 times then Bye ...
          Hide
          Matthew Nicholson added a comment -

          Please open a new issue to track this problem.

          Show
          Matthew Nicholson added a comment - Please open a new issue to track this problem.
          Hide
          Niccolò Belli added a comment -

          If someone is interested I made a new patch from irroot's branch and I ported it to 1.8.11:
          http://www.linuxsystems.it/2012/03/new-t-38-gateway-patch-against-asterisk-1-8-11-0/

          Show
          Niccolò Belli added a comment - If someone is interested I made a new patch from irroot's branch and I ported it to 1.8.11: http://www.linuxsystems.it/2012/03/new-t-38-gateway-patch-against-asterisk-1-8-11-0/