Summary:ASTERISK-14485: Can not using T.38 origination with app_fax/spandsp
Reporter:sean20090717 (huangtx2009)Labels:
Date Opened:2009-07-17 12:36:24Date Closed:2009-10-21 18:41:27
Versions:Frequency of
Environment:Attachments:( 0) console.log
( 1) console-1.6.0-branch.log
( 2) console-1.6.1-branch.log
Description:I tried to send a Fax from the first Asterisk (Asterisk1) to the second Asterisk (Asterisk2). When Asterisk1 initiates an INVITE with CODEC G.711. Asterisk2 accepts this INVITE. Immediately, Asterisk2 sends a RE-INVITE with T.38 SDP. However Asterisk1 responds it with "488 not acceptable here".

So, Asterisk1 sends a Fax with G.711 instead of T.38.


edit: console log removed by mmichelson. It is attached now.
Comments:By: Mark Michelson (mmichelson) 2009-07-17 16:54:56

Please upload logs as an attachment instead of pasting them in the report. Your log was too long for Mantis to handle, so it has been truncated. I'm going to remove it completely since it has odd line breaks and is incomplete anyway.

By: Mark Michelson (mmichelson) 2009-07-17 16:55:47

Actually, just to be on the safe side, I'll wait for you to upload the trace as an attachment, and then I'll erase what's currently here.

By: sean20090717 (huangtx2009) 2009-07-20 11:49:05

I tested spansdp0.0.6 and spansdp0.0.5 and asterisk1.6.0.10. There is the same problem.

By: Mark Michelson (mmichelson) 2009-07-20 14:53:35

The problem appears to be that app_fax in both and do not properly handle the reception of AST_CONTROL_T38 frames of type T38_REQUEST_NEGOTIATE. As a result, the SIP channel driver sends that 488 response after five seconds since it has not received an indication that things are proceeding from app_fax.

This problem appears to have been corrected in the tip of the 1.6.0 branch. If you can, could you please try using a checkout of the current 1.6.0 branch and see if the same problem occurs? If it appears to be working correctly, then you can be sure that will have the problem fixed.

By: Ken Wiesner (kenwiesner) 2009-07-20 17:24:57

I can confirm that SendFax works properly in latest with T38.  Been struggling with it all day and just got it working.

Asterisk SVN-branch-1.6.0-r207425
SpanDSP 0.0.6 pre10

By: sean20090717 (huangtx2009) 2009-07-21 15:28:28

To mmichelson:
I tested asterisk 1.6.0 branch. The ReceiveFax shall not send a Re-INVITE with T.38. So, the Fax can not be sent.
I uploaded the console-1.6.0-branch.log.

I also tested asterisk 1.6.1 branch. Although the asterisk of ReceiveFax can send a Re-INVITE with T.38 and the asterisk of SendFax can respond the Re-INVITE correctly, the asterisk of ReceiveFax will crash and exit.
I uploaded the console-1.6.1-branch.log.

To kenwiesner:
How to get the special revsion 207425 of asterisk? Did you change some codes of asterisk to solve the problem?

By: Kevin P. Fleming (kpfleming) 2009-07-24 17:14:55

Please test again with the very latest 1.6.0 or 1.6.1 branch; some important T.38 fixes were committed in the past couple of days. Thanks!

By: sean20090717 (huangtx2009) 2009-07-28 11:47:24

I just tested the latest asterisk1.6.1 branch and spandsp0.0.6. It works well.

Thank you very much for great job.

By: Kevin P. Fleming (kpfleming) 2009-07-28 12:31:19

Thanks for the test report! These fixes will be in Asterisk release candidates announced later today, so they're on track to be in an official release soon.