This is simpler than I thought. It seems that app_fax.so now provides a ReceiveFax application, in addition to RxFax. I don’t know when this was added, but that’s why it was there.
I think it sees that you have ReceiveFax so that is what it generates as a preference:
[php]
<?php
case 'app_fax':
$application_show_command = $ast_ge_14 ? 'core show applications like ' : 'show applications like ';
$response = $astman->send_request('Command', array('Command' => $application_show_command.'receivefax'));
if (preg_match('/1 Applications Matching/', $response['data'])) {
$fax['receivefax'] = 'receivefax';
} else {
$response = $astman->send_request('Command', array('Command' => $application_show_command.'rxfax'));
if (preg_match('/1 Applications Matching/', $response['data'])) {
$fax['receivefax'] = 'rxfax';
} else {
$fax['receivefax'] = 'none';
}
}
break;
[/php]
The logic can be translated as: we see that you have a the app_fax module (vs. the app_rxfax module) so let's check for receivefax and if it is there, we will use that, if not let's check for rxfax and if it is there we will use that, if neither are there then we are sol.
So question, in your case, does this break you. In other words, is you issue that you have both commands on the system, and RxFax would work but ReceiveFax does not work with spandsp, and you have no way of remove the receivefax application?
OK, so tonight after the phones died down, I disabled FFA and enabled app_fax.so, as seen here:
CLI> module show like fax
Module Description Use Count
app_fax.so Simple FAX Application 0
1 modules loaded
However, even after changing settings in the Fax module and reloading, I still have the ReceiveFax application specified in my dialplan (output snipped):
[code]CLI> dialplan show ext-fax
[ Context ‘ext-fax’ created by ‘pbx_config’ ]
What am I doing wrong such that the Fax Module does not write the dialplan as I would expect? Or maybe the module somehow creates an alias “ReceiveFax” that points at “RxFax”? This might explain why I still get this result, even after marking res_fax.so and res_fax_digium.so as “noload”:
[code]vox*CLI> core show application receivefax
-= Info about application ‘ReceiveFAX’ =-
[Synopsis]
Receive a Fax
[Description]
Receives a FAX from the channel into the given filename overwriting the file
if it already exists.
File created will be in TIFF format.
This application sets the following channel variables:
${LOCALSTATIONID}: To identify itself to the remote end
${LOCALHEADERINFO}: To generate a header line on each page
${FAXSTATUS}:
SUCCESS
FAILED
${FAXERROR}: Cause of failure
${REMOTESTATIONID}: The CSID of the remote side
${FAXPAGES}: Number of pages sent
${FAXBITRATE}: Transmission rate
${FAXRESOLUTION}: Resolution of sent fax
[Syntax]
ReceiveFAX(filename[,c])
[Arguments]
filename
Filename of TIFF file save incoming fax
c
Makes the application behave as the calling machine
(Default behavior is as answering machine)
There are a lot of permutations of faxing stuff, so I don’t know how sure I would be
There are not immediate plans for fax sending on the horizon that I am aware of, however, Schmoozecom.com does make a fax pro module that has sending capabilities, integration with ARI, and more.
I believe it is only supported with FFA but you could inquire with them about that and how much they charge for the module which I do believe would work fine on a standard FreePBX system.
Thanks for the response, Philippe. I’m sure it works as advertised, I just wanted to ask before I went and tried it. Elastix just updated to the latest SpanDSP, and I wanted to see how well it worked.
Are there any plans for developing a fax send capability?
it is suppose to detect what you have installed and try to make the proper choice.
It may be doing it wrong though if you are not getting the right thing.
It looks at the various asterisk fax “modules” installed (.so) to make it’s various decisions vs. looking for the specific applications so if it is getting things wrong, you may want to file a ticket and in the ticket for your configuration you probably want to include Asterisk version and then the output of:
module show like fax
and
core show applications like fax
in order to see what is there as this is the type of information we use when generating the dialplan to try and figure out what to generate.
The crux is - it is our intent to support both spandsp and ffa.