[Freeswitch-svn] [commit] r9446 - freeswitch/trunk/src/mod/applications/mod_fax

Freeswitch SVN brian at freeswitch.org
Thu Sep 4 12:54:10 EDT 2008


Author: brian
Date: Thu Sep  4 12:54:10 2008
New Revision: 9446

Modified:
   freeswitch/trunk/src/mod/applications/mod_fax/mod_fax.c

Log:
fix tab

Modified: freeswitch/trunk/src/mod/applications/mod_fax/mod_fax.c
==============================================================================
--- freeswitch/trunk/src/mod/applications/mod_fax/mod_fax.c	(original)
+++ freeswitch/trunk/src/mod/applications/mod_fax/mod_fax.c	Thu Sep  4 12:54:10 2008
@@ -49,8 +49,8 @@
 
 	/* TODO: maybe is better to use switch_assert here?
 	if (msg==NULL) {
-        return;
-    }
+	    return;
+	}
 	*/
 	switch_assert(msg!=NULL);
 
@@ -77,8 +77,8 @@
 			break;
 		default: /* SPAN_LOG_DEBUG, SPAN_LOG_DEBUG_2, SPAN_LOG_DEBUG_3 */
 			fs_log_level = SWITCH_LOG_DEBUG;
-    }
-    switch_log_printf(SWITCH_CHANNEL_LOG, fs_log_level, "%s", msg );
+	}
+	switch_log_printf(SWITCH_CHANNEL_LOG, fs_log_level, "%s", msg );
 }
 
 /*
@@ -100,7 +100,7 @@
 	switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "remote sender ident:       %s\n", t30_get_rx_sender_ident(s));
 	switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "remote password:           %s\n", t30_get_rx_password(s));
 	switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
-    return T30_ERR_OK;
+	return T30_ERR_OK;
 };
 
 
@@ -110,31 +110,31 @@
 
 static int phase_d_handler(t30_state_t *s, void *user_data, int result)
 {
-    t30_stats_t t;
+	t30_stats_t t;
 	int session;
 	switch_assert(user_data != NULL);
 	session = (intptr_t) user_data;
 
-    if (result) {
-        t30_get_transfer_statistics(s, &t);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Phase D handler on channel %d - (0x%X) %s\n", session, session, result, t30_frametype(result));
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Pages transferred:  %i\n", t.pages_transferred);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Pages in the file:  %i\n", t.pages_in_file);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Image size:         %i x %i\n", t.width, t.length);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Image resolution    %i x %i\n", t.x_resolution, t.y_resolution);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Transfer Rate:      %i\n", t.bit_rate);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Bad rows            %i\n", t.bad_rows);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Longest bad row run %i\n", t.longest_bad_row_run);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Compression type    %i %s\n", t.encoding, t4_encoding_to_str(t.encoding));
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Image size (bytes)  %i\n", t.image_size);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "ECM                 %s\n", (t.error_correcting_mode)  ?  "on"  :  "off");
+	if (result) {
+	    t30_get_transfer_statistics(s, &t);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Phase D handler on channel %d - (0x%X) %s\n", session, session, result, t30_frametype(result));
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Pages transferred:  %i\n", t.pages_transferred);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Pages in the file:  %i\n", t.pages_in_file);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Image size:         %i x %i\n", t.width, t.length);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Image resolution    %i x %i\n", t.x_resolution, t.y_resolution);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Transfer Rate:      %i\n", t.bit_rate);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Bad rows            %i\n", t.bad_rows);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Longest bad row run %i\n", t.longest_bad_row_run);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Compression type    %i %s\n", t.encoding, t4_encoding_to_str(t.encoding));
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Image size (bytes)  %i\n", t.image_size);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "ECM                 %s\n", (t.error_correcting_mode)  ?  "on"  :  "off");
 		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "local ident:        %s\n", t30_get_tx_ident(s));
 		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "remote ident:       %s\n", t30_get_rx_ident(s));
 		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "bits per row - min %d, max %d\n", s->t4.min_row_bits, s->t4.max_row_bits);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
-    }
-    return T30_ERR_OK;
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
+	}
+	return T30_ERR_OK;
 }
 
 
@@ -144,32 +144,32 @@
 
 static void phase_e_handler(t30_state_t *s, void *user_data, int result)
 {
-    t30_stats_t t;
-    const char *far_ident = NULL;
-    switch_channel_t *chan = (switch_channel_t *) user_data;
-    char buf[128];
-    
-    switch_assert(user_data != NULL);
-
-    if (result == T30_ERR_OK) {
-        t30_get_transfer_statistics(s, &t);
-
-        far_ident = switch_str_nil( t30_get_tx_ident(s) );
-        
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
+	t30_stats_t t;
+	const char *far_ident = NULL;
+	switch_channel_t *chan = (switch_channel_t *) user_data;
+	char buf[128];
+	
+	switch_assert(user_data != NULL);
+
+	if (result == T30_ERR_OK) {
+	    t30_get_transfer_statistics(s, &t);
+
+	    far_ident = switch_str_nil( t30_get_tx_ident(s) );
+	    
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
 		//TODO: add received/transmitted ?
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Fax successfully processed.\n");
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Remote station id: %s\n", far_ident);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Local station id:  %s\n", switch_str_nil( t30_get_rx_ident(s)) );
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Pages transferred: %i\n", t.pages_transferred);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Image resolution:  %i x %i\n", t.x_resolution, t.y_resolution);
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Transfer Rate:     %i\n", t.bit_rate);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Fax successfully processed.\n");
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Remote station id: %s\n", far_ident);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Local station id:  %s\n", switch_str_nil( t30_get_rx_ident(s)) );
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Pages transferred: %i\n", t.pages_transferred);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Image resolution:  %i x %i\n", t.x_resolution, t.y_resolution);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Transfer Rate:     %i\n", t.bit_rate);
 		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "local ident:       %s\n", t30_get_tx_ident(s));
 		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "remote ident:      %s\n", t30_get_rx_ident(s));
 		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "station country:   %s\n", t30_get_rx_country(s));
 		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "station vendor:    %s\n", t30_get_rx_vendor(s));
 		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "station model:     %s\n", t30_get_rx_model(s));
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
 
 		//TODO: is the buffer too little? anyway <MikeJ> is going to write a new set_variable function that will allow a printf like syntax very soon
 		switch_snprintf(buf, sizeof(buf), "%d", t.pages_transferred);
@@ -179,19 +179,19 @@
 		switch_snprintf(buf, sizeof(buf), "%d", t.bit_rate);
 		switch_channel_set_variable(chan, "FAX_SPEED", buf);
 
-    } else {
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
+	} else {
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
 		//TODO: add received/transmitted ?
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Fax processing not successful - result (%d) %s.\n", result, t30_completion_code_to_str(result));
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
-    }
-
-    //TODO: remove the assert once this has been tested
-    switch_channel_set_variable(chan, "FAX_REMOTESTATIONID", far_ident);
-    switch_snprintf(buf, sizeof(buf), "%d", result);
-    switch_channel_set_variable(chan, "FAX_RESULT", buf);
-    switch_snprintf(buf, sizeof(buf), "%s", t30_completion_code_to_str(result));
-    switch_channel_set_variable(chan, "FAX_ERROR", buf);
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Fax processing not successful - result (%d) %s.\n", result, t30_completion_code_to_str(result));
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "==============================================================================\n");
+	}
+
+	//TODO: remove the assert once this has been tested
+	switch_channel_set_variable(chan, "FAX_REMOTESTATIONID", far_ident);
+	switch_snprintf(buf, sizeof(buf), "%d", result);
+	switch_channel_set_variable(chan, "FAX_RESULT", buf);
+	switch_snprintf(buf, sizeof(buf), "%s", t30_completion_code_to_str(result));
+	switch_channel_set_variable(chan, "FAX_ERROR", buf);
 
 	/*
 	 * TODO
@@ -218,61 +218,61 @@
 
 void process_fax(switch_core_session_t *session, char *data, int calling_party)
 {
-    switch_channel_t *channel;
-    switch_codec_t *orig_read_codec = NULL;
-    switch_codec_t read_codec = {0};
-    switch_codec_t write_codec = {0};
-    switch_frame_t *read_frame = {0};
-    switch_frame_t write_frame = {0};
-    switch_status_t status;
-    fax_state_t fax;
+	switch_channel_t *channel;
+	switch_codec_t *orig_read_codec = NULL;
+	switch_codec_t read_codec = {0};
+	switch_codec_t write_codec = {0};
+	switch_frame_t *read_frame = {0};
+	switch_frame_t write_frame = {0};
+	switch_status_t status;
+	fax_state_t fax;
 	#define FAX_BUFFER_SIZE		4096
-    int16_t buf[FAX_BUFFER_SIZE];		//TODO original value: 512
-    int tx = 0;
-    /*TODO: int calling_party = FALSE; DEPRECATED */
-    /* Channels variable parsing */
-    char *file_name = NULL;
-    const char *fax_local_debug = NULL;
-    int debug = FALSE;
-    const char *fax_local_number = NULL;
-    const char *fax_local_name = NULL;
-    const char *fax_local_subname = NULL;
-    const char *fax_local_ecm = NULL;
-    const char *fax_local_v17 = NULL;
+	int16_t buf[FAX_BUFFER_SIZE];		//TODO original value: 512
+	int tx = 0;
+	/*TODO: int calling_party = FALSE; DEPRECATED */
+	/* Channels variable parsing */
+	char *file_name = NULL;
+	const char *fax_local_debug = NULL;
+	int debug = FALSE;
+	const char *fax_local_number = NULL;
+	const char *fax_local_name = NULL;
+	const char *fax_local_subname = NULL;
+	const char *fax_local_ecm = NULL;
+	const char *fax_local_v17 = NULL;
 
