int w_acc_evi_request(struct sip_msg *rq, pv_elem_t* comment, char *foo) { struct acc_param accp; if (acc_preparse_req(rq)<0) return -1; acc_pvel_to_acc_param(rq, comment, &accp); env_set_to( rq->to ); env_set_comment( &accp ); #if 0 if (is_cdr_acc_on(rq) && is_evi_acc_on(rq)) { env_set_event(acc_cdr_event); } else if (is_evi_acc_on(rq) && acc_env.code < 300) { env_set_event(acc_event); } else if (is_evi_mc_on(rq)) { env_set_event(acc_missed_event); } else { LM_WARN("evi request flags not set\n"); return 1; } #endif if (acc_env.code < 300) { env_set_event(acc_event); } else { env_set_event(acc_missed_event); } return acc_evi_request( rq, NULL, 0); }
int w_acc_db_request(struct sip_msg *rq, pv_elem_t* comment, char *table) { struct acc_param accp; int table_len; if (!table) { LM_ERR("db support not configured\n"); return -1; } if (acc_preparse_req(rq)<0) return -1; table_len = strlen(table); acc_pvel_to_acc_param(rq, comment, &accp); env_set_to( rq->to ); env_set_comment( &accp ); env_set_text(table, table_len); if (table_len == db_table_mc.len && (strncmp(table, db_table_mc.s, table_len) == 0)) { return acc_db_request(rq, NULL, &mc_ins_list, 0); } if (table_len == db_table_acc.len && (strncmp(table, db_table_acc.s, table_len) == 0)) { return acc_db_request(rq, NULL, &acc_ins_list, 0); } return acc_db_request( rq, NULL,NULL, 0); }
int w_acc_diam_request(struct sip_msg *rq, char *comment, char *foo) { if (acc_preparse_req(rq)<0) return -1; env_set_to( rq->to ); env_set_comment((struct acc_param*)comment); return acc_diam_request( rq, NULL); }
int w_acc_log_request(struct sip_msg *rq, char *comment, char *foo) { if (acc_preparse_req(rq)<0) return -1; env_set_to( rq->to ); env_set_comment((struct acc_param*)comment); env_set_text( ACC_REQUEST, ACC_REQUEST_LEN); return acc_log_request( rq, NULL); }
int w_acc_diam_request(struct sip_msg *rq, char *comment, char *foo) { struct acc_param *param = (struct acc_param*)comment; if (acc_preparse_req(rq)<0) return -1; if(acc_get_param_value(rq, param)<0) return -1; env_set_to( rq->to ); env_set_comment(param); return acc_diam_request(rq); }
int w_acc_aaa_request(struct sip_msg *rq, char *comment, char* foo) { if (!aaa_proto_url) { LM_ERR("aaa support not configured\n"); return -1; } if (acc_preparse_req(rq)<0) return -1; env_set_to( rq->to ); env_set_comment((struct acc_param*)comment); return acc_aaa_request( rq, NULL); }
int w_acc_db_request(struct sip_msg *rq, char *comment, char *table) { if (!table) { LM_ERR("db support not configured\n"); return -1; } if (acc_preparse_req(rq)<0) return -1; env_set_to( rq->to ); env_set_comment((struct acc_param*)comment); env_set_text(table, strlen(table)); return acc_db_request( rq, NULL,NULL); }
int w_acc_diam_request(struct sip_msg *rq, pv_elem_t* comment, char *foo) { struct acc_param accp; if (acc_preparse_req(rq)<0) return -1; acc_pvel_to_acc_param(rq, comment, &accp); env_set_to( rq->to ); env_set_comment( &accp ); return acc_diam_request( rq, NULL); }
/** * @brief execute an acc event via a specific engine */ int acc_api_exec(struct sip_msg *rq, acc_engine_t *eng, acc_param_t* comment) { acc_info_t inf; if (acc_preparse_req(rq)<0) return -1; env_set_to(rq->to); env_set_comment(comment); memset(&inf, 0, sizeof(acc_info_t)); inf.env = &acc_env; acc_api_set_arrays(&inf); return eng->acc_req(rq, &inf); }
int w_acc_log_request(struct sip_msg *rq, pv_elem_t* comment, char *foo) { struct acc_param accp; if (acc_preparse_req(rq)<0) return -1; acc_pvel_to_acc_param(rq, comment, &accp); env_set_to( rq->to ); env_set_comment( &accp ); env_set_text( ACC_REQUEST, ACC_REQUEST_LEN); return acc_log_request( rq, NULL, 0); }
int w_acc_aaa_request(struct sip_msg *rq, pv_elem_t* comment, char* foo) { struct acc_param accp; if (!aaa_proto_url) { LM_ERR("aaa support not configured\n"); return -1; } if (acc_preparse_req(rq)<0) return -1; acc_pvel_to_acc_param(rq, comment, &accp); env_set_to( rq->to ); env_set_comment( &accp ); return acc_aaa_request( rq, NULL, 0); }
int w_acc_db_request(struct sip_msg *rq, char *comment, char *table) { struct acc_param *param = (struct acc_param*)comment; if (!table) { LM_ERR("db support not configured\n"); return -1; } if (acc_preparse_req(rq)<0) return -1; if(acc_db_set_table_name(rq, (void*)table, NULL)<0) { LM_ERR("cannot set table name\n"); return -1; } if(acc_get_param_value(rq, param)<0) return -1; env_set_to( rq->to ); env_set_comment(param); return acc_db_request(rq); }