diff options
| author | lishu <[email protected]> | 2019-01-28 14:44:15 +0800 |
|---|---|---|
| committer | lishu <[email protected]> | 2019-01-28 14:44:15 +0800 |
| commit | ca9b37c928e1d71576dc73eb18a03d6fab5477a5 (patch) | |
| tree | 7b889380dbb74874053ac584cdb945914bf26ead | |
| parent | 48379bddd3b967657cc410294aee8058c3c3e2a9 (diff) | |
| parent | 0059d5e31a6091316419795cb48880c21dfc71d5 (diff) | |
支持youtube
| -rw-r--r-- | src/AV_interface.h | 4 | ||||
| -rw-r--r-- | src/frag_voip.c | 65 | ||||
| -rw-r--r-- | src/main.c | 3 | ||||
| -rw-r--r-- | src/message.c | 25 | ||||
| -rw-r--r-- | src/tool/sendsurvey_k/readme.md | 18 |
5 files changed, 62 insertions, 53 deletions
diff --git a/src/AV_interface.h b/src/AV_interface.h index 74bd8f6..201d23f 100644 --- a/src/AV_interface.h +++ b/src/AV_interface.h @@ -36,7 +36,7 @@ #define FILE_IOS 0xA3 #define FILE_ANDRIOD 0xA4 #define FILE_APP 0xA5 -#define FILE_REQ_FRAG 0xA6 /*��ƬԤ��ʶ���,����url�������ƫ�����ģ�����iqiyi*/ +#define FILE_REQ_FRAG 0xA6 /*��ƬԤ��ʶ���,����url�������ƫ�����ģ�����iqiyi*/ #define FILE_MAYBE_FRAG 0xA7 /*ǰ�˻ش��Ŀ�������Ƭ������Ƶ*/ #define FILE_AV 0x00 /*��ƬԤ��ʶ���ý������ת��Ϊ0x00*/ @@ -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) - { - 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* 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) { - 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); @@ -226,7 +226,8 @@ void frag_rssb_history() //2018.12.07 v4.0//unixsocket set bufsize timeout in configure //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.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 //2019.01.21 v4.0//support youtube; update req_frag and template } 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; i<QD_MAXNUM; i++)
+ {
+ ip = mdi->qd_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; i<QD_MAXNUM; i++)
{
ip = mdi->qd_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<QD_MAXNUM; i++)
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项目的接口,使用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 |