-    /* make sure we have a valid channel when starting the FAX application */
-    channel = switch_core_session_get_channel(session);
+	/* make sure we have a valid channel when starting the FAX application */
+	channel = switch_core_session_get_channel(session);
 	switch_assert(channel != NULL);	
 
 	/* set output varialbles to a reasonable result */
-    switch_channel_set_variable(channel, "FAX_REMOTESTATIONID", "unknown");
-    switch_channel_set_variable(channel, "FAX_PAGES",   "0");
-    switch_channel_set_variable(channel, "FAX_SIZE",    "0");
-    switch_channel_set_variable(channel, "FAX_SPEED",   "0");
-    switch_channel_set_variable(channel, "FAX_RESULT",  "1");
+	switch_channel_set_variable(channel, "FAX_REMOTESTATIONID", "unknown");
+	switch_channel_set_variable(channel, "FAX_PAGES",   "0");
+	switch_channel_set_variable(channel, "FAX_SIZE",    "0");
+	switch_channel_set_variable(channel, "FAX_SPEED",   "0");
+	switch_channel_set_variable(channel, "FAX_RESULT",  "1");
 	//TODO: add received/transmitted ?
-    switch_channel_set_variable(channel, "FAX_ERROR",   "fax not processed yet");
+	switch_channel_set_variable(channel, "FAX_ERROR",   "fax not processed yet");
 
