dect
/
asterisk
Archived
13
0
Fork 0

Add FAXMODE variable with what fax transport was used.

(closes issue #13252)
Patches:
      v1-13252.patch uploaded by dimas (license 88)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@137496 f38db490-d61c-443f-a65b-d21fe96a405b
This commit is contained in:
qwell 2008-08-13 20:05:50 +00:00
parent 5b29c8aed1
commit a9d19e55cf
1 changed files with 16 additions and 9 deletions

View File

@ -46,8 +46,8 @@ static char *app_sndfax_desc =
" SendFAX(filename[|options]):\n"
"Send a given TIFF file to the channel as a FAX.\n"
"The option string may contain zero or more of the following characters:\n"
" 'a' -- makes the application behave as an answering machine\n"
" The default behaviour is to behave as a calling machine.\n"
" 'a' - makes the application behave as an answering machine\n"
" The default behaviour is to behave as a calling machine.\n"
"\n"
"This application uses following variables:\n"
" LOCALSTATIONID to identify itself to the remote end.\n"
@ -55,10 +55,12 @@ static char *app_sndfax_desc =
"\n"
"This application sets the following channel variables upon completion:\n"
" FAXSTATUS - status of operation:\n"
" SUCCESS | FAILED\n"
" FAXERROR - Error when FAILED\n"
" SUCCESS | FAILED\n"
" FAXERROR - Error when FAILED\n"
" FAXMODE - Mode used:\n"
" audio | T38\n"
" REMOTESTATIONID - CSID of the remote side.\n"
" FAXPAGES - number of pages sent.\n"
" FAXPAGES - number of pages sent.\n"
" FAXBITRATE - transmition rate.\n"
" FAXRESOLUTION - resolution.\n"
"\n"
@ -73,7 +75,7 @@ static char *app_rcvfax_desc =
"the file if it already exists. File created will have TIFF format.\n"
"The option string may contain zero or more of the following characters:\n"
" 'c' -- makes the application behave as a calling machine\n"
" The default behaviour is to behave as an answering machine.\n"
" The default behaviour is to behave as an answering machine.\n"
"\n"
"This application uses following variables:\n"
" LOCALSTATIONID to identify itself to the remote end.\n"
@ -81,10 +83,12 @@ static char *app_rcvfax_desc =
"\n"
"This application sets the following channel variables upon completion:\n"
" FAXSTATUS - status of operation:\n"
" SUCCESS | FAILED\n"
" FAXERROR - Error when FAILED\n"
" SUCCESS | FAILED\n"
" FAXERROR - Error when FAILED\n"
" FAXMODE - Mode used:\n"
" audio | T38\n"
" REMOTESTATIONID - CSID of the remote side.\n"
" FAXPAGES - number of pages sent.\n"
" FAXPAGES - number of pages sent.\n"
" FAXBITRATE - transmition rate.\n"
" FAXRESOLUTION - resolution.\n"
"\n"
@ -575,6 +579,7 @@ static int transmit(fax_session *s)
pbx_builtin_setvar_helper(s->chan, "FAXSTATUS", "FAILED");
pbx_builtin_setvar_helper(s->chan, "FAXERROR", "Channel problems");
pbx_builtin_setvar_helper(s->chan, "FAXMODE", NULL);
pbx_builtin_setvar_helper(s->chan, "REMOTESTATIONID", NULL);
pbx_builtin_setvar_helper(s->chan, "FAXPAGES", NULL);
pbx_builtin_setvar_helper(s->chan, "FAXRESOLUTION", NULL);
@ -593,6 +598,7 @@ static int transmit(fax_session *s)
s->t38state = ast_channel_get_t38_state(s->chan);
if (s->t38state != T38_STATE_NEGOTIATED) {
/* T38 is not negotiated on the channel yet. First start regular transmission. If it switches to T38, follow */
pbx_builtin_setvar_helper(s->chan, "FAXMODE", "audio");
res = transmit_audio(s);
if (res > 0) {
/* transmit_audio reports switchover to T38. Update t38state */
@ -604,6 +610,7 @@ static int transmit(fax_session *s)
}
if (s->t38state == T38_STATE_NEGOTIATED) {
pbx_builtin_setvar_helper(s->chan, "FAXMODE", "T38");
res = transmit_t38(s);
}