[asterisk-users] PJSIP / T.38 - Asterisk not passing on v21 preamble and data

Recursive lists at binarus.de
Thu Jan 1 12:09:56 CST 2015

Dear list,

happy new year!

I am still trying to make T.38 work. In the meantime, I have upgraded to Asterisk 13.1.0, and I am using the most recent PJSIP library (compiling that stuff myself). My local fax software is capable of T.38, as is my ITSP; Asterisk sits in the middle, of course. Asterisk is in the same private subnet as the local fax software and talks to the ITSP through a NAT'd connection.

I think I'm almost there, but I am experiencing something strange: Asterisk is not forwarding the v21 preamble and the other v21 data to the local fax software. Is there any typical configuration error which could be the cause?

I have captured the call flow and have seen the following so far:

First, the fax software invites Asterisk for G711, then Asterisk invites the ITSP's SIP gateway for G711. This works, all INVITEs are OK'd and ACK'd, G711 packets are flowing between Asterisk and the ITSP's media gateway in both directions, and Asterisk is passing on the appropriate packets to the local fax software.

Then, like expected, at a certain point the ITSP invites Asterisk for T.38, and Asterisk passes the INVITE to the local fax software. Again, all INVITEs are OK'd and ACK'd.

After that, the ITSP's media server sends a v21 preamble and some other v21 data which Asterisk receives correctly, but does *not* pass to the local fax software.

According to the following document, this T.38 call flow is normal except that Asterisk should pass on the v21 data to the local fax software: https://www.escaux.com/docs/DRD_T38Support_AdminGuide.html

Now I am worried regarding multiple questions:

1) Did anybody test T.38 with SPANDSP? If yes, which version of SPANDSP did you use? Mine is 0.0.6 PRE 20. Should I try to upgrade to PRE 21? Or to one of the snapshots?

2) Recently, I have sent some questions about similar subjects to this list, and I have got helpful answers; people told me that I should *not* enable the fax *gateway* feature if both endpoints are capable of T.38. On the other hand, I have read (at multiple places) the the *gateway* code is responsible for detecting the v21 preamble. How does this fit together?

3) Does codec_dahdi play any role in a T.38 scenario? If I load it, I get an error message relating to /dev/dahdi/transcode, so I disabled it. On the other hand, I think I'm using dahdi for timing (at least, res_timing_dahdi is loaded), hence the question.

I first would like to know if there is some sort of typical error which could prevent Asterisk / PJSIP / SPANDSP from passing the v21 data to the local fax software. If there is no such error, I'll make the log and configuration available for download (can't provide them here due to the 40 kB message size limit).

Thank you very much for any thoughts,


More information about the asterisk-users mailing list