-    /*
+	/*
 	 * SpanDSP initialization 
 	 * if fax_init by any chance fails to start we return quickly  without touching anything else 
 	 */
-    //TODO: ask Coppice to see if we need to clear the fax structure before fax_init is invoked
-    memset(&fax, 0, sizeof(fax));
-    if (NULL == fax_init(&fax, calling_party)) {
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "fax_init failed\n");
+	//TODO: ask Coppice to see if we need to clear the fax structure before fax_init is invoked
+	memset(&fax, 0, sizeof(fax));
+	if (NULL == fax_init(&fax, calling_party)) {
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "fax_init failed\n");
 		return;
 	}
 
-    /*
-     * Enable options based on channel variables and input parameters
-     */
-
-    /* file_name - Sets the TIFF filename where do you want to save the fax */
-    file_name = switch_core_session_strdup(session, data);
-    /* it is important that file_name is not NULL or an empty string */
-    if (switch_strlen_zero(file_name)) {
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "fax filename is NULL or empty string\n");
+	/*
+	 * Enable options based on channel variables and input parameters
+	 */
+
+	/* file_name - Sets the TIFF filename where do you want to save the fax */
+	file_name = switch_core_session_strdup(session, data);
+	/* it is important that file_name is not NULL or an empty string */
+	if (switch_strlen_zero(file_name)) {
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "fax filename is NULL or empty string\n");
 		return;
 	}
 	if (calling_party)
@@ -280,32 +280,32 @@
 	else
 		t30_set_rx_file(&fax.t30, file_name, -1);
 
