From 79441f345d4308d6caee3a6ab626979b4ce1531d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E8=88=92?= Date: Wed, 12 Dec 2018 11:02:14 +0800 Subject: [PATCH 1/2] Update readme.md --- src/tool/sendsurvey_k/readme.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/tool/sendsurvey_k/readme.md b/src/tool/sendsurvey_k/readme.md index 886174e..b0cb4e9 100644 --- a/src/tool/sendsurvey_k/readme.md +++ b/src/tool/sendsurvey_k/readme.md @@ -1,17 +1,19 @@ -### 说明 +### 璇存槑 -- 按照K项目的接口,使用unixSocket而非UDP接口发送建议给粗拼装 +- 鎸夌収K椤圭洰鐨勬帴鍙o紝浣跨敤unixSocket鑰岄潪UDP鎺ュ彛鍙戦佸缓璁粰绮楁嫾瑁 -### 粗拼装配置要求 +### 绮楁嫾瑁呴厤缃姹 -- ./conf/main.conf中增加配置项目:UnixSocketRecvAddr=/home/mesasoft/frag_rssb/un_recv,按照实际运行环境修改 +- ./conf/main.conf涓鍔犻厤缃」鐩細UnixSocketRecvAddr=/home/mesasoft/frag_rssb/un_recv锛屾寜鐓у疄闄呰繍琛岀幆澧冧慨鏀 -### 使用方法 +### 浣跨敤鏂规硶 -程序名 粗拼装接收建议的socket PID service_type configID level logurl +- 绋嬪簭鍚 绮楁嫾瑁呮帴鏀跺缓璁殑socket PID service_type configID level logurl + +渚嬪锛 -例如: ./sendsurvey /home/mesasoft/frag_rssb/un_recv 11111111111111 37 212 100 192.168.1.1:/home/lishu/test.txt -logurl可以不写 +logurl鍙互涓嶅啓 + ./sendsurvey /home/mesasoft/frag_rssb/un_recv 11111111111111111 0 0 0 From 0059d5e31a6091316419795cb48880c21dfc71d5 Mon Sep 17 00:00:00 2001 From: dumeijied Date: Mon, 24 Dec 2018 18:11:20 +0800 Subject: [PATCH 2/2] 2018.12.24 v4.0//send_voip_full_json_log add survey judgement for K --- src/AV_interface.h | 2 ++ src/frag_voip.c | 65 ++++++++++++++++------------------------------ src/main.c | 7 ++--- src/message.c | 25 +++++++++++++++++- 4 files changed, 53 insertions(+), 46 deletions(-) diff --git a/src/AV_interface.h b/src/AV_interface.h index 13996a7..6eadfa7 100644 --- a/src/AV_interface.h +++ b/src/AV_interface.h @@ -75,6 +75,8 @@ #define SURVEY_PIC_MONITOR_TYPE 0xB1 #define SURVEY_PIC_KEYWORD_TYPE 0xB2 +#define SURVER_VOIP_COLLECT_TPYE 0xA4//for K voip_collect + // FD类型, 0表示blacklist,1表示static configures,2表示content hit。 #define FD_TYPE_DYNAMIC_LIST 0 #define FD_TYPE_STATIC_CONF 1 diff --git a/src/frag_voip.c b/src/frag_voip.c index 1a96981..d8068dd 100644 --- a/src/frag_voip.c +++ b/src/frag_voip.c @@ -906,9 +906,13 @@ void send_voip_full_json_log(media_t* mdi) { if(NULL == mdi) return; - + if(NULL == mdi->jc_buf) + return; + resp_checkresult_t* survey_res = (resp_checkresult_t*) (mdi->jc_buf + sizeof(msg_header_t)); + if(survey_res->service != SURVER_VOIP_COLLECT_TPYE) + return; + cJSON* root = NULL; - string topic_name = TOPIC_NTC_COLLECT_VOIP_LOG; char pid_buf[64] = {0}; char pbuf[32] = {0}; @@ -1038,48 +1042,25 @@ void send_voip_full_json_log(media_t* mdi) cJSON_AddStringToObject(root, "user_agent", mdi->sip_opt[SIP_USERAGENT_OPT_INDEX]->opt_value); } - char* survey = NULL; - uint32_t survey_len = 0; - if(mdi->sip_survey_type&SIP_SURVEY_TYPE_FD) + char* survey = mdi->jc_buf; + uint32_t survey_len = mdi->jc_buflen; + char* locate_url = NULL; + uint32_t locate_urllen = survey_len-sizeof(msg_header_t)-sizeof(resp_checkresult_t); + char locate_urlbuf[1024] = {0}; + + if(locate_urllen>0) { - survey = mdi->fd_buf; - survey_len = mdi->fd_buflen; - } - if(mdi->sip_survey_type&SIP_SURVEY_TYPE_JC) - { - survey = mdi->jc_buf; - survey_len = mdi->jc_buflen; - } - if(NULL != survey) - { - char* locate_url = NULL; - uint32_t locate_urllen = survey_len-sizeof(msg_header_t)-sizeof(resp_checkresult_t); - char locate_ipbuf[64] = {0}; - char locate_urlbuf[1024] = {0}; - char* locate_url_pos = NULL; - - if(locate_urllen>0) + locate_url = survey + sizeof(msg_header_t) + sizeof(resp_checkresult_t); + memcpy(locate_urlbuf, locate_url, locate_urllen); + if(mdi->re_offset==2) { - locate_url = survey + sizeof(msg_header_t) + sizeof(resp_checkresult_t); - locate_url_pos = (char*)memchr(locate_url, ':', locate_urllen); - if(NULL != locate_url_pos) - { - - memcpy(locate_ipbuf, locate_url, locate_url_pos-locate_url); - memcpy(locate_urlbuf, locate_url_pos, locate_urllen-(locate_url_pos-locate_url+1)); - if(mdi->re_offset==2) - { - cJSON_AddStringToObject(root, "to_from_store_ip", locate_ipbuf); - cJSON_AddStringToObject(root, "to_from_store_url", locate_urlbuf); - } - else - { - cJSON_AddStringToObject(root, "from_to_store_ip", locate_ipbuf); - cJSON_AddStringToObject(root, "from_to_store_url", locate_urlbuf); - } - } - } - } + cJSON_AddStringToObject(root, "to_from_store_url", locate_urlbuf); + } + else + { + cJSON_AddStringToObject(root, "from_to_store_url", locate_urlbuf); + } + } outbuf = cJSON_Print(root); len = strlen(outbuf); diff --git a/src/main.c b/src/main.c index 43052af..bd93500 100644 --- a/src/main.c +++ b/src/main.c @@ -42,9 +42,9 @@ const char* frag_rssb_version = "2018-08-13T09:00:00"; const char* frag_rssb_version_time = "2018-08-13T09:00:00"; const char* frag_rssb_version_des = "MESA@iie rssb_maskey"; -int FRAG_RSSB_VERSION_1_0_20181211 = 0; -const char* frag_rssb_version_time_in = "2018-12-11"; -const char* frag_rssb_version_des_in = "resp_checkresult_search_media_cb add K_PROJECT"; +int FRAG_RSSB_VERSION_1_0_20181224 = 0; +const char* frag_rssb_version_time_in = "2018-12-24"; +const char* frag_rssb_version_des_in = "send_voip_full_json_log add survey judgement for K"; void frag_rssb_history() { //2015.11.15 v1.0 create the project @@ -227,6 +227,7 @@ void frag_rssb_history() //2018.12.10 v4.0//1.recv_msg_fd not unix 2.MsgPort //2018.12.11 v4.0//1.file mediatype //2018.12.11 v4.0//resp_checkresult_search_media_cb add K_PROJECT,and delete send_json_log + //2018.12.24 v4.0//send_voip_full_json_log add survey judgement for K } frag_rssb_parameter_t g_frag_run; diff --git a/src/message.c b/src/message.c index 05c113b..c2eed5b 100644 --- a/src/message.c +++ b/src/message.c @@ -894,6 +894,26 @@ long resp_checkresult_search_media_cb(void *data, const uint8_t *key, uint size, } /*给前端发建议*/ +#if K_PROJECT + if(check_res->service != SURVER_VOIP_COLLECT_TPYE) + { + for(i=0; iqd_info[i].cap_ip; + if(!ip) + { + continue; + } + inet_ntop(AF_INET, &ip, pbuf, buf_len); + resp_write_to_log(RESP_SEND_BLOCK, check_res, pbuf, mdi, mdi->qd_info[i].mid); + *(uint64_t*)check_res->prog_id = mdi->qd_info[i].mid; + bizman_send(g_frag_run.answer_sapp_bizman, mdi->thread_seq, ip, g_frag_cfg.qd_msg_port, (const char*)buf, buflen, + 1,BIZMAN_RELIABLE_SEND|BIZMAN_SMOOTH_DEST|BIZMAN_PUSH_SEND); + g_frag_stat.stat_info[RESP_CHECKRESULT_BLACKLIST_OUT_BLOCK][TOTAL_PKTS]++; + g_frag_stat.stat_info[RESP_CHECKRESULT_BLACKLIST_OUT_BLOCK][TOTAL_BYTES] += buflen; + } + } +#else for(i=0; iqd_info[i].cap_ip; @@ -908,7 +928,10 @@ long resp_checkresult_search_media_cb(void *data, const uint8_t *key, uint size, 1,BIZMAN_RELIABLE_SEND|BIZMAN_SMOOTH_DEST|BIZMAN_PUSH_SEND); g_frag_stat.stat_info[RESP_CHECKRESULT_BLACKLIST_OUT_BLOCK][TOTAL_PKTS]++; g_frag_stat.stat_info[RESP_CHECKRESULT_BLACKLIST_OUT_BLOCK][TOTAL_BYTES] += buflen; - } + } +#endif + + /*多源情况下,给其他粗拼装的前端发建议*/ for(i=0; i