// Copyright 2020 Fuzhou Rockchip Electronics Co., Ltd. All rights reserved.
|
// Use of this source code is governed by a BSD-style license that can be
|
// found in the LICENSE file.
|
|
#ifndef __DBSERVER_H
|
#define __DBSERVER_H
|
|
#ifdef __cplusplus
|
extern "C" {
|
#endif
|
|
#define DBSERVER "rockchip.dbserver"
|
#define DBSERVER_PATH "/"
|
|
#define DBSERVER_NET_INTERFACE DBSERVER ".net"
|
#define DBSERVER_STORAGE_INTERFACE DBSERVER ".storage"
|
#define DBSERVER_MEDIA_INTERFACE DBSERVER ".media"
|
#define DBSERVER_SYSTEM_INTERFACE DBSERVER ".system"
|
#define DBSERVER_EVENT_INTERFACE DBSERVER ".event"
|
#define DBSERVER_PERIPHERALS_INTERFACE DBSERVER ".peripherals"
|
|
#define DS_SIGNAL_DATACHANGED "DataChanged"
|
|
/* network */
|
#define TABLE_NETWORK_IP "NetworkIP"
|
#define TABLE_NETWORK_SERVICE "NetworkService"
|
#define TABLE_NETWORK_POWER "NetworkPower"
|
#define TABLE_NTP "ntp"
|
#define TABLE_ZONE "zone"
|
#define TABLE_PORT "port"
|
|
/* storage */
|
#define TABLE_STORAGE_DISK_PATH "StorageDiskPath"
|
#define TABLE_STORAGE_MEDIA_FOLDER "StorageMediaFolder"
|
#define TABLE_STORAGE_CONFIG "StorageConfig"
|
#define TABLE_STORAGE_PLAN_SNAP "StoragePlanSnap"
|
#define TABLE_STORAGE_ADVANCE_PARA "StorageAdvancePara"
|
|
/* media */
|
#define TABLE_VIDEO "video"
|
#define TABLE_VIDEO_ADVANCED_ENC "video_advanced_enc"
|
#define TABLE_VIDEO_REGION_CLIP "video_region_clip"
|
#define TABLE_AUDIO "audio"
|
#define TABLE_STREAM_URL "stream_url"
|
|
#define TABLE_IMAGE_SCENARIO "image_scenario"
|
#define TABLE_IMAGE_ADJUSTMENT "image_adjustment"
|
#define TABLE_IMAGE_EXPOSURE "image_exposure"
|
#define TABLE_IMAGE_NIGHT_TO_DAY "image_night_to_day"
|
#define TABLE_IMAGE_BLC "image_blc"
|
#define TABLE_IMAGE_WHITE_BLANCE "image_white_blance"
|
#define TABLE_IMAGE_ENHANCEMENT "image_enhancement"
|
#define TABLE_IMAGE_VIDEO_ADJUSTMEN "image_video_adjustment"
|
|
#define TABLE_NORMALIZED_SCREEN_SIZE "normalized_screen_size"
|
#define TABLE_OSD "osd"
|
#define TABLE_ROI "roi"
|
#define TABLE_MOVE_DETECTION "MoveDetection"
|
#define TABLE_REGIONAL_INVASION "RegionalInvasion"
|
#define TABLE_PROFILE "profile"
|
#define TABLE_METADATA "metadata"
|
#define TABLE_VIDEO_SOURCE "video_source"
|
#define TABLE_VIDEO_SOURCE_CONFIGURATION "video_source_configuration"
|
|
/* system */
|
#define TABLE_SYSTEM_DEVICE_INFO "SystemDeviceInfo"
|
#define TABLE_SYSTEM_PARA "SystemPara"
|
#define TABLE_SYSTEM_USER "SystemUser"
|
#define TABLE_SYSTEM_DISCOVERY "SystemDiscovery"
|
#define TABLE_SYSTEM_SCOPES "SystemScopes"
|
|
/* event */
|
#define TABLE_EVENT_TRIGGERS "EventTriggers"
|
#define TABLE_EVENT_SCHEDULES "EventSchedules"
|
#define TABLE_SMART_COVER "SmartCover"
|
#define TABLE_SMART_COVER_OVERLAY "SmartCoverOverlay"
|
|
#define TABLE_FACE_CONFIG "FaceConfig"
|
#define TABLE_FACE_LIST "FaceList"
|
#define TABLE_FACE_SNAPSHOT_RECORD "FaceSnapshotRecord"
|
#define TABLE_FACE_CONTROL_RECORD "FaceControlRecord"
|
|
/* peripherals */
|
#define TABLE_PERIPHERALS_RELAY "PeripheralsRelay"
|
#define TABLE_PERIPHERALS_WEIGEN "PeripheralsWeigen"
|
#define TABLE_PERIPHERALS_FILL_LIGHT "PeripheralsFillLight"
|
|
#define TYPE_VIDEO 0
|
#define TYPE_PHOTO 1
|
#define TYPE_BLACK_LIST 2
|
#define TYPE_SNAPSHOT 3
|
#define TYPE_WHITE_LIST 4
|
#define MAX_OSD_NUM 15
|
|
struct period
|
{
|
int start_minute;
|
int end_minute;
|
char type[20];
|
};
|
|
struct day
|
{
|
struct period day_period[8];
|
};
|
|
struct week
|
{
|
struct day week_day[7];
|
};
|
|
struct DynamicLocation
|
{
|
char *cap_name;
|
char *dynamic_key;
|
char *dynamic_val;
|
char *target_key;
|
};
|
|
struct StaticLocation
|
{
|
char *cap_name;
|
char *target_key;
|
};
|
|
struct RangeJsonPara
|
{
|
int min;
|
int max;
|
int step;
|
};
|
|
/* storage */
|
char *dbserver_update_storage_media_folder_duty(int camid, int type, int duty, int maxnum);
|
char *dbserver_update_storage_config_mountpath(char *path);
|
char *dbserver_update_storage_config_freesize(int freesize);
|
char *dbserver_get_storage_disk_path(char *mountpath);
|
char *dbserver_get_storage_media_folder(void);
|
char *dbserver_get_storage_config(void);
|
char *dbserver_get_storage_plan_snap(int id);
|
char *dbserver_set_storage_plan_snap(char *json, int id);
|
void dbserver_storage_snap_plan_parse(int type_id, int *ebaled, int *quality, int *interval, int *num);
|
void dbserver_storage_video_plan_parse(int *enbaled);
|
char *dbserver_storage_get(char *table);
|
char *dbserver_storage_set(char *table, char *json, int id);
|
char *dbserver_storage_disk_path_get_by_name(char *name);
|
char *dbserver_storage_disk_path_set_by_name(char *name, char *mountpath);
|
|
/* network */
|
char *dbserver_network_power_get(char *type);
|
char *dbserver_network_ipv4_set(char *interface, char *Method, char *Address, char *Netmask, char *Gateway);
|
char *dbserver_network_dns_set(char *interface, char *dns1, char *dns2);
|
char *dbserver_network_nicspeed_set(char *interface, char *nicspeed);
|
char *dbserver_network_ip_get(char *interface);
|
char *dbserver_network_service_delete(char *service);
|
char *dbserver_network_service_connect_set(char *service, char *password, int *favorite, int *autoconnect);
|
char *dbserver_network_service_get(char *service);
|
char *dbserver_network_power_set(char *type, int power);
|
char *dbserver_wifi_power_set(int power);
|
char *dbserver_ethernet_power_set(int power);
|
char *dbserver_wifi_power_get(void);
|
char *dbserver_ethernet_power_get(void);
|
char *dbserver_ntp_set(char *servers, char *timezone, char *timezonefile, char *timezonefiledst, int *autodst, int *automode, int *time);
|
char *dbserver_ntp_get(void);
|
char *dbserver_zone_get(void);
|
char *dbserver_port_set(char *json, int id);
|
char *dbserver_port_get(void);
|
|
/* media */
|
char *dbserver_media_set(char *table, char *json, int id);
|
char *dbserver_media_set_by_token(char *table, char *json, char *token);
|
void dbserver_media_del_by_token(char *table, char *token);
|
char *dbserver_media_get(char *table);
|
char *dbserver_media_get_by_id(char *table, int id);
|
char *dbserver_osd_get(void);
|
char *dbserver_audio_set(char *json);
|
char *dbserver_audio_get(void);
|
char *dbserver_video_set(char *json, char *stream_type);
|
char *dbserver_video_get(void);
|
char *dbserver_video_region_clip_set(char *json, int id);
|
char *dbserver_video_region_clip_get(void);
|
char *dbserver_stream_url_set(char *json, int id);
|
char *dbserver_stream_url_get(void);
|
char *dbserver_media_profile_get(char *token);
|
char *dbserver_media_get_by_key_char(char *table, char *key_word, char *val);
|
char *dbserver_video_source_cfg_get(char *token);
|
char *dbserver_video_source_get(char *token);
|
char *dbserver_video_enc_cfg_get(char *token);
|
|
/* system */
|
char *dbserver_system_set(char *table, char *json, int id);
|
char *dbserver_system_get(char *table);
|
char *dbserver_system_get_by_key_char(char *table, char *key_word, char *val);
|
char *dbserver_system_para_get_by_name(char *para_name);
|
char *dbserver_system_para_set_by_name(char *para_name, char *para);
|
void dbserver_set_static_cap_option(struct StaticLocation location, char *options);
|
void dbserver_set_dynamic_cap_option(struct DynamicLocation location, char *options);
|
void dbserver_set_static_cap_range(struct StaticLocation location, struct RangeJsonPara range);
|
void dbserver_set_dynamic_cap_range(struct DynamicLocation location, struct RangeJsonPara range);
|
|
void dbserver_system_user_delete(int id);
|
char *dbserver_system_user_add(char *username, char *password, int *authlevel, int *userlevel, int *fixed);
|
char *dbserver_system_user_del_username(char *username);
|
char *dbserver_system_user_set(char *username, char *password, int *authlevel, int *userlevel);
|
char *dbserver_system_user_get(char *username, char *password, int *authlevel, int *userlevel);
|
int dbserver_system_user_num_get(char *username, char *password, int *authlevel, int *userlevel);
|
void dbserver_scopes_add(char *scopesItem);
|
void dbserver_system_del_by_key_char(char *table, char *key_word, char* key_content);
|
void dbserver_system_del_by_key_int(char *table, char *key_word, int key_content);
|
|
/* event */
|
char *dbserver_event_set(char *table, char *json, int id);
|
char *dbserver_event_set_by_char_key(char *table, char *json, char* key_name, char* key_content);
|
char *dbserver_event_get(char *table);
|
char *dbserver_event_get_by_id(char *table, int id);
|
char *dbserver_event_get_by_key_int(char *table, char *key_word, int val);
|
char *dbserver_event_get_by_key_char(char *table, char *key_word, char *val);
|
void dbserver_event_delete_by_key_int(char *table, char *key_word, int val);
|
void dbserver_event_delete_by_key_char(char *table, char *key_word, char *val);
|
|
void dbserver_face_list_add(int id, char *path, char *name, char *type);
|
void dbserver_face_load_complete(int id, int flag);
|
void dbserver_face_load_complete_by_path(char* path, int flag, int face_db_id);
|
char *dbserver_face_list_delete(int id);
|
void dbserver_snapshot_record_set(char *path);
|
void dbserver_face_reset(char *table);
|
void dbserver_control_record_set(int face_id, char *path, char *status, char *similarity);
|
void dbserver_event_schedules_parse(struct week *schedule, int type_id);
|
void dbserver_event_triggers_parse(int id, int *record_ebaled);
|
|
/* peripherals */
|
char *dbserver_peripherals_set(char *table, char *json, int id);
|
char *dbserver_peripherals_get(char *table);
|
|
/* basic */
|
char *dbserver_select(char *json, char *interface);
|
char *dbserver_update(char *json, char *interface);
|
char *dbserver_delete(char *json, char *interface);
|
char *dbserver_sql(char *sql, char *interface);
|
char *dbserver_drop_table(char *table, char *interface);
|
char *dbserver_create_table(char *table, char *col, char *interface);
|
int dbserver_reset_face_table(char *table);
|
|
void dbserver_free(char *ret_str);
|
#ifdef __cplusplus
|
}
|
#endif
|
|
#endif
|