-    /* FAX_DEBUG - enable extra debugging if defined */
-    debug = ( NULL != switch_channel_get_variable(channel, "FAX_DEBUG") );
+	/* FAX_DEBUG - enable extra debugging if defined */
+	debug = ( NULL != switch_channel_get_variable(channel, "FAX_DEBUG") );
 
-    /* FAX_LOCAL_NUMBER - Set your station phone number */
+	/* FAX_LOCAL_NUMBER - Set your station phone number */
 	t30_set_tx_ident(&fax.t30, switch_str_nil(switch_channel_get_variable(channel, "FAX_LOCAL_NUMBER")));
 
-    /* FAX_LOCAL_NAME - Set your station ID name (string) */
-    t30_set_tx_page_header_info(&fax.t30, switch_str_nil(switch_channel_get_variable(channel, "FAX_LOCAL_NAME")));
+	/* FAX_LOCAL_NAME - Set your station ID name (string) */
+	t30_set_tx_page_header_info(&fax.t30, switch_str_nil(switch_channel_get_variable(channel, "FAX_LOCAL_NAME")));
 
-    /* FAX_LOCAL_SUBNAME - Set your station ID sub name */
+	/* FAX_LOCAL_SUBNAME - Set your station ID sub name */
 	t30_set_tx_sub_address(&fax.t30, switch_str_nil(switch_channel_get_variable(channel, "FAX_LOCAL_SUBNAME")));
 
