MCPcopy Create free account
hub / github.com/OpenSIPS/opensips / mod_init

Function mod_init

modules/call_center/call_center.c:345–464  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

343
344
345static int mod_init(void)
346{
347 LM_INFO("Call Center module - initializing\n");
348
349 init_db_url( db_url , 0 /*cannot be null*/);
350 init_db_url( acc_db_url , 0 /*cannot be null*/);
351 if (rt_db_url.s==NULL)
352 rt_db_url = db_url;
353 init_db_url( rt_db_url , 0 /*cannot be null*/);
354
355 cc_agent_table_name.len = strlen(cc_agent_table_name.s);
356 cca_agentid_column.len = strlen(cca_agentid_column.s);
357 cca_location_column.len = strlen(cca_location_column.s);
358 cca_skills_column.len = strlen(cca_skills_column.s);
359 cca_logstate_column.len = strlen(cca_logstate_column.s);
360 cca_wrapupend_column.len = strlen(cca_wrapupend_column.s);
361 cca_wrapuptime_column.len = strlen(cca_wrapuptime_column.s);
362
363 cc_flow_table_name.len = strlen(cc_flow_table_name.s);
364 ccf_flowid_column.len = strlen(ccf_flowid_column.s);
365 ccf_priority_column.len = strlen(ccf_priority_column.s);
366 ccf_skill_column.len = strlen(ccf_skill_column.s);
367 ccf_cid_column.len = strlen(ccf_cid_column.s);
368 ccf_max_wrapup_column.len = strlen(ccf_max_wrapup_column.s);
369 ccf_dissuading_hangup_column.len = strlen(ccf_dissuading_hangup_column.s);
370 ccf_dissuading_onhold_th_column.len =
371 strlen(ccf_dissuading_onhold_th_column.s);
372 ccf_dissuading_ewt_th_column.len = strlen(ccf_dissuading_ewt_th_column.s);
373 ccf_dissuading_qsize_th_column.len =
374 strlen(ccf_dissuading_qsize_th_column.s);
375 ccf_m_welcome_column.len = strlen(ccf_m_welcome_column.s);
376 ccf_m_queue_column.len = strlen(ccf_m_queue_column.s);
377 ccf_m_dissuading_column.len = strlen(ccf_m_dissuading_column.s);
378 ccf_m_flow_id_column.len = strlen(ccf_m_flow_id_column.s);
379 b2b_logic_ctx_param.len = strlen(b2b_logic_ctx_param.s);
380
381 if (queue_pos_param.s)
382 queue_pos_param.len = strlen(queue_pos_param.s);
383
384 if (msrp_dispatch_policy_str) {
385 if (!strcasecmp(msrp_dispatch_policy_str, "balancing")) {
386 msrp_dispatch_policy = CC_MSRP_POLICY_LB;
387 } else if (!strcasecmp(msrp_dispatch_policy_str, "full-load")) {
388 msrp_dispatch_policy = CC_MSRP_POLICY_FULL_AGENT;
389 }
390 }
391
392 internal_call_dispatching = (int*)shm_malloc(sizeof(int));
393 if (internal_call_dispatching==NULL) {
394 LM_ERR("Can't allocate shm holder for internal_call_dispatching\n");
395 return -1;
396 }
397 *internal_call_dispatching = (internal_call_dispatching_param==0) ? 0 : 1;
398
399 /* Load B2BUA API */
400 if (load_b2b_logic_api( &b2b_api) != 0) {
401 LM_ERR("Can't load B2B-UA hooks, missing 'b2b_logic' module ?\n");
402 return -1;

Callers

nothing calls this directly

Calls 12

shm_mallocFunction · 0.85
load_b2b_logic_apiFunction · 0.85
register_timerFunction · 0.85
init_cc_dataFunction · 0.85
init_cc_dbFunction · 0.85
init_cc_acc_dbFunction · 0.85
init_cc_rt_dbFunction · 0.85
cc_load_db_dataFunction · 0.85
clean_cc_old_dataFunction · 0.85
cc_db_restore_callsFunction · 0.85
cc_close_dbFunction · 0.85
cc_close_rt_dbFunction · 0.85

Tested by

no test coverage detected