[Freeswitch-svn] [commit] r12907 - freeswitch/trunk/scripts/contrib/dschreiber/mod_nibblebill
FreeSWITCH SVN
dschreiber at freeswitch.org
Fri Apr 3 11:00:34 PDT 2009
Author: dschreiber
Date: Fri Apr 3 13:00:34 2009
New Revision: 12907
Log:
MODAPP-229
Modified:
freeswitch/trunk/scripts/contrib/dschreiber/mod_nibblebill/mod_nibblebill.c
Modified: freeswitch/trunk/scripts/contrib/dschreiber/mod_nibblebill/mod_nibblebill.c
==============================================================================
--- freeswitch/trunk/scripts/contrib/dschreiber/mod_nibblebill/mod_nibblebill.c (original)
+++ freeswitch/trunk/scripts/contrib/dschreiber/mod_nibblebill/mod_nibblebill.c Fri Apr 3 13:00:34 2009
@@ -141,14 +141,14 @@
SWITCH_DECLARE_GLOBAL_STRING_FUNC(set_global_nobal_action, globals.nobal_action);
#ifdef SWITCH_HAVE_ODBC
-static int nibblebill_callback(void *pArg, int argc, char **argv, char **columnNames)
+/*static int nibblebill_callback(void *pArg, int argc, char **argv, char **columnNames)
{
nibblebill_results_t *cbt = (nibblebill_results_t *) pArg;
cbt->funds = atof(argv[0]);
return 0;
-}
+}*/
#endif
static switch_status_t load_config(void)
@@ -276,15 +276,16 @@
{
#ifdef SWITCH_HAVE_ODBC
char sql[1024] = "";
- nibblebill_results_t pdata;
+ SQLHSTMT stmt;
- memset(&pdata, 0, sizeof(pdata));
snprintf(sql, 1024, SQL_SAVE, globals.db_table, globals.db_column_cash, globals.db_column_cash, billamount, globals.db_column_account, billaccount);
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Doing update query\n[%s]\n", sql);
- if (!(switch_odbc_handle_callback_exec(globals.master_odbc, sql, nibblebill_callback, &pdata) == SWITCH_ODBC_SUCCESS)){
- switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "DB Error while updating cash!\n");
-
+ if (switch_odbc_handle_exec(globals.master_odbc, sql, &stmt) != SWITCH_ODBC_SUCCESS) {
+ char *err_str;
+ err_str = switch_odbc_handle_get_error(globals.master_odbc, stmt);
+ switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "ERR: [%s]\n[%s]\n", sql, switch_str_nil(err_str));
+ switch_safe_free(err_str);
} else {
#endif
/* TODO: Failover to a flat/text file if DB is unavailable */
@@ -292,6 +293,8 @@
return SWITCH_STATUS_SUCCESS;
#ifdef SWITCH_HAVE_ODBC
}
+
+ SQLFreeHandle(SQL_HANDLE_STMT, stmt);
#endif
return SWITCH_STATUS_SUCCESS;
}
@@ -350,7 +353,7 @@
}
if (profile->times->answered < 1) {
- switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "Not billing %s - call is not in answered state\n", billaccount);
+ switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Not billing %s - call is not in answered state\n", billaccount);
return SWITCH_STATUS_SUCCESS;
}
More information about the Freeswitch-svn
mailing list