-    /* FAX_DISABLE_ECM - Set if you want ECM on or OFF */
-    if (NULL != switch_channel_get_variable(channel, "FAX_DISABLE_ECM")) {
-        t30_set_ecm_capability(&fax.t30, TRUE);
+	/* FAX_DISABLE_ECM - Set if you want ECM on or OFF */
+	if (NULL != switch_channel_get_variable(channel, "FAX_DISABLE_ECM")) {
+	    t30_set_ecm_capability(&fax.t30, TRUE);
 		t30_set_supported_compressions(&fax.t30, T30_SUPPORT_T4_1D_COMPRESSION | T30_SUPPORT_T4_2D_COMPRESSION | T30_SUPPORT_T6_COMPRESSION);
-    } else {
-        t30_set_ecm_capability(&fax.t30, FALSE);
+	} else {
+	    t30_set_ecm_capability(&fax.t30, FALSE);
 	}
 
-    /* FAX_DISABLE_V17 - set if you want 9600 or V17 (14.400) */
-    if (NULL != switch_channel_get_variable(channel, "FAX_DISABLE_V17")) {
+	/* FAX_DISABLE_V17 - set if you want 9600 or V17 (14.400) */
+	if (NULL != switch_channel_get_variable(channel, "FAX_DISABLE_V17")) {
 		t30_set_supported_modems(&fax.t30, T30_SUPPORT_V29 | T30_SUPPORT_V27TER | T30_SUPPORT_V17 );
-    } else {
+	} else {
 		t30_set_supported_modems(&fax.t30, T30_SUPPORT_V29 | T30_SUPPORT_V27TER);
-    }
+	}
 
 	/* TODO, ask Coppice if this is really working or not and then add FAX_PASSWORD channel variable (don't forget the wiki part too)
 	 * t30_set_tx_password(&mc->fax.t30_state, "Password");
@@ -314,7 +314,7 @@
 	/* Configure more spanDSP internal options */
 
 	/* Select whether silent audio will be sent when FAX transmit is idle. */
-    fax_set_transmit_on_idle(&fax, TRUE);
+	fax_set_transmit_on_idle(&fax, TRUE);
 
 	/* Support for different image sizes && resolutions */
 	t30_set_supported_image_sizes(&fax.t30, T30_SUPPORT_US_LETTER_LENGTH | T30_SUPPORT_US_LEGAL_LENGTH | T30_SUPPORT_UNLIMITED_LENGTH
@@ -322,97 +322,97 @@
 	t30_set_supported_resolutions(&fax.t30, T30_SUPPORT_STANDARD_RESOLUTION | T30_SUPPORT_FINE_RESOLUTION | T30_SUPPORT_SUPERFINE_RESOLUTION
 			| T30_SUPPORT_R8_RESOLUTION | T30_SUPPORT_R16_RESOLUTION);
 
-    /* set phase handlers callbaks */
-    t30_set_phase_d_handler(&fax.t30, phase_d_handler, session);
-    t30_set_phase_e_handler(&fax.t30, phase_e_handler, channel);
+	/* set phase handlers callbaks */
+	t30_set_phase_d_handler(&fax.t30, phase_d_handler, session);
+	t30_set_phase_e_handler(&fax.t30, phase_e_handler, channel);
 	if (debug) {
 		t30_set_phase_b_handler(&fax.t30, phase_b_handler, session);
 		t30_set_document_handler(&fax.t30, document_handler, session);
 	}
 
-    /* set spanDSP logging functions - set spanlog debug messages to be outputted somewhere */
-    span_log_set_message_handler(&fax.logging, span_message);
-    span_log_set_message_handler(&fax.t30.logging, span_message);
-    if (debug) {
+	/* set spanDSP logging functions - set spanlog debug messages to be outputted somewhere */
+	span_log_set_message_handler(&fax.logging, span_message);
+	span_log_set_message_handler(&fax.t30.logging, span_message);
+	if (debug) {
 		/* TODO: original
 		span_log_set_level(&fax.logging, SPAN_LOG_SHOW_SEVERITY | SPAN_LOG_SHOW_PROTOCOL | SPAN_LOG_FLOW);
 		span_log_set_level(&fax.t30.logging, SPAN_LOG_SHOW_SEVERITY | SPAN_LOG_SHOW_PROTOCOL | SPAN_LOG_FLOW);
 		*/
 		span_log_set_level(&fax.logging, SPAN_LOG_NONE|SPAN_LOG_FLOW|SPAN_LOG_FLOW_2|SPAN_LOG_FLOW_3|SPAN_LOG_ERROR|SPAN_LOG_PROTOCOL_ERROR|SPAN_LOG_WARNING|SPAN_LOG_PROTOCOL_WARNING|SPAN_LOG_DEBUG|SPAN_LOG_DEBUG_2|SPAN_LOG_DEBUG_3 );
 		span_log_set_level(&fax.t30.logging, SPAN_LOG_NONE|SPAN_LOG_FLOW|SPAN_LOG_FLOW_2|SPAN_LOG_FLOW_3|SPAN_LOG_ERROR|SPAN_LOG_PROTOCOL_ERROR|SPAN_LOG_WARNING|SPAN_LOG_PROTOCOL_WARNING|SPAN_LOG_DEBUG|SPAN_LOG_DEBUG_2|SPAN_LOG_DEBUG_3 );
-    } else {
+	} else {
 		span_log_set_level(&fax.logging, SPAN_LOG_SHOW_SEVERITY | SPAN_LOG_SHOW_PROTOCOL );
 		span_log_set_level(&fax.t30.logging, SPAN_LOG_SHOW_SEVERITY | SPAN_LOG_SHOW_PROTOCOL );
 	}
 
 	/* We're now ready to answer the channel and process the audio of the call */
 
-    /* Answer the call, otherwise we're not getting incoming audio */
+	/* Answer the call, otherwise we're not getting incoming audio */
 	switch_channel_answer(channel);
 
-    /* TODO:
+	/* TODO:
 	 * it could be a good idea to disable ECHOCAN on ZAP channels and to reset volumes too
 	 * anyone know how to do this if one of the channell is OpenZap isntead of Sofia?
 	 * TIPS: perhaps "disable_ec" apps ?
 	 */
 
-    /* We store the original channel codec before switching both
-     * legs of the calls to a linear 16 bit codec that is the one
-     * used internally by spandsp and FS will do the transcoding
-     * from G.711 or any other original codec
-     */
-    orig_read_codec = switch_core_session_get_read_codec(session);
-
-    if (switch_core_codec_init(&read_codec, 
-                               "L16", 
-                               NULL, 
-                               orig_read_codec->implementation->samples_per_second, 
-                               orig_read_codec->implementation->microseconds_per_frame / 1000, 
-                               1, 
-                               SWITCH_CODEC_FLAG_ENCODE | SWITCH_CODEC_FLAG_DECODE, 
-                               NULL, 
-                               switch_core_session_get_pool(session)) == SWITCH_STATUS_SUCCESS) {
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Raw Codec Activation Success L16 on Leg-A\n");
-    } else {
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Raw Codec Activation Failed L16 on Leg-A");
-        goto done;
-    }
-
-    if (switch_core_codec_init(&write_codec, 
-                               "L16", 
-                               NULL, 
-                               orig_read_codec->implementation->samples_per_second, 
-                               orig_read_codec->implementation->microseconds_per_frame / 1000, 
-                               1, 
-                               SWITCH_CODEC_FLAG_ENCODE | SWITCH_CODEC_FLAG_DECODE, 
-                               NULL, 
-                               switch_core_session_get_pool(session)) == SWITCH_STATUS_SUCCESS) {
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Raw Codec Activation Success L16 on Leg-B\n");
-    } else {
-        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Raw Codec Activation Failed L16 on Leg-B");
-        goto done;
-    }
-
-    write_frame.codec = &write_codec;
-    write_frame.data = buf;
-
-    /*
-     * now we enter a loop where we read audio frames to the channels and will pass it to spandsp
-     * and if there is some outgoing frame we'll send it back to the calling fax machine
-     */
-
-    while(switch_channel_ready(channel)) {
-
-        /* read new audio frame from the channel */
-        status = switch_core_session_read_frame(session, &read_frame, -1, 0);
-        if (!SWITCH_READ_ACCEPTABLE(status)) {
-            goto done;
-        }
+	/* We store the original channel codec before switching both
+	 * legs of the calls to a linear 16 bit codec that is the one
+	 * used internally by spandsp and FS will do the transcoding
+	 * from G.711 or any other original codec
+	 */
+	orig_read_codec = switch_core_session_get_read_codec(session);
+
+	if (switch_core_codec_init(&read_codec, 
+	                           "L16", 
+	                           NULL, 
+	                           orig_read_codec->implementation->samples_per_second, 
+	                           orig_read_codec->implementation->microseconds_per_frame / 1000, 
+	                           1, 
+	                           SWITCH_CODEC_FLAG_ENCODE | SWITCH_CODEC_FLAG_DECODE, 
+	                           NULL, 
+	                           switch_core_session_get_pool(session)) == SWITCH_STATUS_SUCCESS) {
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Raw Codec Activation Success L16 on Leg-A\n");
+	} else {
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Raw Codec Activation Failed L16 on Leg-A");
+	    goto done;
+	}
+
+	if (switch_core_codec_init(&write_codec, 
+	                           "L16", 
+	                           NULL, 
+	                           orig_read_codec->implementation->samples_per_second, 
+	                           orig_read_codec->implementation->microseconds_per_frame / 1000, 
+	                           1, 
+	                           SWITCH_CODEC_FLAG_ENCODE | SWITCH_CODEC_FLAG_DECODE, 
+	                           NULL, 
+	                           switch_core_session_get_pool(session)) == SWITCH_STATUS_SUCCESS) {
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Raw Codec Activation Success L16 on Leg-B\n");
+	} else {
+	    switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Raw Codec Activation Failed L16 on Leg-B");
+	    goto done;
+	}
+
+	write_frame.codec = &write_codec;
+	write_frame.data = buf;
+
+	/*
+	 * now we enter a loop where we read audio frames to the channels and will pass it to spandsp
+	 * and if there is some outgoing frame we'll send it back to the calling fax machine
+	 */
+
+	while(switch_channel_ready(channel)) {
+
+	    /* read new audio frame from the channel */
+	    status = switch_core_session_read_frame(session, &read_frame, -1, 0);
+	    if (!SWITCH_READ_ACCEPTABLE(status)) {
+	        goto done;
+	    }
 
 		//DEBUG switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Frame Read: %d\n" , read_frame->samples);
 
-        /* pass the new incoming audio frame to the fax_rx application */
-        if( fax_rx(&fax, (int16_t *)read_frame->data, read_frame->samples) ) {
+	    /* pass the new incoming audio frame to the fax_rx application */
+	    if( fax_rx(&fax, (int16_t *)read_frame->data, read_frame->samples) ) {
 			//TODO
 			switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "FAX_RX error\n" );
 		}
@@ -420,29 +420,29 @@
 		if (read_frame->samples > 256 ) 
 			switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "SAMPLES TOO BIG\n" );
 
-        if ((tx = fax_tx(&fax, (int16_t *) &buf, write_codec.implementation->samples_per_frame)) < 0) {
-            switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Fax_Tx Error\n");
-            goto done;
-        }
+	    if ((tx = fax_tx(&fax, (int16_t *) &buf, write_codec.implementation->samples_per_frame)) < 0) {
+	        switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Fax_Tx Error\n");
+	        goto done;
+	    }
 		//DEBUG switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Fax   Tx  : %d %d\n" , tx, write_codec.implementation->samples_per_frame);
-        
-        if (tx!=0) {
-            write_frame.datalen = tx * sizeof(int16_t);
-            write_frame.samples = tx;
-        
-            if (switch_core_session_write_frame(session, &write_frame, -1, 0) != SWITCH_STATUS_SUCCESS) {
-                switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Bad Write, datalen: %d, samples: %d\n", 
+	    
+	    if (tx!=0) {
+	        write_frame.datalen = tx * sizeof(int16_t);
+	        write_frame.samples = tx;
+	    
+	        if (switch_core_session_write_frame(session, &write_frame, -1, 0) != SWITCH_STATUS_SUCCESS) {
+	            switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Bad Write, datalen: %d, samples: %d\n", 
 					write_frame.datalen,
 					write_frame.samples
 				);
-                goto done;
-            }
+	            goto done;
+	        }
 			//DEBUG switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Frame TX  : %d %d\n" , write_frame.datalen, write_frame.samples);
-        } else {
+	    } else {
 			// TODO
 			switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "non trasmitting\n" );
 		}
-    }
+	}
 
  done:
 
@@ -450,22 +450,22 @@
 	if (debug)
 		switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "FAX transmission has terminated.\n");
 
