|
|
|
@ -900,8 +900,8 @@ void set_counter_zone() { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
int g_last_hour_for_counter_mail = -1; |
|
|
|
int g_last_hour_for_counter_mail = -1; |
|
|
|
void run_counter_mail(char * mail_content,int mail_content_size) { |
|
|
|
void run_counter_mail(char * mail_content,int mail_content_size, char* image_buff_base64, int image_buff_size_base64) { |
|
|
|
if (strcmp(SystemSetting.send_counter_at_specific_hour, "NULL") != 0 && strlen(SystemSetting.send_counter_at_specific_hour) >= 1) |
|
|
|
if (strcmp(SystemSetting.send_counter_at_specific_hour, "NULL") != 0 && strlen(SystemSetting.send_counter_at_specific_hour) >= 1 && mail_content_size >= 1) |
|
|
|
{ |
|
|
|
{ |
|
|
|
time_t now_time = g_osdSysTimeStamp; |
|
|
|
time_t now_time = g_osdSysTimeStamp; |
|
|
|
if (now_time < 1000000000) { |
|
|
|
if (now_time < 1000000000) { |
|
|
|
@ -918,10 +918,18 @@ void run_counter_mail(char * mail_content,int mail_content_size) { |
|
|
|
if ((QueueSize(_POST_NOTIFICATION) < MAX_QUEUE_SIZE && QueueSize(_POST_NOTIFICATION) >= 0)) |
|
|
|
if ((QueueSize(_POST_NOTIFICATION) < MAX_QUEUE_SIZE && QueueSize(_POST_NOTIFICATION) >= 0)) |
|
|
|
{ |
|
|
|
{ |
|
|
|
QueueInfo q_info = { 0 }; |
|
|
|
QueueInfo q_info = { 0 }; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (image_buff_size_base64 >= 1) { |
|
|
|
|
|
|
|
memcpy(q_info.image_buff, image_buff_base64, image_buff_size_base64); |
|
|
|
|
|
|
|
q_info.image_buff_size = image_buff_size_base64; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
q_info.image_buff_size = 0; |
|
|
|
q_info.image_buff_size = 0; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
memcpy(q_info.content, mail_content, mail_content_size); |
|
|
|
memcpy(q_info.content, mail_content, mail_content_size); |
|
|
|
q_info.content[mail_content_size] = '\0'; |
|
|
|
q_info.content[mail_content_size] = '\0'; |
|
|
|
|
|
|
|
//printf("\n------q_info.content:%s\n", q_info.content);
|
|
|
|
|
|
|
|
|
|
|
|
strcpy(q_info.post_url, "post_to_mail"); |
|
|
|
strcpy(q_info.post_url, "post_to_mail"); |
|
|
|
|
|
|
|
|
|
|
|
@ -9830,6 +9838,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|name|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
@ -9854,6 +9870,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|confidence|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -9885,6 +9909,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|left_x|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
@ -9915,6 +9947,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|top_y|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
@ -9945,6 +9985,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|width|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
@ -9975,6 +10023,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|height|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
@ -9999,6 +10055,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|center_x|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
@ -10023,6 +10087,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|center_y|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
char msg_center_speed[35] = { 0 }; |
|
|
|
char msg_center_speed[35] = { 0 }; |
|
|
|
@ -10060,6 +10132,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|center_speed|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
@ -10090,6 +10170,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|center_direction|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
@ -10120,6 +10208,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|center_stability|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
@ -10144,6 +10240,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|obj_tracking_id|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
@ -10168,6 +10272,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|obj_dwell_time|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
if (detection_zone_idx >= 0 && trigger_idx >= 0 && pNext != NULL) { |
|
|
|
@ -10192,6 +10304,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|class_id|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#ifdef GY_OS_AMBA |
|
|
|
#ifdef GY_OS_AMBA |
|
|
|
@ -10251,6 +10371,14 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|color|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -10270,6 +10398,15 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
replacement_t = StrReplace(replacement, "<|plate|>", g_last_token_plate); |
|
|
|
replacement_t = StrReplace(replacement, "<|plate|>", g_last_token_plate); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|plate|>", ""); |
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
if (replacement != NULL) { |
|
|
|
free(replacement); |
|
|
|
free(replacement); |
|
|
|
replacement = NULL; |
|
|
|
replacement = NULL; |
|
|
|
@ -10292,6 +10429,15 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
replacement_t = StrReplace(replacement, "<|country|>", g_last_token_country); |
|
|
|
replacement_t = StrReplace(replacement, "<|country|>", g_last_token_country); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|country|>", ""); |
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
if (replacement != NULL) { |
|
|
|
free(replacement); |
|
|
|
free(replacement); |
|
|
|
replacement = NULL; |
|
|
|
replacement = NULL; |
|
|
|
@ -10314,6 +10460,15 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
replacement_t = StrReplace(replacement, "<|area|>", g_last_token_area); |
|
|
|
replacement_t = StrReplace(replacement, "<|area|>", g_last_token_area); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|area|>", ""); |
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
if (replacement != NULL) { |
|
|
|
free(replacement); |
|
|
|
free(replacement); |
|
|
|
replacement = NULL; |
|
|
|
replacement = NULL; |
|
|
|
@ -10336,6 +10491,15 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
replacement_t = StrReplace(replacement, "<|plate_list|>", g_last_token_plate_list); |
|
|
|
replacement_t = StrReplace(replacement, "<|plate_list|>", g_last_token_plate_list); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|plate_list|>", ""); |
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
if (replacement != NULL) { |
|
|
|
free(replacement); |
|
|
|
free(replacement); |
|
|
|
replacement = NULL; |
|
|
|
replacement = NULL; |
|
|
|
@ -10358,6 +10522,15 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
replacement_t = StrReplace(replacement, "<|logo|>", g_last_token_logo); |
|
|
|
replacement_t = StrReplace(replacement, "<|logo|>", g_last_token_logo); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|logo|>", ""); |
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
if (replacement != NULL) { |
|
|
|
free(replacement); |
|
|
|
free(replacement); |
|
|
|
replacement = NULL; |
|
|
|
replacement = NULL; |
|
|
|
@ -10408,6 +10581,15 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
replacement_t = StrReplace(replacement, "<|behavior_id|>", g_last_token_behavior_id); |
|
|
|
replacement_t = StrReplace(replacement, "<|behavior_id|>", g_last_token_behavior_id); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|behavior_id|>", ""); |
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
if (replacement != NULL) { |
|
|
|
free(replacement); |
|
|
|
free(replacement); |
|
|
|
replacement = NULL; |
|
|
|
replacement = NULL; |
|
|
|
@ -10431,6 +10613,15 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
replacement_t = StrReplace(replacement, "<|zone_id|>", g_last_token_zone_id); |
|
|
|
replacement_t = StrReplace(replacement, "<|zone_id|>", g_last_token_zone_id); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|zone_id|>", ""); |
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
if (replacement != NULL) { |
|
|
|
free(replacement); |
|
|
|
free(replacement); |
|
|
|
replacement = NULL; |
|
|
|
replacement = NULL; |
|
|
|
@ -10521,6 +10712,15 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
replacement_t = StrReplace(replacement, "<|behavior_name|>", g_last_token_behavior_name); |
|
|
|
replacement_t = StrReplace(replacement, "<|behavior_name|>", g_last_token_behavior_name); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|behavior_name|>", ""); |
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
if (replacement != NULL) { |
|
|
|
free(replacement); |
|
|
|
free(replacement); |
|
|
|
replacement = NULL; |
|
|
|
replacement = NULL; |
|
|
|
@ -10543,6 +10743,15 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
if (strcmp(SystemSetting.enable_display_OSD, "Yes") == 0 /*&& strcmp(SystemSetting.enable_cloud, "Yes") == 0*/) { |
|
|
|
replacement_t = StrReplace(replacement, "<|linked_plate|>", g_last_token_linked_plate); |
|
|
|
replacement_t = StrReplace(replacement, "<|linked_plate|>", g_last_token_linked_plate); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|linked_plate|>", ""); |
|
|
|
|
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
if (replacement != NULL) { |
|
|
|
free(replacement); |
|
|
|
free(replacement); |
|
|
|
replacement = NULL; |
|
|
|
replacement = NULL; |
|
|
|
@ -10641,7 +10850,38 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
#ifdef GY_OS_V_SERIES |
|
|
|
#ifdef GY_OS_V_SERIES |
|
|
|
|
|
|
|
for (int index_counter = 0; index_counter < MAX_EVENT_COUNTERS; index_counter++) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
char temp_label[30] = { 0 }; |
|
|
|
|
|
|
|
sprintf(temp_label, "<|counter%02d_count|>", index_counter + 1); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, temp_label, ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
char temp_label_dwell[30] = { 0 }; |
|
|
|
|
|
|
|
sprintf(temp_label_dwell, "<|counter%02d_dwell|>", index_counter + 1); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, temp_label_dwell, ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
char temp_label_dwell_unit[50] = { 0 }; |
|
|
|
|
|
|
|
sprintf(temp_label_dwell_unit, "<|counter%02d_dwell_unit|>", index_counter + 1); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, temp_label_dwell_unit, ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
#else |
|
|
|
#else |
|
|
|
for (int index_counter = 0; index_counter < MAX_EVENT_COUNTERS; index_counter++) |
|
|
|
for (int index_counter = 0; index_counter < MAX_EVENT_COUNTERS; index_counter++) |
|
|
|
{ |
|
|
|
{ |
|
|
|
@ -10873,6 +11113,92 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|space_id|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|space_zone|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|space_status|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|space_time_t|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|space_YYYY|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|space_MM|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|space_DD|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|space_GMThh|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|space_hh|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|space_mm|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|space_ss|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|difftime|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (enable_base64_image == 1) { |
|
|
|
if (enable_base64_image == 1) { |
|
|
|
|
|
|
|
|
|
|
|
@ -10911,8 +11237,68 @@ size_t ReplaceKeyWords(detection_pos* pNext, int space_zone,int space_id,char* I |
|
|
|
} |
|
|
|
} |
|
|
|
replacement = replacement_t; |
|
|
|
replacement = replacement_t; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|cropped_size|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|cropped_image|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|cropped_size|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|cropped_image|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else { |
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|snap_size|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|snap_image|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|cropped_size|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
replacement_t = StrReplace(replacement, "<|cropped_image|>", ""); |
|
|
|
|
|
|
|
if (replacement != NULL) { |
|
|
|
|
|
|
|
free(replacement); |
|
|
|
|
|
|
|
replacement = NULL; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
replacement = replacement_t; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
strcpy(OutputString, replacement); |
|
|
|
strcpy(OutputString, replacement); |
|
|
|
if (replacement != NULL) { |
|
|
|
if (replacement != NULL) { |
|
|
|
@ -22740,26 +23126,23 @@ void *start_run_python_thread(void* pythonpath) { |
|
|
|
pthread_detach(pthread_self());
|
|
|
|
pthread_detach(pthread_self());
|
|
|
|
setPthreadName("run_python"); |
|
|
|
setPthreadName("run_python"); |
|
|
|
|
|
|
|
|
|
|
|
while (1) |
|
|
|
while (bHttpServerThreadStart) |
|
|
|
{ |
|
|
|
|
|
|
|
if (AI_fps >= 1)
|
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
// §ì¨ú python ÀÉ®×
|
|
|
|
|
|
|
|
if (strstr(SystemSetting.enable_python_file, ".py") != NULL)
|
|
|
|
|
|
|
|
{ |
|
|
|
{ |
|
|
|
|
|
|
|
if (AI_fps >= 1) { |
|
|
|
|
|
|
|
|
|
|
|
const char *prefix = "lifile_liname="; |
|
|
|
const char *prefix = "lifile_liname="; |
|
|
|
char pythonfile[256] = { 0 }; |
|
|
|
char pythonfile[256] = { 0 }; |
|
|
|
snprintf(pythonfile, sizeof(pythonfile), "%s%s", prefix, SystemSetting.enable_python_file); |
|
|
|
snprintf(pythonfile, sizeof(pythonfile), "%s%s", prefix, SystemSetting.enable_python_file); |
|
|
|
runPython(pythonfile); |
|
|
|
runPython(pythonfile); |
|
|
|
break; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
else |
|
|
|
else |
|
|
|
{ |
|
|
|
{ |
|
|
|
printf("Wait AI_fps..."); |
|
|
|
//printf("Wait AI_fps...");
|
|
|
|
sleep(1); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
usSleep(1000000); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
pthread_exit(NULL); |
|
|
|
pthread_exit(NULL); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -23075,17 +23458,9 @@ void run_server(int argc, char **argv) |
|
|
|
//PNS_Query_Service_Status(returned_msg);
|
|
|
|
//PNS_Query_Service_Status(returned_msg);
|
|
|
|
|
|
|
|
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//**半OK記憶體洩漏
|
|
|
|
//**半OK記憶體洩漏
|
|
|
|
//output.log 138,240byte ->產生330個記憶體洩漏 output.log增長幅度顯著變比較慢
|
|
|
|
//output.log 138,240byte ->產生330個記憶體洩漏 output.log增長幅度顯著變比較慢
|
|
|
|
//get_current_events_json_data 會記憶體洩漏,但是不常進去。
|
|
|
|
//get_current_events_json_data 會記憶體洩漏,但是不常進去。
|
|
|
|
g_IsPTZDevice = 0; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
//init CGI CMD time
|
|
|
|
//init CGI CMD time
|
|
|
|
@ -25973,14 +26348,8 @@ void run_server(int argc, char **argv) |
|
|
|
} |
|
|
|
} |
|
|
|
if (enable_python_file) |
|
|
|
if (enable_python_file) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (strstr(enable_python_file->valuestring, ".py") ==
|
|
|
|
|
|
|
|
enable_python_file->valuestring + strlen(enable_python_file->valuestring) - 3) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
strcpy(SystemSetting.enable_python_file, enable_python_file->valuestring); |
|
|
|
strcpy(SystemSetting.enable_python_file, enable_python_file->valuestring); |
|
|
|
pthread_create(&runpython_thread, NULL, start_run_python_thread, (void*)configPATH); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
printf("File is not a Python file.\n"); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
else { |
|
|
|
else { |
|
|
|
strcpy(SystemSetting.enable_python_file, "No python running."); |
|
|
|
strcpy(SystemSetting.enable_python_file, "No python running."); |
|
|
|
|