-    /* shutdown spandsp so it can create our tiff */
-    t30_terminate(&fax.t30);
-    fax_release(&fax);
-    
-    /* restore the original codecs over the channels */
-    if (read_codec.implementation) {
-        switch_core_codec_destroy(&read_codec);
-    }
-
-    if (write_codec.implementation) {
-        switch_core_codec_destroy(&write_codec);
-    }
-
-    if (orig_read_codec) {
-        switch_core_session_set_read_codec(session, orig_read_codec);
-    }
+	/* shutdown spandsp so it can create our tiff */
+	t30_terminate(&fax.t30);
+	fax_release(&fax);
+	
+	/* restore the original codecs over the channels */
+	if (read_codec.implementation) {
+	    switch_core_codec_destroy(&read_codec);
+	}
+
+	if (write_codec.implementation) {
+	    switch_core_codec_destroy(&write_codec);
+	}
+
+	if (orig_read_codec) {
+	    switch_core_session_set_read_codec(session, orig_read_codec);
+	}
 
 }
 
@@ -481,18 +481,18 @@
 
 SWITCH_MODULE_LOAD_FUNCTION(mod_fax_load)
 {
-    switch_application_interface_t *app_interface;
-    
+	switch_application_interface_t *app_interface;
+	
 	/* connect my internal structure to the blank pointer passed to me */
-    *module_interface = switch_loadable_module_create_module_interface(pool, modname);
-    
-    SWITCH_ADD_APP(app_interface, "rxfax", "FAX Receive Application",  "FAX Receive Application",  rxfax_function, "", SAF_NONE);
-    SWITCH_ADD_APP(app_interface, "txfax", "FAX Transmit Application", "FAX Transmit Application", txfax_function, "", SAF_NONE);
+	*module_interface = switch_loadable_module_create_module_interface(pool, modname);
+	
+	SWITCH_ADD_APP(app_interface, "rxfax", "FAX Receive Application",  "FAX Receive Application",  rxfax_function, "", SAF_NONE);
+	SWITCH_ADD_APP(app_interface, "txfax", "FAX Transmit Application", "FAX Transmit Application", txfax_function, "", SAF_NONE);
 
 	// TODO: ask if i can use LOG functions inside this macro
-    /* its important to debug the exact spandsp used */
+	/* its important to debug the exact spandsp used */
 	switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "using spandsp %i %i\n", SPANDSP_RELEASE_DATE, SPANDSP_RELEASE_TIME );
-    
+	
 	/* indicate that the module should continue to be loaded */
 	return SWITCH_STATUS_SUCCESS;
 }



More information about the Freeswitch-svn mailing list