From 9f5b9db2c8cdbcf74bd2eecefc3557d4048b8d4c Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期三, 28 八月 2024 17:54:51 +0800
Subject: [PATCH] 打通大华OSD

---
 ycl-server/src/main/java/com/ycl/api/DH/common/CaseMenu.java    |   30 
 ycl-server/src/main/java/com/ycl/api/DH/common/Base64.java      |    4 
 ycl-server/src/main/java/com/ycl/api/DH/common/LoginPanel.java  |    4 
 ycl-server/src/main/resources/res_en_US.properties              | 1076 ++++++++++++++
 ycl-server/src/main/resources/dynamic-lib-load.xml              |    9 
 ycl-server/res/res_zh_CN.properties                             | 1079 ++++++++++++++
 ycl-server/src/main/java/com/ycl/api/DH/common/BorderEx.java    |    4 
 ycl-server/src/main/java/com/ycl/api/HK/HKApi.java              |   26 
 ycl-server/src/main/java/com/ycl/api/DH/frame/RealplayEx.java   |    2 
 ycl-server/src/main/java/com/ycl/api/DH/module/LoginModule.java |   29 
 ycl-server/src/main/resources/res_zh_CN.properties              | 1079 ++++++++++++++
 ycl-server/res/dynamic-lib-load.xml                             |   42 
 ycl-server/src/main/java/com/ycl/api/DH/common/PaintPanel.java  |   12 
 ycl-server/src/main/java/com/ycl/task/OsdTask.java              |    7 
 ycl-server/src/main/java/com/ycl/api/DH/lib/ToolKits.java       |    4 
 ycl-server/res/res_en_US.properties                             | 1076 ++++++++++++++
 ycl-server/src/main/java/com/ycl/api/DH/common/ErrorCode.java   |    5 
 ycl-server/src/main/java/com/ycl/api/DH/common/Res.java         |    2 
 18 files changed, 4,426 insertions(+), 64 deletions(-)

diff --git a/ycl-server/res/dynamic-lib-load.xml b/ycl-server/res/dynamic-lib-load.xml
new file mode 100644
index 0000000..4cc688c
--- /dev/null
+++ b/ycl-server/res/dynamic-lib-load.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<dynamic-lib>
+    <win64>
+        <lib>avnetsdk</lib>
+        <lib>dhconfigsdk</lib>
+        <lib>dhnetsdk</lib>
+        <lib>dhplay</lib>
+        <lib>RenderEngine</lib>
+        <lib>ImageAlg</lib>
+        <lib>Infra</lib>
+        <lib>IvsDrawer</lib>
+        <lib>StreamConvertor</lib>
+    </win64>
+    <win32>
+        <lib>avnetsdk</lib>
+        <lib>dhconfigsdk</lib>
+        <lib>dhnetsdk</lib>
+        <lib>dhplay</lib>
+        <lib>RenderEngine</lib>
+        <lib>Infra</lib>
+        <lib>ImageAlg</lib>
+        <lib>StreamConvertor</lib>
+    </win32>
+    <linux64>
+        <lib>avnetsdk</lib>
+        <lib>dhnetsdk</lib>
+        <lib>dhconfigsdk</lib>
+        <lib>StreamConvertor</lib>
+		<lib>ImageAlg</lib>
+    </linux64>
+    <linux32>
+        <lib>avnetsdk</lib>
+        <lib>dhconfigsdk</lib>
+        <lib>dhnetsdk</lib>
+    </linux32>
+    <mac64>
+        <lib>avnetsdk</lib>
+        <lib>dhnetsdk</lib>
+        <lib>dhconfigsdk</lib>
+        <lib>StreamConvertor</lib>
+    </mac64>
+</dynamic-lib>
diff --git a/ycl-server/res/res_en_US.properties b/ycl-server/res/res_en_US.properties
new file mode 100644
index 0000000..caab389
--- /dev/null
+++ b/ycl-server/res/res_en_US.properties
@@ -0,0 +1,1076 @@
+# FunctionList
+FUNCTIONLIST=FunctionList
+REALPLAY=RealPlay
+CAPTURE_PICTURE=Capture Picture
+MULTIREALPLAY=MultiRealPlay
+DOWNLOAD_RECORD=Download Record
+ITS_EVENT=TrafficEvent
+TALK=Talk
+DEVICESEARCH_DEVICEINIT=DeviceSearchAndInit
+PTZ=PTZ Control
+TARGETRECOGNITION=TargetRecognition
+ALARM_LISTEN=Alarm Listen
+DEVICE_CONTROL=Device Control
+AUTOREGISTER=AutoRegister
+REMOTE_OPEN_DOOR=Remote Open Door
+
+ONLINE=Online
+
+# Login Info
+DEVICE_IP=Device IP
+DEVICE_PORT=Port
+USERNAME=UserName
+PASSWORD=Password
+IP=IP
+
+LOGIN=Login
+LOGOUT=Logout
+
+LOGIN_SUCCEED=Login Succeed
+LOGIN_FAILED=Login Failed
+DISCONNECT=Device disconnect
+DISCONNECT_RECONNECTING=Device disconnect, reconnecting
+PROMPT_MESSAGE=Prompt Message
+ERROR_MESSAGE=Error Message
+
+SUCCEED=Succeed
+FAILED=Failed
+
+PLEASE_INPUT_DEVICE_IP=Please input device IP
+PLEASE_INPUT_DEVICE_PORT=Please input device port
+PLEASE_INPUT_DEVICE_USERNAME=Please input userName
+PLEASE_INPUT_DEVICE_PASSWORD=Please input password
+PLEASE_INPUT_CONFIRM_PASSWORD=Please input confirm password
+
+# Error Info
+NET_NOERROR=No error 
+NET_ERROR=Unknown error
+NET_SYSTEM_ERROR=System error
+NET_NETWORK_ERROR=Protocol error it may result from network timeout
+NET_DEV_VER_NOMATCH=Device protocol does not match 
+NET_INVALID_HANDLE=Handle is invalid
+NET_OPEN_CHANNEL_ERROR=Failed to open channel 
+NET_CLOSE_CHANNEL_ERROR=Failed to close channel 
+NET_ILLEGAL_PARAM=User parameter is illegal 
+NET_SDK_INIT_ERROR=SDK initialization error 
+NET_SDK_UNINIT_ERROR=SDK clear error 
+NET_RENDER_OPEN_ERROR=Error occurs when apply for render resources
+NET_DEC_OPEN_ERROR=Error occurs when opening the decoder library 
+NET_DEC_CLOSE_ERROR=Error occurs when closing the decoder library 
+NET_MULTIPLAY_NOCHANNEL=The detected channel number is 0 in multiple-channel preview 
+NET_TALK_INIT_ERROR=Failed to initialize record library 
+NET_TALK_NOT_INIT=The record library has not been initialized
+NET_TALK_SENDDATA_ERROR=Error occurs when sending out audio data 
+NET_REAL_ALREADY_SAVING=The real-time has been protected
+NET_NOT_SAVING=The real-time data has not been save
+NET_OPEN_FILE_ERROR=Error occurs when opening the file
+NET_PTZ_SET_TIMER_ERROR=Failed to enable PTZ to control timer
+NET_RETURN_DATA_ERROR=Error occurs when verify returned data
+NET_INSUFFICIENT_BUFFER=There is no sufficient buffer
+NET_NOT_SUPPORTED=The current SDK does not support this funcntion
+NET_NO_RECORD_FOUND=There is no searched result
+NET_NOT_AUTHORIZED=You have no operation right
+NET_NOT_NOW=Can not operate right now 
+NET_NO_TALK_CHANNEL=There is no audio talk channel
+NET_NO_AUDIO=There is no audio
+NET_NO_INIT=The network SDK has not been initialized
+NET_DOWNLOAD_END=The download completed
+NET_EMPTY_LIST=There is no searched result
+NET_ERROR_GETCFG_SYSATTR=Failed to get system property setup
+NET_ERROR_GETCFG_SERIAL=Failed to get SN
+NET_ERROR_GETCFG_GENERAL=Failed to get general property
+NET_ERROR_GETCFG_DSPCAP=Failed to get DSP capacity description
+NET_ERROR_GETCFG_NETCFG=Failed to get network channel setup
+NET_ERROR_GETCFG_CHANNAME=Failed to get channel name
+NET_ERROR_GETCFG_VIDEO=Failed to get video property
+NET_ERROR_GETCFG_RECORD=Failed to get record setup
+NET_ERROR_GETCFG_PRONAME=Failed to get decoder protocol name 
+NET_ERROR_GETCFG_FUNCNAME=Failed to get 232 COM function name
+NET_ERROR_GETCFG_485DECODER=Failed to get decoder property
+NET_ERROR_GETCFG_232COM=Failed to get 232 COM setup
+NET_ERROR_GETCFG_ALARMIN=Failed to get external alarm input setup
+NET_ERROR_GETCFG_ALARMDET=Failed to get motion detection alarm
+NET_ERROR_GETCFG_SYSTIME=Failed to get device time
+NET_ERROR_GETCFG_PREVIEW=Failed to get preview parameter
+NET_ERROR_GETCFG_AUTOMT=Failed to get audio maintenance setup
+NET_ERROR_GETCFG_VIDEOMTRX=Failed to get video matrix setup
+NET_ERROR_GETCFG_COVER=Failed to get privacy mask zone setup
+NET_ERROR_GETCFG_WATERMAKE=Failed to get video watermark setup
+NET_ERROR_GETCFG_MULTICAST=Failed to get config, omulticast port by channel
+NET_ERROR_SETCFG_GENERAL=Failed to modify general property
+NET_ERROR_SETCFG_NETCFG=Failed to modify channel setup
+NET_ERROR_SETCFG_CHANNAME=Failed to modify channel name
+NET_ERROR_SETCFG_VIDEO=Failed to modify video channel 
+NET_ERROR_SETCFG_RECORD=Failed to modify record setup 
+NET_ERROR_SETCFG_485DECODER=Failed to modify decoder property 
+NET_ERROR_SETCFG_232COM=Failed to modify 232 COM setup 
+NET_ERROR_SETCFG_ALARMIN=Failed to modify external input alarm setup
+NET_ERROR_SETCFG_ALARMDET=Failed to modify motion detection alarm setup 
+NET_ERROR_SETCFG_SYSTIME=Failed to modify device time 
+NET_ERROR_SETCFG_PREVIEW=Failed to modify preview parameter
+NET_ERROR_SETCFG_AUTOMT=Failed to modify auto maintenance setup 
+NET_ERROR_SETCFG_VIDEOMTRX=Failed to modify video matrix setup 
+NET_ERROR_SETCFG_COVER=Failed to modify privacy mask zone
+NET_ERROR_SETCFG_WATERMAKE=Failed to modify video watermark setup 
+NET_ERROR_SETCFG_WLAN=Failed to modify wireless network information 
+NET_ERROR_SETCFG_WLANDEV=Failed to select wireless network device
+NET_ERROR_SETCFG_REGISTER=Failed to modify the actively registration parameter setup
+NET_ERROR_SETCFG_CAMERA=Failed to modify camera property
+NET_ERROR_SETCFG_INFRARED=Failed to modify IR alarm setup
+NET_ERROR_SETCFG_SOUNDALARM=Failed to modify audio alarm setup
+NET_ERROR_SETCFG_STORAGE=Failed to modify storage position setup
+NET_AUDIOENCODE_NOTINIT=The audio encode port has not been successfully initialized 
+NET_DATA_TOOLONGH=The data are too long
+NET_UNSUPPORTED=The device does not support current operation 
+NET_DEVICE_BUSY=Device resources is not sufficient
+NET_SERVER_STARTED=The server has boot up 
+NET_SERVER_STOPPED=The server has not fully boot up 
+NET_LISTER_INCORRECT_SERIAL=Input serial number is not correct
+NET_QUERY_DISKINFO_FAILED=Failed to get HDD information
+NET_ERROR_GETCFG_SESSION=Failed to get connect session information
+NET_USER_FLASEPWD_TRYTIME=The password you typed is incorrect You have exceeded the maximum number of retries
+NET_LOGIN_ERROR_PASSWORD=Password is not correct
+NET_LOGIN_ERROR_USER=The account does not exist
+NET_LOGIN_ERROR_TIMEOUT=Time out for log in returned value
+NET_LOGIN_ERROR_RELOGGIN=The account has logged in 
+NET_LOGIN_ERROR_LOCKED=The account has been locked
+NET_LOGIN_ERROR_BLACKLIST=The account has been in the block list
+NET_LOGIN_ERROR_BUSY=Resources are not sufficient System is busy now
+NET_LOGIN_ERROR_CONNECT=Time out Please check network and try again
+NET_LOGIN_ERROR_NETWORK=Network connection failed
+NET_LOGIN_ERROR_SUBCONNECT=Successfully logged in the device but can not create video channel Please check network connection
+NET_LOGIN_ERROR_MAXCONNECT=Exceed the max connect number
+NET_LOGIN_ERROR_PROTOCOL3_ONLY=Only support 3 protocol
+NET_LOGIN_ERROR_UKEY_LOST=There is no USB or USB info error
+NET_LOGIN_ERROR_NO_AUTHORIZED=Client-end IP address has no right to login
+NET_LOGIN_ERROR_USER_OR_PASSOWRD=user or password error 
+NET_LOGIN_ERROR_DEVICE_NOT_INIT=cannot login because the device has not been init,please init the device and then login
+NET_RENDER_SOUND_ON_ERROR=Error occurs when Render library open audio
+NET_RENDER_SOUND_OFF_ERROR=Error occurs when Render library close audio 
+NET_RENDER_SET_VOLUME_ERROR=Error occurs when Render library control volume
+NET_RENDER_ADJUST_ERROR=Error occurs when Render library set video parameter
+NET_RENDER_PAUSE_ERROR=Error occurs when Render library pause play
+NET_RENDER_SNAP_ERROR=Render library snapshot error
+NET_RENDER_STEP_ERROR=Render library stepper error
+NET_RENDER_FRAMERATE_ERROR=Error occurs when Render library set frame rate
+NET_RENDER_DISPLAYREGION_ERROR=Error occurs when Render lib setting show region
+NET_RENDER_GETOSDTIME_ERROR=An error occurred when Render library getting current play time
+NET_GROUP_EXIST=Group name has been existed
+NET_GROUP_NOEXIST=The group name does not exist 
+NET_GROUP_RIGHTOVER=The group right exceeds the right list!
+NET_GROUP_HAVEUSER=The group can not be removed since there is user in it!
+NET_GROUP_RIGHTUSE=The user has used one of the group right It can not be removed 
+NET_GROUP_SAMENAME=New group name has been existed
+NET_USER_EXIST=The user name has been existed
+NET_USER_NOEXIST=The account does not exist
+NET_USER_RIGHTOVER=User right exceeds the group right 
+NET_USER_PWD=Reserved account It does not allow to be modified
+NET_USER_FLASEPWD=password is not correct
+NET_USER_NOMATCHING=Password is invalid
+NET_USER_INUSE=account in use
+NET_ERROR_GETCFG_ETHERNET=Failed to get network card setup
+NET_ERROR_GETCFG_WLAN=Failed to get wireless network information
+NET_ERROR_GETCFG_WLANDEV=Failed to get wireless network device
+NET_ERROR_GETCFG_REGISTER=Failed to get actively registration parameter
+NET_ERROR_GETCFG_CAMERA=Failed to get camera property 
+NET_ERROR_GETCFG_INFRARED=Failed to get IR alarm setup
+NET_ERROR_GETCFG_SOUNDALARM=Failed to get audio alarm setup
+NET_ERROR_GETCFG_STORAGE=Failed to get storage position 
+NET_ERROR_GETCFG_MAIL=Failed to get mail setup
+NET_CONFIG_DEVBUSY=Can not set right now 
+NET_CONFIG_DATAILLEGAL=The configuration setup data are illegal
+NET_ERROR_GETCFG_DST=Failed to get DST setup
+NET_ERROR_SETCFG_DST=Failed to set DST 
+NET_ERROR_GETCFG_VIDEO_OSD=Failed to get video OSD setup
+NET_ERROR_SETCFG_VIDEO_OSD=Failed to set video OSD 
+NET_ERROR_GETCFG_GPRSCDMA=Failed to get CDMA\GPRS configuration
+NET_ERROR_SETCFG_GPRSCDMA=Failed to set CDMA\GPRS configuration
+NET_ERROR_GETCFG_IPFILTER= Failed to get IP Filter configuration
+NET_ERROR_SETCFG_IPFILTER=Failed to set IP Filter configuration
+NET_ERROR_GETCFG_TALKENCODE=Failed to get Talk Encode configuration
+NET_ERROR_SETCFG_TALKENCODE=Failed to set Talk Encode configuration
+NET_ERROR_GETCFG_RECORDLEN=Failed to get The length of the video package configuration
+NET_ERROR_SETCFG_RECORDLEN=Failed to set The length of the video package configuration
+NET_DONT_SUPPORT_SUBAREA=Not support Network hard disk partition
+NET_ERROR_GET_AUTOREGSERVER=Failed to get the register server information
+NET_ERROR_CONTROL_AUTOREGISTER=Failed to control actively registration
+NET_ERROR_DISCONNECT_AUTOREGISTER=Failed to disconnect actively registration
+NET_ERROR_GETCFG_MMS=Failed to get mms configuration
+NET_ERROR_SETCFG_MMS=Failed to set mms configuration
+NET_ERROR_GETCFG_SMSACTIVATION=Failed to get SMS configuration
+NET_ERROR_SETCFG_SMSACTIVATION=Failed to set SMS configuration
+NET_ERROR_GETCFG_DIALINACTIVATION=Failed to get activation of a wireless connection
+NET_ERROR_SETCFG_DIALINACTIVATION=Failed to set activation of a wireless connection
+NET_ERROR_GETCFG_VIDEOOUT=Failed to get the parameter of video output
+NET_ERROR_SETCFG_VIDEOOUT=Failed to set the configuration of video output
+NET_ERROR_GETCFG_OSDENABLE=Failed to get osd overlay enabling
+NET_ERROR_SETCFG_OSDENABLE=Failed to set OSD overlay enabling
+NET_ERROR_SETCFG_ENCODERINFO=Failed to set digital input configuration of front encoders
+NET_ERROR_GETCFG_TVADJUST=Failed to get TV adjust configuration
+NET_ERROR_SETCFG_TVADJUST=Failed to set TV adjust configuration
+NET_ERROR_CONNECT_FAILED=Failed to request to establish a connection
+NET_ERROR_SETCFG_BURNFILE=Failed to request to upload burn files
+NET_ERROR_SNIFFER_GETCFG=Failed to get capture configuration information
+NET_ERROR_SNIFFER_SETCFG=Failed to set capture configuration information
+NET_ERROR_DOWNLOADRATE_GETCFG=Failed to get download restrictions information
+NET_ERROR_DOWNLOADRATE_SETCFG=Failed to set download restrictions information
+NET_ERROR_SEARCH_TRANSCOM=Failed to query serial port parameters
+NET_ERROR_GETCFG_POINT=Failed to get the preset info
+NET_ERROR_SETCFG_POINT=Failed to set the preset info
+NET_SDK_LOGOUT_ERROR=SDK log out the device abnormally
+NET_ERROR_GET_VEHICLE_CFG=Failed to get vehicle configuration
+NET_ERROR_SET_VEHICLE_CFG=Failed to set vehicle configuration
+NET_ERROR_GET_ATM_OVERLAY_CFG=Failed to get ATM overlay configuration
+NET_ERROR_SET_ATM_OVERLAY_CFG=Failed to set ATM overlay configuration
+NET_ERROR_GET_ATM_OVERLAY_ABILITY=Failed to get ATM overlay ability
+NET_ERROR_GET_DECODER_TOUR_CFG=Failed to get decoder tour configuration
+NET_ERROR_SET_DECODER_TOUR_CFG=Failed to set decoder tour configuration
+NET_ERROR_CTRL_DECODER_TOUR=Failed to control decoder tour
+NET_GROUP_OVERSUPPORTNUM=Beyond the device supports for the largest number of user groups
+NET_USER_OVERSUPPORTNUM=Beyond the device supports for the largest number of users 
+NET_ERROR_GET_SIP_CFG=Failed to get SIP configuration
+NET_ERROR_SET_SIP_CFG=Failed to set SIP configuration
+NET_ERROR_GET_SIP_ABILITY=Failed to get SIP capability
+NET_ERROR_GET_WIFI_AP_CFG=Failed to get "WIFI ap' configuration 
+NET_ERROR_SET_WIFI_AP_CFG=Failed to set "WIFI ap" configuration  
+NET_ERROR_GET_DECODE_POLICY=Failed to get decode policy 
+NET_ERROR_SET_DECODE_POLICY=Failed to set decode policy 
+NET_ERROR_TALK_REJECT=refuse talk
+NET_ERROR_TALK_OPENED=talk has opened by other client
+NET_ERROR_TALK_RESOURCE_CONFLICIT=resource conflict
+NET_ERROR_TALK_UNSUPPORTED_ENCODE=unsupported encode type
+NET_ERROR_TALK_RIGHTLESS=no right
+NET_ERROR_TALK_FAILED=request failed
+NET_ERROR_GET_MACHINE_CFG=Failed to get device relative config
+NET_ERROR_SET_MACHINE_CFG=Failed to set device relative config
+NET_ERROR_GET_DATA_FAILED=get data failed
+NET_ERROR_MAC_VALIDATE_FAILED=MAC validate failed
+NET_ERROR_GET_INSTANCE=Failed to get server instance 
+NET_ERROR_JSON_REQUEST=Generated json string is error
+NET_ERROR_JSON_RESPONSE=The responding json string is error
+NET_ERROR_VERSION_HIGHER=The protocol version is lower than current version
+NET_SPARE_NO_CAPACITY=Hotspare disk operation failed The capacity is low
+NET_ERROR_SOURCE_IN_USE=Display source is used by other output
+NET_ERROR_REAVE=advanced users grab low-level user resource
+NET_ERROR_NETFORBID=net forbid
+NET_ERROR_GETCFG_MACFILTER=get MAC filter configuration error
+NET_ERROR_SETCFG_MACFILTER=set MAC filter configuration error
+NET_ERROR_GETCFG_IPMACFILTER=get IP/MAC filter configuration error
+NET_ERROR_SETCFG_IPMACFILTER=set IP/MAC filter configuration error
+NET_ERROR_OPERATION_OVERTIME=operation over time 
+NET_ERROR_SENIOR_VALIDATE_FAILED=senior validation failure
+NET_ERROR_DEVICE_ID_NOT_EXIST=device ID is not exist
+NET_ERROR_UNSUPPORTED=unsupport operation
+NET_ERROR_PROXY_DLLLOAD=proxy dll load error
+NET_ERROR_PROXY_ILLEGAL_PARAM= proxy user parameter is not legal
+NET_ERROR_PROXY_INVALID_HANDLE=handle invalid
+NET_ERROR_PROXY_LOGIN_DEVICE_ERROR=login device error
+NET_ERROR_PROXY_START_SERVER_ERROR=start proxy server error
+NET_ERROR_SPEAK_FAILED=request speak failed
+NET_ERROR_NOT_SUPPORT_F6=unsupport F6
+NET_ERROR_CD_UNREADY=CD is not ready
+NET_ERROR_DIR_NOT_EXIST=Directory does not exist
+NET_ERROR_UNSUPPORTED_SPLIT_MODE=The device does not support the segmentation model
+NET_ERROR_OPEN_WND_PARAM=Open the window parameter is illegal
+NET_ERROR_LIMITED_WND_COUNT=Open the window more than limit
+NET_ERROR_UNMATCHED_REQUEST=Request command with the current pattern don't match
+NET_RENDER_ENABLELARGEPICADJUSTMENT_ERROR=Render Library to enable high-definition image internal adjustment strategy error
+NET_ERROR_UPGRADE_FAILED=Upgrade equipment failure
+NET_ERROR_NO_TARGET_DEVICE=Can't find the target device
+NET_ERROR_NO_VERIFY_DEVICE=Can't find the verify device 
+NET_ERROR_CASCADE_RIGHTLESS=No cascade permissions
+NET_ERROR_LOW_PRIORITY=low priority
+NET_ERROR_REMOTE_REQUEST_TIMEOUT=The remote device request timeout
+NET_ERROR_LIMITED_INPUT_SOURCE=Input source beyond maximum route restrictions
+NET_ERROR_SET_LOG_PRINT_INFO=Failed to set log print
+NET_ERROR_PARAM_DWSIZE_ERROR="dwSize" is not initialized in input param
+NET_ERROR_LIMITED_MONITORWALL_COUNT=TV wall exceed limit
+NET_ERROR_PART_PROCESS_FAILED=Fail to execute part of the process
+NET_ERROR_TARGET_NOT_SUPPORT=Fail to transmit due to not supported by target
+NET_ERROR_VISITE_FILE=Access to the file failed
+NET_ERROR_DEVICE_STATUS_BUSY=Device busy
+NET_USER_PWD_NOT_AUTHORIZED=Fail to change the password
+NET_USER_PWD_NOT_STRONG=Password strength is not enough
+NET_ERROR_NO_SUCH_CONFIG=No corresponding setup
+NET_ERROR_AUDIO_RECORD_FAILED=Failed to record audio
+NET_ERROR_SEND_DATA_FAILED=Failed to send out data 
+NET_ERROR_OBSOLESCENT_INTERFACE=Abandoned port 
+NET_ERROR_INSUFFICIENT_INTERAL_BUF=Internal buffer is not sufficient 
+NET_ERROR_NEED_ENCRYPTION_PASSWORD=verify password when changing device IP
+NET_ERROR_NOSUPPORT_RECORD =device not support the record
+NET_ERROR_SERIALIZE_ERROR=Failed to serialize data
+NET_ERROR_DESERIALIZE_ERROR=Failed to deserialize data
+NET_ERROR_LOWRATEWPAN_ID_EXISTED=the wireless id is already existed
+NET_ERROR_LOWRATEWPAN_ID_LIMIT=the wireless id limited
+NET_ERROR_LOWRATEWPAN_ID_ABNORMAL=add the wireless id abnormaly
+NET_ERROR_ENCRYPT=encrypt data fail
+NET_ERROR_PWD_ILLEGAL=new password illegal
+NET_ERROR_DEVICE_ALREADY_INIT=device is already initiation
+NET_ERROR_SECURITY_CODE=security code check out fail
+NET_ERROR_SECURITY_CODE_TIMEOUT=security code out of time
+NET_ERROR_GET_PWD_SPECI=get password specification fail
+NET_ERROR_NO_AUTHORITY_OF_OPERATION=no authority of operation 
+NET_ERROR_DECRYPT=decrypt data fail
+NET_ERROR_2D_CODE=2D code check out fail
+NET_ERROR_INVALID_REQUEST=Invalid request
+NET_ERROR_PWD_RESET_DISABLE=password reset unable
+NET_ERROR_PLAY_PRIVATE_DATA=Failed to display private data,such as rule box
+NET_ERROR_ROBOT_OPERATE_FAILED=robot operate failed
+NET_ERROR_PHOTOSIZE_EXCEEDSLIMIT=photo size exceeds limit
+NET_ERROR_USERID_INVALID=Invalid userId 
+NET_ERROR_EXTRACTFEATURE_FAILED=photo extract feature failed
+NET_ERROR_PHOTO_EXIST=photo exist
+NET_ERROR_PHOTO_OVERFLOW=photo over flow
+NET_ERROR_CHANNEL_ALREADY_OPENED=channel has already been opened
+NET_ERROR_CREATE_SOCKET=create socket error
+NET_ERROR_CHANNEL_NUM=Invalid channel number
+NET_ERROR_FACE_RECOGNITION_SERVER_GROUP_ID_EXCEED=target recognition server group id exceed
+
+# RealPlay Info
+START_REALPLAY=Start RealPlay
+STOP_REALPLAY=Stop RealPlay
+ATTACH=Attach
+DETACH=Detach
+REALPLAY_SUCCEED=Success to start realPlay
+REALPLAY_FAILED=Failed to start realPlay
+
+CHN=Chn
+CHANNEL=Channel
+STREAM_TYPE=Stream
+MASTER_AND_SUB_STREAM=Main/Sub stream
+MASTER_STREAM=Main Stream
+SUB_STREAM=Sub Stream
+
+# Capture Picture
+LOCAL_CAPTURE=Local Capture
+REMOTE_CAPTURE=Remote Capture
+TIMER_CAPTURE=Timer Capture
+STOP_CAPTURE=Stop Capture
+INTERVAL=Interval
+
+TIME_INTERVAL_ILLEGAL=Time Interval Illegal 
+PLEASE_START_REALPLAY=Please Start Real Play
+
+# PTZ Info
+PTZ_CONTROL=PTZControl
+LEFT_UP=LeftUp
+UP=Up
+RIGHT_UP=RightUp
+LEFT=Left
+RIGHT=Right
+LEFT_DOWN=LeftDown
+DOWN=Down
+RIGHT_DOWN=RightDown
+
+ZOOM_ADD=Zoom+
+ZOOM_DEC=Zoom-
+FOCUS_ADD=Focus+
+FOCUS_DEC=Focus-
+IRIS_ADD=Iris+
+IRIS_DEC=Iris-
+
+SPEED=Speed
+
+#ITS
+EVENT_INFO=Event Information
+EVENT_NAME=Event Name
+EVENT_TIME=Event Time
+EVENT_PICTURE=Event and Picture
+PLATE_PICTURE=Plate Picture
+LICENSE_PLATE=License Plate
+PLATE_TYPE=Plate Type
+PLATE_COLOR=Plate Color
+VEHICLE_TYPE=Vehicle Type
+VEHICLE_SIZE=Vehicle Size
+VEHICLE_COLOR=Vehicle Color
+FILE_COUNT=File Count
+FILE_INDEX=File Index
+GROUP_ID=Group ID
+ILLEGAL_PLACE=Illegal Place
+LANE_NUMBER=Lane Number
+MANUAL_CAPTURE=Manual Capture
+OPEN_STROBE=Open Strobe
+CLOSE_STROBE=Close Strobe
+INDEX=Index
+
+OPERATE=Operate
+FUNCTION=Function
+
+UNDEFINED_COLOR=Undefined Color
+BLACK=Black
+WHITE=White
+RED=Red
+BLUE=Blue
+GREEN=Green
+YELLOW=Yellow
+GRAY=Gray
+ORANGE=Orange
+
+LIGHT_DUTY=Light Duty
+MEDIUM=Medium
+OVER_SIZE=Over Size
+MINI_SIZE=Miniature Size
+LARGE_SIZE=Large Size
+
+NO_PLATENUMBER=No PlateNumber
+MANUALSNAP_SUCCEED=Manual snap succeed
+MANUALSNAP_FAILED=Manual snap failed
+
+OPEN_STROBE_SUCCEED=Open strobe succeed
+OPEN_STROBE_FAILED=Open strobe failed
+CLOSE_STROBE_SUCCEED=Close strobe succeed
+CLOSE_STROBE_FAILED=Close strobe failed
+
+EVENT_IVS_TRAFFICJUNCTION=Junction
+EVENT_IVS_TRAFFIC_RUNREDLIGHT=RunRedLight
+EVENT_IVS_TRAFFIC_OVERLINE=OverLine
+EVENT_IVS_TRAFFIC_RETROGRADE=ReTrograde
+EVENT_IVS_TRAFFIC_TURNLEFT=TurnLeft
+EVENT_IVS_TRAFFIC_TURNRIGHT=TurnRight
+EVENT_IVS_TRAFFIC_UTURN=UTurn
+EVENT_IVS_TRAFFIC_OVERSPEED=OverSpeed
+EVENT_IVS_TRAFFIC_UNDERSPEED=UnderSpeed
+EVENT_IVS_TRAFFIC_PARKING=Parking
+EVENT_IVS_TRAFFIC_WRONGROUTE=WrongRoute
+EVENT_IVS_TRAFFIC_CROSSLANE=CrossLane
+EVENT_IVS_TRAFFIC_OVERYELLOWLINE=OverYellowLine
+EVENT_IVS_TRAFFIC_YELLOWPLATEINLANE=YellowPlateInLane
+EVENT_IVS_TRAFFIC_PEDESTRAINPRIORITY=PedestrainPriority
+EVENT_IVS_TRAFFIC_MANUALSNAP=ManualSnap
+EVENT_IVS_TRAFFIC_VEHICLEINROUTE=VehicleInRoute
+EVENT_IVS_TRAFFIC_VEHICLEINBUSROUTE=VehicleInBusRoute
+EVENT_IVS_TRAFFIC_BACKING=Backing
+EVENT_IVS_TRAFFIC_PARKINGSPACEPARKING=ParkingSpaceParking
+EVENT_IVS_TRAFFIC_PARKINGSPACENOPARKING=ParkingSpaceNoParking
+EVENT_IVS_TRAFFIC_WITHOUT_SAFEBELT=WithoutSafeBelt
+
+# DownLoad Info
+DOWNLOAD_RECORD_BYTIME=DownloadRecordByTime
+DOWNLOAD_RECORD_BYFILE=DownloadRecordByFile
+QUERY=Query 
+DOWNLOAD=DownLoad
+STOP_DOWNLOAD=StopDownLoad
+START_TIME=Start Time
+END_TIME=End Time
+RECORD_TYPE=Record Type
+
+GENERAL_RECORD=General Record
+ALARM_RECORD=Alarm Record
+MOTION_DETECTION=Motion Detection Record
+CARD_NUMBER_RECORD=Card Number Record
+INTELLIGENT_DETECTION=intelligent Record
+POS_RECORD=pos Record
+
+
+QUERY_RECORD_IS_NOT_EXIST=Query record is not exist
+PLEASE_CHECK_RECORD_TIME=Please check record time
+PLEASE_SELECT_TIME_AGAIN=Please select time again,max time different is 6 hour
+DOWNLOAD_COMPLETED=Download completed
+
+PLEASE_FIRST_QUERY_RECORD=Please first query record
+PLEASE_FIRST_SELECT_ROW_WITH_DATA=Please first select row with data
+
+# Time Set
+YEAR=Year
+MONTH=Month
+DAY=Day
+HOUR=Hour
+MINUTE=Minute
+SECOND=Second
+CONFIRM=Confirm
+CANCEL=Cancel
+DATE_CHOOSER=Date Chooser
+
+MONDAY=Mon
+TUESDAY=Tue
+WEDNESDAY=Wed
+THURSDAY=Thur
+FRIDAY=Fri
+SATURDAY=Sat
+SUNDAY=Sun
+
+# Talk
+TRANSMIT_TYPE=Transmit Type
+LOCAL_TRANSMIT_TYPE=Local(not transmit)
+REMOTE_TRANSMIT_TYPE=Remote(transmit)
+TRANSMIT_CHANNEL=Speaker Channel
+START_TALK=Start Talk
+STOP_TALK=Stop Talk
+TALK_FAILED=Talk Failed
+
+# DeviceSearchAndInt
+DEVICESEARCH_OPERATE=DeviceSearch Operate
+DEVICESEARCH_RESULT=DeviceSearch Result
+DEVICEINIT=DeviceInit
+
+DEVICESEARCH=DeviceSearch
+DEVICE_POINT_TO_POINT_SEARCH=Device IP Point To Point Search
+
+START_SEARCH=Start Search
+STOP_SEARCH=Stop Search
+
+START_IP=Start IP
+END_IP=End IP
+
+DEVICE_TYPE=Device Type
+MAC=MAC
+SN=SN
+DEVICE_INIT_STATE=Initialized State
+INIT_PASSWD=Initialization Password
+PHONE=Phone
+MAIL=Mail
+IP_VERSION=IP Version
+SUB_MASK=Sub Mask
+GETWAY=GetWay
+DETAIL_TYPE=Detail Type
+HTTP_PORT=HTTP Port
+LOCAL_IP=local ip
+CONFIRM_PASSWORD=Confirm Password
+
+OLD_DEVICE=Old Device
+DONOT_SUPPORT_INITIALIZATION=Do not support initialization
+NOT_INITIALIZED=Uninitialized
+INITIALIZED=Initialized
+
+THE_IP_CONTROL_SCOPE=The scope is too large, please control it between the 1000
+PLEASE_FIRST_SELECT_INITIALIZED_DEVICE=Please first select initialized device
+PLEASE_INPUT_PHONE=Please input phone
+PLEASE_INPUT_MAIL=Please input mail
+INCONSISTENT=The password and the confirm password are inconsistent
+PLEASE_CHECK_IP=Please check IP
+
+SEARCHING_WAITING=Searching, please waiting
+
+START_LISTEN=Start Listen
+STOP_LISTEN=Stop Listen
+SHOW_ALARM_EVENT=Show Alarm Event Info
+ALARM_LISTEN_FAILED=Alarm Listen Failed
+ALARM_MESSAGE=Alarm Message
+
+EXTERNAL_ALARM=External alarm 
+MOTION_ALARM=Motion detection alarm 
+VIDEOLOST_ALARM=Video loss alarm 
+SHELTER_ALARM=Camera masking alarm 
+DISKFULL_ALARM=HDD full alarm 
+DISKERROR_ALARM=HDD error alarm 
+START=start
+STOP=stop
+
+CURRENT_TIME=Current Time
+DEVICE_REBOOT=Device Reboot
+SYNCHRONIZE_TIME=Synchronize Time
+REBOOT=Reboot
+SET_TIME=Set Time
+GET_TIME=Get Time
+REBOOT_TIPS=Are you sure you want to reboot it?
+OPERATE_SUCCESS=Operate Success
+
+#FaceRecognition
+FACE_GROUP_ID=Group Id
+FACE_GROUP_NAME=Group Name
+PERSON_COUNT=Person Count
+
+GROUP_OPERATE=Group Operate
+PERSON_OPERATE=Person Operate
+
+TARGET_RECOGNITION_EVENT=TargetRecognition Event
+TARGET_DETECT_EVENT=TargetDetect Event
+
+GLOBAL_PICTURE=Global Picture
+PERSON_PICTURE=Person Picture
+CANDIDATE_PICTURE=Candidate Picture
+
+TIME=Time
+SEX=Sex
+AGE=Age
+COLOR=Color
+EYE=Eye
+MOUTH=Mouth
+MASK=Mask
+BEARD=Beard
+MALE=Male
+FEMALE=Female
+ID_CARD=Id Card
+OFFICE_CARD=office card
+PASSPORT=Passport
+UNIDENTIFIED=Unidentified
+HAVE_BEARD=Have Beard
+NO_BEARD=No Beard
+OPEN_MOUTH=Open Mouth
+CLOSE_MOUTH=Close Mouth
+YELLOW_COLOR=Yellow
+BLACK_COLOR=Black
+WHITE_COLOR=White
+OPEN_EYE=Open Eye
+CLOSE_EYE=Close Eye
+SMILE=Smile
+ANGER=Anger
+SADNESS=Sadness
+DISGUST=Disgust
+FEAR=Fear
+SURPRISE=Surprise
+NEUTRAL=Neutral
+LAUGH=Laugh
+WEAR_MASK=Wear Mask
+NO_MASK=No Mask
+WEAR_GLASSES=Wear Glasses
+NO_GLASSES=No Glasses
+UNKNOW=UnKnow
+UNLIMITED=Unlimited
+
+NAME=Name
+BIRTHDAY=Birthday
+ID_NO=Id No
+ID_TYPE=ID Type
+SIMILARITY=Similarity
+UID=UID
+STRANGER=Stranger
+GLASSES=glasses
+PICTURE_PATH=picture path
+FACE_LIBRARY_ID=face library id
+FACE_LIBRARY_NAME=face library name
+
+
+ADD=Add
+MODIFY=Modify
+FRESH=Fresh
+ADD_GROUP=Add Group
+MODIFY_GROUP=Modify Group
+DEL_GROUP=Delete Group
+DISPOSITION=Disposition
+DEL_DISPOSITION=Delete Disposition
+
+FIND_CONDITION=Find Condition
+FIND_PERSON=Find Person
+ADD_PERSON=Add Person
+MODIFY_PERSON=Modify Person
+DEL_PERSON=Delete Person
+
+PREVIOUSPAGE=Previous Page
+LASTPAGE=Last Page
+SELECT_PICTURE=Select Picture
+SEARCH_BY_PIC=Search by Picture
+DOWNLOAD_QUERY_PICTURE=Download the query Picture
+FACE_LIBRARY=face library
+HISTORY_LIBRARY=history library
+CHOOSE_FACE_PIC=Please select a face picture
+EVENT_TYPE=Event Type
+PAGES_NUMBER=Pages Number
+
+SIMILARITY_RANGE=Similarity range[0, 100]
+PLEASE_INPUT_GROUPNAME=Please input groupName
+PLEASE_SELECT_GROUP=Please select group
+
+PLEASE_SELECT_PERSON=Please select person
+PLEASE_ADD_DISPOSITION_INFO=Please add disposition info
+PLEASE_SELECT_DEL_DISPOSITION_INFO=Please select delDisposition info
+
+#AutoRegister
+AUTOREGISTER_LISTEN=AutoRegister Listen
+DEVICE_CONFIG=Device Configure
+DEVICE_LIST=Device List
+DEVICE_MANAGER=Device Manager
+ADD_DEVICE=Add Device
+MODIFY_DEVICE=Modify Device
+DELETE_DEVICE=Delete Device
+CLEAR_DEVICE=Clear Device
+IMPORT_DEVICE=Import Device
+EXPORT_DEVICE=Export Device
+DEVICE_ID=Device ID
+ENABLE=Enable
+REGISTER_ADDRESS=Register Address
+REGISTER_PORT=Register Port
+GET=Get
+SET=Set
+RECORD=Record
+DEVICE_LOGIN=Device has logged in
+
+ALREADY_EXISTED=Already existed
+ALREADY_EXISTED_WHETHER_OR_NOT_TO_COVER=Already existed, whether or not to cover(no, not export)
+FILE_OPEN_PLEASE_CLOSE_FILE=The file is opened, please first close the file
+IMPORT_COMPLETION=Import completed
+EXPORT_COMPLETION=Export completed
+FILE_NOT_EXIST=File is not existed
+
+PLEASE_INPUT=Please input 
+MAX_SUPPORT_100=Maximum support is 100
+
+#Attendance
+ATTENDANCE=Attendance
+USER_ID=User ID
+USER_NAME=User Name
+CARD_NO=Card No
+QUERY_CONDITION=Query Condition
+USER_OPERATE=User Operate
+FINGERPRINT_OPERATE=FingerPrint Operate
+OPERATE_BY_USER_ID=Operate FingerPrint By User ID
+OPERATE_BY_FINGERPRINT_ID=Operate FingerPrint By FingerPrint ID
+FINGERPRINT_ID=FingerPrint ID
+DELETE=Delete
+SEARCH=Search
+SEARCH_FINGERPRINT=Search FingerPrint
+ADD_FINGERPRINT=Add FingerPrint
+DELETE_FINGERPRINT=Delete FingerPrint
+SUBSCRIBE=Subscribe
+UNSUBSCRIBE=UnSubscribe
+USER_LIST=User List
+NEXT_PAGE=Next Page
+USER_INFO=User Info
+DOOROPEN_METHOD=Open Door Method
+FINGERPRINT=FingerPrint
+FINGERPRINT_INFO=FingerPrint Info
+FINGERPRINT_DATA=FingerPrint Data
+CARD=Card
+DELETE_FINGERPRINT_PROMPT=It will delete all fingerprint of this user
+SUBSCRIBE_FAILED=Subscribe failed
+FINGERPRINT_ID_ILLEGAL=FingerPrint id illegal
+FINGERPRINT_COLLECTION=FingerPrint Collection
+START_COLLECTION=Start Collection
+STOP_COLLECTION=Stop Collection
+IN_THE_COLLECTION=In collection...
+COLLECTION_COMPLETED=Collection completed
+COLLECTION_FAILED=Collection failed
+FINGERPRINT_ID_NOT_EXIST=FingerPrint Id not exist
+USER_ID_EXCEED_LENGTH=User id exceed max length
+USER_NAME_EXCEED_LENGTH=User name exceed max length
+CARD_NO_EXCEED_LENGTH=Card no exceed max length
+CARD_NAME_EXCEED_LENGTH=Card name exceed max length
+CARD_PASSWD_EXCEED_LENGTH=Card password exceed max length
+
+#Gate
+GATE=FaceOpenDoor
+
+CARD_OPERATE=Card Operate
+CARD_INFO=Card Information
+CARD_MANAGER=Card Manager
+
+CLEAR=Clear
+
+OPEN_STATUS=Open Status
+OPEN_METHOD=Open Method
+
+TEMPERATURE=temperture
+MASK_STATUS=mask status
+
+CARD_UNKNOW=UnKnown Card
+CARD_GENERAL=General Card
+CARD_VIP=VIP Card
+CARD_GUEST=Guest Card
+CARD_PATROL=Patrol Card
+CARD_BACKLIST=BackList Card
+CARD_COERCE=Coerce Card
+CARD_POLLING=Polling Card
+CARD_MOTHERCARD=Mother Card
+
+STATE_UNKNOWN=UnKnown
+STATE_NORMAL=Normal
+STATE_LOSE=Lose
+STATE_LOGOFF=LogOff
+STATE_FREEZE=Freeze
+STATE_ARREARS=Arrears
+STATE_OVERDUE=OverDue
+STATE_PREARREARS=PreArrears
+
+RECORD_NO=Record No
+CARD_NAME=Card Name
+CARD_STATUS=Card Status
+CARD_PASSWORD=Card Password
+CARD_TYPE=Card Type
+CARD_NUM=Card Number
+USE_TIMES=Use Times
+IS_FIRST_ENTER=IsFirstEnter
+IS_VALID=IsValid
+VALID_PERIOD=Valid Period
+VALID_START_TIME=Valid Start Time
+VALID_END_TIME=Valid End Time
+FIRST_ENTER=FirstEnter
+NO_FIRST_ENTER=No FirstEnter
+VALID=Valid
+INVALID=Invalid
+
+PLEASE_SELECT_CARD=Please select card
+PLEASE_INPUT_CARDNO=Please input cardNo
+PLEASE_INPUT_USERID=Please input userId
+WANT_CLEAR_ALL_INFO=Do you want to clear all information ?
+
+ADD_CARD_INDO_FAILED=Failed to add card information 
+ADD_CARD_INFO_AND_PERSON_PICTURE_SUCCEED=Succeed to add card information and person picture
+ADD_CARD_INFO_SUCCEED_BUT_ADD_PERSON_PICTURE_FAILED=Succeed to add card information, but failed to add person picture
+CARD_EXISTED_ADD_PERSON_PICTURE_SUCCEED=Card information is existed, succeed to add person picture
+
+MODIFY_CARD_INFO_SUCCEED=Succeed to modify card information
+MODIFY_CARD_INFO_FAILED=Failed to modify card information
+MODIFY_CARD_INFO_AND_PERSON_PICTURE_SUCCEED=Succeed to modify card information and person picture
+MODIFY_CARD_INFO_SUCCEED_BUT_MODIFY_PERSON_PICTURE_FAILED=Succeed to modify card information, but failed to modify person picture
+
+NET_ACCESS_DOOROPEN_METHOD_UNKNOWN=UnKnow
+NET_ACCESS_DOOROPEN_METHOD_PWD_ONLY=Password
+NET_ACCESS_DOOROPEN_METHOD_CARD=Card
+NET_ACCESS_DOOROPEN_METHOD_CARD_FIRST=First Card Then Password
+NET_ACCESS_DOOROPEN_METHOD_PWD_FIRST=First Password Then Card 
+NET_ACCESS_DOOROPEN_METHOD_REMOTE=Remote Open
+NET_ACCESS_DOOROPEN_METHOD_BUTTON=Open Door Button
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT=fingerprint lock
+NET_ACCESS_DOOROPEN_METHOD_PWD_CARD_FINGERPRINT=password+swipe card+fingerprint combination unlock
+NET_ACCESS_DOOROPEN_METHOD_PWD_FINGERPRINT=password+fingerprint combination unlock
+NET_ACCESS_DOOROPEN_METHOD_CARD_FINGERPRINT=swipe card+fingerprint combination unlock
+NET_ACCESS_DOOROPEN_METHOD_PERSONS=multi-people unlock
+NET_ACCESS_DOOROPEN_METHOD_KEY=Key
+NET_ACCESS_DOOROPEN_METHOD_COERCE_PWD=Use force password to open the door   
+NET_ACCESS_DOOROPEN_METHOD_QRCODE=Use QR Code  
+NET_ACCESS_DOOROPEN_METHOD_FACE_RECOGNITION=face recogniton to open the door
+NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD=comparsion of face and ID card
+NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD_AND_IDCARD=ID card  and compasion of face and ID card
+NET_ACCESS_DOOROPEN_METHOD_BLUETOOTH=Bluetooth
+NET_ACCESS_DOOROPEN_METHOD_CUSTOM_PASSWORD=Custom password
+NET_ACCESS_DOOROPEN_METHOD_USERID_AND_PWD=UserID and password
+NET_ACCESS_DOOROPEN_METHOD_FACE_AND_PWD=Face and password
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_PWD=Fingerprint and password
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_FACE= FingerPrint and face
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FACE=Card and face
+NET_ACCESS_DOOROPEN_METHOD_FACE_OR_PWD=Face or password
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_PWD=Fingerprint or password
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_FACE=Fingerprint or face
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FACE=Card or face
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT=Card or fingerprint
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_FACE_AND_PWD=Fingerprint and face and password
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FACE_AND_PWD=Card and face and password
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FINGERPRINT_AND_PWD=Card and fingerprint and password
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_PWD_AND_FACE=Card and password and face
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_FACE_OR_PWD=Fingerprint or face or password
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FACE_OR_PWD=Card or face or password
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT_OR_FACE=Card or fingerprint or face
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FINGERPRINT_AND_FACE_AND_PWD=Card and fingerprint and face and password 
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT_OR_FACE_OR_PWD=Card or fingerprint or face or password
+NET_ACCESS_DOOROPEN_METHOD_FACEIPCARDANDIDCARD_OR_CARD_OR_FACE=ID card  and compasion of face and ID card or card or face
+NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD_OR_CARD_OR_FACE=ID card  and compasion of face or card or face
+
+#ThermalCamera
+THERMAL_CAMERA=Thermal Camera
+THERMAL_OPERATE=Operate
+POINT_QUERY=Query Point
+REGION_QUERY=Query Region
+ITEM_QUERY=Query Item
+TEMPER_QUERY=Query Temperature 
+HEATMAP=HeatMap
+POINT_TEMPER=Point Temperature
+REGION_TEMPER=REGION Temperature
+ITEM_TEMPER=Item Temperature
+X=X
+Y=Y
+COORDINATE_ILLEGAL=Coordinate Illegal
+QUERY_RESULT=Query Result
+METER_TYPE=Meter Type
+TEMPER_UNIT=Temperature Unit
+TEMPER=Temperature
+UNKNOWN=Unknown
+SPOT=Spot
+LINE=Line
+AREA=Area
+CENTIGRADE=Celsius
+FAHRENHEIT=Fahrenheit
+KELVINS=Kelvins
+PRESET_ID=Preset Id
+RULE_ID=Rule Id
+TEMPER_AVER=Average Temperature
+TEMPER_MAX=Maximum Temperature
+TEMPER_MIN=Minimum Temperature
+TEMPER_MAX_POINT=Temper max point
+TEMPER_MIN_POINT=Temper min point
+TEMPER_MID=Middle Temperature
+TEMPER_STD=Standard Deviation
+INPUT_ILLEGAL=Input Illegal
+TEMPER_INFO=Temperature Info
+FIVE_MINUTES=Five Minutes
+TEN_MINUTES=Ten Minutes
+FIFTEEN_MINUTES=Fifteen Minutes
+THIRTY_MINUTES=Thirty Minutes
+SAVE_PERIOD=Save Period
+QUERY_LIST=Query List
+RECORD_TIME=Record Time
+ITEM_NAME=Name
+COORDINATE=Coordinate
+NO_RECORD=No Record
+HEATMAP_OPERATE=Operate
+IDLE=Idle
+ACQUIRING=Acquiring
+RADIOMETRY_ATTACH=Attach
+RADIOMETRY_DETACH=Detach
+RADIOMETRY_FETCH=Fetch
+SAVE_HEATMAP=Save HeatMap
+HEATMAP_METADATA_INFO=HeatMap MetaData
+HEIGHT=Height
+WIDTH=Width
+LENGTH=Size
+SENSOR_TYPE=Sensor Type
+HEATMAP_SAVE_SUCCESS=HeatMap Save Success
+
+#matrix screen
+MATRIX_SCREEN=Lattice Screen
+PASSING_STATE=Passing state
+PASSING_CAR=pass car
+NO_CAR=no car
+IN_TIME=Entry time
+OUT_TIME=departure time
+PLATE_NUMBER=plate number
+CAR_OWNER=car owner
+PARKING_TIME=parking time
+USER_TYPE=user type
+MONTHLY_CARD_USER=monthly card user
+ANNUAL_CARD_USER=annual card user
+LONG_TERM_USER=long term user/VIP
+TEMPORARY_USER=temporary user/Visitor
+PARKING_CHARGE=parking charge
+DAYS_DUE=days due
+REMAINING_PARKING_SPACES=Remaining parking spaces
+VEHICLES_NOT_ALLOWED_TO_PASS=vehicles not allowed to pass
+ALLOWED_VEHICLES_TO_PASS=allowed vehicles to pass
+SET_UP=set up
+SUCCESSFULLY_ISSUED=Successfully issued
+DELIVERY FAILED=Delivery failed
+CUSTOM_USER_CLASS=Custom user class
+REMARKS_INFORMATION=Remarks information
+CUSTOM_INFORMATION=Custom information
+
+# human number statistic
+HUMAN_NUMBER_STATISTIC_TITLE=Human Number Statistic
+HUMAN_NUMBER_STATISTIC_CONTROL=Human Number Statistic Control
+
+HUMAN_NUMBER_STATISTIC_EVENT_TITLE=Human Number Statistic Event List
+
+HUMAN_NUMBER_STATISTIC_EVENT_CHANNEL=Channel
+HUMAN_NUMBER_STATISTIC_EVENT_TIME=EventTime
+HUMAN_NUMBER_STATISTIC_EVENT_HOUR_IN=HourIn
+HUMAN_NUMBER_STATISTIC_EVENT_HOUR_OUT=HourOut
+HUMAN_NUMBER_STATISTIC_EVENT_TODAY_IN=TodayIn
+HUMAN_NUMBER_STATISTIC_EVENT_TODAY_OUT=TodayOut
+HUMAN_NUMBER_STATISTIC_EVENT_TOTAL_IN=TotalIn
+HUMAN_NUMBER_STATISTIC_EVENT_TOTAL_OUT=TotalOut
+
+HUMAN_NUMBER_STATIC_EVENT_OSD_CLEAR=OSD Clear
+
+VTO_ALARM_EVENT_ROOM_NO=RoomNo.
+VTO_ALARM_EVENT_CARD_NO=CardNo.
+VTO_ALARM_EVENT_TIME=Time
+VTO_ALARM_EVENT_OPEN_METHOD=OpenMethod
+VTO_ALARM_EVENT_STATUS=Status
+
+VTO_REAL_LOAD_ROOM_NO=RoomNo.
+VTO_REAL_LOAD_CARD_NO=CardNO.
+VTO_REAL_LOAD_TIME=Time
+VTO_REAL_LOAD_EVENT_INFO=EventInfo
+
+VTO_OPERATE_MANAGER_TITLE=Card&Fingerprint&FaceManager
+VTO_OPERATE_MANAGER_REC_NO=RecNo.
+VTO_OPERATE_MANAGER_ROOM_NO=RoomNo.
+VTO_OPERATE_MANAGER_CARD_NO=CardNo.
+VTO_OPERATE_MANAGER_FINGER_PRINT_DATA=FingerprintData
+VTO_OPERATE_INFO_TITLE=Add
+
+VTO_OPERATE_COLLECTION_FINGER_PRINT_TITLE=CollectionFingerPrint
+
+DOOR_OPEN=Open Door
+DOOR_CLOSE=Close Door
+EVENT_OPERATE=Event Operate
+START_REAL_LOAD_PIC=StartRealLoad
+STOP_REAL_LOAD_PIC=StopRealLoad
+ALARM_EVENT=AlarmEvent
+REAL_LOAD_EVENT=RealLoadEvent
+COLLECTION_RESULT=CollectionResult
+NEED_FINGER_PRINT=Need FingerPrint
+FACE_INFO=FaceInfo
+OPEN=open
+VTO=VTO
+SCADA=SCADA
+TRAFFIC_ALLOW_LIST=Traffic Allow List
+MODIFY_CARD_FACE_FAILED=failed to modify face info.
+EM_MASK_STATE_UNKNOWN=unknown
+EM_MASK_STATE_NODISTI=unrecognized
+EM_MASK_STATE_NOMASK=Not wearing mask
+EM_MASK_STATE_WEAR=wearing mask
+END_SEARCH=End of query
+DOWNLOAD_PICTURE=download picture
+ENTER_PICTURE_PATH=Please enter the picture path
+LOADING=The equipment is being processed
+QUERY_CARD_EXIST_FAILED=Check if the cardNo exists failed
+CARD_EXIST=The cardNo already exists
+INPUT_ROOM_NO=please input room number
+ROOM_NO_EXCEED_LENGTH=room number exceed max length
+REMOVE_CARD_FACE_FAILED=remove card face failed
+STOP_LISTEN_FAILED=stop listen failed
+
+SCREEN_NUMBER=screen number
+TEXT_CONTENT=text content
+TEXT_CONTENT_TYPE=text content type
+TEXT_CONTENT_COLOR=text content color
+SCROLL_TYPE=scroll type
+SCROLL_SPEED=scroll speed
+
+ORDINARY=ordinary
+QR_CODE=QR code
+LOCAL_TIME=local time
+RESOURCE=resource
+
+NOT_ROLLING=not rolling 
+SCROLL_LEFT_AND_RIGHT=scroll left and right
+SCROLL_UP_AND_DOWN=scroll up and right
+
+NUMBER_STRING=number string
+VOICE_TEXT=vioce text
+ISSUED=issued
+PROMPT=Please add corresponding parameters
+
+
+SCADA_DEVICE_LIST=device list
+
+DEVICE_NAME=device name
+POINT_ID=point id
+IF_VALID_SIGNAL_POINT=valid signal point
+POINT_NAME=point name
+ALARM_DESCRIBE=alarm describe
+ALARM_LEVEL=alarm level
+ALARM_DELAY=alarm delay
+ALARM_TYPE=alarm type
+ALARM_TIME=alarm time
+COLLECT_TIME=collect time
+
+SCADA_POINT_LIST=point list
+SCADA_ATTACH_ALARM=attach alarm
+SCADA_ATTACH_INFO=attach info
+SCADA_ATTACH=start listen
+BTN_LIST = get
+
+ALLOWLIST_OPERATION=allowlist operation
+
+SINGLE_UPLOAD=single upload
+
+LICENSE_PLATE_RUN=The license plate to run
+FUZZY_QUERY=fuzzy query
+DELETE_ALL=delete all
+AUTHORIZATION=authorization
+UNAUTHORIZATION=unauthorized
+BATCH_UPLOAD=batch upload
+BROWSE=browse
+UPLOAD=upload
+QUERY_INFORMATION=query information
+DIALOG=dialog
+LICENSE_PLATE_NUMBER=license plate number
+MODIFY_PANEL=modify panel
+SERIAL_NUMBER=serial number
+OPEN_MODEL=open model
+LICENSE_PLATE_LENGTH_TOO_LONG=License plate length is too long
+NAME_TOO_LONG=The name is too long
+ADD_SUCCESS= add a success
+ADD_FAIL=add a fail
+DELETE_SUCCESS=delete a success
+DELETE_FAIL=delete a fail
+MODIFY_SUCCESS=modify the success
+MODIFY_FAIL=modify the fail
+UPLOAD_SUCCESS=Uploaded successfully
+ENTER_QUERY_DATA=Please enter the data to query
+FILLING_RULES=fill in legal characters
+UPLOAD_FAIL=upload fail
+UPLOADING=uploading
+SURE_UPLOAD=Are you sure to upload?
+DATA_NUMBER=pieces of data
+SELECT_DATA=Please select data
diff --git a/ycl-server/res/res_zh_CN.properties b/ycl-server/res/res_zh_CN.properties
new file mode 100644
index 0000000..747cfa0
--- /dev/null
+++ b/ycl-server/res/res_zh_CN.properties
@@ -0,0 +1,1079 @@
+# FunctionList
+FUNCTIONLIST=\u529F\u80FD\u5217\u8868
+REALPLAY=\u5B9E\u65F6\u9884\u89C8
+CAPTURE_PICTURE=\u6293\u62CD\u56FE\u7247
+MULTIREALPLAY=\u53CC\u901A\u9053\u5B9E\u65F6\u9884\u89C8
+DOWNLOAD_RECORD=\u4E0B\u8F7D\u5F55\u50CF
+ITS_EVENT=\u667A\u80FD\u4EA4\u901A
+TALK=\u8BED\u97F3\u5BF9\u8BB2
+DEVICESEARCH_DEVICEINIT=\u8BBE\u5907\u641C\u7D22\u548C\u8BBE\u5907\u521D\u59CB\u5316
+PTZ=\u4E91\u53F0\u63A7\u5236
+TARGETRECOGNITION=\u76EE\u6807\u8BC6\u522B
+ALARM_LISTEN=\u62A5\u8B66\u76D1\u542C
+DEVICE_CONTROL=\u8BBE\u5907\u63A7\u5236
+AUTOREGISTER=\u4E3B\u52A8\u6CE8\u518C
+
+ONLINE=\u5728\u7EBF
+
+# Login Info
+DEVICE_IP=\u8BBE\u5907\u5730\u5740
+DEVICE_PORT=\u7AEF\u53E3\u53F7
+USERNAME=\u7528\u6237\u540D
+PASSWORD=\u5BC6\u7801
+IP=\u5730\u5740
+
+LOGIN=\u767B\u5F55
+LOGOUT=\u767B\u51FA
+
+LOGIN_SUCCEED=\u767B\u5F55\u6210\u529F
+LOGIN_FAILED=\u767B\u5F55\u5931\u8D25
+DISCONNECT=\u8BBE\u5907\u65AD\u7EBF
+DISCONNECT_RECONNECTING=\u8BBE\u5907\u65AD\u7EBF\uFF0C\u6B63\u5728\u91CD\u8FDE\u4E2D
+PROMPT_MESSAGE=\u63D0\u793A\u4FE1\u606F
+ERROR_MESSAGE=\u9519\u8BEF\u4FE1\u606F
+
+SUCCEED=\u6210\u529F
+FAILED=\u5931\u8D25
+
+PLEASE_INPUT_DEVICE_IP=\u8BF7\u8F93\u5165\u8BBE\u5907\u5730\u5740
+PLEASE_INPUT_DEVICE_PORT=\u8BF7\u8F93\u5165\u8BBE\u5907\u7AEF\u53E3\u53F7
+PLEASE_INPUT_DEVICE_USERNAME=\u8BF7\u8F93\u5165\u7528\u6237\u540D
+PLEASE_INPUT_DEVICE_PASSWORD=\u8BF7\u8F93\u5165\u5BC6\u7801
+PLEASE_INPUT_CONFIRM_PASSWORD=\u8BF7\u8F93\u5165\u786E\u8BA4\u5BC6\u7801
+
+# Error Info
+NET_NOERROR=\u6CA1\u6709\u9519\u8BEF
+NET_ERROR=\u672A\u77E5\u9519\u8BEF
+NET_SYSTEM_ERROR=Windows\u7CFB\u7EDF\u51FA\u9519
+NET_NETWORK_ERROR=\u7F51\u7EDC\u9519\u8BEF\uFF0C\u53EF\u80FD\u662F\u56E0\u4E3A\u7F51\u7EDC\u8D85\u65F6
+NET_DEV_VER_NOMATCH=\u8BBE\u5907\u534F\u8BAE\u4E0D\u5339\u914D
+NET_INVALID_HANDLE=\u53E5\u67C4\u65E0\u6548
+NET_OPEN_CHANNEL_ERROR=\u6253\u5F00\u901A\u9053\u5931\u8D25
+NET_CLOSE_CHANNEL_ERROR=\u5173\u95ED\u901A\u9053\u5931\u8D25
+NET_ILLEGAL_PARAM=\u7528\u6237\u53C2\u6570\u4E0D\u5408\u6CD5
+NET_SDK_INIT_ERROR=SDK\u521D\u59CB\u5316\u51FA\u9519
+NET_SDK_UNINIT_ERROR=SDK\u6E05\u7406\u51FA\u9519
+NET_RENDER_OPEN_ERROR=\u7533\u8BF7render\u8D44\u6E90\u51FA\u9519
+NET_DEC_OPEN_ERROR=\u6253\u5F00\u89E3\u7801\u5E93\u51FA\u9519
+NET_DEC_CLOSE_ERROR=\u5173\u95ED\u89E3\u7801\u5E93\u51FA\u9519
+NET_MULTIPLAY_NOCHANNEL=\u591A\u753B\u9762\u9884\u89C8\u4E2D\u68C0\u6D4B\u5230\u901A\u9053\u6570\u4E3A0
+NET_TALK_INIT_ERROR=\u5F55\u97F3\u5E93\u521D\u59CB\u5316\u5931\u8D25
+NET_TALK_NOT_INIT=\u5F55\u97F3\u5E93\u672A\u7ECF\u521D\u59CB\u5316
+NET_TALK_SENDDATA_ERROR=\u53D1\u9001\u97F3\u9891\u6570\u636E\u51FA\u9519
+NET_REAL_ALREADY_SAVING=\u5B9E\u65F6\u6570\u636E\u5DF2\u7ECF\u5904\u4E8E\u4FDD\u5B58\u72B6\u6001
+NET_NOT_SAVING=\u672A\u4FDD\u5B58\u5B9E\u65F6\u6570\u636E
+NET_OPEN_FILE_ERROR=\u6253\u5F00\u6587\u4EF6\u51FA\u9519
+NET_PTZ_SET_TIMER_ERROR=\u542F\u52A8\u4E91\u53F0\u63A7\u5236\u5B9A\u65F6\u5668\u5931\u8D25
+NET_RETURN_DATA_ERROR=\u5BF9\u8FD4\u56DE\u6570\u636E\u7684\u6821\u9A8C\u51FA\u9519
+NET_INSUFFICIENT_BUFFER=\u6CA1\u6709\u8DB3\u591F\u7684\u7F13\u5B58
+NET_NOT_SUPPORTED=\u5F53\u524DSDK\u672A\u652F\u6301\u8BE5\u529F\u80FD
+NET_NO_RECORD_FOUND=\u67E5\u8BE2\u4E0D\u5230\u5F55\u50CF
+NET_NOT_AUTHORIZED=\u65E0\u64CD\u4F5C\u6743\u9650
+NET_NOT_NOW=\u6682\u65F6\u65E0\u6CD5\u6267\u884C
+NET_NO_TALK_CHANNEL=\u672A\u53D1\u73B0\u5BF9\u8BB2\u901A\u9053
+NET_NO_AUDIO=\u672A\u53D1\u73B0\u97F3\u9891
+NET_NO_INIT=\u7F51\u7EDCSDK\u672A\u7ECF\u521D\u59CB\u5316
+NET_DOWNLOAD_END=\u4E0B\u8F7D\u5DF2\u7ED3\u675F
+NET_EMPTY_LIST=\u67E5\u8BE2\u7ED3\u679C\u4E3A\u7A7A
+NET_ERROR_GETCFG_SYSATTR=\u83B7\u53D6\u7CFB\u7EDF\u5C5E\u6027\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_SERIAL=\u83B7\u53D6\u5E8F\u5217\u53F7\u5931\u8D25
+NET_ERROR_GETCFG_GENERAL=\u83B7\u53D6\u5E38\u89C4\u5C5E\u6027\u5931\u8D25
+NET_ERROR_GETCFG_DSPCAP=\u83B7\u53D6DSP\u80FD\u529B\u63CF\u8FF0\u5931\u8D25
+NET_ERROR_GETCFG_NETCFG=\u83B7\u53D6\u7F51\u7EDC\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_CHANNAME=\u83B7\u53D6\u901A\u9053\u540D\u79F0\u5931\u8D25
+NET_ERROR_GETCFG_VIDEO=\u83B7\u53D6\u89C6\u9891\u5C5E\u6027\u5931\u8D25
+NET_ERROR_GETCFG_RECORD=\u83B7\u53D6\u5F55\u8C61\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_PRONAME=\u83B7\u53D6\u89E3\u7801\u5668\u534F\u8BAE\u540D\u79F0\u5931\u8D25
+NET_ERROR_GETCFG_FUNCNAME=\u83B7\u53D6232\u4E32\u53E3\u529F\u80FD\u540D\u79F0\u5931\u8D25
+NET_ERROR_GETCFG_485DECODER=\u83B7\u53D6\u89E3\u7801\u5668\u5C5E\u6027\u5931\u8D25
+NET_ERROR_GETCFG_232COM=\u83B7\u53D6232\u4E32\u53E3\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_ALARMIN=\u83B7\u53D6\u5916\u90E8\u62A5\u8B66\u8F93\u5165\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_ALARMDET=\u83B7\u53D6\u52A8\u6001\u68C0\u6D4B\u62A5\u8B66\u5931\u8D25
+NET_ERROR_GETCFG_SYSTIME=\u83B7\u53D6\u8BBE\u5907\u65F6\u95F4\u5931\u8D25
+NET_ERROR_GETCFG_PREVIEW=\u83B7\u53D6\u9884\u89C8\u53C2\u6570\u5931\u8D25
+NET_ERROR_GETCFG_AUTOMT=\u83B7\u53D6\u81EA\u52A8\u7EF4\u62A4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_VIDEOMTRX=\u83B7\u53D6\u89C6\u9891\u77E9\u9635\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_COVER=\u83B7\u53D6\u533A\u57DF\u906E\u6321\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_WATERMAKE=\u83B7\u53D6\u56FE\u8C61\u6C34\u5370\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_MULTICAST=\u83B7\u53D6\u914D\u7F6E\u5931\u8D25\u4F4D\u7F6E\uFF1A\u7EC4\u64AD\u7AEF\u53E3\u6309\u901A\u9053\u914D\u7F6E
+NET_ERROR_SETCFG_GENERAL=\u4FEE\u6539\u5E38\u89C4\u5C5E\u6027\u5931\u8D25
+NET_ERROR_SETCFG_NETCFG=\u4FEE\u6539\u7F51\u7EDC\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_CHANNAME=\u4FEE\u6539\u901A\u9053\u540D\u79F0\u5931\u8D25
+NET_ERROR_SETCFG_VIDEO=\u4FEE\u6539\u89C6\u9891\u5C5E\u6027\u5931\u8D25
+NET_ERROR_SETCFG_RECORD=\u4FEE\u6539\u5F55\u8C61\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_485DECODER=\u4FEE\u6539\u89E3\u7801\u5668\u5C5E\u6027\u5931\u8D25
+NET_ERROR_SETCFG_232COM=\u4FEE\u6539232\u4E32\u53E3\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_ALARMIN=\u4FEE\u6539\u5916\u90E8\u8F93\u5165\u62A5\u8B66\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_ALARMDET=\u4FEE\u6539\u52A8\u6001\u68C0\u6D4B\u62A5\u8B66\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_SYSTIME=\u4FEE\u6539\u8BBE\u5907\u65F6\u95F4\u5931\u8D25
+NET_ERROR_SETCFG_PREVIEW=\u4FEE\u6539\u9884\u89C8\u53C2\u6570\u5931\u8D25
+NET_ERROR_SETCFG_AUTOMT=\u4FEE\u6539\u81EA\u52A8\u7EF4\u62A4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_VIDEOMTRX=\u4FEE\u6539\u89C6\u9891\u77E9\u9635\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_COVER=\u4FEE\u6539\u533A\u57DF\u906E\u6321\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_WATERMAKE=\u4FEE\u6539\u56FE\u8C61\u6C34\u5370\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_WLAN=\u4FEE\u6539\u65E0\u7EBF\u7F51\u7EDC\u4FE1\u606F\u5931\u8D25
+NET_ERROR_SETCFG_WLANDEV=\u9009\u62E9\u65E0\u7EBF\u7F51\u7EDC\u8BBE\u5907\u5931\u8D25
+NET_ERROR_SETCFG_REGISTER=\u4FEE\u6539\u4E3B\u52A8\u6CE8\u518C\u53C2\u6570\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_CAMERA=\u4FEE\u6539\u6444\u50CF\u5934\u5C5E\u6027\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_INFRARED=\u4FEE\u6539\u7EA2\u5916\u62A5\u8B66\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_SOUNDALARM=\u4FEE\u6539\u97F3\u9891\u62A5\u8B66\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_STORAGE=\u4FEE\u6539\u5B58\u50A8\u4F4D\u7F6E\u914D\u7F6E\u5931\u8D25
+NET_AUDIOENCODE_NOTINIT=\u97F3\u9891\u7F16\u7801\u63A5\u53E3\u6CA1\u6709\u6210\u529F\u521D\u59CB\u5316
+NET_DATA_TOOLONGH=\u6570\u636E\u8FC7\u957F
+NET_UNSUPPORTED=\u8BBE\u5907\u4E0D\u652F\u6301\u8BE5\u64CD\u4F5C
+NET_DEVICE_BUSY=\u8BBE\u5907\u8D44\u6E90\u4E0D\u8DB3
+NET_SERVER_STARTED=\u670D\u52A1\u5668\u5DF2\u7ECF\u542F\u52A8
+NET_SERVER_STOPPED=\u670D\u52A1\u5668\u5C1A\u672A\u6210\u529F\u542F\u52A8
+NET_LISTER_INCORRECT_SERIAL=\u8F93\u5165\u5E8F\u5217\u53F7\u6709\u8BEF
+NET_QUERY_DISKINFO_FAILED=\u83B7\u53D6\u786C\u76D8\u4FE1\u606F\u5931\u8D25
+NET_ERROR_GETCFG_SESSION=\u83B7\u53D6\u8FDE\u63A5Session\u4FE1\u606F
+NET_USER_FLASEPWD_TRYTIME=\u8F93\u5165\u5BC6\u7801\u9519\u8BEF\u8D85\u8FC7\u9650\u5236\u6B21\u6570
+NET_LOGIN_ERROR_PASSWORD=\u5BC6\u7801\u4E0D\u6B63\u786E
+NET_LOGIN_ERROR_USER=\u5E10\u6237\u4E0D\u5B58\u5728
+NET_LOGIN_ERROR_TIMEOUT=\u7B49\u5F85\u767B\u5F55\u8FD4\u56DE\u8D85\u65F6
+NET_LOGIN_ERROR_RELOGGIN=\u5E10\u53F7\u5DF2\u767B\u5F55
+NET_LOGIN_ERROR_LOCKED=\u5E10\u53F7\u5DF2\u88AB\u9501\u5B9A
+NET_LOGIN_ERROR_BLACKLIST=\u5E10\u53F7\u5DF2\u88AB\u5217\u4E3A\u7981\u6B62\u540D\u5355
+NET_LOGIN_ERROR_BUSY=\u8D44\u6E90\u4E0D\u8DB3\uFF0C\u7CFB\u7EDF\u5FD9
+NET_LOGIN_ERROR_CONNECT=\u767B\u5F55\u8BBE\u5907\u8D85\u65F6\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u5E76\u91CD\u8BD5
+NET_LOGIN_ERROR_NETWORK=\u7F51\u7EDC\u8FDE\u63A5\u5931\u8D25
+NET_LOGIN_ERROR_SUBCONNECT=\u767B\u5F55\u8BBE\u5907\u6210\u529F\uFF0C\u4F46\u65E0\u6CD5\u521B\u5EFA\u89C6\u9891\u901A\u9053\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u72B6\u51B5
+NET_LOGIN_ERROR_MAXCONNECT=\u8D85\u8FC7\u6700\u5927\u8FDE\u63A5\u6570
+NET_LOGIN_ERROR_PROTOCOL3_ONLY=\u53EA\u652F\u63013\u4EE3\u534F\u8BAE
+NET_LOGIN_ERROR_UKEY_LOST=\u672A\u63D2\u5165U\u76FE\u6216U\u76FE\u4FE1\u606F\u9519\u8BEF
+NET_LOGIN_ERROR_NO_AUTHORIZED=\u5BA2\u6237\u7AEFIP\u5730\u5740\u6CA1\u6709\u767B\u5F55\u6743\u9650
+NET_LOGIN_ERROR_USER_OR_PASSOWRD=\u8D26\u53F7\u6216\u5BC6\u7801\u9519\u8BEF
+NET_LOGIN_ERROR_DEVICE_NOT_INIT=\u8BBE\u5907\u5C1A\u672A\u521D\u59CB\u5316\uFF0C\u4E0D\u80FD\u767B\u5F55\uFF0C\u8BF7\u5148\u521D\u59CB\u5316\u8BBE\u5907
+NET_RENDER_SOUND_ON_ERROR=Render\u5E93\u6253\u5F00\u97F3\u9891\u51FA\u9519
+NET_RENDER_SOUND_OFF_ERROR=Render\u5E93\u5173\u95ED\u97F3\u9891\u51FA\u9519
+NET_RENDER_SET_VOLUME_ERROR=Render\u5E93\u63A7\u5236\u97F3\u91CF\u51FA\u9519
+NET_RENDER_ADJUST_ERROR=Render\u5E93\u8BBE\u7F6E\u753B\u9762\u53C2\u6570\u51FA\u9519
+NET_RENDER_PAUSE_ERROR=Render\u5E93\u6682\u505C\u64AD\u653E\u51FA\u9519
+NET_RENDER_SNAP_ERROR=Render\u5E93\u6293\u56FE\u51FA\u9519
+NET_RENDER_STEP_ERROR=Render\u5E93\u6B65\u8FDB\u51FA\u9519
+NET_RENDER_FRAMERATE_ERROR=Render\u5E93\u8BBE\u7F6E\u5E27\u7387\u51FA\u9519
+NET_RENDER_DISPLAYREGION_ERROR=Render\u5E93\u8BBE\u7F6E\u663E\u793A\u533A\u57DF\u51FA\u9519
+NET_RENDER_GETOSDTIME_ERROR=Render\u5E93\u83B7\u53D6\u5F53\u524D\u64AD\u653E\u65F6\u95F4\u51FA\u9519
+NET_GROUP_EXIST=\u7EC4\u540D\u5DF2\u5B58\u5728
+NET_GROUP_NOEXIST=\u7EC4\u540D\u4E0D\u5B58\u5728
+NET_GROUP_RIGHTOVER=\u7EC4\u7684\u6743\u9650\u8D85\u51FA\u6743\u9650\u5217\u8868\u8303\u56F4
+NET_GROUP_HAVEUSER=\u7EC4\u4E0B\u6709\u7528\u6237\uFF0C\u4E0D\u80FD\u5220\u9664
+NET_GROUP_RIGHTUSE=\u7EC4\u7684\u67D0\u4E2A\u6743\u9650\u88AB\u7528\u6237\u4F7F\u7528\uFF0C\u4E0D\u80FD\u5220\u9664
+NET_GROUP_SAMENAME=\u65B0\u7EC4\u540D\u540C\u5DF2\u6709\u7EC4\u540D\u91CD\u590D
+NET_USER_EXIST=\u7528\u6237\u5DF2\u5B58\u5728
+NET_USER_NOEXIST=\u7528\u6237\u4E0D\u5B58\u5728
+NET_USER_RIGHTOVER=\u7528\u6237\u6743\u9650\u8D85\u51FA\u7EC4\u6743\u9650
+NET_USER_PWD=\u4FDD\u7559\u5E10\u53F7\uFF0C\u4E0D\u5BB9\u8BB8\u4FEE\u6539\u5BC6\u7801
+NET_USER_FLASEPWD=\u5BC6\u7801\u4E0D\u6B63\u786E
+NET_USER_NOMATCHING=\u5BC6\u7801\u4E0D\u5339\u914D
+NET_USER_INUSE=\u8D26\u53F7\u6B63\u5728\u4F7F\u7528\u4E2D
+NET_ERROR_GETCFG_ETHERNET=\u83B7\u53D6\u7F51\u5361\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_WLAN=\u83B7\u53D6\u65E0\u7EBF\u7F51\u7EDC\u4FE1\u606F\u5931\u8D25
+NET_ERROR_GETCFG_WLANDEV=\u83B7\u53D6\u65E0\u7EBF\u7F51\u7EDC\u8BBE\u5907\u5931\u8D25
+NET_ERROR_GETCFG_REGISTER=\u83B7\u53D6\u4E3B\u52A8\u6CE8\u518C\u53C2\u6570\u5931\u8D25
+NET_ERROR_GETCFG_CAMERA=\u83B7\u53D6\u6444\u50CF\u5934\u5C5E\u6027\u5931\u8D25
+NET_ERROR_GETCFG_INFRARED=\u83B7\u53D6\u7EA2\u5916\u62A5\u8B66\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_SOUNDALARM=\u83B7\u53D6\u97F3\u9891\u62A5\u8B66\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_STORAGE=\u83B7\u53D6\u5B58\u50A8\u4F4D\u7F6E\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_MAIL=\u83B7\u53D6\u90AE\u4EF6\u914D\u7F6E\u5931\u8D25
+NET_CONFIG_DEVBUSY=\u6682\u65F6\u65E0\u6CD5\u8BBE\u7F6E
+NET_CONFIG_DATAILLEGAL=\u914D\u7F6E\u6570\u636E\u4E0D\u5408\u6CD5
+NET_ERROR_GETCFG_DST=\u83B7\u53D6\u590F\u4EE4\u65F6\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_DST=\u8BBE\u7F6E\u590F\u4EE4\u65F6\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_VIDEO_OSD=\u83B7\u53D6\u89C6\u9891OSD\u53E0\u52A0\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_VIDEO_OSD=\u8BBE\u7F6E\u89C6\u9891OSD\u53E0\u52A0\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_GPRSCDMA=\u83B7\u53D6CDMA\GPRS\u7F51\u7EDC\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_GPRSCDMA=\u8BBE\u7F6ECDMA\GPRS\u7F51\u7EDC\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_IPFILTER=\u83B7\u53D6IP\u8FC7\u6EE4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_IPFILTER=\u8BBE\u7F6EIP\u8FC7\u6EE4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_TALKENCODE=\u83B7\u53D6\u8BED\u97F3\u5BF9\u8BB2\u7F16\u7801\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_TALKENCODE=\u8BBE\u7F6E\u8BED\u97F3\u5BF9\u8BB2\u7F16\u7801\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_RECORDLEN=\u83B7\u53D6\u5F55\u50CF\u6253\u5305\u957F\u5EA6\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_RECORDLEN=\u8BBE\u7F6E\u5F55\u50CF\u6253\u5305\u957F\u5EA6\u914D\u7F6E\u5931\u8D25
+NET_DONT_SUPPORT_SUBAREA=\u4E0D\u652F\u6301\u7F51\u7EDC\u786C\u76D8\u5206\u533A
+NET_ERROR_GET_AUTOREGSERVER=\u83B7\u53D6\u8BBE\u5907\u4E0A\u4E3B\u52A8\u6CE8\u518C\u670D\u52A1\u5668\u4FE1\u606F\u5931\u8D25
+NET_ERROR_CONTROL_AUTOREGISTER=\u4E3B\u52A8\u6CE8\u518C\u91CD\u5B9A\u5411\u6CE8\u518C\u9519\u8BEF
+NET_ERROR_DISCONNECT_AUTOREGISTER=\u65AD\u5F00\u4E3B\u52A8\u6CE8\u518C\u670D\u52A1\u5668\u9519\u8BEF
+NET_ERROR_GETCFG_MMS=\u83B7\u53D6mms\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_MMS=\u8BBE\u7F6Emms\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_SMSACTIVATION=\u83B7\u53D6\u77ED\u4FE1\u6FC0\u6D3B\u65E0\u7EBF\u8FDE\u63A5\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_SMSACTIVATION=\u8BBE\u7F6E\u77ED\u4FE1\u6FC0\u6D3B\u65E0\u7EBF\u8FDE\u63A5\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_DIALINACTIVATION=\u83B7\u53D6\u62E8\u53F7\u6FC0\u6D3B\u65E0\u7EBF\u8FDE\u63A5\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_DIALINACTIVATION=\u8BBE\u7F6E\u62E8\u53F7\u6FC0\u6D3B\u65E0\u7EBF\u8FDE\u63A5\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_VIDEOOUT=\u67E5\u8BE2\u89C6\u9891\u8F93\u51FA\u53C2\u6570\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_VIDEOOUT=\u8BBE\u7F6E\u89C6\u9891\u8F93\u51FA\u53C2\u6570\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_OSDENABLE=\u83B7\u53D6osd\u53E0\u52A0\u4F7F\u80FD\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_OSDENABLE=\u8BBE\u7F6Eosd\u53E0\u52A0\u4F7F\u80FD\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_ENCODERINFO=\u8BBE\u7F6E\u6570\u5B57\u901A\u9053\u524D\u7AEF\u7F16\u7801\u63A5\u5165\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_TVADJUST=\u83B7\u53D6TV\u8C03\u8282\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_TVADJUST=\u8BBE\u7F6ETV\u8C03\u8282\u914D\u7F6E\u5931\u8D25
+NET_ERROR_CONNECT_FAILED=\u8BF7\u6C42\u5EFA\u7ACB\u8FDE\u63A5\u5931\u8D25
+NET_ERROR_SETCFG_BURNFILE=\u8BF7\u6C42\u523B\u5F55\u6587\u4EF6\u4E0A\u4F20\u5931\u8D25
+NET_ERROR_SNIFFER_GETCFG=\u83B7\u53D6\u6293\u5305\u914D\u7F6E\u4FE1\u606F\u5931\u8D25
+NET_ERROR_SNIFFER_SETCFG=\u8BBE\u7F6E\u6293\u5305\u914D\u7F6E\u4FE1\u606F\u5931\u8D25
+NET_ERROR_DOWNLOADRATE_GETCFG=\u67E5\u8BE2\u4E0B\u8F7D\u9650\u5236\u4FE1\u606F\u5931\u8D25
+NET_ERROR_DOWNLOADRATE_SETCFG=\u8BBE\u7F6E\u4E0B\u8F7D\u9650\u5236\u4FE1\u606F\u5931\u8D25
+NET_ERROR_SEARCH_TRANSCOM=\u67E5\u8BE2\u4E32\u53E3\u53C2\u6570\u5931\u8D25
+NET_ERROR_GETCFG_POINT=\u83B7\u53D6\u9884\u5236\u70B9\u4FE1\u606F\u9519\u8BEF
+NET_ERROR_SETCFG_POINT=\u8BBE\u7F6E\u9884\u5236\u70B9\u4FE1\u606F\u9519\u8BEF
+NET_SDK_LOGOUT_ERROR=SDK\u6CA1\u6709\u6B63\u5E38\u767B\u51FA\u8BBE\u5907
+NET_ERROR_GET_VEHICLE_CFG=\u83B7\u53D6\u8F66\u8F7D\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_VEHICLE_CFG=\u8BBE\u7F6E\u8F66\u8F7D\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GET_ATM_OVERLAY_CFG=\u83B7\u53D6atm\u53E0\u52A0\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_ATM_OVERLAY_CFG=\u8BBE\u7F6Eatm\u53E0\u52A0\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GET_ATM_OVERLAY_ABILITY=\u83B7\u53D6atm\u53E0\u52A0\u80FD\u529B\u5931\u8D25
+NET_ERROR_GET_DECODER_TOUR_CFG=\u83B7\u53D6\u89E3\u7801\u5668\u89E3\u7801\u8F6E\u5DE1\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_DECODER_TOUR_CFG=\u8BBE\u7F6E\u89E3\u7801\u5668\u89E3\u7801\u8F6E\u5DE1\u914D\u7F6E\u5931\u8D25
+NET_ERROR_CTRL_DECODER_TOUR=\u63A7\u5236\u89E3\u7801\u5668\u89E3\u7801\u8F6E\u5DE1\u5931\u8D25
+NET_GROUP_OVERSUPPORTNUM=\u8D85\u51FA\u8BBE\u5907\u652F\u6301\u6700\u5927\u7528\u6237\u7EC4\u6570\u76EE
+NET_USER_OVERSUPPORTNUM=\u8D85\u51FA\u8BBE\u5907\u652F\u6301\u6700\u5927\u7528\u6237\u6570\u76EE
+NET_ERROR_GET_SIP_CFG=\u83B7\u53D6SIP\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_SIP_CFG=\u8BBE\u7F6ESIP\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GET_SIP_ABILITY=\u83B7\u53D6SIP\u80FD\u529B\u5931\u8D25
+NET_ERROR_GET_WIFI_AP_CFG=\u83B7\u53D6WIFIap\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_WIFI_AP_CFG=\u8BBE\u7F6EWIFIap\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GET_DECODE_POLICY=\u83B7\u53D6\u89E3\u7801\u7B56\u7565\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_DECODE_POLICY=\u8BBE\u7F6E\u89E3\u7801\u7B56\u7565\u914D\u7F6E\u5931\u8D25
+NET_ERROR_TALK_REJECT=\u62D2\u7EDD\u5BF9\u8BB2
+NET_ERROR_TALK_OPENED=\u5BF9\u8BB2\u88AB\u5176\u4ED6\u5BA2\u6237\u7AEF\u6253\u5F00
+NET_ERROR_TALK_RESOURCE_CONFLICIT=\u8D44\u6E90\u51B2\u7A81
+NET_ERROR_TALK_UNSUPPORTED_ENCODE=\u4E0D\u652F\u6301\u7684\u8BED\u97F3\u7F16\u7801\u683C\u5F0F
+NET_ERROR_TALK_RIGHTLESS=\u65E0\u6743\u9650
+NET_ERROR_TALK_FAILED=\u8BF7\u6C42\u5BF9\u8BB2\u5931\u8D25
+NET_ERROR_GET_MACHINE_CFG=\u83B7\u53D6\u673A\u5668\u76F8\u5173\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_MACHINE_CFG=\u8BBE\u7F6E\u673A\u5668\u76F8\u5173\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GET_DATA_FAILED=\u8BBE\u5907\u65E0\u6CD5\u83B7\u53D6\u5F53\u524D\u8BF7\u6C42\u6570\u636E
+NET_ERROR_MAC_VALIDATE_FAILED=MAC\u5730\u5740\u9A8C\u8BC1\u5931\u8D25
+NET_ERROR_GET_INSTANCE=\u83B7\u53D6\u670D\u52A1\u5668\u5B9E\u4F8B\u5931\u8D25
+NET_ERROR_JSON_REQUEST=\u751F\u6210\u7684json\u5B57\u7B26\u4E32\u9519\u8BEF
+NET_ERROR_JSON_RESPONSE=\u54CD\u5E94\u7684json\u5B57\u7B26\u4E32\u9519\u8BEF
+NET_ERROR_VERSION_HIGHER=\u534F\u8BAE\u7248\u672C\u4F4E\u4E8E\u5F53\u524D\u4F7F\u7528\u7684\u7248\u672C
+NET_SPARE_NO_CAPACITY=\u8BBE\u5907\u64CD\u4F5C\u5931\u8D25,\u5BB9\u91CF\u4E0D\u8DB3
+NET_ERROR_SOURCE_IN_USE=\u663E\u793A\u6E90\u88AB\u5176\u4ED6\u8F93\u51FA\u5360\u7528
+NET_ERROR_REAVE=\u9AD8\u7EA7\u7528\u6237\u62A2\u5360\u4F4E\u7EA7\u7528\u6237\u8D44\u6E90
+NET_ERROR_NETFORBID=\u7981\u6B62\u5165\u7F51
+NET_ERROR_GETCFG_MACFILTER=\u83B7\u53D6MAC\u8FC7\u6EE4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_MACFILTER=\u8BBE\u7F6EMAC\u8FC7\u6EE4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_IPMACFILTER=\u83B7\u53D6IP/MAC\u8FC7\u6EE4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_IPMACFILTER=\u8BBE\u7F6EIP/MAC\u8FC7\u6EE4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_OPERATION_OVERTIME=\u5F53\u524D\u64CD\u4F5C\u8D85\u65F6
+NET_ERROR_SENIOR_VALIDATE_FAILED=\u9AD8\u7EA7\u6821\u9A8C\u5931\u8D25
+NET_ERROR_DEVICE_ID_NOT_EXIST=\u8BBE\u5907ID\u4E0D\u5B58\u5728
+NET_ERROR_UNSUPPORTED=\u4E0D\u652F\u6301\u5F53\u524D\u64CD\u4F5C
+NET_ERROR_PROXY_DLLLOAD=\u4EE3\u7406\u5E93\u52A0\u8F7D\u5931\u8D25
+NET_ERROR_PROXY_ILLEGAL_PARAM=\u4EE3\u7406\u7528\u6237\u53C2\u6570\u4E0D\u5408\u6CD5
+NET_ERROR_PROXY_INVALID_HANDLE=\u4EE3\u7406\u53E5\u67C4\u65E0\u6548
+NET_ERROR_PROXY_LOGIN_DEVICE_ERROR=\u4EE3\u7406\u767B\u5165\u524D\u7AEF\u8BBE\u5907\u5931\u8D25
+NET_ERROR_PROXY_START_SERVER_ERROR=\u542F\u52A8\u4EE3\u7406\u670D\u52A1\u5931\u8D25
+NET_ERROR_SPEAK_FAILED=\u8BF7\u6C42\u558A\u8BDD\u5931\u8D25
+NET_ERROR_NOT_SUPPORT_F6=\u8BBE\u5907\u4E0D\u652F\u6301\u6B64F6\u63A5\u53E3\u8C03\u7528
+NET_ERROR_CD_UNREADY=\u5149\u76D8\u672A\u5C31\u7EEA
+NET_ERROR_DIR_NOT_EXIST=\u76EE\u5F55\u4E0D\u5B58\u5728
+NET_ERROR_UNSUPPORTED_SPLIT_MODE=\u8BBE\u5907\u4E0D\u652F\u6301\u7684\u5206\u5272\u6A21\u5F0F
+NET_ERROR_OPEN_WND_PARAM=\u5F00\u7A97\u53C2\u6570\u4E0D\u5408\u6CD5
+NET_ERROR_LIMITED_WND_COUNT=\u5F00\u7A97\u6570\u91CF\u8D85\u8FC7\u9650\u5236
+NET_ERROR_UNMATCHED_REQUEST=\u8BF7\u6C42\u547D\u4EE4\u4E0E\u5F53\u524D\u6A21\u5F0F\u4E0D\u5339\u914D
+NET_RENDER_ENABLELARGEPICADJUSTMENT_ERROR=Render\u5E93\u542F\u7528\u9AD8\u6E05\u56FE\u50CF\u5185\u90E8\u8C03\u6574\u7B56\u7565\u51FA\u9519
+NET_ERROR_UPGRADE_FAILED=\u8BBE\u5907\u5347\u7EA7\u5931\u8D25
+NET_ERROR_NO_TARGET_DEVICE=\u627E\u4E0D\u5230\u76EE\u6807\u8BBE\u5907
+NET_ERROR_NO_VERIFY_DEVICE=\u627E\u4E0D\u5230\u9A8C\u8BC1\u8BBE\u5907
+NET_ERROR_CASCADE_RIGHTLESS=\u65E0\u7EA7\u8054\u6743\u9650
+NET_ERROR_LOW_PRIORITY=\u4F4E\u4F18\u5148\u7EA7
+NET_ERROR_REMOTE_REQUEST_TIMEOUT=\u8FDC\u7A0B\u8BBE\u5907\u8BF7\u6C42\u8D85\u65F6
+NET_ERROR_LIMITED_INPUT_SOURCE=\u8F93\u5165\u6E90\u8D85\u51FA\u6700\u5927\u8DEF\u6570\u9650\u5236
+NET_ERROR_SET_LOG_PRINT_INFO=\u8BBE\u7F6E\u65E5\u5FD7\u6253\u5370\u5931\u8D25
+NET_ERROR_PARAM_DWSIZE_ERROR=\u5165\u53C2\u7684dwsize\u5B57\u6BB5\u51FA\u9519
+NET_ERROR_LIMITED_MONITORWALL_COUNT=\u7535\u89C6\u5899\u6570\u91CF\u8D85\u8FC7\u4E0A\u9650
+NET_ERROR_PART_PROCESS_FAILED=\u90E8\u5206\u8FC7\u7A0B\u6267\u884C\u5931\u8D25
+NET_ERROR_TARGET_NOT_SUPPORT=\u8BE5\u529F\u80FD\u4E0D\u652F\u6301\u8F6C\u53D1
+NET_ERROR_VISITE_FILE=\u8BBF\u95EE\u6587\u4EF6\u5931\u8D25
+NET_ERROR_DEVICE_STATUS_BUSY=\u8BBE\u5907\u5FD9
+NET_USER_PWD_NOT_AUTHORIZED=\u4FEE\u6539\u5BC6\u7801\u65E0\u6743\u9650
+NET_USER_PWD_NOT_STRONG=\u5BC6\u7801\u5F3A\u5EA6\u4E0D\u591F
+NET_ERROR_NO_SUCH_CONFIG=\u6CA1\u6709\u5BF9\u5E94\u7684\u914D\u7F6E
+NET_ERROR_AUDIO_RECORD_FAILED=\u5F55\u97F3\u5931\u8D25
+NET_ERROR_SEND_DATA_FAILED=\u6570\u636E\u53D1\u9001\u5931\u8D25
+NET_ERROR_OBSOLESCENT_INTERFACE=\u5E9F\u5F03\u63A5\u53E3
+NET_ERROR_INSUFFICIENT_INTERAL_BUF=\u5185\u90E8\u7F13\u51B2\u4E0D\u8DB3
+NET_ERROR_NEED_ENCRYPTION_PASSWORD=\u4FEE\u6539\u8BBE\u5907ip\u65F6,\u9700\u8981\u6821\u9A8C\u5BC6\u7801
+NET_ERROR_NOSUPPORT_RECORD=\u8BBE\u5907\u4E0D\u652F\u6301\u6B64\u8BB0\u5F55\u96C6
+NET_ERROR_SERIALIZE_ERROR=\u6570\u636E\u5E8F\u5217\u5316\u9519\u8BEF
+NET_ERROR_DESERIALIZE_ERROR=\u6570\u636E\u53CD\u5E8F\u5217\u5316\u9519\u8BEF
+NET_ERROR_LOWRATEWPAN_ID_EXISTED=\u8BE5\u65E0\u7EBFID\u5DF2\u5B58\u5728
+NET_ERROR_LOWRATEWPAN_ID_LIMIT=\u65E0\u7EBFID\u6570\u91CF\u5DF2\u8D85\u9650
+NET_ERROR_LOWRATEWPAN_ID_ABNORMAL=\u65E0\u7EBF\u5F02\u5E38\u6DFB\u52A0
+NET_ERROR_ENCRYPT=\u52A0\u5BC6\u6570\u636E\u5931\u8D25
+NET_ERROR_PWD_ILLEGAL=\u65B0\u5BC6\u7801\u4E0D\u5408\u89C4\u8303
+NET_ERROR_DEVICE_ALREADY_INIT=\u8BBE\u5907\u5DF2\u7ECF\u521D\u59CB\u5316
+NET_ERROR_SECURITY_CODE=\u5B89\u5168\u7801\u9519\u8BEF
+NET_ERROR_SECURITY_CODE_TIMEOUT=\u5B89\u5168\u7801\u8D85\u51FA\u6709\u6548\u671F
+NET_ERROR_GET_PWD_SPECI=\u83B7\u53D6\u5BC6\u7801\u89C4\u8303\u5931\u8D25
+NET_ERROR_NO_AUTHORITY_OF_OPERATION=\u65E0\u6743\u9650\u8FDB\u884C\u8BE5\u64CD\u4F5C
+NET_ERROR_DECRYPT=\u89E3\u5BC6\u6570\u636E\u5931\u8D25
+NET_ERROR_2D_CODE=2Dcode\u6821\u9A8C\u5931\u8D25
+NET_ERROR_INVALID_REQUEST=\u975E\u6CD5\u7684RPC\u8BF7\u6C42
+NET_ERROR_PWD_RESET_DISABLE=\u5BC6\u7801\u91CD\u7F6E\u529F\u80FD\u5DF2\u5173\u95ED
+NET_ERROR_PLAY_PRIVATE_DATA=\u663E\u793A\u79C1\u6709\u6570\u636E\uFF0C\u6BD4\u5982\u89C4\u5219\u6846\u7B49\u5931\u8D25
+NET_ERROR_ROBOT_OPERATE_FAILED=\u673A\u5668\u4EBA\u64CD\u4F5C\u5931\u8D25
+NET_ERROR_PHOTOSIZE_EXCEEDSLIMIT=\u56FE\u7247\u5927\u5C0F\u8D85\u9650
+NET_ERROR_USERID_INVALID=\u7528\u6237ID\u4E0D\u5B58\u5728
+NET_ERROR_EXTRACTFEATURE_FAILED=\u7167\u7247\u7279\u5F81\u503C\u63D0\u53D6\u5931\u8D25
+NET_ERROR_PHOTO_EXIST=\u7167\u7247\u5DF2\u5B58\u5728
+NET_ERROR_PHOTO_OVERFLOW=\u7167\u7247\u6570\u91CF\u8D85\u8FC7\u4E0A\u9650
+NET_ERROR_CHANNEL_ALREADY_OPENED=\u901A\u9053\u5DF2\u7ECF\u6253\u5F00
+NET_ERROR_CREATE_SOCKET=\u521B\u5EFA\u5957\u63A5\u5B57\u5931\u8D25
+NET_ERROR_CHANNEL_NUM=\u901A\u9053\u53F7\u9519\u8BEF
+NET_ERROR_FACE_RECOGNITION_SERVER_GROUP_ID_EXCEED=\u7EC4ID\u8D85\u8FC7\u6700\u5927\u503C
+
+# RealPlay Info
+START_REALPLAY=\u5F00\u59CB\u9884\u89C8
+STOP_REALPLAY=\u505C\u6B62\u9884\u89C8
+ATTACH=\u667A\u80FD\u8BA2\u9605
+DETACH=\u53D6\u6D88\u8BA2\u9605
+REALPLAY_SUCCEED=\u5B9E\u65F6\u9884\u89C8\u6210\u529F
+REALPLAY_FAILED=\u5B9E\u65F6\u9884\u89C8\u5931\u8D25
+
+CHN=\u901A\u9053
+CHANNEL=\u901A\u9053
+STREAM_TYPE=\u7801\u6D41
+MASTER_AND_SUB_STREAM=\u4E3B\u8F85\u7801\u6D41
+MASTER_STREAM=\u4E3B\u7801\u6D41
+SUB_STREAM=\u8F85\u7801\u6D41
+
+# Capture Picture
+LOCAL_CAPTURE=\u672C\u5730\u6293\u56FE
+REMOTE_CAPTURE=\u8FDC\u7A0B\u6293\u56FE
+TIMER_CAPTURE=\u5B9A\u65F6\u6293\u56FE
+STOP_CAPTURE=\u505C\u6B62\u6293\u56FE
+INTERVAL=\u95F4\u9694
+
+TIME_INTERVAL_ILLEGAL=\u65F6\u95F4\u95F4\u9694\u8F93\u5165\u975E\u6CD5 
+PLEASE_START_REALPLAY=\u8BF7\u5148\u6253\u5F00\u5B9E\u65F6\u9884\u89C8
+
+# PTZ Info
+PTZ_CONTROL=\u4E91\u53F0\u63A7\u5236
+LEFT_UP=\u5DE6\u4E0A
+UP=\u4E0A
+RIGHT_UP=\u53F3\u4E0A
+LEFT=\u5DE6
+RIGHT=\u53F3
+LEFT_DOWN=\u5DE6\u4E0B
+DOWN=\u4E0B
+RIGHT_DOWN=\u53F3\u4E0B
+
+ZOOM_ADD=\u53D8\u500D+
+ZOOM_DEC=\u53D8\u500D-
+FOCUS_ADD=\u8C03\u7126+
+FOCUS_DEC=\u8C03\u7126-
+IRIS_ADD=\u5149\u5708+
+IRIS_DEC=\u5149\u5708-
+
+SPEED=\u901F\u7387
+
+#ITS
+EVENT_INFO=\u4E8B\u4EF6\u4FE1\u606F
+EVENT_NAME=\u4E8B\u4EF6\u540D\u79F0
+EVENT_TIME=\u4E8B\u4EF6\u65F6\u95F4
+EVENT_PICTURE=\u4E8B\u4EF6\u4EE5\u53CA\u56FE\u7247
+PLATE_PICTURE=\u8F66\u724C\u56FE
+LICENSE_PLATE=\u8F66\u724C\u53F7
+PLATE_TYPE=\u8F66\u724C\u7C7B\u578B
+PLATE_COLOR=\u8F66\u724C\u989C\u8272
+VEHICLE_TYPE=\u8F66\u8F86\u7C7B\u578B
+VEHICLE_SIZE=\u8F66\u8F86\u5927\u5C0F
+VEHICLE_COLOR=\u8F66\u8F86\u989C\u8272
+FILE_COUNT=\u6587\u4EF6\u603B\u6570
+FILE_INDEX=\u6587\u4EF6\u7F16\u53F7
+GROUP_ID=\u7EC4ID
+ILLEGAL_PLACE=\u8FDD\u6CD5\u5730\u70B9
+LANE_NUMBER=\u8F66\u9053\u53F7
+MANUAL_CAPTURE=\u624B\u52A8\u6293\u62CD
+OPEN_STROBE=\u51FA\u5165\u53E3\u5F00\u95F8
+CLOSE_STROBE=\u51FA\u5165\u53E3\u5173\u95F8
+INDEX=\u5E8F\u53F7
+
+OPERATE=\u64CD\u4F5C
+FUNCTION=\u57FA\u672C
+
+UNDEFINED_COLOR=\u672A\u5B9A\u4E49\u989C\u8272
+BLACK=\u9ED1\u8272
+WHITE=\u767D\u8272
+RED=\u7EA2\u8272
+BLUE=\u84DD\u8272
+GREEN=\u7EFF\u8272
+YELLOW=\u9EC4\u8272
+GRAY=\u7070\u8272
+ORANGE=\u6A59\u8272
+
+LIGHT_DUTY=\u5C0F\u578B\u8F66
+MEDIUM=\u4E2D\u578B\u8F66
+OVER_SIZE=\u5927\u578B\u8F66
+MINI_SIZE=\u5FAE\u578B\u8F66
+LARGE_SIZE=\u957F\u8F66
+
+NO_PLATENUMBER=\u65E0\u8F66\u724C
+MANUALSNAP_SUCCEED=\u624B\u52A8\u6293\u62CD\u6210\u529F
+MANUALSNAP_FAILED=\u624B\u52A8\u6293\u62CD\u5931\u8D25
+
+OPEN_STROBE_SUCCEED=\u5F00\u95F8\u6210\u529F
+OPEN_STROBE_FAILED=\u5F00\u95F8\u5931\u8D25
+CLOSE_STROBE_SUCCEED=\u5173\u95F8\u6210\u529F
+CLOSE_STROBE_FAILED=\u5173\u95F8\u5931\u8D25
+
+EVENT_IVS_TRAFFICJUNCTION=\u4EA4\u901A\u5361\u53E3
+EVENT_IVS_TRAFFIC_RUNREDLIGHT=\u95EF\u7EA2\u706F
+EVENT_IVS_TRAFFIC_OVERLINE=\u538B\u8F66\u9053\u7EBF
+EVENT_IVS_TRAFFIC_RETROGRADE=\u9006\u884C
+EVENT_IVS_TRAFFIC_TURNLEFT=\u8FDD\u7AE0\u5DE6\u8F6C
+EVENT_IVS_TRAFFIC_TURNRIGHT=\u8FDD\u7AE0\u53F3\u8F6C
+EVENT_IVS_TRAFFIC_UTURN=\u8FDD\u7AE0\u6389\u5934
+EVENT_IVS_TRAFFIC_OVERSPEED=\u8D85\u901F
+EVENT_IVS_TRAFFIC_UNDERSPEED=\u4F4E\u901F
+EVENT_IVS_TRAFFIC_PARKING=\u8FDD\u7AE0\u505C\u8F66
+EVENT_IVS_TRAFFIC_WRONGROUTE=\u4E0D\u6309\u8F66\u9053\u884C\u9A76
+EVENT_IVS_TRAFFIC_CROSSLANE=\u8FDD\u7AE0\u53D8\u9053
+EVENT_IVS_TRAFFIC_OVERYELLOWLINE=\u538B\u9EC4\u7EBF
+EVENT_IVS_TRAFFIC_YELLOWPLATEINLANE=\u9EC4\u724C\u8F66\u5360\u9053
+EVENT_IVS_TRAFFIC_PEDESTRAINPRIORITY=\u6591\u9A6C\u7EBF\u884C\u4EBA\u4F18\u5148
+EVENT_IVS_TRAFFIC_MANUALSNAP=\u4EA4\u901A\u624B\u52A8\u6293\u62CD
+EVENT_IVS_TRAFFIC_VEHICLEINROUTE=\u6709\u8F66\u5360\u9053
+EVENT_IVS_TRAFFIC_VEHICLEINBUSROUTE=\u5360\u7528\u516C\u4EA4\u8F66\u9053
+EVENT_IVS_TRAFFIC_BACKING=\u8FDD\u7AE0\u5012\u8F66
+EVENT_IVS_TRAFFIC_PARKINGSPACEPARKING=\u8F66\u4F4D\u6709\u8F66
+EVENT_IVS_TRAFFIC_PARKINGSPACENOPARKING=\u8F66\u4F4D\u65E0\u8F66
+EVENT_IVS_TRAFFIC_WITHOUT_SAFEBELT=\u4EA4\u901A\u672A\u7CFB\u5B89\u5168\u5E26
+
+# DownLoad Info
+DOWNLOAD_RECORD_BYTIME=\u6309\u65F6\u95F4\u4E0B\u8F7D
+DOWNLOAD_RECORD_BYFILE=\u6309\u6587\u4EF6\u4E0B\u8F7D
+QUERY=\u67E5\u8BE2 
+DOWNLOAD=\u4E0B\u8F7D
+STOP_DOWNLOAD=\u505C\u6B62\u4E0B\u8F7D
+START_TIME=\u5F00\u59CB\u65F6\u95F4
+END_TIME=\u7ED3\u675F\u65F6\u95F4
+RECORD_TYPE=\u5F55\u50CF\u7C7B\u578B
+
+GENERAL_RECORD=\u666E\u901A\u5F55\u50CF
+ALARM_RECORD=\u62A5\u8B66\u5F55\u50CF
+MOTION_DETECTION=\u79FB\u52A8\u68C0\u6D4B\u5F55\u50CF
+CARD_NUMBER_RECORD=\u5361\u53F7\u5F55\u50CF
+INTELLIGENT_DETECTION=\u667A\u80FD\u5F55\u50CF
+POS_RECORD=POS\u5F55\u50CF
+
+QUERY_RECORD_IS_NOT_EXIST=\u67E5\u8BE2\u5F55\u50CF\u4E0D\u5B58\u5728
+PLEASE_CHECK_RECORD_TIME=\u8BF7\u68C0\u67E5\u5F55\u50CF\u65F6\u95F4
+PLEASE_SELECT_TIME_AGAIN=\u8BF7\u91CD\u65B0\u9009\u62E9\u65F6\u95F4\uFF0C\u6700\u5927\u65F6\u95F4\u5DEE6\u5C0F\u65F6
+DOWNLOAD_COMPLETED=\u4E0B\u8F7D\u7ED3\u675F
+
+PLEASE_FIRST_QUERY_RECORD=\u8BF7\u5148\u67E5\u8BE2\u5F55\u50CF
+PLEASE_FIRST_SELECT_ROW_WITH_DATA=\u8BF7\u5148\u9009\u62E9\u6709\u5F55\u50CF\u7684\u4E00\u884C
+
+# Time Set
+YEAR=\u5E74
+MONTH=\u6708
+DAY=\u65E5
+HOUR=\u65F6
+MINUTE=\u5206
+SECOND=\u79D2
+CONFIRM=\u786E\u5B9A
+CANCEL=\u53D6\u6D88
+DATE_CHOOSER=\u65F6\u95F4\u9009\u62E9
+
+MONDAY=\u661F\u671F\u4E00
+TUESDAY=\u661F\u671F\u4E8C
+WEDNESDAY=\u661F\u671F\u4E09
+THURSDAY=\u661F\u671F\u56DB
+FRIDAY=\u661F\u671F\u4E94
+SATURDAY=\u661F\u671F\u516D
+SUNDAY=\u661F\u671F\u65E5
+
+# Talk
+TRANSMIT_TYPE=\u8F6C\u53D1\u7C7B\u578B
+LOCAL_TRANSMIT_TYPE=\u672C\u5730\uFF08\u4E0D\u8F6C\u53D1\uFF09
+REMOTE_TRANSMIT_TYPE=\u8FDC\u7A0B\uFF08\u8F6C\u53D1\uFF09
+TRANSMIT_CHANNEL=\u8F6C\u53D1\u901A\u9053
+START_TALK=\u5F00\u59CB\u901A\u8BDD
+STOP_TALK=\u7ED3\u675F\u901A\u8BDD
+TALK_FAILED=\u901A\u8BDD\u5931\u8D25
+
+# DeviceSearchAndInt
+DEVICESEARCH_OPERATE=\u8BBE\u5907\u641C\u7D22\u64CD\u4F5C
+DEVICESEARCH_RESULT=\u8BBE\u5907\u641C\u7D22\u7ED3\u679C
+DEVICEINIT=\u8BBE\u5907\u521D\u59CB\u5316
+
+DEVICESEARCH=\u8BBE\u5907\u641C\u7D22
+DEVICE_POINT_TO_POINT_SEARCH=\u8BBE\u5907IP\u70B9\u5BF9\u70B9\u641C\u7D22
+
+START_SEARCH=\u5F00\u59CB\u641C\u7D22
+STOP_SEARCH=\u505C\u6B62\u641C\u7D22
+
+START_IP=\u8D77\u59CBIP
+END_IP=\u7ED3\u675FIP
+
+DEVICE_TYPE=\u8BBE\u5907\u7C7B\u578B
+MAC=MAC
+SN=\u5E8F\u5217\u53F7
+DEVICE_INIT_STATE=\u521D\u59CB\u5316\u72B6\u6001
+INIT_PASSWD=\u521D\u59CB\u5316\u5BC6\u7801
+PHONE=\u624B\u673A\u53F7
+MAIL=\u90AE\u7BB1
+IP_VERSION=IP\u7248\u672C
+SUB_MASK=\u5B50\u7F51\u63A9\u7801
+GETWAY=\u7F51\u5173
+DETAIL_TYPE=\u8BE6\u7EC6\u7C7B\u578B
+HTTP_PORT=HTTP\u7AEF\u53E3\u53F7
+LOCAL_IP=\u672C\u5730ip
+CONFIRM_PASSWORD=\u786E\u8BA4\u5BC6\u7801
+
+OLD_DEVICE=\u8001\u8BBE\u5907
+DONOT_SUPPORT_INITIALIZATION=\u4E0D\u652F\u6301\u521D\u59CB\u5316
+NOT_INITIALIZED=\u672A\u521D\u59CB\u5316
+INITIALIZED=\u5DF2\u521D\u59CB\u5316
+
+THE_IP_CONTROL_SCOPE=\u8303\u56F4\u592A\u5927\uFF0C\u8BF7\u63A7\u5236\u57281000\u4E2A\u4E4B\u95F4
+PLEASE_FIRST_SELECT_INITIALIZED_DEVICE=\u8BF7\u5148\u9009\u62E9\u9700\u8981\u521D\u59CB\u5316\u7684\u8BBE\u5907
+PLEASE_INPUT_PHONE=\u8BF7\u8F93\u5165\u624B\u673A\u53F7
+PLEASE_INPUT_MAIL=\u8BF7\u8F93\u5165\u90AE\u7BB1
+INCONSISTENT=\u5BC6\u7801\u548C\u786E\u8BA4\u5BC6\u7801\u4E0D\u4E00\u81F4
+PLEASE_CHECK_IP=\u8BF7\u68C0\u67E5IP
+
+SEARCHING_WAITING=\u6B63\u5728\u641C\u7D22\uFF0C\u8BF7\u7B49\u5F85\u641C\u7D22\u7ED3\u675F
+
+START_LISTEN=\u5F00\u59CB\u76D1\u542C
+STOP_LISTEN=\u505C\u6B62\u76D1\u542C
+SHOW_ALARM_EVENT=\u62A5\u8B66\u4E8B\u4EF6\u7ED3\u679C\u4FE1\u606F
+ALARM_LISTEN_FAILED=\u62A5\u8B66\u76D1\u542C\u5931\u8D25
+ALARM_MESSAGE=\u62A5\u8B66\u4FE1\u606F
+
+EXTERNAL_ALARM=\u5916\u90E8\u62A5\u8B66
+MOTION_ALARM=\u52A8\u6001\u68C0\u6D4B\u62A5\u8B66
+VIDEOLOST_ALARM=\u89C6\u9891\u4E22\u5931\u62A5\u8B66
+SHELTER_ALARM=\u89C6\u9891\u906E\u6321\u62A5\u8B66
+DISKFULL_ALARM=\u786C\u76D8\u6EE1\u62A5\u8B66
+DISKERROR_ALARM=\u574F\u786C\u76D8\u62A5\u8B66
+START=\u5F00\u59CB
+STOP=\u7ED3\u675F
+
+CURRENT_TIME=\u5F53\u524D\u65F6\u95F4
+DEVICE_REBOOT=\u8BBE\u5907\u91CD\u542F
+SYNCHRONIZE_TIME=\u65F6\u95F4\u540C\u6B65
+REBOOT=\u91CD\u542F
+SET_TIME=\u8BBE\u7F6E\u65F6\u95F4
+GET_TIME=\u83B7\u53D6\u65F6\u95F4
+REBOOT_TIPS=\u60A8\u786E\u5B9A\u8981\u91CD\u542F\u5417\uFF1F
+OPERATE_SUCCESS=\u64CD\u4F5C\u6210\u529F
+
+#FaceRecognition
+FACE_GROUP_ID=\u4EBA\u8138\u5E93ID
+FACE_GROUP_NAME=\u4EBA\u8138\u5E93\u540D\u79F0
+PERSON_COUNT=\u4EBA\u5458\u4E2A\u6570
+
+GROUP_OPERATE=\u4EBA\u8138\u5E93\u64CD\u4F5C
+PERSON_OPERATE=\u4EBA\u5458\u64CD\u4F5C
+
+TARGET_RECOGNITION_EVENT=\u76EE\u6807\u8BC6\u522B\u4E8B\u4EF6
+TARGET_DETECT_EVENT=\u76EE\u6807\u68C0\u6D4B\u4E8B\u4EF6
+
+GLOBAL_PICTURE=\u5168\u666F\u56FE
+PERSON_PICTURE=\u4EBA\u8138\u56FE
+CANDIDATE_PICTURE=\u5019\u9009\u4EBA\u56FE
+
+TIME=\u65F6\u95F4
+SEX=\u6027\u522B
+AGE=\u5E74\u9F84
+COLOR=
+EYE=\u773C\u775B
+MOUTH=\u5634\u5DF4
+MASK=\u53E3\u7F69
+BEARD=\u80E1\u5B50
+MALE=\u7537
+FEMALE=\u5973
+ID_CARD=\u8EAB\u4EFD\u8BC1
+OFFICE_CARD=\u519B\u5B98\u8BC1
+PASSPORT=\u62A4\u7167
+UNIDENTIFIED=\u672A\u8BC6\u522B
+HAVE_BEARD=\u6709\u80E1\u5B50
+NO_BEARD=\u6CA1\u80E1\u5B50
+OPEN_MOUTH=\u5F20\u5634
+CLOSE_MOUTH=\u95ED\u5634
+YELLOW_COLOR=
+BLACK_COLOR=
+WHITE_COLOR=
+OPEN_EYE=\u7741\u773C
+CLOSE_EYE=\u95ED\u773C
+SMILE=\u5FAE\u7B11
+ANGER=\u6124\u6012
+SADNESS=\u60B2\u4F24
+DISGUST=\u538C\u6076
+FEAR=\u5BB3\u6015
+SURPRISE=\u60CA\u8BB6
+NEUTRAL=\u6B63\u5E38
+LAUGH=\u5927\u7B11
+WEAR_MASK=\u6234\u53E3\u7F69
+NO_MASK=\u6CA1\u6234\u53E3\u7F69
+WEAR_GLASSES=\u6234\u773C\u955C
+NO_GLASSES=\u4E0D\u6234\u773C\u955C
+UNKNOW=\u672A\u77E5
+UNLIMITED=\u4E0D\u9650
+
+NAME=\u59D3\u540D
+BIRTHDAY=\u751F\u65E5
+ID_NO=\u8BC1\u4EF6\u53F7
+ID_TYPE=\u8BC1\u4EF6\u7C7B\u578B
+SIMILARITY=\u76F8\u4F3C\u5EA6
+UID=\u4EBA\u5458\u6807\u8BC6\u7B26
+STRANGER=\u964C\u751F\u4EBA
+GLASSES=\u773C\u955C
+PICTURE_PATH=\u56FE\u7247\u8DEF\u5F84
+FACE_LIBRARY_ID=\u4EBA\u8138\u5E93ID
+FACE_LIBRARY_NAME=\u4EBA\u8138\u5E93\u540D\u79F0
+
+
+ADD=\u6DFB\u52A0
+MODIFY=\u4FEE\u6539
+DELETE=\u5220\u9664
+FRESH=\u5237\u65B0
+ADD_GROUP=\u6DFB\u52A0\u4EBA\u8138\u5E93
+MODIFY_GROUP=\u4FEE\u6539\u4EBA\u8138\u5E93
+DEL_GROUP=\u5220\u9664\u4EBA\u8138\u5E93
+DISPOSITION=\u5E03\u63A7
+DEL_DISPOSITION=\u64A4\u63A7
+
+FIND_CONDITION=\u67E5\u627E\u6761\u4EF6
+FIND_PERSON=\u67E5\u627E\u4EBA\u5458
+ADD_PERSON=\u6DFB\u52A0\u4EBA\u5458
+MODIFY_PERSON=\u4FEE\u6539\u4EBA\u5458
+DEL_PERSON=\u5220\u9664\u4EBA\u5458
+
+PREVIOUSPAGE=\u4E0A\u4E00\u9875
+LASTPAGE=\u4E0B\u4E00\u9875
+SELECT_PICTURE=\u9009\u62E9\u56FE\u7247
+SEARCH_BY_PIC=\u4EE5\u56FE\u641C\u56FE
+DOWNLOAD_QUERY_PICTURE=\u4E0B\u8F7D\u67E5\u8BE2\u5230\u7684\u56FE\u7247
+FACE_LIBRARY=\u4EBA\u8138\u5E93
+HISTORY_LIBRARY=\u5386\u53F2\u5E93
+CHOOSE_FACE_PIC=\u8BF7\u9009\u62E9\u4EBA\u8138\u56FE\u7247
+EVENT_TYPE=\u4E8B\u4EF6\u7C7B\u578B
+PAGES_NUMBER=\u9875\u6570
+
+SIMILARITY_RANGE=\u76F8\u4F3C\u5EA6\u8303\u56F4[0, 100]
+PLEASE_INPUT_GROUPNAME=\u8BF7\u8F93\u5165\u4EBA\u8138\u5E93\u540D\u79F0
+PLEASE_SELECT_GROUP=\u8BF7\u9009\u62E9\u4EBA\u8138\u5E93
+
+PLEASE_SELECT_PERSON=\u8BF7\u9009\u62E9\u4EBA\u5458
+PLEASE_ADD_DISPOSITION_INFO=\u8BF7\u6DFB\u52A0\u5E03\u63A7\u4FE1\u606F
+PLEASE_SELECT_DEL_DISPOSITION_INFO=\u8BF7\u9009\u62E9\u64A4\u63A7\u4FE1\u606F
+
+#AutoRegister
+AUTOREGISTER_LISTEN=\u4E3B\u52A8\u6CE8\u518C\u76D1\u542C
+DEVICE_CONFIG=\u8BBE\u5907\u914D\u7F6E
+DEVICE_LIST=\u8BBE\u5907\u5217\u8868
+DEVICE_MANAGER=\u8BBE\u5907\u7BA1\u7406
+ADD_DEVICE=\u6DFB\u52A0\u8BBE\u5907
+MODIFY_DEVICE=\u4FEE\u6539\u8BBE\u5907
+DELETE_DEVICE=\u5220\u9664\u8BBE\u5907
+CLEAR_DEVICE=\u6E05\u7A7A\u8BBE\u5907
+IMPORT_DEVICE=\u5BFC\u5165\u8BBE\u5907
+EXPORT_DEVICE=\u5BFC\u51FA\u8BBE\u5907
+DEVICE_ID=\u8BBE\u5907ID
+ENABLE=\u542F\u7528
+REGISTER_ADDRESS=\u6CE8\u518C\u5730\u5740
+REGISTER_PORT=\u6CE8\u518C\u7AEF\u53E3\u53F7
+GET=\u83B7\u53D6
+SET=\u8BBE\u7F6E
+RECORD=\u5F55\u97F3
+DEVICE_LOGIN=\u8BBE\u5907\u5DF2\u767B\u5F55
+
+ALREADY_EXISTED=\u5DF2\u5B58\u5728
+ALREADY_EXISTED_WHETHER_OR_NOT_TO_COVER=\u5DF2\u5B58\u5728\uFF0C\u662F\u5426\u8986\u76D6(\u5426\uFF0C\u4E0D\u4F1A\u5BFC\u51FA)
+FILE_OPEN_PLEASE_CLOSE_FILE=\u6587\u4EF6\u88AB\u6253\u5F00\uFF0C\u8BF7\u5148\u5173\u95ED\u6587\u4EF6
+IMPORT_COMPLETION=\u5BFC\u5165\u5B8C\u6210
+EXPORT_COMPLETION=\u5BFC\u51FA\u5B8C\u6210
+FILE_NOT_EXIST=\u6587\u4EF6\u4E0D\u5B58\u5728
+
+PLEASE_INPUT=\u8BF7\u8F93\u5165
+MAX_SUPPORT_100=\u6700\u5927\u652F\u6301100\u4E2A
+
+#Attendance
+ATTENDANCE=\u8003\u52E4\u673A
+USER_ID=\u7528\u6237ID
+USER_NAME=\u7528\u6237\u540D
+CARD_NO=\u5361\u53F7
+QUERY_CONDITION=\u67E5\u8BE2\u6761\u4EF6
+USER_OPERATE=\u7528\u6237\u64CD\u4F5C
+FINGERPRINT_OPERATE=\u6307\u7EB9\u64CD\u4F5C
+OPERATE_BY_USER_ID=\u901A\u8FC7\u7528\u6237ID\u64CD\u4F5C\u6307\u7EB9
+OPERATE_BY_FINGERPRINT_ID=\u901A\u8FC7\u6307\u7EB9ID\u64CD\u4F5C\u6307\u7EB9
+FINGERPRINT_ID=\u6307\u7EB9ID
+SEARCH=\u67E5\u627E
+SEARCH_FINGERPRINT=\u67E5\u627E\u6307\u7EB9
+ADD_FINGERPRINT=\u6DFB\u52A0\u6307\u7EB9
+DELETE_FINGERPRINT=\u5220\u9664\u6307\u7EB9
+SUBSCRIBE=\u8BA2\u9605
+UNSUBSCRIBE=\u53D6\u6D88\u8BA2\u9605
+USER_LIST=\u7528\u6237\u5217\u8868
+NEXT_PAGE=\u4E0B\u4E00\u9875
+USER_INFO=\u7528\u6237\u4FE1\u606F
+DOOROPEN_METHOD=\u5F00\u95E8\u65B9\u5F0F
+FINGERPRINT=\u6307\u7EB9
+FINGERPRINT_INFO=\u6307\u7EB9\u4FE1\u606F
+FINGERPRINT_DATA=\u6307\u7EB9\u6570\u636E
+CARD=\u5361
+DELETE_FINGERPRINT_PROMPT=\u5C06\u4F1A\u5220\u9664\u8BE5\u7528\u6237\u4E0B\u6240\u6709\u6307\u7EB9\u6570\u636E
+SUBSCRIBE_FAILED=\u8BA2\u9605\u5931\u8D25
+FINGERPRINT_ID_ILLEGAL=\u6307\u7EB9ID\u975E\u6CD5
+FINGERPRINT_COLLECTION=\u6307\u7EB9\u91C7\u96C6
+START_COLLECTION=\u5F00\u59CB\u91C7\u96C6
+STOP_COLLECTION=\u505C\u6B62\u91C7\u96C6
+IN_THE_COLLECTION=\u91C7\u96C6\u4E2D...
+COLLECTION_COMPLETED=\u91C7\u96C6\u5B8C\u6210
+COLLECTION_FAILED=\u91C7\u96C6\u5931\u8D25
+FINGERPRINT_ID_NOT_EXIST=\u6307\u7EB9ID\u4E0D\u5B58\u5728
+USER_ID_EXCEED_LENGTH=\u7528\u6237ID\u8D85\u8FC7\u6700\u5927\u957F\u5EA6
+USER_NAME_EXCEED_LENGTH=\u7528\u6237\u540D\u8D85\u8FC7\u6700\u5927\u957F\u5EA6
+CARD_NO_EXCEED_LENGTH=\u5361\u53F7\u8D85\u8FC7\u6700\u5927\u957F\u5EA6
+CARD_NAME_EXCEED_LENGTH=\u5361\u540D\u8D85\u8FC7\u6700\u5927\u9650\u5236
+CARD_PASSWD_EXCEED_LENGTH=\u5361\u5BC6\u7801\u8D85\u8FC7\u6700\u5927\u9650\u5236
+
+#Gate
+
+GATE=\u4EBA\u8138\u5F00\u95E8
+CARD_OPERATE=\u5361\u64CD\u4F5C
+CARD_INFO=\u5361\u4FE1\u606F
+CARD_MANAGER=\u5361\u7BA1\u7406
+
+CLEAR=\u6E05\u7A7A
+
+OPEN_STATUS=\u5F00\u95E8\u72B6\u6001
+OPEN_METHOD=\u5F00\u95E8\u65B9\u5F0F
+
+TEMPERATURE=\u6E29\u5EA6
+MASK_STATUS=\u53E3\u7F69\u72B6\u6001
+
+CARD_UNKNOW=\u672A\u77E5\u5361
+CARD_GENERAL=\u4E00\u822C\u5361
+CARD_VIP=VIP\u5361
+CARD_GUEST=\u6765\u5BBE\u5361
+CARD_PATROL=\u5DE1\u903B\u5361
+CARD_BACKLIST=\u7981\u6B62\u540D\u5355\u5361
+CARD_COERCE=\u80C1\u8FEB\u5361
+CARD_POLLING=\u5DE1\u68C0\u5361
+CARD_MOTHERCARD=\u6BCD\u5361
+
+STATE_UNKNOWN=\u672A\u77E5
+STATE_NORMAL=\u6B63\u5E38
+STATE_LOSE=\u4E22\u5931
+STATE_LOGOFF=\u6CE8\u9500
+STATE_FREEZE=\u51BB\u7ED3
+STATE_ARREARS=\u6B20\u8D39
+STATE_OVERDUE=\u903E\u671F
+STATE_PREARREARS=\u9884\u6B20\u8D39
+
+RECORD_NO=\u8BB0\u5F55\u96C6\u7F16\u53F7
+CARD_NAME=\u5361\u540D
+CARD_STATUS=\u5361\u72B6\u6001
+CARD_PASSWORD=\u5361\u5BC6\u7801
+CARD_TYPE=\u5361\u7C7B\u578B
+CARD_NUM=\u8BC1\u4EF6\u53F7
+USE_TIMES=\u4F7F\u7528\u6B21\u6570
+IS_FIRST_ENTER=\u662F\u5426\u9996\u5361
+IS_VALID=\u662F\u5426\u6709\u6548
+VALID_PERIOD=\u6709\u6548\u671F
+VALID_START_TIME=\u6709\u6548\u5F00\u59CB\u65F6\u95F4
+VALID_END_TIME=\u6709\u6548\u7ED3\u675F\u65F6\u95F4
+FIRST_ENTER=\u9996\u5361
+NO_FIRST_ENTER=\u975E\u9996\u5361
+VALID=\u6709\u6548
+INVALID=\u65E0\u6548
+
+PLEASE_SELECT_CARD=\u8BF7\u9009\u62E9\u5361
+PLEASE_INPUT_CARDNO=\u8BF7\u8F93\u5165\u5361\u53F7
+PLEASE_INPUT_USERID=\u8BF7\u8F93\u5165\u7528\u6237ID
+WANT_CLEAR_ALL_INFO=\u4F60\u662F\u5426\u60F3\u8981\u6E05\u7A7A\u6240\u6709\u4FE1\u606F?
+
+ADD_CARD_INDO_FAILED=\u6DFB\u52A0\u5361\u4FE1\u606F\u5931\u8D25 
+ADD_CARD_INFO_AND_PERSON_PICTURE_SUCCEED=\u6DFB\u52A0\u5361\u4FE1\u606F\u548C\u4EBA\u8138\u6210\u529F
+ADD_CARD_INFO_SUCCEED_BUT_ADD_PERSON_PICTURE_FAILED=\u6DFB\u52A0\u5361\u4FE1\u606F\u6210\u529F\uFF0C\u4F46\u6DFB\u52A0\u4EBA\u8138\u5931\u8D25
+CARD_EXISTED_ADD_PERSON_PICTURE_SUCCEED=\u5361\u4FE1\u606F\u5DF2\u5B58\u5728\uFF0C\u6DFB\u52A0\u4EBA\u8138\u6210\u529F
+
+MODIFY_CARD_INFO_SUCCEED=\u4FEE\u6539\u5361\u4FE1\u606F\u6210\u529F
+MODIFY_CARD_INFO_FAILED=\u4FEE\u6539\u5361\u4FE1\u606F\u5931\u8D25
+MODIFY_CARD_INFO_AND_PERSON_PICTURE_SUCCEED=\u4FEE\u6539\u5361\u4FE1\u606F\u548C\u4EBA\u8138\u6210\u529F
+MODIFY_CARD_INFO_SUCCEED_BUT_MODIFY_PERSON_PICTURE_FAILED=\u4FEE\u6539\u5361\u4FE1\u606F\u6210\u529F\uFF0C\u4F46\u4FEE\u6539\u4EBA\u8138\u5931\u8D25
+
+NET_ACCESS_DOOROPEN_METHOD_UNKNOWN=\u672A\u77E5
+NET_ACCESS_DOOROPEN_METHOD_PWD_ONLY=\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD=\u5237\u5361\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_FIRST=\u5148\u5237\u5361\u540E\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_PWD_FIRST=\u5148\u5BC6\u7801\u540E\u5237\u5361\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_REMOTE=\u8FDC\u7A0B\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_BUTTON=\u5F00\u9501\u6309\u94AE\u8FDB\u884C\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT=\u6307\u7EB9\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_PWD_CARD_FINGERPRINT=\u5BC6\u7801+\u5237\u5361+\u6307\u7EB9\u7EC4\u5408\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_PWD_FINGERPRINT=\u5BC6\u7801+\u6307\u7EB9\u7EC4\u5408\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_FINGERPRINT=\u5237\u5361+\u6307\u7EB9\u7EC4\u5408\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_PERSONS=\u591A\u4EBA\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_KEY=\u94A5\u5319\u5F00\u95E8
+NET_ACCESS_DOOROPEN_METHOD_COERCE_PWD=\u80C1\u8FEB\u5BC6\u7801\u5F00\u95E8
+NET_ACCESS_DOOROPEN_METHOD_QRCODE=\u4E8C\u7EF4\u7801\u5F00\u95E8
+NET_ACCESS_DOOROPEN_METHOD_FACE_RECOGNITION=\u76EE\u6807\u8BC6\u522B\u5F00\u95E8
+NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD=\u4EBA\u8BC1\u5BF9\u6BD4
+NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD_AND_IDCARD=\u8EAB\u4EFD\u8BC1+ \u4EBA\u8BC1\u6BD4\u5BF9
+NET_ACCESS_DOOROPEN_METHOD_BLUETOOTH=\u84DD\u7259\u5F00\u95E8
+NET_ACCESS_DOOROPEN_METHOD_CUSTOM_PASSWORD=\u4E2A\u6027\u5316\u5BC6\u7801\u5F00\u95E8
+NET_ACCESS_DOOROPEN_METHOD_USERID_AND_PWD=UserID+\u5BC6\u7801
+NET_ACCESS_DOOROPEN_METHOD_FACE_AND_PWD=\u4EBA\u8138+\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_PWD=\u6307\u7EB9+\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_FACE=\u6307\u7EB9+\u4EBA\u8138\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FACE=\u5237\u5361+\u4EBA\u8138\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FACE_OR_PWD=\u4EBA\u8138\u6216\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_PWD=\u6307\u7EB9\u6216\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_FACE=\u6307\u7EB9\u6216\u4EBA\u8138\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FACE=\u5237\u5361\u6216\u4EBA\u8138\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT=\u5237\u5361\u6216\u6307\u7EB9\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_FACE_AND_PWD=\u6307\u7EB9+\u4EBA\u8138+\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FACE_AND_PWD=\u5237\u5361+\u4EBA\u8138+\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FINGERPRINT_AND_PWD=\u5237\u5361+\u6307\u7EB9+\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_PWD_AND_FACE=\u5361+\u6307\u7EB9+\u4EBA\u8138\u7EC4\u5408\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_FACE_OR_PWD=\u6307\u7EB9\u6216\u4EBA\u8138\u6216\u5BC6\u7801
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FACE_OR_PWD =\u5361\u6216\u4EBA\u8138\u6216\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT_OR_FACE=\u5361\u6216\u6307\u7EB9\u6216\u4EBA\u8138\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FINGERPRINT_AND_FACE_AND_PWD=\u5361+\u6307\u7EB9+\u4EBA\u8138+\u5BC6\u7801\u7EC4\u5408\u5F00\u9501 
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT_OR_FACE_OR_PWD=\u5361\u6216\u6307\u7EB9\u6216\u4EBA\u8138\u6216\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FACEIPCARDANDIDCARD_OR_CARD_OR_FACE=(\u8EAB\u4EFD\u8BC1+\u4EBA\u8BC1\u6BD4\u5BF9)\u6216 \u5237\u5361 \u6216 \u4EBA\u8138
+NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD_OR_CARD_OR_FACE=\u4EBA\u8BC1\u6BD4\u5BF9 \u6216 \u5237\u5361(\u4E8C\u7EF4\u7801) \u6216 \u4EBA\u8138
+
+#ThemalCamera
+THERMAL_CAMERA=\u70ED\u6210\u50CF
+THERMAL_OPERATE=\u64CD\u4F5C
+POINT_QUERY=\u67E5\u8BE2\u6D4B\u6E29\u70B9
+REGION_QUERY=\u67E5\u8BE2\u6D4B\u6E29\u533A\u57DF
+ITEM_QUERY=\u67E5\u8BE2\u6D4B\u6E29\u9879
+TEMPER_QUERY=\u67E5\u8BE2\u6E29\u5EA6
+HEATMAP=\u70ED\u56FE\u4FE1\u606F
+POINT_TEMPER=\u6D4B\u6E29\u70B9
+REGION_TEMPER=\u6D4B\u6E29\u533A\u57DF
+ITEM_TEMPER=\u6D4B\u6E29\u9879
+X=X
+Y=Y
+COORDINATE_ILLEGAL=\u5750\u6807\u975E\u6CD5
+QUERY_RESULT=\u67E5\u8BE2\u7ED3\u679C
+METER_TYPE=\u6D4B\u6E29\u9879\u7C7B\u522B
+TEMPER_UNIT=\u6E29\u5EA6\u5355\u4F4D
+TEMPER=\u6E29\u5EA6
+UNKNOWN=\u672A\u77E5
+SPOT=\u70B9
+LINE=\u7EBF
+AREA=\u533A\u57DF
+CENTIGRADE=\u6444\u6C0F\u5EA6
+FAHRENHEIT=\u534E\u6C0F\u5EA6
+KELVINS=\u5F00\u5C14\u6587
+PRESET_ID=\u9884\u7F6E\u70B9\u7F16\u53F7
+RULE_ID=\u89C4\u5219\u7F16\u53F7
+TEMPER_AVER=\u5E73\u5747\u6E29\u5EA6
+TEMPER_MAX=\u6700\u9AD8\u6E29\u5EA6
+TEMPER_MIN=\u6700\u4F4E\u6E29\u5EA6
+TEMPER_MAX_POINT=\u6700\u9AD8\u6E29\u5EA6\u5750\u6807
+TEMPER_MIN_POINT=\u6700\u4F4E\u6E29\u5EA6\u5750\u6807
+TEMPER_MID=\u4E2D\u95F4\u6E29\u5EA6
+TEMPER_STD=\u6807\u51C6\u65B9\u5DEE
+INPUT_ILLEGAL=\u8F93\u5165\u975E\u6CD5
+TEMPER_INFO=\u6D4B\u6E29\u4FE1\u606F
+FIVE_MINUTES=\u4E94\u5206\u949F
+TEN_MINUTES=\u5341\u5206\u949F
+FIFTEEN_MINUTES=\u5341\u4E94\u5206\u949F
+THIRTY_MINUTES=\u4E09\u5341\u5206\u949F
+SAVE_PERIOD=\u4FDD\u5B58\u5468\u671F
+QUERY_LIST=\u67E5\u8BE2\u5217\u8868
+RECORD_TIME=\u8BB0\u5F55\u65F6\u95F4
+ITEM_NAME=\u540D\u79F0
+COORDINATE=\u5750\u6807
+NO_RECORD=\u65E0\u8BB0\u5F55
+HEATMAP_OPERATE=\u64CD\u4F5C
+IDLE=\u7A7A\u95F2
+ACQUIRING=\u83B7\u53D6\u4E2D
+RADIOMETRY_ATTACH=\u8BA2\u9605\u70ED\u56FE\u6570\u636E
+RADIOMETRY_DETACH=\u505C\u6B62\u8BA2\u9605
+RADIOMETRY_FETCH=\u83B7\u53D6\u70ED\u56FE
+SAVE_HEATMAP=\u4FDD\u5B58\u70ED\u56FE
+HEATMAP_METADATA_INFO=\u70ED\u56FE\u5143\u6570\u636E
+HEIGHT=\u9AD8
+WIDTH=\u5BBD
+LENGTH=\u6570\u636E\u5927\u5C0F
+SENSOR_TYPE=\u673A\u82AF\u7C7B\u578B
+HEATMAP_SAVE_SUCCESS=\u70ED\u56FE\u4FDD\u5B58\u6210\u529F
+
+# matrix screen
+MATRIX_SCREEN=\u70B9\u9635\u5C4F\u4E0B\u53D1
+PASSING_STATE=\u8FC7\u8F66\u72B6\u6001
+PASSING_CAR=\u8FC7\u8F66
+NO_CAR=\u65E0\u8F66
+IN_TIME=\u5165\u573A\u65F6\u95F4
+OUT_TIME=\u51FA\u573A\u65F6\u95F4
+PLATE_NUMBER=\u8F66\u724C\u53F7\u7801
+CAR_OWNER=\u8F66\u4E3B
+PARKING_TIME=\u505C\u8F66\u65F6\u957F
+USER_TYPE=\u7528\u6237\u7C7B\u578B
+MONTHLY_CARD_USER=\u6708\u5361\u7528\u6237
+ANNUAL_CARD_USER=\u5E74\u5361\u7528\u6237
+LONG_TERM_USER=\u957F\u671F\u7528\u6237/VIP
+TEMPORARY_USER=\u4E34\u65F6\u7528\u6237/Visitor
+PARKING_CHARGE=\u505C\u8F66\u8D39
+DAYS_DUE=\u5230\u671F\u5929\u6570
+REMAINING_PARKING_SPACES=\u5269\u4F59\u8F66\u4F4D
+VEHICLES_NOT_ALLOWED_TO_PASS=\u4E0D\u5141\u8BB8\u8F66\u8F86\u901A\u8FC7
+ALLOWED_VEHICLES_TO_PASS=\u5141\u8BB8\u8F66\u8F86\u901A\u8FC7
+SET_UP=\u8BBE\u7F6E
+SUCCESSFULLY_ISSUED=\u4E0B\u53D1\u6210\u529F
+DELIVERY_FAILED=\u4E0B\u53D1\u5931\u8D25
+CUSTOM_USER_CLASS=\u81EA\u5B9A\u4E49\u7528\u6237\u7C7B
+REMARKS_INFORMATION=\u5907\u6CE8\u4FE1\u606F
+CUSTOM_INFORMATION=\u81EA\u5B9A\u4E49\u4FE1\u606F
+
+# \uFFFD\uFFFD\uFFFD\uFFFD\u0373\uFFFD\uFFFD
+HUMAN_NUMBER_STATISTIC_TITLE=\u4EBA\u6570\u7EDF\u8BA1
+HUMAN_NUMBER_STATISTIC_CONTROL=\u4EBA\u6570\u7EDF\u8BA1\u63A7\u5236
+
+HUMAN_NUMBER_STATISTIC_EVENT_TITLE=\u4EBA\u6570\u7EDF\u8BA1\u4E8B\u4EF6\u5217\u8868
+
+HUMAN_NUMBER_STATISTIC_EVENT_CHANNEL=\u901A\u9053
+HUMAN_NUMBER_STATISTIC_EVENT_TIME=\u4E8B\u4EF6\u65F6\u523B
+HUMAN_NUMBER_STATISTIC_EVENT_HOUR_IN=\u672C\u5C0F\u65F6\u8FDB
+HUMAN_NUMBER_STATISTIC_EVENT_HOUR_OUT=\u672C\u5C0F\u65F6\u51FA
+HUMAN_NUMBER_STATISTIC_EVENT_TODAY_IN=\u4ECA\u65E5\u8FDB
+HUMAN_NUMBER_STATISTIC_EVENT_TODAY_OUT=\u4ECA\u65E5\u51FA
+HUMAN_NUMBER_STATISTIC_EVENT_TOTAL_IN=\u603B\u5171\u8FDB
+HUMAN_NUMBER_STATISTIC_EVENT_TOTAL_OUT=\u603B\u5171\u51FA
+
+HUMAN_NUMBER_STATIC_EVENT_OSD_CLEAR=OSD\u6E05\u9664
+
+VTO_ALARM_EVENT_ROOM_NO=\u623F\u95F4\u53F7
+VTO_ALARM_EVENT_CARD_NO=\u5361\u53F7
+VTO_ALARM_EVENT_TIME=\u65F6\u95F4
+VTO_ALARM_EVENT_OPEN_METHOD=\u5F00\u95E8\u65B9\u5F0F
+VTO_ALARM_EVENT_STATUS=\u72B6\u6001
+
+VTO_REAL_LOAD_ROOM_NO=\u623F\u95F4\u53F7
+VTO_REAL_LOAD_CARD_NO=\u5361\u53F7
+VTO_REAL_LOAD_TIME=\u65F6\u95F4
+VTO_REAL_LOAD_EVENT_INFO=\u4E8B\u4EF6\u4FE1\u606F
+
+VTO_OPERATE_MANAGER_TITLE=\u5361\u4E0E\u6307\u7EB9\u4E0E\u4EBA\u8138\u7BA1\u7406
+VTO_OPERATE_MANAGER_REC_NO=\u7F16\u53F7
+VTO_OPERATE_MANAGER_ROOM_NO=\u623F\u95F4\u53F7
+VTO_OPERATE_MANAGER_CARD_NO=\u5361\u53F7
+VTO_OPERATE_MANAGER_FINGER_PRINT_DATA=\u6307\u7EB9\u6570\u636E
+
+VTO_OPERATE_INFO_TITLE=\u589E\u52A0
+
+VTO_OPERATE_COLLECTION_FINGER_PRINT_TITLE=\u91C7\u96C6\u6307\u7EB9
+DOOR_OPEN=\u5F00\u95E8
+DOOR_CLOSE=\u5173\u95E8
+EVENT_OPERATE=\u4E8B\u4EF6\u64CD\u4F5C
+START_REAL_LOAD_PIC=\u5F00\u59CB\u667A\u80FD\u76D1\u542C
+STOP_REAL_LOAD_PIC=\u505C\u6B62\u667A\u80FD\u76D1\u542C
+ALARM_EVENT=\u62A5\u8B66\u4E8B\u4EF6
+REAL_LOAD_EVENT=\u667A\u80FD\u4E8B\u4EF6
+COLLECTION_RESULT=\u91C7\u96C6\u7ED3\u679C
+NEED_FINGER_PRINT=\u9700\u8981\u6307\u7EB9
+FACE_INFO=\u4EBA\u8138\u4FE1\u606F
+OPEN=\u6253\u5F00
+VTO=\u53EF\u89C6\u5BF9\u8BB2\u95E8\u53E3\u673A
+TRAFFIC_ALLOW_LIST=\u667A\u80FD\u4EA4\u901A\u5141\u8BB8\u540D\u5355
+MODIFY_CARD_FACE_FAILED=\u4FEE\u6539\u4EBA\u8138\u5931\u8D25
+EM_MASK_STATE_UNKNOWN=\u672A\u77E5
+EM_MASK_STATE_NODISTI=\u672A\u8BC6\u522B
+EM_MASK_STATE_NOMASK=\u6CA1\u6234\u53E3\u7F69
+EM_MASK_STATE_WEAR=\u6234\u53E3\u7F69
+
+END_SEARCH=\u67E5\u8BE2\u7ED3\u675F
+DOWNLOAD_PICTURE=\u4E0B\u8F7D\u56FE\u7247
+ENTER_PICTURE_PATH=\u8BF7\u8F93\u5165\u56FE\u7247\u8DEF\u5F84
+LOADING=\u8BBE\u5907\u6B63\u5728\u5904\u7406\u4E2D
+REMOTE_OPEN_DOOR=\u8FDC\u7A0B\u5F00\u95E8
+QUERY_CARD_EXIST_FAILED=\u68C0\u67E5\u5361\u53F7\u662F\u5426\u5B58\u5728\u5931\u8D25
+CARD_EXIST=\u5361\u53F7\u5DF2\u5B58\u5728
+INPUT_ROOM_NO=\u8BF7\u8F93\u5165\u623F\u95F4\u53F7
+ROOM_NO_EXCEED_LENGTH=\u623F\u95F4\u53F7\u8D85\u8FC7\u6700\u5927\u957F\u5EA6
+REMOVE_CARD_FACE_FAILED=\u5220\u9664\u4EBA\u8138\u5931\u8D25
+
+
+#SCADA
+SCADA=\u52A8\u73AF\u4E3B\u673A
+SCADA_DEVICE_LIST=\u8BBE\u5907\u8868
+SCADA_POINT_LIST=\u70B9\u4F4D\u8868
+SCADA_ATTACH_ALARM=\u8BA2\u9605\u62A5\u8B66
+SCADA_ATTACH_INFO=\u8BA2\u9605\u4FE1\u606F
+SCADA_ATTACH=\u8BA2\u9605
+BTN_LIST = \u83B7\u53D6
+BTN_ATTACH = \u8BA2\u9605
+
+STOP_LISTEN_FAILED=\u505C\u6B62\u76D1\u542C\u5931\u8D25
+
+SCREEN_NUMBER=\u5C4F\u5E55\u7F16\u53F7
+TEXT_CONTENT=\u6587\u672C\u5185\u5BB9
+TEXT_CONTENT_TYPE=\u6587\u672C\u7C7B\u578B
+TEXT_CONTENT_COLOR=\u6587\u672C\u989C\u8272
+SCROLL_TYPE=\u6EDA\u52A8\u7C7B\u578B
+SCROLL_SPEED=\u6EDA\u52A8\u901F\u5EA6
+
+ORDINARY=\u666E\u901A
+QR_CODE=\u4E8C\u7EF4\u7801
+LOCAL_TIME=\u672C\u5730\u65F6\u95F4
+RESOURCE=\u8D44\u6E90\u6587\u4EF6
+
+NOT_ROLLING=\u4E0D\u6EDA\u52A8
+SCROLL_LEFT_AND_RIGHT=\u5DE6\u53F3\u6EDA\u52A8
+SCROLL_UP_AND_DOWN=\u4E0A\u4E0B\u7FFB\u9875\u6EDA\u52A8
+
+NUMBER_STRING=\u6570\u5B57\u5B57\u7B26\u4E32
+VOICE_TEXT=\u8BED\u97F3\u6587\u672C
+ISSUED=\u4E0B\u53D1
+PROMPT=\u8BF7\u6DFB\u52A0\u5BF9\u5E94\u53C2\u6570
+
+DEVICE_NAME=\u8BBE\u5907\u540D\u79F0
+POINT_ID=\u70B9\u4F4DID
+IF_VALID_SIGNAL_POINT=\u662F\u5426\u6709\u6548\u4FE1\u53F7\u70B9
+POINT_NAME=\u70B9\u4F4D\u540D\u79F0
+ALARM_DESCRIBE=\u62A5\u8B66\u63CF\u8FF0
+ALARM_LEVEL=\u62A5\u8B66\u7EA7\u522B
+ALARM_DELAY=\u62A5\u8B66\u65F6\u5EF6
+ALARM_TYPE=\u62A5\u8B66\u7C7B\u578B
+ALARM_TIME=\u62A5\u8B66\u65F6\u95F4
+COLLECT_TIME=\u91C7\u96C6\u65F6\u95F4
+
+
+ALLOWLIST_OPERATION=\u5141\u8BB8\u540D\u5355\u64CD\u4F5C
+SINGLE_UPLOAD =\u5355\u4E2A\u4E0A\u4F20
+LICENSE_PLATE_RUN=\u8F93\u5165\u8981\u67E5\u7684\u8F66\u724C\u53F7
+FUZZY_QUERY=\u6A21\u7CCA\u67E5\u8BE2
+DELETE_ALL=\u5168\u90E8\u5220\u9664
+AUTHORIZATION=\u6388\u6743
+UNAUTHORIZATION=\u672A\u6388\u6743
+BATCH_UPLOAD=\u6279\u91CF\u4E0A\u4F20
+BROWSE=\u6D4F\u89C8
+UPLOAD=\u4E0A\u4F20
+QUERY_INFORMATION=\u67E5\u8BE2\u4FE1\u606F
+DIALOG=\u5BF9\u8BDD\u6846
+LICENSE_PLATE_NUMBER=\u8F66\u724C\u53F7
+MODIFY_PANEL=\u4FEE\u6539\u9762\u677F
+SERIAL_NUMBER=\u5E8F\u53F7
+OPEN_MODEL=\u5F00\u95F8\u6A21\u5F0F
+LICENSE_PLATE_LENGTH_TOO_LONG=\u8F66\u724C\u957F\u5EA6\u8FC7\u957F
+NAME_TOO_LONG=\u540D\u5B57\u957F\u5EA6\u8FC7\u957F
+ADD_SUCCESS=\u6DFB\u52A0\u6210\u529F
+ADD_FAIL=\u6DFB\u52A0\u5931\u8D25
+DELETE_SUCCESS=\u5220\u9664\u6210\u529F
+DELETE_FAIL=\u5220\u9664\u5931\u8D25
+MODIFY_SUCCESS=\u4FEE\u6539\u6210\u529F
+MODIFY_FAIL=\u4FEE\u6539\u5931\u8D25
+UPLOAD_SUCCESS=\u4E0A\u4F20\u6210\u529F
+ENTER_QUERY_DATA=\u8BF7\u8F93\u5165\u8981\u67E5\u8BE2\u7684\u6570\u636E
+FILLING_RULES=\u586B\u5199\u5408\u6CD5\u5B57\u7B26
+UPLOAD_FAIL=\u4E0A\u4F20\u5931\u8D25
+UPLOADING=\u6B63\u5728\u4E0A\u4F20
+SURE_UPLOAD=\u786E\u5B9A\u4E0A\u4F20?
+DATA_NUMBER=\u6761\u6570\u636E
+SELECT_DATA=\u8BF7\u9009\u62E9\u6570\u636E
+
+
diff --git a/ycl-server/src/main/java/com/ycl/api/DH/common/Base64.java b/ycl-server/src/main/java/com/ycl/api/DH/common/Base64.java
index 630395b..6aa457c 100644
--- a/ycl-server/src/main/java/com/ycl/api/DH/common/Base64.java
+++ b/ycl-server/src/main/java/com/ycl/api/DH/common/Base64.java
@@ -24,8 +24,8 @@
  */
 
 
-// Base64瑙g爜 浣跨敤1.8鐗堟湰婧愮爜  閴翠簬1.8閮ㄥ垎鐗规��1.6鐗堟湰浣跨敤涓嶅埌 鏁呭彧淇濈暀鑳戒娇鐢ㄥ埌鐨勪唬鐮� 鍏朵綑鍒犻櫎 
-package com.netsdk.common;
+// Base64瑙g爜 浣跨敤1.8鐗堟湰婧愮爜  閴翠簬1.8閮ㄥ垎鐗规��1.6鐗堟湰浣跨敤涓嶅埌 鏁呭彧淇濈暀鑳戒娇鐢ㄥ埌鐨勪唬鐮� 鍏朵綑鍒犻櫎
+package com.ycl.api.DH.common;
 import java.nio.ByteBuffer;
 import java.nio.charset.Charset;
 import java.util.Arrays;
diff --git a/ycl-server/src/main/java/com/ycl/api/DH/common/BorderEx.java b/ycl-server/src/main/java/com/ycl/api/DH/common/BorderEx.java
index 91dc7f1..150e295 100644
--- a/ycl-server/src/main/java/com/ycl/api/DH/common/BorderEx.java
+++ b/ycl-server/src/main/java/com/ycl/api/DH/common/BorderEx.java
@@ -1,4 +1,4 @@
-package com.netsdk.common;
+package com.ycl.api.DH.common;
 
 import javax.swing.BorderFactory;
 import javax.swing.JComponent;
@@ -11,7 +11,7 @@
 	public static void set(JComponent object, String title, int width) {
 		Border innerBorder = BorderFactory.createTitledBorder(title);
 	    Border outerBorder = BorderFactory.createEmptyBorder(width, width, width, width);
-	    object.setBorder(BorderFactory.createCompoundBorder(outerBorder, innerBorder));	 
+	    object.setBorder(BorderFactory.createCompoundBorder(outerBorder, innerBorder));
 	}
 
 }
diff --git a/ycl-server/src/main/java/com/ycl/api/DH/common/CaseMenu.java b/ycl-server/src/main/java/com/ycl/api/DH/common/CaseMenu.java
index 7a573ab..901b3ad 100644
--- a/ycl-server/src/main/java/com/ycl/api/DH/common/CaseMenu.java
+++ b/ycl-server/src/main/java/com/ycl/api/DH/common/CaseMenu.java
@@ -1,4 +1,4 @@
-package com.netsdk.common;
+package com.ycl.api.DH.common;
 
 import java.lang.reflect.Method;
 import java.util.NoSuchElementException;
@@ -6,12 +6,12 @@
 import java.util.Vector;
 
 public class CaseMenu {
-	
+
 	public static class Item {
 		private Object object;
 		private String itemName;
 		private String methodName;
-		
+
 		public Item(Object object, String itemName, String methodName) {
 			super();
 			this.object = object;
@@ -31,33 +31,33 @@
 			return methodName;
 		}
 	}
-	
+
 	private Vector<Item> items;
 
 	public CaseMenu() {
 		super();
 		items = new Vector<Item>();
 	}
-	
+
 	public void addItem(Item item) {
 		items.add(item);
 	}
-	
+
 	private void showItem() {
 		final String format = "%2d\t%-20s\n";
-		int index = 0; 
+		int index = 0;
 		System.out.printf(format, index++, "exit App");
 		for (Item item : items) {
 			System.out.printf(format, index++, item.getItemName());
 		}
 		System.out.println("Please input a item index to invoke the method:");
 	}
-	
+
 	public void run() {
 		Scanner scanner = new Scanner(System.in);
-		while(true) {			
-			showItem();			
-			try {		
+		while(true) {
+			showItem();
+			try {
 				int input = Integer.parseInt(scanner.nextLine());
 
 				if (input <= 0 ) {
@@ -66,12 +66,12 @@
 //					System.exit(0);
 					break;
 				}
-					
+
 				if (input < 0 || input > items.size()) {
 					System.err.println("Input Error Item Index.");
 					continue;
 				}
-				
+
 				Item item = items.get(input - 1);
 				Class<?> itemClass = item.getObject().getClass();
 				Method method = itemClass.getMethod(item.getMethodName());
@@ -85,9 +85,9 @@
 				continue;
 			} catch (Exception e) {
 				e.printStackTrace();
-			} 
+			}
 		}
-		
+
 		scanner.close();
 	}
 }
diff --git a/ycl-server/src/main/java/com/ycl/api/DH/common/ErrorCode.java b/ycl-server/src/main/java/com/ycl/api/DH/common/ErrorCode.java
index 2819205..d32e9a2 100644
--- a/ycl-server/src/main/java/com/ycl/api/DH/common/ErrorCode.java
+++ b/ycl-server/src/main/java/com/ycl/api/DH/common/ErrorCode.java
@@ -1,8 +1,7 @@
-package com.netsdk.common;
+package com.ycl.api.DH.common;
 
 import com.ycl.api.DH.lib.LastError;
-import com.ycl.api.DH.lib.NetSDKLib;
-
+import com.ycl.api.DH.common.Res;
 /**
  * 鐧诲綍璁惧璁惧閿欒鐘舵��
  */
diff --git a/ycl-server/src/main/java/com/ycl/api/DH/common/LoginPanel.java b/ycl-server/src/main/java/com/ycl/api/DH/common/LoginPanel.java
index 57afcbe..70312b0 100644
--- a/ycl-server/src/main/java/com/ycl/api/DH/common/LoginPanel.java
+++ b/ycl-server/src/main/java/com/ycl/api/DH/common/LoginPanel.java
@@ -1,4 +1,4 @@
-package com.netsdk.common;
+package com.ycl.api.DH.common;
 
 import java.awt.Dimension;
 import java.awt.FlowLayout;
@@ -9,7 +9,7 @@
 import javax.swing.JPanel;
 import javax.swing.JPasswordField;
 import javax.swing.JTextField;
-
+import com.ycl.api.DH.common.Res;
 import com.ycl.api.DH.lib.ToolKits;
 
 /*
diff --git a/ycl-server/src/main/java/com/ycl/api/DH/common/PaintPanel.java b/ycl-server/src/main/java/com/ycl/api/DH/common/PaintPanel.java
index b431bcb..ec19bc1 100644
--- a/ycl-server/src/main/java/com/ycl/api/DH/common/PaintPanel.java
+++ b/ycl-server/src/main/java/com/ycl/api/DH/common/PaintPanel.java
@@ -1,4 +1,4 @@
-package com.netsdk.common;
+package com.ycl.api.DH.common;
 
 import java.awt.Color;
 import java.awt.Graphics;
@@ -11,8 +11,8 @@
  */
 public class PaintPanel extends JPanel {
 	private static final long serialVersionUID = 1L;
-	private Image image; //鑳屾櫙鍥剧墖	
-	
+	private Image image; //鑳屾櫙鍥剧墖
+
 	public PaintPanel() {
 		super();
 		setOpaque(true); //闈為�忔槑
@@ -20,16 +20,16 @@
 		setBackground(Color.GRAY);
 		setForeground(new Color(0, 0, 0));
 	}
-	
+
 	//璁剧疆鍥剧墖鐨勬柟娉�
 	public void setImage(Image image) {
 		this.image = image;
 	}
-	
+
 	protected void paintComponent(Graphics g) {    //閲嶅啓缁樺埗缁勪欢澶栬
 		if(image != null) {
 			g.drawImage(image, 0, 0, getWidth(), getHeight(), this);//缁樺埗鍥剧墖涓庣粍浠跺ぇ灏忕浉鍚�
 		}
 		super.paintComponent(g); // 鎵ц瓒呯被鏂规硶
-	}	
+	}
 }
diff --git a/ycl-server/src/main/java/com/ycl/api/DH/common/Res.java b/ycl-server/src/main/java/com/ycl/api/DH/common/Res.java
index fe5e0f9..5db2f70 100644
--- a/ycl-server/src/main/java/com/ycl/api/DH/common/Res.java
+++ b/ycl-server/src/main/java/com/ycl/api/DH/common/Res.java
@@ -1,4 +1,4 @@
-package com.netsdk.common;
+package com.ycl.api.DH.common;
 
 import java.util.Locale;
 import java.util.ResourceBundle;
diff --git a/ycl-server/src/main/java/com/ycl/api/DH/frame/RealplayEx.java b/ycl-server/src/main/java/com/ycl/api/DH/frame/RealplayEx.java
index b2defb2..b9cce20 100644
--- a/ycl-server/src/main/java/com/ycl/api/DH/frame/RealplayEx.java
+++ b/ycl-server/src/main/java/com/ycl/api/DH/frame/RealplayEx.java
@@ -1,6 +1,6 @@
 package com.ycl.api.DH.frame;
 
-import com.netsdk.common.CaseMenu;
+import com.ycl.api.DH.common.CaseMenu;
 import com.sun.jna.Pointer;
 import com.sun.jna.ptr.IntByReference;
 import com.ycl.api.DH.lib.NetSDKLib;
diff --git a/ycl-server/src/main/java/com/ycl/api/DH/lib/ToolKits.java b/ycl-server/src/main/java/com/ycl/api/DH/lib/ToolKits.java
index 542979d..ca2e4bb 100644
--- a/ycl-server/src/main/java/com/ycl/api/DH/lib/ToolKits.java
+++ b/ycl-server/src/main/java/com/ycl/api/DH/lib/ToolKits.java
@@ -19,8 +19,8 @@
 import javax.swing.UIManager;
 import javax.swing.filechooser.FileFilter;
 
-import com.netsdk.common.ErrorCode;
-import com.netsdk.common.PaintPanel;
+import com.ycl.api.DH.common.ErrorCode;
+import com.ycl.api.DH.common.PaintPanel;
 
 
 import com.sun.jna.Memory;
diff --git a/ycl-server/src/main/java/com/ycl/api/DH/module/LoginModule.java b/ycl-server/src/main/java/com/ycl/api/DH/module/LoginModule.java
index 3b81c95..5ad0cbb 100644
--- a/ycl-server/src/main/java/com/ycl/api/DH/module/LoginModule.java
+++ b/ycl-server/src/main/java/com/ycl/api/DH/module/LoginModule.java
@@ -2,14 +2,14 @@
 
 import com.sun.jna.Native;
 import com.sun.jna.Pointer;
+import com.sun.jna.ptr.IntByReference;
 import com.ycl.api.DH.lib.NetSDKLib;
 import com.ycl.api.DH.lib.NetSDKLib.LLong;
 import com.ycl.api.DH.lib.NetSDKLib.NET_IN_LOGIN_WITH_HIGHLEVEL_SECURITY;
 import com.ycl.api.DH.lib.NetSDKLib.NET_OUT_LOGIN_WITH_HIGHLEVEL_SECURITY;
 import com.ycl.api.DH.lib.ToolKits;
-import com.ycl.api.DH.lib.structure.NET_CFG_GBMODE_INFO;
-import com.ycl.api.DH.lib.structure.NET_GBMODE_CUSTOMTITLE_INFO;
-import com.ycl.api.DH.lib.structure.NET_TITLE_OSD_INFO;
+import com.ycl.api.DH.lib.structure.*;
+import com.ycl.utils.StringUtils;
 import lombok.extern.slf4j.Slf4j;
 
 import java.io.File;
@@ -166,31 +166,28 @@
             System.err.println("CLIENT_QueryDeviceTime Failed!" + ToolKits.getErrorCodePrint());
             return null;
         }
-        NetSDKLib.NET_OSD_CUSTOM_TITLE custom_title = new NetSDKLib.NET_OSD_CUSTOM_TITLE();
         String date = deviceTime.toStringTime();
         date = date.replace("/", "-");
         log.info("鎴愬姛鑾峰彇妫�娴媜sd鏃堕棿" + date);
+
+        NET_CFG_GBMODE_INFO reserve = new NET_CFG_GBMODE_INFO();
+
         NET_CFG_GBMODE_INFO osdInfo = new NET_CFG_GBMODE_INFO();
         osdInfo.write();
-        Pointer pointer = osdInfo.getPointer();
-        boolean b = netsdk.CLIENT_GetConfig(m_hLoginHandle, NET_EM_CFG_CUSTOMTITLE, 0, custom_title.getPointer(), 1024, 3000, null);
-//        log.info("osd缁撴灉,鑷畾涔夋爣棰樹俊鎭湁鏁堜釜鏁帮細{}锛屾槸鍚﹀彔鍔犲埌棰勮鏄剧ず{}锛屾槸鍚﹀彔鍔犲埌涓荤爜娴佽棰戠紪鐮亄}" ,osdInfo.nCustomTitleNum,osdInfo.bPreviewBlend,osdInfo.bEncodeBlend);
-        if(!b){
-            log.info("璋冪敤澶辫触");
-        }else {
+        boolean b = netsdk.CLIENT_GetConfig(m_hLoginHandle, NET_EM_CFG_GBMODE, 0, osdInfo.getPointer(), osdInfo.size(), 3000, reserve.getPointer());
+        if (!b) {
+            log.info(("CLIENT_GetConfig Failed!" + ToolKits.getErrorCodePrint()));
+        } else {
             osdInfo.read();
-            log.info("osd缁撴灉,鑷畾涔夋爣棰樹俊鎭湁鏁堜釜鏁帮細{}锛屾槸鍚﹀彔鍔犲埌棰勮鏄剧ず{}锛屾槸鍚﹀彔鍔犲埌涓荤爜娴佽棰戠紪鐮亄}" ,osdInfo.nCustomTitleNum,osdInfo.bPreviewBlend,osdInfo.bEncodeBlend);
             NET_GBMODE_CUSTOMTITLE_INFO[] stuCustomTitle = osdInfo.stuCustomTitle;
             for (NET_GBMODE_CUSTOMTITLE_INFO title : stuCustomTitle) {
                 NET_TITLE_OSD_INFO[] stuOSD = title.stuOSD;
                 for (NET_TITLE_OSD_INFO osd : stuOSD) {
                     String osdStr = null;
-                    log.info("----->"+ Arrays.toString(osd.szText));
-                    try {
-                        osdStr = new String(osd.szText, "GBK");
-                    } catch (UnsupportedEncodingException e) {
+                    osdStr = new String(osd.szText, StandardCharsets.UTF_8);
+                    if (!StringUtils.isEmpty(osdStr)) {
+                        log.info("osd浜岀骇鏂囨湰" + osdStr);
                     }
-                    log.info("osd浜岀骇鏂囨湰" + osd+osdStr);
                 }
             }
         }
diff --git a/ycl-server/src/main/java/com/ycl/api/HK/HKApi.java b/ycl-server/src/main/java/com/ycl/api/HK/HKApi.java
index 8998fad..1b4e116 100644
--- a/ycl-server/src/main/java/com/ycl/api/HK/HKApi.java
+++ b/ycl-server/src/main/java/com/ycl/api/HK/HKApi.java
@@ -8,14 +8,22 @@
 import org.apache.http.client.methods.HttpGet;
 import org.apache.http.impl.client.DefaultHttpClient;
 import org.apache.http.util.EntityUtils;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.xml.sax.InputSource;
 
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import java.io.StringReader;
 import java.net.URI;
 
 @Slf4j
 public class HKApi {
-    public static void test() {
+    public static void getOsdByIP(String ip) {
         DefaultHttpClient httpclient = new DefaultHttpClient();
-        String hostUrl = "http://51.95.68.80";
+        String hostUrl = "http://" + ip;
         // 鑾峰彇鐒﹁窛
         String url = hostUrl + "/ISAPI/System/Video/inputs/channels/1/overlays";
         URI serverURI = null;
@@ -36,8 +44,20 @@
             HttpResponse response = httpclient.execute(httpGet);
 
             String resultString = EntityUtils.toString(response.getEntity(), "utf-8");
-
             log.info(resultString);
+            //瑙f瀽xml
+            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+            DocumentBuilder builder = factory.newDocumentBuilder();
+            Document document = builder.parse(new InputSource(new StringReader(resultString)));
+            document.getDocumentElement().normalize();
+            NodeList nodeList = document.getElementsByTagName("TextOverlay");
+            for (int i = 0; i < nodeList.getLength(); i++) {
+                Node node = nodeList.item(i);
+                if (node.getNodeType() == Node.ELEMENT_NODE) {
+                    Element element = (Element) node;
+                    log.info("TEXT : " + element.getElementsByTagName("displayText").item(0).getTextContent());
+                }
+            }
         } catch (Exception e) {
             e.printStackTrace();
         }
diff --git a/ycl-server/src/main/java/com/ycl/task/OsdTask.java b/ycl-server/src/main/java/com/ycl/task/OsdTask.java
index 0aa9e2d..0e75f94 100644
--- a/ycl-server/src/main/java/com/ycl/task/OsdTask.java
+++ b/ycl-server/src/main/java/com/ycl/task/OsdTask.java
@@ -1,19 +1,16 @@
 package com.ycl.task;
 
 
-import com.ycl.api.DH.frame.RealplayEx;
 import com.ycl.api.DH.module.LoginModule;
 import com.ycl.api.HK.HKApi;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;
 
-import static com.ycl.api.DH.lib.enumeration.NET_EM_CFG_OPERATE_TYPE.NET_EM_CFG_CUSTOMTITLE;
-
 @Slf4j
 @Component("OsdTask")
 public class OsdTask {
-    public void test() {
-//        HKApi.test();
+    public void getOSD() {
+        HKApi.getOsdByIP("51.95.68.80");
         long loginId = LoginModule.login("51.95.67.189", 80, "admin", "zg@2024dx");
         String osdTime = LoginModule.getOsdTime();
         LoginModule.logout();
diff --git a/ycl-server/src/main/resources/dynamic-lib-load.xml b/ycl-server/src/main/resources/dynamic-lib-load.xml
index 839215f..4cc688c 100644
--- a/ycl-server/src/main/resources/dynamic-lib-load.xml
+++ b/ycl-server/src/main/resources/dynamic-lib-load.xml
@@ -5,35 +5,33 @@
         <lib>dhconfigsdk</lib>
         <lib>dhnetsdk</lib>
         <lib>dhplay</lib>
+        <lib>RenderEngine</lib>
         <lib>ImageAlg</lib>
         <lib>Infra</lib>
         <lib>IvsDrawer</lib>
         <lib>StreamConvertor</lib>
-        <lib>jninetsdk</lib>
     </win64>
     <win32>
         <lib>avnetsdk</lib>
         <lib>dhconfigsdk</lib>
         <lib>dhnetsdk</lib>
         <lib>dhplay</lib>
+        <lib>RenderEngine</lib>
         <lib>Infra</lib>
         <lib>ImageAlg</lib>
         <lib>StreamConvertor</lib>
-        <lib>jninetsdk</lib>
     </win32>
     <linux64>
         <lib>avnetsdk</lib>
         <lib>dhnetsdk</lib>
         <lib>dhconfigsdk</lib>
         <lib>StreamConvertor</lib>
-        <lib>jninetsdk</lib>
+		<lib>ImageAlg</lib>
     </linux64>
     <linux32>
         <lib>avnetsdk</lib>
         <lib>dhconfigsdk</lib>
         <lib>dhnetsdk</lib>
-        <lib>StreamConvertor</lib>
-        <lib>jninetsdk</lib>
     </linux32>
     <mac64>
         <lib>avnetsdk</lib>
@@ -42,4 +40,3 @@
         <lib>StreamConvertor</lib>
     </mac64>
 </dynamic-lib>
-
diff --git a/ycl-server/src/main/resources/res_en_US.properties b/ycl-server/src/main/resources/res_en_US.properties
new file mode 100644
index 0000000..caab389
--- /dev/null
+++ b/ycl-server/src/main/resources/res_en_US.properties
@@ -0,0 +1,1076 @@
+# FunctionList
+FUNCTIONLIST=FunctionList
+REALPLAY=RealPlay
+CAPTURE_PICTURE=Capture Picture
+MULTIREALPLAY=MultiRealPlay
+DOWNLOAD_RECORD=Download Record
+ITS_EVENT=TrafficEvent
+TALK=Talk
+DEVICESEARCH_DEVICEINIT=DeviceSearchAndInit
+PTZ=PTZ Control
+TARGETRECOGNITION=TargetRecognition
+ALARM_LISTEN=Alarm Listen
+DEVICE_CONTROL=Device Control
+AUTOREGISTER=AutoRegister
+REMOTE_OPEN_DOOR=Remote Open Door
+
+ONLINE=Online
+
+# Login Info
+DEVICE_IP=Device IP
+DEVICE_PORT=Port
+USERNAME=UserName
+PASSWORD=Password
+IP=IP
+
+LOGIN=Login
+LOGOUT=Logout
+
+LOGIN_SUCCEED=Login Succeed
+LOGIN_FAILED=Login Failed
+DISCONNECT=Device disconnect
+DISCONNECT_RECONNECTING=Device disconnect, reconnecting
+PROMPT_MESSAGE=Prompt Message
+ERROR_MESSAGE=Error Message
+
+SUCCEED=Succeed
+FAILED=Failed
+
+PLEASE_INPUT_DEVICE_IP=Please input device IP
+PLEASE_INPUT_DEVICE_PORT=Please input device port
+PLEASE_INPUT_DEVICE_USERNAME=Please input userName
+PLEASE_INPUT_DEVICE_PASSWORD=Please input password
+PLEASE_INPUT_CONFIRM_PASSWORD=Please input confirm password
+
+# Error Info
+NET_NOERROR=No error 
+NET_ERROR=Unknown error
+NET_SYSTEM_ERROR=System error
+NET_NETWORK_ERROR=Protocol error it may result from network timeout
+NET_DEV_VER_NOMATCH=Device protocol does not match 
+NET_INVALID_HANDLE=Handle is invalid
+NET_OPEN_CHANNEL_ERROR=Failed to open channel 
+NET_CLOSE_CHANNEL_ERROR=Failed to close channel 
+NET_ILLEGAL_PARAM=User parameter is illegal 
+NET_SDK_INIT_ERROR=SDK initialization error 
+NET_SDK_UNINIT_ERROR=SDK clear error 
+NET_RENDER_OPEN_ERROR=Error occurs when apply for render resources
+NET_DEC_OPEN_ERROR=Error occurs when opening the decoder library 
+NET_DEC_CLOSE_ERROR=Error occurs when closing the decoder library 
+NET_MULTIPLAY_NOCHANNEL=The detected channel number is 0 in multiple-channel preview 
+NET_TALK_INIT_ERROR=Failed to initialize record library 
+NET_TALK_NOT_INIT=The record library has not been initialized
+NET_TALK_SENDDATA_ERROR=Error occurs when sending out audio data 
+NET_REAL_ALREADY_SAVING=The real-time has been protected
+NET_NOT_SAVING=The real-time data has not been save
+NET_OPEN_FILE_ERROR=Error occurs when opening the file
+NET_PTZ_SET_TIMER_ERROR=Failed to enable PTZ to control timer
+NET_RETURN_DATA_ERROR=Error occurs when verify returned data
+NET_INSUFFICIENT_BUFFER=There is no sufficient buffer
+NET_NOT_SUPPORTED=The current SDK does not support this funcntion
+NET_NO_RECORD_FOUND=There is no searched result
+NET_NOT_AUTHORIZED=You have no operation right
+NET_NOT_NOW=Can not operate right now 
+NET_NO_TALK_CHANNEL=There is no audio talk channel
+NET_NO_AUDIO=There is no audio
+NET_NO_INIT=The network SDK has not been initialized
+NET_DOWNLOAD_END=The download completed
+NET_EMPTY_LIST=There is no searched result
+NET_ERROR_GETCFG_SYSATTR=Failed to get system property setup
+NET_ERROR_GETCFG_SERIAL=Failed to get SN
+NET_ERROR_GETCFG_GENERAL=Failed to get general property
+NET_ERROR_GETCFG_DSPCAP=Failed to get DSP capacity description
+NET_ERROR_GETCFG_NETCFG=Failed to get network channel setup
+NET_ERROR_GETCFG_CHANNAME=Failed to get channel name
+NET_ERROR_GETCFG_VIDEO=Failed to get video property
+NET_ERROR_GETCFG_RECORD=Failed to get record setup
+NET_ERROR_GETCFG_PRONAME=Failed to get decoder protocol name 
+NET_ERROR_GETCFG_FUNCNAME=Failed to get 232 COM function name
+NET_ERROR_GETCFG_485DECODER=Failed to get decoder property
+NET_ERROR_GETCFG_232COM=Failed to get 232 COM setup
+NET_ERROR_GETCFG_ALARMIN=Failed to get external alarm input setup
+NET_ERROR_GETCFG_ALARMDET=Failed to get motion detection alarm
+NET_ERROR_GETCFG_SYSTIME=Failed to get device time
+NET_ERROR_GETCFG_PREVIEW=Failed to get preview parameter
+NET_ERROR_GETCFG_AUTOMT=Failed to get audio maintenance setup
+NET_ERROR_GETCFG_VIDEOMTRX=Failed to get video matrix setup
+NET_ERROR_GETCFG_COVER=Failed to get privacy mask zone setup
+NET_ERROR_GETCFG_WATERMAKE=Failed to get video watermark setup
+NET_ERROR_GETCFG_MULTICAST=Failed to get config, omulticast port by channel
+NET_ERROR_SETCFG_GENERAL=Failed to modify general property
+NET_ERROR_SETCFG_NETCFG=Failed to modify channel setup
+NET_ERROR_SETCFG_CHANNAME=Failed to modify channel name
+NET_ERROR_SETCFG_VIDEO=Failed to modify video channel 
+NET_ERROR_SETCFG_RECORD=Failed to modify record setup 
+NET_ERROR_SETCFG_485DECODER=Failed to modify decoder property 
+NET_ERROR_SETCFG_232COM=Failed to modify 232 COM setup 
+NET_ERROR_SETCFG_ALARMIN=Failed to modify external input alarm setup
+NET_ERROR_SETCFG_ALARMDET=Failed to modify motion detection alarm setup 
+NET_ERROR_SETCFG_SYSTIME=Failed to modify device time 
+NET_ERROR_SETCFG_PREVIEW=Failed to modify preview parameter
+NET_ERROR_SETCFG_AUTOMT=Failed to modify auto maintenance setup 
+NET_ERROR_SETCFG_VIDEOMTRX=Failed to modify video matrix setup 
+NET_ERROR_SETCFG_COVER=Failed to modify privacy mask zone
+NET_ERROR_SETCFG_WATERMAKE=Failed to modify video watermark setup 
+NET_ERROR_SETCFG_WLAN=Failed to modify wireless network information 
+NET_ERROR_SETCFG_WLANDEV=Failed to select wireless network device
+NET_ERROR_SETCFG_REGISTER=Failed to modify the actively registration parameter setup
+NET_ERROR_SETCFG_CAMERA=Failed to modify camera property
+NET_ERROR_SETCFG_INFRARED=Failed to modify IR alarm setup
+NET_ERROR_SETCFG_SOUNDALARM=Failed to modify audio alarm setup
+NET_ERROR_SETCFG_STORAGE=Failed to modify storage position setup
+NET_AUDIOENCODE_NOTINIT=The audio encode port has not been successfully initialized 
+NET_DATA_TOOLONGH=The data are too long
+NET_UNSUPPORTED=The device does not support current operation 
+NET_DEVICE_BUSY=Device resources is not sufficient
+NET_SERVER_STARTED=The server has boot up 
+NET_SERVER_STOPPED=The server has not fully boot up 
+NET_LISTER_INCORRECT_SERIAL=Input serial number is not correct
+NET_QUERY_DISKINFO_FAILED=Failed to get HDD information
+NET_ERROR_GETCFG_SESSION=Failed to get connect session information
+NET_USER_FLASEPWD_TRYTIME=The password you typed is incorrect You have exceeded the maximum number of retries
+NET_LOGIN_ERROR_PASSWORD=Password is not correct
+NET_LOGIN_ERROR_USER=The account does not exist
+NET_LOGIN_ERROR_TIMEOUT=Time out for log in returned value
+NET_LOGIN_ERROR_RELOGGIN=The account has logged in 
+NET_LOGIN_ERROR_LOCKED=The account has been locked
+NET_LOGIN_ERROR_BLACKLIST=The account has been in the block list
+NET_LOGIN_ERROR_BUSY=Resources are not sufficient System is busy now
+NET_LOGIN_ERROR_CONNECT=Time out Please check network and try again
+NET_LOGIN_ERROR_NETWORK=Network connection failed
+NET_LOGIN_ERROR_SUBCONNECT=Successfully logged in the device but can not create video channel Please check network connection
+NET_LOGIN_ERROR_MAXCONNECT=Exceed the max connect number
+NET_LOGIN_ERROR_PROTOCOL3_ONLY=Only support 3 protocol
+NET_LOGIN_ERROR_UKEY_LOST=There is no USB or USB info error
+NET_LOGIN_ERROR_NO_AUTHORIZED=Client-end IP address has no right to login
+NET_LOGIN_ERROR_USER_OR_PASSOWRD=user or password error 
+NET_LOGIN_ERROR_DEVICE_NOT_INIT=cannot login because the device has not been init,please init the device and then login
+NET_RENDER_SOUND_ON_ERROR=Error occurs when Render library open audio
+NET_RENDER_SOUND_OFF_ERROR=Error occurs when Render library close audio 
+NET_RENDER_SET_VOLUME_ERROR=Error occurs when Render library control volume
+NET_RENDER_ADJUST_ERROR=Error occurs when Render library set video parameter
+NET_RENDER_PAUSE_ERROR=Error occurs when Render library pause play
+NET_RENDER_SNAP_ERROR=Render library snapshot error
+NET_RENDER_STEP_ERROR=Render library stepper error
+NET_RENDER_FRAMERATE_ERROR=Error occurs when Render library set frame rate
+NET_RENDER_DISPLAYREGION_ERROR=Error occurs when Render lib setting show region
+NET_RENDER_GETOSDTIME_ERROR=An error occurred when Render library getting current play time
+NET_GROUP_EXIST=Group name has been existed
+NET_GROUP_NOEXIST=The group name does not exist 
+NET_GROUP_RIGHTOVER=The group right exceeds the right list!
+NET_GROUP_HAVEUSER=The group can not be removed since there is user in it!
+NET_GROUP_RIGHTUSE=The user has used one of the group right It can not be removed 
+NET_GROUP_SAMENAME=New group name has been existed
+NET_USER_EXIST=The user name has been existed
+NET_USER_NOEXIST=The account does not exist
+NET_USER_RIGHTOVER=User right exceeds the group right 
+NET_USER_PWD=Reserved account It does not allow to be modified
+NET_USER_FLASEPWD=password is not correct
+NET_USER_NOMATCHING=Password is invalid
+NET_USER_INUSE=account in use
+NET_ERROR_GETCFG_ETHERNET=Failed to get network card setup
+NET_ERROR_GETCFG_WLAN=Failed to get wireless network information
+NET_ERROR_GETCFG_WLANDEV=Failed to get wireless network device
+NET_ERROR_GETCFG_REGISTER=Failed to get actively registration parameter
+NET_ERROR_GETCFG_CAMERA=Failed to get camera property 
+NET_ERROR_GETCFG_INFRARED=Failed to get IR alarm setup
+NET_ERROR_GETCFG_SOUNDALARM=Failed to get audio alarm setup
+NET_ERROR_GETCFG_STORAGE=Failed to get storage position 
+NET_ERROR_GETCFG_MAIL=Failed to get mail setup
+NET_CONFIG_DEVBUSY=Can not set right now 
+NET_CONFIG_DATAILLEGAL=The configuration setup data are illegal
+NET_ERROR_GETCFG_DST=Failed to get DST setup
+NET_ERROR_SETCFG_DST=Failed to set DST 
+NET_ERROR_GETCFG_VIDEO_OSD=Failed to get video OSD setup
+NET_ERROR_SETCFG_VIDEO_OSD=Failed to set video OSD 
+NET_ERROR_GETCFG_GPRSCDMA=Failed to get CDMA\GPRS configuration
+NET_ERROR_SETCFG_GPRSCDMA=Failed to set CDMA\GPRS configuration
+NET_ERROR_GETCFG_IPFILTER= Failed to get IP Filter configuration
+NET_ERROR_SETCFG_IPFILTER=Failed to set IP Filter configuration
+NET_ERROR_GETCFG_TALKENCODE=Failed to get Talk Encode configuration
+NET_ERROR_SETCFG_TALKENCODE=Failed to set Talk Encode configuration
+NET_ERROR_GETCFG_RECORDLEN=Failed to get The length of the video package configuration
+NET_ERROR_SETCFG_RECORDLEN=Failed to set The length of the video package configuration
+NET_DONT_SUPPORT_SUBAREA=Not support Network hard disk partition
+NET_ERROR_GET_AUTOREGSERVER=Failed to get the register server information
+NET_ERROR_CONTROL_AUTOREGISTER=Failed to control actively registration
+NET_ERROR_DISCONNECT_AUTOREGISTER=Failed to disconnect actively registration
+NET_ERROR_GETCFG_MMS=Failed to get mms configuration
+NET_ERROR_SETCFG_MMS=Failed to set mms configuration
+NET_ERROR_GETCFG_SMSACTIVATION=Failed to get SMS configuration
+NET_ERROR_SETCFG_SMSACTIVATION=Failed to set SMS configuration
+NET_ERROR_GETCFG_DIALINACTIVATION=Failed to get activation of a wireless connection
+NET_ERROR_SETCFG_DIALINACTIVATION=Failed to set activation of a wireless connection
+NET_ERROR_GETCFG_VIDEOOUT=Failed to get the parameter of video output
+NET_ERROR_SETCFG_VIDEOOUT=Failed to set the configuration of video output
+NET_ERROR_GETCFG_OSDENABLE=Failed to get osd overlay enabling
+NET_ERROR_SETCFG_OSDENABLE=Failed to set OSD overlay enabling
+NET_ERROR_SETCFG_ENCODERINFO=Failed to set digital input configuration of front encoders
+NET_ERROR_GETCFG_TVADJUST=Failed to get TV adjust configuration
+NET_ERROR_SETCFG_TVADJUST=Failed to set TV adjust configuration
+NET_ERROR_CONNECT_FAILED=Failed to request to establish a connection
+NET_ERROR_SETCFG_BURNFILE=Failed to request to upload burn files
+NET_ERROR_SNIFFER_GETCFG=Failed to get capture configuration information
+NET_ERROR_SNIFFER_SETCFG=Failed to set capture configuration information
+NET_ERROR_DOWNLOADRATE_GETCFG=Failed to get download restrictions information
+NET_ERROR_DOWNLOADRATE_SETCFG=Failed to set download restrictions information
+NET_ERROR_SEARCH_TRANSCOM=Failed to query serial port parameters
+NET_ERROR_GETCFG_POINT=Failed to get the preset info
+NET_ERROR_SETCFG_POINT=Failed to set the preset info
+NET_SDK_LOGOUT_ERROR=SDK log out the device abnormally
+NET_ERROR_GET_VEHICLE_CFG=Failed to get vehicle configuration
+NET_ERROR_SET_VEHICLE_CFG=Failed to set vehicle configuration
+NET_ERROR_GET_ATM_OVERLAY_CFG=Failed to get ATM overlay configuration
+NET_ERROR_SET_ATM_OVERLAY_CFG=Failed to set ATM overlay configuration
+NET_ERROR_GET_ATM_OVERLAY_ABILITY=Failed to get ATM overlay ability
+NET_ERROR_GET_DECODER_TOUR_CFG=Failed to get decoder tour configuration
+NET_ERROR_SET_DECODER_TOUR_CFG=Failed to set decoder tour configuration
+NET_ERROR_CTRL_DECODER_TOUR=Failed to control decoder tour
+NET_GROUP_OVERSUPPORTNUM=Beyond the device supports for the largest number of user groups
+NET_USER_OVERSUPPORTNUM=Beyond the device supports for the largest number of users 
+NET_ERROR_GET_SIP_CFG=Failed to get SIP configuration
+NET_ERROR_SET_SIP_CFG=Failed to set SIP configuration
+NET_ERROR_GET_SIP_ABILITY=Failed to get SIP capability
+NET_ERROR_GET_WIFI_AP_CFG=Failed to get "WIFI ap' configuration 
+NET_ERROR_SET_WIFI_AP_CFG=Failed to set "WIFI ap" configuration  
+NET_ERROR_GET_DECODE_POLICY=Failed to get decode policy 
+NET_ERROR_SET_DECODE_POLICY=Failed to set decode policy 
+NET_ERROR_TALK_REJECT=refuse talk
+NET_ERROR_TALK_OPENED=talk has opened by other client
+NET_ERROR_TALK_RESOURCE_CONFLICIT=resource conflict
+NET_ERROR_TALK_UNSUPPORTED_ENCODE=unsupported encode type
+NET_ERROR_TALK_RIGHTLESS=no right
+NET_ERROR_TALK_FAILED=request failed
+NET_ERROR_GET_MACHINE_CFG=Failed to get device relative config
+NET_ERROR_SET_MACHINE_CFG=Failed to set device relative config
+NET_ERROR_GET_DATA_FAILED=get data failed
+NET_ERROR_MAC_VALIDATE_FAILED=MAC validate failed
+NET_ERROR_GET_INSTANCE=Failed to get server instance 
+NET_ERROR_JSON_REQUEST=Generated json string is error
+NET_ERROR_JSON_RESPONSE=The responding json string is error
+NET_ERROR_VERSION_HIGHER=The protocol version is lower than current version
+NET_SPARE_NO_CAPACITY=Hotspare disk operation failed The capacity is low
+NET_ERROR_SOURCE_IN_USE=Display source is used by other output
+NET_ERROR_REAVE=advanced users grab low-level user resource
+NET_ERROR_NETFORBID=net forbid
+NET_ERROR_GETCFG_MACFILTER=get MAC filter configuration error
+NET_ERROR_SETCFG_MACFILTER=set MAC filter configuration error
+NET_ERROR_GETCFG_IPMACFILTER=get IP/MAC filter configuration error
+NET_ERROR_SETCFG_IPMACFILTER=set IP/MAC filter configuration error
+NET_ERROR_OPERATION_OVERTIME=operation over time 
+NET_ERROR_SENIOR_VALIDATE_FAILED=senior validation failure
+NET_ERROR_DEVICE_ID_NOT_EXIST=device ID is not exist
+NET_ERROR_UNSUPPORTED=unsupport operation
+NET_ERROR_PROXY_DLLLOAD=proxy dll load error
+NET_ERROR_PROXY_ILLEGAL_PARAM= proxy user parameter is not legal
+NET_ERROR_PROXY_INVALID_HANDLE=handle invalid
+NET_ERROR_PROXY_LOGIN_DEVICE_ERROR=login device error
+NET_ERROR_PROXY_START_SERVER_ERROR=start proxy server error
+NET_ERROR_SPEAK_FAILED=request speak failed
+NET_ERROR_NOT_SUPPORT_F6=unsupport F6
+NET_ERROR_CD_UNREADY=CD is not ready
+NET_ERROR_DIR_NOT_EXIST=Directory does not exist
+NET_ERROR_UNSUPPORTED_SPLIT_MODE=The device does not support the segmentation model
+NET_ERROR_OPEN_WND_PARAM=Open the window parameter is illegal
+NET_ERROR_LIMITED_WND_COUNT=Open the window more than limit
+NET_ERROR_UNMATCHED_REQUEST=Request command with the current pattern don't match
+NET_RENDER_ENABLELARGEPICADJUSTMENT_ERROR=Render Library to enable high-definition image internal adjustment strategy error
+NET_ERROR_UPGRADE_FAILED=Upgrade equipment failure
+NET_ERROR_NO_TARGET_DEVICE=Can't find the target device
+NET_ERROR_NO_VERIFY_DEVICE=Can't find the verify device 
+NET_ERROR_CASCADE_RIGHTLESS=No cascade permissions
+NET_ERROR_LOW_PRIORITY=low priority
+NET_ERROR_REMOTE_REQUEST_TIMEOUT=The remote device request timeout
+NET_ERROR_LIMITED_INPUT_SOURCE=Input source beyond maximum route restrictions
+NET_ERROR_SET_LOG_PRINT_INFO=Failed to set log print
+NET_ERROR_PARAM_DWSIZE_ERROR="dwSize" is not initialized in input param
+NET_ERROR_LIMITED_MONITORWALL_COUNT=TV wall exceed limit
+NET_ERROR_PART_PROCESS_FAILED=Fail to execute part of the process
+NET_ERROR_TARGET_NOT_SUPPORT=Fail to transmit due to not supported by target
+NET_ERROR_VISITE_FILE=Access to the file failed
+NET_ERROR_DEVICE_STATUS_BUSY=Device busy
+NET_USER_PWD_NOT_AUTHORIZED=Fail to change the password
+NET_USER_PWD_NOT_STRONG=Password strength is not enough
+NET_ERROR_NO_SUCH_CONFIG=No corresponding setup
+NET_ERROR_AUDIO_RECORD_FAILED=Failed to record audio
+NET_ERROR_SEND_DATA_FAILED=Failed to send out data 
+NET_ERROR_OBSOLESCENT_INTERFACE=Abandoned port 
+NET_ERROR_INSUFFICIENT_INTERAL_BUF=Internal buffer is not sufficient 
+NET_ERROR_NEED_ENCRYPTION_PASSWORD=verify password when changing device IP
+NET_ERROR_NOSUPPORT_RECORD =device not support the record
+NET_ERROR_SERIALIZE_ERROR=Failed to serialize data
+NET_ERROR_DESERIALIZE_ERROR=Failed to deserialize data
+NET_ERROR_LOWRATEWPAN_ID_EXISTED=the wireless id is already existed
+NET_ERROR_LOWRATEWPAN_ID_LIMIT=the wireless id limited
+NET_ERROR_LOWRATEWPAN_ID_ABNORMAL=add the wireless id abnormaly
+NET_ERROR_ENCRYPT=encrypt data fail
+NET_ERROR_PWD_ILLEGAL=new password illegal
+NET_ERROR_DEVICE_ALREADY_INIT=device is already initiation
+NET_ERROR_SECURITY_CODE=security code check out fail
+NET_ERROR_SECURITY_CODE_TIMEOUT=security code out of time
+NET_ERROR_GET_PWD_SPECI=get password specification fail
+NET_ERROR_NO_AUTHORITY_OF_OPERATION=no authority of operation 
+NET_ERROR_DECRYPT=decrypt data fail
+NET_ERROR_2D_CODE=2D code check out fail
+NET_ERROR_INVALID_REQUEST=Invalid request
+NET_ERROR_PWD_RESET_DISABLE=password reset unable
+NET_ERROR_PLAY_PRIVATE_DATA=Failed to display private data,such as rule box
+NET_ERROR_ROBOT_OPERATE_FAILED=robot operate failed
+NET_ERROR_PHOTOSIZE_EXCEEDSLIMIT=photo size exceeds limit
+NET_ERROR_USERID_INVALID=Invalid userId 
+NET_ERROR_EXTRACTFEATURE_FAILED=photo extract feature failed
+NET_ERROR_PHOTO_EXIST=photo exist
+NET_ERROR_PHOTO_OVERFLOW=photo over flow
+NET_ERROR_CHANNEL_ALREADY_OPENED=channel has already been opened
+NET_ERROR_CREATE_SOCKET=create socket error
+NET_ERROR_CHANNEL_NUM=Invalid channel number
+NET_ERROR_FACE_RECOGNITION_SERVER_GROUP_ID_EXCEED=target recognition server group id exceed
+
+# RealPlay Info
+START_REALPLAY=Start RealPlay
+STOP_REALPLAY=Stop RealPlay
+ATTACH=Attach
+DETACH=Detach
+REALPLAY_SUCCEED=Success to start realPlay
+REALPLAY_FAILED=Failed to start realPlay
+
+CHN=Chn
+CHANNEL=Channel
+STREAM_TYPE=Stream
+MASTER_AND_SUB_STREAM=Main/Sub stream
+MASTER_STREAM=Main Stream
+SUB_STREAM=Sub Stream
+
+# Capture Picture
+LOCAL_CAPTURE=Local Capture
+REMOTE_CAPTURE=Remote Capture
+TIMER_CAPTURE=Timer Capture
+STOP_CAPTURE=Stop Capture
+INTERVAL=Interval
+
+TIME_INTERVAL_ILLEGAL=Time Interval Illegal 
+PLEASE_START_REALPLAY=Please Start Real Play
+
+# PTZ Info
+PTZ_CONTROL=PTZControl
+LEFT_UP=LeftUp
+UP=Up
+RIGHT_UP=RightUp
+LEFT=Left
+RIGHT=Right
+LEFT_DOWN=LeftDown
+DOWN=Down
+RIGHT_DOWN=RightDown
+
+ZOOM_ADD=Zoom+
+ZOOM_DEC=Zoom-
+FOCUS_ADD=Focus+
+FOCUS_DEC=Focus-
+IRIS_ADD=Iris+
+IRIS_DEC=Iris-
+
+SPEED=Speed
+
+#ITS
+EVENT_INFO=Event Information
+EVENT_NAME=Event Name
+EVENT_TIME=Event Time
+EVENT_PICTURE=Event and Picture
+PLATE_PICTURE=Plate Picture
+LICENSE_PLATE=License Plate
+PLATE_TYPE=Plate Type
+PLATE_COLOR=Plate Color
+VEHICLE_TYPE=Vehicle Type
+VEHICLE_SIZE=Vehicle Size
+VEHICLE_COLOR=Vehicle Color
+FILE_COUNT=File Count
+FILE_INDEX=File Index
+GROUP_ID=Group ID
+ILLEGAL_PLACE=Illegal Place
+LANE_NUMBER=Lane Number
+MANUAL_CAPTURE=Manual Capture
+OPEN_STROBE=Open Strobe
+CLOSE_STROBE=Close Strobe
+INDEX=Index
+
+OPERATE=Operate
+FUNCTION=Function
+
+UNDEFINED_COLOR=Undefined Color
+BLACK=Black
+WHITE=White
+RED=Red
+BLUE=Blue
+GREEN=Green
+YELLOW=Yellow
+GRAY=Gray
+ORANGE=Orange
+
+LIGHT_DUTY=Light Duty
+MEDIUM=Medium
+OVER_SIZE=Over Size
+MINI_SIZE=Miniature Size
+LARGE_SIZE=Large Size
+
+NO_PLATENUMBER=No PlateNumber
+MANUALSNAP_SUCCEED=Manual snap succeed
+MANUALSNAP_FAILED=Manual snap failed
+
+OPEN_STROBE_SUCCEED=Open strobe succeed
+OPEN_STROBE_FAILED=Open strobe failed
+CLOSE_STROBE_SUCCEED=Close strobe succeed
+CLOSE_STROBE_FAILED=Close strobe failed
+
+EVENT_IVS_TRAFFICJUNCTION=Junction
+EVENT_IVS_TRAFFIC_RUNREDLIGHT=RunRedLight
+EVENT_IVS_TRAFFIC_OVERLINE=OverLine
+EVENT_IVS_TRAFFIC_RETROGRADE=ReTrograde
+EVENT_IVS_TRAFFIC_TURNLEFT=TurnLeft
+EVENT_IVS_TRAFFIC_TURNRIGHT=TurnRight
+EVENT_IVS_TRAFFIC_UTURN=UTurn
+EVENT_IVS_TRAFFIC_OVERSPEED=OverSpeed
+EVENT_IVS_TRAFFIC_UNDERSPEED=UnderSpeed
+EVENT_IVS_TRAFFIC_PARKING=Parking
+EVENT_IVS_TRAFFIC_WRONGROUTE=WrongRoute
+EVENT_IVS_TRAFFIC_CROSSLANE=CrossLane
+EVENT_IVS_TRAFFIC_OVERYELLOWLINE=OverYellowLine
+EVENT_IVS_TRAFFIC_YELLOWPLATEINLANE=YellowPlateInLane
+EVENT_IVS_TRAFFIC_PEDESTRAINPRIORITY=PedestrainPriority
+EVENT_IVS_TRAFFIC_MANUALSNAP=ManualSnap
+EVENT_IVS_TRAFFIC_VEHICLEINROUTE=VehicleInRoute
+EVENT_IVS_TRAFFIC_VEHICLEINBUSROUTE=VehicleInBusRoute
+EVENT_IVS_TRAFFIC_BACKING=Backing
+EVENT_IVS_TRAFFIC_PARKINGSPACEPARKING=ParkingSpaceParking
+EVENT_IVS_TRAFFIC_PARKINGSPACENOPARKING=ParkingSpaceNoParking
+EVENT_IVS_TRAFFIC_WITHOUT_SAFEBELT=WithoutSafeBelt
+
+# DownLoad Info
+DOWNLOAD_RECORD_BYTIME=DownloadRecordByTime
+DOWNLOAD_RECORD_BYFILE=DownloadRecordByFile
+QUERY=Query 
+DOWNLOAD=DownLoad
+STOP_DOWNLOAD=StopDownLoad
+START_TIME=Start Time
+END_TIME=End Time
+RECORD_TYPE=Record Type
+
+GENERAL_RECORD=General Record
+ALARM_RECORD=Alarm Record
+MOTION_DETECTION=Motion Detection Record
+CARD_NUMBER_RECORD=Card Number Record
+INTELLIGENT_DETECTION=intelligent Record
+POS_RECORD=pos Record
+
+
+QUERY_RECORD_IS_NOT_EXIST=Query record is not exist
+PLEASE_CHECK_RECORD_TIME=Please check record time
+PLEASE_SELECT_TIME_AGAIN=Please select time again,max time different is 6 hour
+DOWNLOAD_COMPLETED=Download completed
+
+PLEASE_FIRST_QUERY_RECORD=Please first query record
+PLEASE_FIRST_SELECT_ROW_WITH_DATA=Please first select row with data
+
+# Time Set
+YEAR=Year
+MONTH=Month
+DAY=Day
+HOUR=Hour
+MINUTE=Minute
+SECOND=Second
+CONFIRM=Confirm
+CANCEL=Cancel
+DATE_CHOOSER=Date Chooser
+
+MONDAY=Mon
+TUESDAY=Tue
+WEDNESDAY=Wed
+THURSDAY=Thur
+FRIDAY=Fri
+SATURDAY=Sat
+SUNDAY=Sun
+
+# Talk
+TRANSMIT_TYPE=Transmit Type
+LOCAL_TRANSMIT_TYPE=Local(not transmit)
+REMOTE_TRANSMIT_TYPE=Remote(transmit)
+TRANSMIT_CHANNEL=Speaker Channel
+START_TALK=Start Talk
+STOP_TALK=Stop Talk
+TALK_FAILED=Talk Failed
+
+# DeviceSearchAndInt
+DEVICESEARCH_OPERATE=DeviceSearch Operate
+DEVICESEARCH_RESULT=DeviceSearch Result
+DEVICEINIT=DeviceInit
+
+DEVICESEARCH=DeviceSearch
+DEVICE_POINT_TO_POINT_SEARCH=Device IP Point To Point Search
+
+START_SEARCH=Start Search
+STOP_SEARCH=Stop Search
+
+START_IP=Start IP
+END_IP=End IP
+
+DEVICE_TYPE=Device Type
+MAC=MAC
+SN=SN
+DEVICE_INIT_STATE=Initialized State
+INIT_PASSWD=Initialization Password
+PHONE=Phone
+MAIL=Mail
+IP_VERSION=IP Version
+SUB_MASK=Sub Mask
+GETWAY=GetWay
+DETAIL_TYPE=Detail Type
+HTTP_PORT=HTTP Port
+LOCAL_IP=local ip
+CONFIRM_PASSWORD=Confirm Password
+
+OLD_DEVICE=Old Device
+DONOT_SUPPORT_INITIALIZATION=Do not support initialization
+NOT_INITIALIZED=Uninitialized
+INITIALIZED=Initialized
+
+THE_IP_CONTROL_SCOPE=The scope is too large, please control it between the 1000
+PLEASE_FIRST_SELECT_INITIALIZED_DEVICE=Please first select initialized device
+PLEASE_INPUT_PHONE=Please input phone
+PLEASE_INPUT_MAIL=Please input mail
+INCONSISTENT=The password and the confirm password are inconsistent
+PLEASE_CHECK_IP=Please check IP
+
+SEARCHING_WAITING=Searching, please waiting
+
+START_LISTEN=Start Listen
+STOP_LISTEN=Stop Listen
+SHOW_ALARM_EVENT=Show Alarm Event Info
+ALARM_LISTEN_FAILED=Alarm Listen Failed
+ALARM_MESSAGE=Alarm Message
+
+EXTERNAL_ALARM=External alarm 
+MOTION_ALARM=Motion detection alarm 
+VIDEOLOST_ALARM=Video loss alarm 
+SHELTER_ALARM=Camera masking alarm 
+DISKFULL_ALARM=HDD full alarm 
+DISKERROR_ALARM=HDD error alarm 
+START=start
+STOP=stop
+
+CURRENT_TIME=Current Time
+DEVICE_REBOOT=Device Reboot
+SYNCHRONIZE_TIME=Synchronize Time
+REBOOT=Reboot
+SET_TIME=Set Time
+GET_TIME=Get Time
+REBOOT_TIPS=Are you sure you want to reboot it?
+OPERATE_SUCCESS=Operate Success
+
+#FaceRecognition
+FACE_GROUP_ID=Group Id
+FACE_GROUP_NAME=Group Name
+PERSON_COUNT=Person Count
+
+GROUP_OPERATE=Group Operate
+PERSON_OPERATE=Person Operate
+
+TARGET_RECOGNITION_EVENT=TargetRecognition Event
+TARGET_DETECT_EVENT=TargetDetect Event
+
+GLOBAL_PICTURE=Global Picture
+PERSON_PICTURE=Person Picture
+CANDIDATE_PICTURE=Candidate Picture
+
+TIME=Time
+SEX=Sex
+AGE=Age
+COLOR=Color
+EYE=Eye
+MOUTH=Mouth
+MASK=Mask
+BEARD=Beard
+MALE=Male
+FEMALE=Female
+ID_CARD=Id Card
+OFFICE_CARD=office card
+PASSPORT=Passport
+UNIDENTIFIED=Unidentified
+HAVE_BEARD=Have Beard
+NO_BEARD=No Beard
+OPEN_MOUTH=Open Mouth
+CLOSE_MOUTH=Close Mouth
+YELLOW_COLOR=Yellow
+BLACK_COLOR=Black
+WHITE_COLOR=White
+OPEN_EYE=Open Eye
+CLOSE_EYE=Close Eye
+SMILE=Smile
+ANGER=Anger
+SADNESS=Sadness
+DISGUST=Disgust
+FEAR=Fear
+SURPRISE=Surprise
+NEUTRAL=Neutral
+LAUGH=Laugh
+WEAR_MASK=Wear Mask
+NO_MASK=No Mask
+WEAR_GLASSES=Wear Glasses
+NO_GLASSES=No Glasses
+UNKNOW=UnKnow
+UNLIMITED=Unlimited
+
+NAME=Name
+BIRTHDAY=Birthday
+ID_NO=Id No
+ID_TYPE=ID Type
+SIMILARITY=Similarity
+UID=UID
+STRANGER=Stranger
+GLASSES=glasses
+PICTURE_PATH=picture path
+FACE_LIBRARY_ID=face library id
+FACE_LIBRARY_NAME=face library name
+
+
+ADD=Add
+MODIFY=Modify
+FRESH=Fresh
+ADD_GROUP=Add Group
+MODIFY_GROUP=Modify Group
+DEL_GROUP=Delete Group
+DISPOSITION=Disposition
+DEL_DISPOSITION=Delete Disposition
+
+FIND_CONDITION=Find Condition
+FIND_PERSON=Find Person
+ADD_PERSON=Add Person
+MODIFY_PERSON=Modify Person
+DEL_PERSON=Delete Person
+
+PREVIOUSPAGE=Previous Page
+LASTPAGE=Last Page
+SELECT_PICTURE=Select Picture
+SEARCH_BY_PIC=Search by Picture
+DOWNLOAD_QUERY_PICTURE=Download the query Picture
+FACE_LIBRARY=face library
+HISTORY_LIBRARY=history library
+CHOOSE_FACE_PIC=Please select a face picture
+EVENT_TYPE=Event Type
+PAGES_NUMBER=Pages Number
+
+SIMILARITY_RANGE=Similarity range[0, 100]
+PLEASE_INPUT_GROUPNAME=Please input groupName
+PLEASE_SELECT_GROUP=Please select group
+
+PLEASE_SELECT_PERSON=Please select person
+PLEASE_ADD_DISPOSITION_INFO=Please add disposition info
+PLEASE_SELECT_DEL_DISPOSITION_INFO=Please select delDisposition info
+
+#AutoRegister
+AUTOREGISTER_LISTEN=AutoRegister Listen
+DEVICE_CONFIG=Device Configure
+DEVICE_LIST=Device List
+DEVICE_MANAGER=Device Manager
+ADD_DEVICE=Add Device
+MODIFY_DEVICE=Modify Device
+DELETE_DEVICE=Delete Device
+CLEAR_DEVICE=Clear Device
+IMPORT_DEVICE=Import Device
+EXPORT_DEVICE=Export Device
+DEVICE_ID=Device ID
+ENABLE=Enable
+REGISTER_ADDRESS=Register Address
+REGISTER_PORT=Register Port
+GET=Get
+SET=Set
+RECORD=Record
+DEVICE_LOGIN=Device has logged in
+
+ALREADY_EXISTED=Already existed
+ALREADY_EXISTED_WHETHER_OR_NOT_TO_COVER=Already existed, whether or not to cover(no, not export)
+FILE_OPEN_PLEASE_CLOSE_FILE=The file is opened, please first close the file
+IMPORT_COMPLETION=Import completed
+EXPORT_COMPLETION=Export completed
+FILE_NOT_EXIST=File is not existed
+
+PLEASE_INPUT=Please input 
+MAX_SUPPORT_100=Maximum support is 100
+
+#Attendance
+ATTENDANCE=Attendance
+USER_ID=User ID
+USER_NAME=User Name
+CARD_NO=Card No
+QUERY_CONDITION=Query Condition
+USER_OPERATE=User Operate
+FINGERPRINT_OPERATE=FingerPrint Operate
+OPERATE_BY_USER_ID=Operate FingerPrint By User ID
+OPERATE_BY_FINGERPRINT_ID=Operate FingerPrint By FingerPrint ID
+FINGERPRINT_ID=FingerPrint ID
+DELETE=Delete
+SEARCH=Search
+SEARCH_FINGERPRINT=Search FingerPrint
+ADD_FINGERPRINT=Add FingerPrint
+DELETE_FINGERPRINT=Delete FingerPrint
+SUBSCRIBE=Subscribe
+UNSUBSCRIBE=UnSubscribe
+USER_LIST=User List
+NEXT_PAGE=Next Page
+USER_INFO=User Info
+DOOROPEN_METHOD=Open Door Method
+FINGERPRINT=FingerPrint
+FINGERPRINT_INFO=FingerPrint Info
+FINGERPRINT_DATA=FingerPrint Data
+CARD=Card
+DELETE_FINGERPRINT_PROMPT=It will delete all fingerprint of this user
+SUBSCRIBE_FAILED=Subscribe failed
+FINGERPRINT_ID_ILLEGAL=FingerPrint id illegal
+FINGERPRINT_COLLECTION=FingerPrint Collection
+START_COLLECTION=Start Collection
+STOP_COLLECTION=Stop Collection
+IN_THE_COLLECTION=In collection...
+COLLECTION_COMPLETED=Collection completed
+COLLECTION_FAILED=Collection failed
+FINGERPRINT_ID_NOT_EXIST=FingerPrint Id not exist
+USER_ID_EXCEED_LENGTH=User id exceed max length
+USER_NAME_EXCEED_LENGTH=User name exceed max length
+CARD_NO_EXCEED_LENGTH=Card no exceed max length
+CARD_NAME_EXCEED_LENGTH=Card name exceed max length
+CARD_PASSWD_EXCEED_LENGTH=Card password exceed max length
+
+#Gate
+GATE=FaceOpenDoor
+
+CARD_OPERATE=Card Operate
+CARD_INFO=Card Information
+CARD_MANAGER=Card Manager
+
+CLEAR=Clear
+
+OPEN_STATUS=Open Status
+OPEN_METHOD=Open Method
+
+TEMPERATURE=temperture
+MASK_STATUS=mask status
+
+CARD_UNKNOW=UnKnown Card
+CARD_GENERAL=General Card
+CARD_VIP=VIP Card
+CARD_GUEST=Guest Card
+CARD_PATROL=Patrol Card
+CARD_BACKLIST=BackList Card
+CARD_COERCE=Coerce Card
+CARD_POLLING=Polling Card
+CARD_MOTHERCARD=Mother Card
+
+STATE_UNKNOWN=UnKnown
+STATE_NORMAL=Normal
+STATE_LOSE=Lose
+STATE_LOGOFF=LogOff
+STATE_FREEZE=Freeze
+STATE_ARREARS=Arrears
+STATE_OVERDUE=OverDue
+STATE_PREARREARS=PreArrears
+
+RECORD_NO=Record No
+CARD_NAME=Card Name
+CARD_STATUS=Card Status
+CARD_PASSWORD=Card Password
+CARD_TYPE=Card Type
+CARD_NUM=Card Number
+USE_TIMES=Use Times
+IS_FIRST_ENTER=IsFirstEnter
+IS_VALID=IsValid
+VALID_PERIOD=Valid Period
+VALID_START_TIME=Valid Start Time
+VALID_END_TIME=Valid End Time
+FIRST_ENTER=FirstEnter
+NO_FIRST_ENTER=No FirstEnter
+VALID=Valid
+INVALID=Invalid
+
+PLEASE_SELECT_CARD=Please select card
+PLEASE_INPUT_CARDNO=Please input cardNo
+PLEASE_INPUT_USERID=Please input userId
+WANT_CLEAR_ALL_INFO=Do you want to clear all information ?
+
+ADD_CARD_INDO_FAILED=Failed to add card information 
+ADD_CARD_INFO_AND_PERSON_PICTURE_SUCCEED=Succeed to add card information and person picture
+ADD_CARD_INFO_SUCCEED_BUT_ADD_PERSON_PICTURE_FAILED=Succeed to add card information, but failed to add person picture
+CARD_EXISTED_ADD_PERSON_PICTURE_SUCCEED=Card information is existed, succeed to add person picture
+
+MODIFY_CARD_INFO_SUCCEED=Succeed to modify card information
+MODIFY_CARD_INFO_FAILED=Failed to modify card information
+MODIFY_CARD_INFO_AND_PERSON_PICTURE_SUCCEED=Succeed to modify card information and person picture
+MODIFY_CARD_INFO_SUCCEED_BUT_MODIFY_PERSON_PICTURE_FAILED=Succeed to modify card information, but failed to modify person picture
+
+NET_ACCESS_DOOROPEN_METHOD_UNKNOWN=UnKnow
+NET_ACCESS_DOOROPEN_METHOD_PWD_ONLY=Password
+NET_ACCESS_DOOROPEN_METHOD_CARD=Card
+NET_ACCESS_DOOROPEN_METHOD_CARD_FIRST=First Card Then Password
+NET_ACCESS_DOOROPEN_METHOD_PWD_FIRST=First Password Then Card 
+NET_ACCESS_DOOROPEN_METHOD_REMOTE=Remote Open
+NET_ACCESS_DOOROPEN_METHOD_BUTTON=Open Door Button
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT=fingerprint lock
+NET_ACCESS_DOOROPEN_METHOD_PWD_CARD_FINGERPRINT=password+swipe card+fingerprint combination unlock
+NET_ACCESS_DOOROPEN_METHOD_PWD_FINGERPRINT=password+fingerprint combination unlock
+NET_ACCESS_DOOROPEN_METHOD_CARD_FINGERPRINT=swipe card+fingerprint combination unlock
+NET_ACCESS_DOOROPEN_METHOD_PERSONS=multi-people unlock
+NET_ACCESS_DOOROPEN_METHOD_KEY=Key
+NET_ACCESS_DOOROPEN_METHOD_COERCE_PWD=Use force password to open the door   
+NET_ACCESS_DOOROPEN_METHOD_QRCODE=Use QR Code  
+NET_ACCESS_DOOROPEN_METHOD_FACE_RECOGNITION=face recogniton to open the door
+NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD=comparsion of face and ID card
+NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD_AND_IDCARD=ID card  and compasion of face and ID card
+NET_ACCESS_DOOROPEN_METHOD_BLUETOOTH=Bluetooth
+NET_ACCESS_DOOROPEN_METHOD_CUSTOM_PASSWORD=Custom password
+NET_ACCESS_DOOROPEN_METHOD_USERID_AND_PWD=UserID and password
+NET_ACCESS_DOOROPEN_METHOD_FACE_AND_PWD=Face and password
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_PWD=Fingerprint and password
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_FACE= FingerPrint and face
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FACE=Card and face
+NET_ACCESS_DOOROPEN_METHOD_FACE_OR_PWD=Face or password
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_PWD=Fingerprint or password
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_FACE=Fingerprint or face
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FACE=Card or face
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT=Card or fingerprint
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_FACE_AND_PWD=Fingerprint and face and password
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FACE_AND_PWD=Card and face and password
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FINGERPRINT_AND_PWD=Card and fingerprint and password
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_PWD_AND_FACE=Card and password and face
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_FACE_OR_PWD=Fingerprint or face or password
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FACE_OR_PWD=Card or face or password
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT_OR_FACE=Card or fingerprint or face
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FINGERPRINT_AND_FACE_AND_PWD=Card and fingerprint and face and password 
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT_OR_FACE_OR_PWD=Card or fingerprint or face or password
+NET_ACCESS_DOOROPEN_METHOD_FACEIPCARDANDIDCARD_OR_CARD_OR_FACE=ID card  and compasion of face and ID card or card or face
+NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD_OR_CARD_OR_FACE=ID card  and compasion of face or card or face
+
+#ThermalCamera
+THERMAL_CAMERA=Thermal Camera
+THERMAL_OPERATE=Operate
+POINT_QUERY=Query Point
+REGION_QUERY=Query Region
+ITEM_QUERY=Query Item
+TEMPER_QUERY=Query Temperature 
+HEATMAP=HeatMap
+POINT_TEMPER=Point Temperature
+REGION_TEMPER=REGION Temperature
+ITEM_TEMPER=Item Temperature
+X=X
+Y=Y
+COORDINATE_ILLEGAL=Coordinate Illegal
+QUERY_RESULT=Query Result
+METER_TYPE=Meter Type
+TEMPER_UNIT=Temperature Unit
+TEMPER=Temperature
+UNKNOWN=Unknown
+SPOT=Spot
+LINE=Line
+AREA=Area
+CENTIGRADE=Celsius
+FAHRENHEIT=Fahrenheit
+KELVINS=Kelvins
+PRESET_ID=Preset Id
+RULE_ID=Rule Id
+TEMPER_AVER=Average Temperature
+TEMPER_MAX=Maximum Temperature
+TEMPER_MIN=Minimum Temperature
+TEMPER_MAX_POINT=Temper max point
+TEMPER_MIN_POINT=Temper min point
+TEMPER_MID=Middle Temperature
+TEMPER_STD=Standard Deviation
+INPUT_ILLEGAL=Input Illegal
+TEMPER_INFO=Temperature Info
+FIVE_MINUTES=Five Minutes
+TEN_MINUTES=Ten Minutes
+FIFTEEN_MINUTES=Fifteen Minutes
+THIRTY_MINUTES=Thirty Minutes
+SAVE_PERIOD=Save Period
+QUERY_LIST=Query List
+RECORD_TIME=Record Time
+ITEM_NAME=Name
+COORDINATE=Coordinate
+NO_RECORD=No Record
+HEATMAP_OPERATE=Operate
+IDLE=Idle
+ACQUIRING=Acquiring
+RADIOMETRY_ATTACH=Attach
+RADIOMETRY_DETACH=Detach
+RADIOMETRY_FETCH=Fetch
+SAVE_HEATMAP=Save HeatMap
+HEATMAP_METADATA_INFO=HeatMap MetaData
+HEIGHT=Height
+WIDTH=Width
+LENGTH=Size
+SENSOR_TYPE=Sensor Type
+HEATMAP_SAVE_SUCCESS=HeatMap Save Success
+
+#matrix screen
+MATRIX_SCREEN=Lattice Screen
+PASSING_STATE=Passing state
+PASSING_CAR=pass car
+NO_CAR=no car
+IN_TIME=Entry time
+OUT_TIME=departure time
+PLATE_NUMBER=plate number
+CAR_OWNER=car owner
+PARKING_TIME=parking time
+USER_TYPE=user type
+MONTHLY_CARD_USER=monthly card user
+ANNUAL_CARD_USER=annual card user
+LONG_TERM_USER=long term user/VIP
+TEMPORARY_USER=temporary user/Visitor
+PARKING_CHARGE=parking charge
+DAYS_DUE=days due
+REMAINING_PARKING_SPACES=Remaining parking spaces
+VEHICLES_NOT_ALLOWED_TO_PASS=vehicles not allowed to pass
+ALLOWED_VEHICLES_TO_PASS=allowed vehicles to pass
+SET_UP=set up
+SUCCESSFULLY_ISSUED=Successfully issued
+DELIVERY FAILED=Delivery failed
+CUSTOM_USER_CLASS=Custom user class
+REMARKS_INFORMATION=Remarks information
+CUSTOM_INFORMATION=Custom information
+
+# human number statistic
+HUMAN_NUMBER_STATISTIC_TITLE=Human Number Statistic
+HUMAN_NUMBER_STATISTIC_CONTROL=Human Number Statistic Control
+
+HUMAN_NUMBER_STATISTIC_EVENT_TITLE=Human Number Statistic Event List
+
+HUMAN_NUMBER_STATISTIC_EVENT_CHANNEL=Channel
+HUMAN_NUMBER_STATISTIC_EVENT_TIME=EventTime
+HUMAN_NUMBER_STATISTIC_EVENT_HOUR_IN=HourIn
+HUMAN_NUMBER_STATISTIC_EVENT_HOUR_OUT=HourOut
+HUMAN_NUMBER_STATISTIC_EVENT_TODAY_IN=TodayIn
+HUMAN_NUMBER_STATISTIC_EVENT_TODAY_OUT=TodayOut
+HUMAN_NUMBER_STATISTIC_EVENT_TOTAL_IN=TotalIn
+HUMAN_NUMBER_STATISTIC_EVENT_TOTAL_OUT=TotalOut
+
+HUMAN_NUMBER_STATIC_EVENT_OSD_CLEAR=OSD Clear
+
+VTO_ALARM_EVENT_ROOM_NO=RoomNo.
+VTO_ALARM_EVENT_CARD_NO=CardNo.
+VTO_ALARM_EVENT_TIME=Time
+VTO_ALARM_EVENT_OPEN_METHOD=OpenMethod
+VTO_ALARM_EVENT_STATUS=Status
+
+VTO_REAL_LOAD_ROOM_NO=RoomNo.
+VTO_REAL_LOAD_CARD_NO=CardNO.
+VTO_REAL_LOAD_TIME=Time
+VTO_REAL_LOAD_EVENT_INFO=EventInfo
+
+VTO_OPERATE_MANAGER_TITLE=Card&Fingerprint&FaceManager
+VTO_OPERATE_MANAGER_REC_NO=RecNo.
+VTO_OPERATE_MANAGER_ROOM_NO=RoomNo.
+VTO_OPERATE_MANAGER_CARD_NO=CardNo.
+VTO_OPERATE_MANAGER_FINGER_PRINT_DATA=FingerprintData
+VTO_OPERATE_INFO_TITLE=Add
+
+VTO_OPERATE_COLLECTION_FINGER_PRINT_TITLE=CollectionFingerPrint
+
+DOOR_OPEN=Open Door
+DOOR_CLOSE=Close Door
+EVENT_OPERATE=Event Operate
+START_REAL_LOAD_PIC=StartRealLoad
+STOP_REAL_LOAD_PIC=StopRealLoad
+ALARM_EVENT=AlarmEvent
+REAL_LOAD_EVENT=RealLoadEvent
+COLLECTION_RESULT=CollectionResult
+NEED_FINGER_PRINT=Need FingerPrint
+FACE_INFO=FaceInfo
+OPEN=open
+VTO=VTO
+SCADA=SCADA
+TRAFFIC_ALLOW_LIST=Traffic Allow List
+MODIFY_CARD_FACE_FAILED=failed to modify face info.
+EM_MASK_STATE_UNKNOWN=unknown
+EM_MASK_STATE_NODISTI=unrecognized
+EM_MASK_STATE_NOMASK=Not wearing mask
+EM_MASK_STATE_WEAR=wearing mask
+END_SEARCH=End of query
+DOWNLOAD_PICTURE=download picture
+ENTER_PICTURE_PATH=Please enter the picture path
+LOADING=The equipment is being processed
+QUERY_CARD_EXIST_FAILED=Check if the cardNo exists failed
+CARD_EXIST=The cardNo already exists
+INPUT_ROOM_NO=please input room number
+ROOM_NO_EXCEED_LENGTH=room number exceed max length
+REMOVE_CARD_FACE_FAILED=remove card face failed
+STOP_LISTEN_FAILED=stop listen failed
+
+SCREEN_NUMBER=screen number
+TEXT_CONTENT=text content
+TEXT_CONTENT_TYPE=text content type
+TEXT_CONTENT_COLOR=text content color
+SCROLL_TYPE=scroll type
+SCROLL_SPEED=scroll speed
+
+ORDINARY=ordinary
+QR_CODE=QR code
+LOCAL_TIME=local time
+RESOURCE=resource
+
+NOT_ROLLING=not rolling 
+SCROLL_LEFT_AND_RIGHT=scroll left and right
+SCROLL_UP_AND_DOWN=scroll up and right
+
+NUMBER_STRING=number string
+VOICE_TEXT=vioce text
+ISSUED=issued
+PROMPT=Please add corresponding parameters
+
+
+SCADA_DEVICE_LIST=device list
+
+DEVICE_NAME=device name
+POINT_ID=point id
+IF_VALID_SIGNAL_POINT=valid signal point
+POINT_NAME=point name
+ALARM_DESCRIBE=alarm describe
+ALARM_LEVEL=alarm level
+ALARM_DELAY=alarm delay
+ALARM_TYPE=alarm type
+ALARM_TIME=alarm time
+COLLECT_TIME=collect time
+
+SCADA_POINT_LIST=point list
+SCADA_ATTACH_ALARM=attach alarm
+SCADA_ATTACH_INFO=attach info
+SCADA_ATTACH=start listen
+BTN_LIST = get
+
+ALLOWLIST_OPERATION=allowlist operation
+
+SINGLE_UPLOAD=single upload
+
+LICENSE_PLATE_RUN=The license plate to run
+FUZZY_QUERY=fuzzy query
+DELETE_ALL=delete all
+AUTHORIZATION=authorization
+UNAUTHORIZATION=unauthorized
+BATCH_UPLOAD=batch upload
+BROWSE=browse
+UPLOAD=upload
+QUERY_INFORMATION=query information
+DIALOG=dialog
+LICENSE_PLATE_NUMBER=license plate number
+MODIFY_PANEL=modify panel
+SERIAL_NUMBER=serial number
+OPEN_MODEL=open model
+LICENSE_PLATE_LENGTH_TOO_LONG=License plate length is too long
+NAME_TOO_LONG=The name is too long
+ADD_SUCCESS= add a success
+ADD_FAIL=add a fail
+DELETE_SUCCESS=delete a success
+DELETE_FAIL=delete a fail
+MODIFY_SUCCESS=modify the success
+MODIFY_FAIL=modify the fail
+UPLOAD_SUCCESS=Uploaded successfully
+ENTER_QUERY_DATA=Please enter the data to query
+FILLING_RULES=fill in legal characters
+UPLOAD_FAIL=upload fail
+UPLOADING=uploading
+SURE_UPLOAD=Are you sure to upload?
+DATA_NUMBER=pieces of data
+SELECT_DATA=Please select data
diff --git a/ycl-server/src/main/resources/res_zh_CN.properties b/ycl-server/src/main/resources/res_zh_CN.properties
new file mode 100644
index 0000000..747cfa0
--- /dev/null
+++ b/ycl-server/src/main/resources/res_zh_CN.properties
@@ -0,0 +1,1079 @@
+# FunctionList
+FUNCTIONLIST=\u529F\u80FD\u5217\u8868
+REALPLAY=\u5B9E\u65F6\u9884\u89C8
+CAPTURE_PICTURE=\u6293\u62CD\u56FE\u7247
+MULTIREALPLAY=\u53CC\u901A\u9053\u5B9E\u65F6\u9884\u89C8
+DOWNLOAD_RECORD=\u4E0B\u8F7D\u5F55\u50CF
+ITS_EVENT=\u667A\u80FD\u4EA4\u901A
+TALK=\u8BED\u97F3\u5BF9\u8BB2
+DEVICESEARCH_DEVICEINIT=\u8BBE\u5907\u641C\u7D22\u548C\u8BBE\u5907\u521D\u59CB\u5316
+PTZ=\u4E91\u53F0\u63A7\u5236
+TARGETRECOGNITION=\u76EE\u6807\u8BC6\u522B
+ALARM_LISTEN=\u62A5\u8B66\u76D1\u542C
+DEVICE_CONTROL=\u8BBE\u5907\u63A7\u5236
+AUTOREGISTER=\u4E3B\u52A8\u6CE8\u518C
+
+ONLINE=\u5728\u7EBF
+
+# Login Info
+DEVICE_IP=\u8BBE\u5907\u5730\u5740
+DEVICE_PORT=\u7AEF\u53E3\u53F7
+USERNAME=\u7528\u6237\u540D
+PASSWORD=\u5BC6\u7801
+IP=\u5730\u5740
+
+LOGIN=\u767B\u5F55
+LOGOUT=\u767B\u51FA
+
+LOGIN_SUCCEED=\u767B\u5F55\u6210\u529F
+LOGIN_FAILED=\u767B\u5F55\u5931\u8D25
+DISCONNECT=\u8BBE\u5907\u65AD\u7EBF
+DISCONNECT_RECONNECTING=\u8BBE\u5907\u65AD\u7EBF\uFF0C\u6B63\u5728\u91CD\u8FDE\u4E2D
+PROMPT_MESSAGE=\u63D0\u793A\u4FE1\u606F
+ERROR_MESSAGE=\u9519\u8BEF\u4FE1\u606F
+
+SUCCEED=\u6210\u529F
+FAILED=\u5931\u8D25
+
+PLEASE_INPUT_DEVICE_IP=\u8BF7\u8F93\u5165\u8BBE\u5907\u5730\u5740
+PLEASE_INPUT_DEVICE_PORT=\u8BF7\u8F93\u5165\u8BBE\u5907\u7AEF\u53E3\u53F7
+PLEASE_INPUT_DEVICE_USERNAME=\u8BF7\u8F93\u5165\u7528\u6237\u540D
+PLEASE_INPUT_DEVICE_PASSWORD=\u8BF7\u8F93\u5165\u5BC6\u7801
+PLEASE_INPUT_CONFIRM_PASSWORD=\u8BF7\u8F93\u5165\u786E\u8BA4\u5BC6\u7801
+
+# Error Info
+NET_NOERROR=\u6CA1\u6709\u9519\u8BEF
+NET_ERROR=\u672A\u77E5\u9519\u8BEF
+NET_SYSTEM_ERROR=Windows\u7CFB\u7EDF\u51FA\u9519
+NET_NETWORK_ERROR=\u7F51\u7EDC\u9519\u8BEF\uFF0C\u53EF\u80FD\u662F\u56E0\u4E3A\u7F51\u7EDC\u8D85\u65F6
+NET_DEV_VER_NOMATCH=\u8BBE\u5907\u534F\u8BAE\u4E0D\u5339\u914D
+NET_INVALID_HANDLE=\u53E5\u67C4\u65E0\u6548
+NET_OPEN_CHANNEL_ERROR=\u6253\u5F00\u901A\u9053\u5931\u8D25
+NET_CLOSE_CHANNEL_ERROR=\u5173\u95ED\u901A\u9053\u5931\u8D25
+NET_ILLEGAL_PARAM=\u7528\u6237\u53C2\u6570\u4E0D\u5408\u6CD5
+NET_SDK_INIT_ERROR=SDK\u521D\u59CB\u5316\u51FA\u9519
+NET_SDK_UNINIT_ERROR=SDK\u6E05\u7406\u51FA\u9519
+NET_RENDER_OPEN_ERROR=\u7533\u8BF7render\u8D44\u6E90\u51FA\u9519
+NET_DEC_OPEN_ERROR=\u6253\u5F00\u89E3\u7801\u5E93\u51FA\u9519
+NET_DEC_CLOSE_ERROR=\u5173\u95ED\u89E3\u7801\u5E93\u51FA\u9519
+NET_MULTIPLAY_NOCHANNEL=\u591A\u753B\u9762\u9884\u89C8\u4E2D\u68C0\u6D4B\u5230\u901A\u9053\u6570\u4E3A0
+NET_TALK_INIT_ERROR=\u5F55\u97F3\u5E93\u521D\u59CB\u5316\u5931\u8D25
+NET_TALK_NOT_INIT=\u5F55\u97F3\u5E93\u672A\u7ECF\u521D\u59CB\u5316
+NET_TALK_SENDDATA_ERROR=\u53D1\u9001\u97F3\u9891\u6570\u636E\u51FA\u9519
+NET_REAL_ALREADY_SAVING=\u5B9E\u65F6\u6570\u636E\u5DF2\u7ECF\u5904\u4E8E\u4FDD\u5B58\u72B6\u6001
+NET_NOT_SAVING=\u672A\u4FDD\u5B58\u5B9E\u65F6\u6570\u636E
+NET_OPEN_FILE_ERROR=\u6253\u5F00\u6587\u4EF6\u51FA\u9519
+NET_PTZ_SET_TIMER_ERROR=\u542F\u52A8\u4E91\u53F0\u63A7\u5236\u5B9A\u65F6\u5668\u5931\u8D25
+NET_RETURN_DATA_ERROR=\u5BF9\u8FD4\u56DE\u6570\u636E\u7684\u6821\u9A8C\u51FA\u9519
+NET_INSUFFICIENT_BUFFER=\u6CA1\u6709\u8DB3\u591F\u7684\u7F13\u5B58
+NET_NOT_SUPPORTED=\u5F53\u524DSDK\u672A\u652F\u6301\u8BE5\u529F\u80FD
+NET_NO_RECORD_FOUND=\u67E5\u8BE2\u4E0D\u5230\u5F55\u50CF
+NET_NOT_AUTHORIZED=\u65E0\u64CD\u4F5C\u6743\u9650
+NET_NOT_NOW=\u6682\u65F6\u65E0\u6CD5\u6267\u884C
+NET_NO_TALK_CHANNEL=\u672A\u53D1\u73B0\u5BF9\u8BB2\u901A\u9053
+NET_NO_AUDIO=\u672A\u53D1\u73B0\u97F3\u9891
+NET_NO_INIT=\u7F51\u7EDCSDK\u672A\u7ECF\u521D\u59CB\u5316
+NET_DOWNLOAD_END=\u4E0B\u8F7D\u5DF2\u7ED3\u675F
+NET_EMPTY_LIST=\u67E5\u8BE2\u7ED3\u679C\u4E3A\u7A7A
+NET_ERROR_GETCFG_SYSATTR=\u83B7\u53D6\u7CFB\u7EDF\u5C5E\u6027\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_SERIAL=\u83B7\u53D6\u5E8F\u5217\u53F7\u5931\u8D25
+NET_ERROR_GETCFG_GENERAL=\u83B7\u53D6\u5E38\u89C4\u5C5E\u6027\u5931\u8D25
+NET_ERROR_GETCFG_DSPCAP=\u83B7\u53D6DSP\u80FD\u529B\u63CF\u8FF0\u5931\u8D25
+NET_ERROR_GETCFG_NETCFG=\u83B7\u53D6\u7F51\u7EDC\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_CHANNAME=\u83B7\u53D6\u901A\u9053\u540D\u79F0\u5931\u8D25
+NET_ERROR_GETCFG_VIDEO=\u83B7\u53D6\u89C6\u9891\u5C5E\u6027\u5931\u8D25
+NET_ERROR_GETCFG_RECORD=\u83B7\u53D6\u5F55\u8C61\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_PRONAME=\u83B7\u53D6\u89E3\u7801\u5668\u534F\u8BAE\u540D\u79F0\u5931\u8D25
+NET_ERROR_GETCFG_FUNCNAME=\u83B7\u53D6232\u4E32\u53E3\u529F\u80FD\u540D\u79F0\u5931\u8D25
+NET_ERROR_GETCFG_485DECODER=\u83B7\u53D6\u89E3\u7801\u5668\u5C5E\u6027\u5931\u8D25
+NET_ERROR_GETCFG_232COM=\u83B7\u53D6232\u4E32\u53E3\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_ALARMIN=\u83B7\u53D6\u5916\u90E8\u62A5\u8B66\u8F93\u5165\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_ALARMDET=\u83B7\u53D6\u52A8\u6001\u68C0\u6D4B\u62A5\u8B66\u5931\u8D25
+NET_ERROR_GETCFG_SYSTIME=\u83B7\u53D6\u8BBE\u5907\u65F6\u95F4\u5931\u8D25
+NET_ERROR_GETCFG_PREVIEW=\u83B7\u53D6\u9884\u89C8\u53C2\u6570\u5931\u8D25
+NET_ERROR_GETCFG_AUTOMT=\u83B7\u53D6\u81EA\u52A8\u7EF4\u62A4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_VIDEOMTRX=\u83B7\u53D6\u89C6\u9891\u77E9\u9635\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_COVER=\u83B7\u53D6\u533A\u57DF\u906E\u6321\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_WATERMAKE=\u83B7\u53D6\u56FE\u8C61\u6C34\u5370\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_MULTICAST=\u83B7\u53D6\u914D\u7F6E\u5931\u8D25\u4F4D\u7F6E\uFF1A\u7EC4\u64AD\u7AEF\u53E3\u6309\u901A\u9053\u914D\u7F6E
+NET_ERROR_SETCFG_GENERAL=\u4FEE\u6539\u5E38\u89C4\u5C5E\u6027\u5931\u8D25
+NET_ERROR_SETCFG_NETCFG=\u4FEE\u6539\u7F51\u7EDC\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_CHANNAME=\u4FEE\u6539\u901A\u9053\u540D\u79F0\u5931\u8D25
+NET_ERROR_SETCFG_VIDEO=\u4FEE\u6539\u89C6\u9891\u5C5E\u6027\u5931\u8D25
+NET_ERROR_SETCFG_RECORD=\u4FEE\u6539\u5F55\u8C61\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_485DECODER=\u4FEE\u6539\u89E3\u7801\u5668\u5C5E\u6027\u5931\u8D25
+NET_ERROR_SETCFG_232COM=\u4FEE\u6539232\u4E32\u53E3\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_ALARMIN=\u4FEE\u6539\u5916\u90E8\u8F93\u5165\u62A5\u8B66\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_ALARMDET=\u4FEE\u6539\u52A8\u6001\u68C0\u6D4B\u62A5\u8B66\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_SYSTIME=\u4FEE\u6539\u8BBE\u5907\u65F6\u95F4\u5931\u8D25
+NET_ERROR_SETCFG_PREVIEW=\u4FEE\u6539\u9884\u89C8\u53C2\u6570\u5931\u8D25
+NET_ERROR_SETCFG_AUTOMT=\u4FEE\u6539\u81EA\u52A8\u7EF4\u62A4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_VIDEOMTRX=\u4FEE\u6539\u89C6\u9891\u77E9\u9635\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_COVER=\u4FEE\u6539\u533A\u57DF\u906E\u6321\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_WATERMAKE=\u4FEE\u6539\u56FE\u8C61\u6C34\u5370\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_WLAN=\u4FEE\u6539\u65E0\u7EBF\u7F51\u7EDC\u4FE1\u606F\u5931\u8D25
+NET_ERROR_SETCFG_WLANDEV=\u9009\u62E9\u65E0\u7EBF\u7F51\u7EDC\u8BBE\u5907\u5931\u8D25
+NET_ERROR_SETCFG_REGISTER=\u4FEE\u6539\u4E3B\u52A8\u6CE8\u518C\u53C2\u6570\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_CAMERA=\u4FEE\u6539\u6444\u50CF\u5934\u5C5E\u6027\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_INFRARED=\u4FEE\u6539\u7EA2\u5916\u62A5\u8B66\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_SOUNDALARM=\u4FEE\u6539\u97F3\u9891\u62A5\u8B66\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_STORAGE=\u4FEE\u6539\u5B58\u50A8\u4F4D\u7F6E\u914D\u7F6E\u5931\u8D25
+NET_AUDIOENCODE_NOTINIT=\u97F3\u9891\u7F16\u7801\u63A5\u53E3\u6CA1\u6709\u6210\u529F\u521D\u59CB\u5316
+NET_DATA_TOOLONGH=\u6570\u636E\u8FC7\u957F
+NET_UNSUPPORTED=\u8BBE\u5907\u4E0D\u652F\u6301\u8BE5\u64CD\u4F5C
+NET_DEVICE_BUSY=\u8BBE\u5907\u8D44\u6E90\u4E0D\u8DB3
+NET_SERVER_STARTED=\u670D\u52A1\u5668\u5DF2\u7ECF\u542F\u52A8
+NET_SERVER_STOPPED=\u670D\u52A1\u5668\u5C1A\u672A\u6210\u529F\u542F\u52A8
+NET_LISTER_INCORRECT_SERIAL=\u8F93\u5165\u5E8F\u5217\u53F7\u6709\u8BEF
+NET_QUERY_DISKINFO_FAILED=\u83B7\u53D6\u786C\u76D8\u4FE1\u606F\u5931\u8D25
+NET_ERROR_GETCFG_SESSION=\u83B7\u53D6\u8FDE\u63A5Session\u4FE1\u606F
+NET_USER_FLASEPWD_TRYTIME=\u8F93\u5165\u5BC6\u7801\u9519\u8BEF\u8D85\u8FC7\u9650\u5236\u6B21\u6570
+NET_LOGIN_ERROR_PASSWORD=\u5BC6\u7801\u4E0D\u6B63\u786E
+NET_LOGIN_ERROR_USER=\u5E10\u6237\u4E0D\u5B58\u5728
+NET_LOGIN_ERROR_TIMEOUT=\u7B49\u5F85\u767B\u5F55\u8FD4\u56DE\u8D85\u65F6
+NET_LOGIN_ERROR_RELOGGIN=\u5E10\u53F7\u5DF2\u767B\u5F55
+NET_LOGIN_ERROR_LOCKED=\u5E10\u53F7\u5DF2\u88AB\u9501\u5B9A
+NET_LOGIN_ERROR_BLACKLIST=\u5E10\u53F7\u5DF2\u88AB\u5217\u4E3A\u7981\u6B62\u540D\u5355
+NET_LOGIN_ERROR_BUSY=\u8D44\u6E90\u4E0D\u8DB3\uFF0C\u7CFB\u7EDF\u5FD9
+NET_LOGIN_ERROR_CONNECT=\u767B\u5F55\u8BBE\u5907\u8D85\u65F6\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u5E76\u91CD\u8BD5
+NET_LOGIN_ERROR_NETWORK=\u7F51\u7EDC\u8FDE\u63A5\u5931\u8D25
+NET_LOGIN_ERROR_SUBCONNECT=\u767B\u5F55\u8BBE\u5907\u6210\u529F\uFF0C\u4F46\u65E0\u6CD5\u521B\u5EFA\u89C6\u9891\u901A\u9053\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u72B6\u51B5
+NET_LOGIN_ERROR_MAXCONNECT=\u8D85\u8FC7\u6700\u5927\u8FDE\u63A5\u6570
+NET_LOGIN_ERROR_PROTOCOL3_ONLY=\u53EA\u652F\u63013\u4EE3\u534F\u8BAE
+NET_LOGIN_ERROR_UKEY_LOST=\u672A\u63D2\u5165U\u76FE\u6216U\u76FE\u4FE1\u606F\u9519\u8BEF
+NET_LOGIN_ERROR_NO_AUTHORIZED=\u5BA2\u6237\u7AEFIP\u5730\u5740\u6CA1\u6709\u767B\u5F55\u6743\u9650
+NET_LOGIN_ERROR_USER_OR_PASSOWRD=\u8D26\u53F7\u6216\u5BC6\u7801\u9519\u8BEF
+NET_LOGIN_ERROR_DEVICE_NOT_INIT=\u8BBE\u5907\u5C1A\u672A\u521D\u59CB\u5316\uFF0C\u4E0D\u80FD\u767B\u5F55\uFF0C\u8BF7\u5148\u521D\u59CB\u5316\u8BBE\u5907
+NET_RENDER_SOUND_ON_ERROR=Render\u5E93\u6253\u5F00\u97F3\u9891\u51FA\u9519
+NET_RENDER_SOUND_OFF_ERROR=Render\u5E93\u5173\u95ED\u97F3\u9891\u51FA\u9519
+NET_RENDER_SET_VOLUME_ERROR=Render\u5E93\u63A7\u5236\u97F3\u91CF\u51FA\u9519
+NET_RENDER_ADJUST_ERROR=Render\u5E93\u8BBE\u7F6E\u753B\u9762\u53C2\u6570\u51FA\u9519
+NET_RENDER_PAUSE_ERROR=Render\u5E93\u6682\u505C\u64AD\u653E\u51FA\u9519
+NET_RENDER_SNAP_ERROR=Render\u5E93\u6293\u56FE\u51FA\u9519
+NET_RENDER_STEP_ERROR=Render\u5E93\u6B65\u8FDB\u51FA\u9519
+NET_RENDER_FRAMERATE_ERROR=Render\u5E93\u8BBE\u7F6E\u5E27\u7387\u51FA\u9519
+NET_RENDER_DISPLAYREGION_ERROR=Render\u5E93\u8BBE\u7F6E\u663E\u793A\u533A\u57DF\u51FA\u9519
+NET_RENDER_GETOSDTIME_ERROR=Render\u5E93\u83B7\u53D6\u5F53\u524D\u64AD\u653E\u65F6\u95F4\u51FA\u9519
+NET_GROUP_EXIST=\u7EC4\u540D\u5DF2\u5B58\u5728
+NET_GROUP_NOEXIST=\u7EC4\u540D\u4E0D\u5B58\u5728
+NET_GROUP_RIGHTOVER=\u7EC4\u7684\u6743\u9650\u8D85\u51FA\u6743\u9650\u5217\u8868\u8303\u56F4
+NET_GROUP_HAVEUSER=\u7EC4\u4E0B\u6709\u7528\u6237\uFF0C\u4E0D\u80FD\u5220\u9664
+NET_GROUP_RIGHTUSE=\u7EC4\u7684\u67D0\u4E2A\u6743\u9650\u88AB\u7528\u6237\u4F7F\u7528\uFF0C\u4E0D\u80FD\u5220\u9664
+NET_GROUP_SAMENAME=\u65B0\u7EC4\u540D\u540C\u5DF2\u6709\u7EC4\u540D\u91CD\u590D
+NET_USER_EXIST=\u7528\u6237\u5DF2\u5B58\u5728
+NET_USER_NOEXIST=\u7528\u6237\u4E0D\u5B58\u5728
+NET_USER_RIGHTOVER=\u7528\u6237\u6743\u9650\u8D85\u51FA\u7EC4\u6743\u9650
+NET_USER_PWD=\u4FDD\u7559\u5E10\u53F7\uFF0C\u4E0D\u5BB9\u8BB8\u4FEE\u6539\u5BC6\u7801
+NET_USER_FLASEPWD=\u5BC6\u7801\u4E0D\u6B63\u786E
+NET_USER_NOMATCHING=\u5BC6\u7801\u4E0D\u5339\u914D
+NET_USER_INUSE=\u8D26\u53F7\u6B63\u5728\u4F7F\u7528\u4E2D
+NET_ERROR_GETCFG_ETHERNET=\u83B7\u53D6\u7F51\u5361\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_WLAN=\u83B7\u53D6\u65E0\u7EBF\u7F51\u7EDC\u4FE1\u606F\u5931\u8D25
+NET_ERROR_GETCFG_WLANDEV=\u83B7\u53D6\u65E0\u7EBF\u7F51\u7EDC\u8BBE\u5907\u5931\u8D25
+NET_ERROR_GETCFG_REGISTER=\u83B7\u53D6\u4E3B\u52A8\u6CE8\u518C\u53C2\u6570\u5931\u8D25
+NET_ERROR_GETCFG_CAMERA=\u83B7\u53D6\u6444\u50CF\u5934\u5C5E\u6027\u5931\u8D25
+NET_ERROR_GETCFG_INFRARED=\u83B7\u53D6\u7EA2\u5916\u62A5\u8B66\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_SOUNDALARM=\u83B7\u53D6\u97F3\u9891\u62A5\u8B66\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_STORAGE=\u83B7\u53D6\u5B58\u50A8\u4F4D\u7F6E\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_MAIL=\u83B7\u53D6\u90AE\u4EF6\u914D\u7F6E\u5931\u8D25
+NET_CONFIG_DEVBUSY=\u6682\u65F6\u65E0\u6CD5\u8BBE\u7F6E
+NET_CONFIG_DATAILLEGAL=\u914D\u7F6E\u6570\u636E\u4E0D\u5408\u6CD5
+NET_ERROR_GETCFG_DST=\u83B7\u53D6\u590F\u4EE4\u65F6\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_DST=\u8BBE\u7F6E\u590F\u4EE4\u65F6\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_VIDEO_OSD=\u83B7\u53D6\u89C6\u9891OSD\u53E0\u52A0\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_VIDEO_OSD=\u8BBE\u7F6E\u89C6\u9891OSD\u53E0\u52A0\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_GPRSCDMA=\u83B7\u53D6CDMA\GPRS\u7F51\u7EDC\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_GPRSCDMA=\u8BBE\u7F6ECDMA\GPRS\u7F51\u7EDC\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_IPFILTER=\u83B7\u53D6IP\u8FC7\u6EE4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_IPFILTER=\u8BBE\u7F6EIP\u8FC7\u6EE4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_TALKENCODE=\u83B7\u53D6\u8BED\u97F3\u5BF9\u8BB2\u7F16\u7801\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_TALKENCODE=\u8BBE\u7F6E\u8BED\u97F3\u5BF9\u8BB2\u7F16\u7801\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_RECORDLEN=\u83B7\u53D6\u5F55\u50CF\u6253\u5305\u957F\u5EA6\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_RECORDLEN=\u8BBE\u7F6E\u5F55\u50CF\u6253\u5305\u957F\u5EA6\u914D\u7F6E\u5931\u8D25
+NET_DONT_SUPPORT_SUBAREA=\u4E0D\u652F\u6301\u7F51\u7EDC\u786C\u76D8\u5206\u533A
+NET_ERROR_GET_AUTOREGSERVER=\u83B7\u53D6\u8BBE\u5907\u4E0A\u4E3B\u52A8\u6CE8\u518C\u670D\u52A1\u5668\u4FE1\u606F\u5931\u8D25
+NET_ERROR_CONTROL_AUTOREGISTER=\u4E3B\u52A8\u6CE8\u518C\u91CD\u5B9A\u5411\u6CE8\u518C\u9519\u8BEF
+NET_ERROR_DISCONNECT_AUTOREGISTER=\u65AD\u5F00\u4E3B\u52A8\u6CE8\u518C\u670D\u52A1\u5668\u9519\u8BEF
+NET_ERROR_GETCFG_MMS=\u83B7\u53D6mms\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_MMS=\u8BBE\u7F6Emms\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_SMSACTIVATION=\u83B7\u53D6\u77ED\u4FE1\u6FC0\u6D3B\u65E0\u7EBF\u8FDE\u63A5\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_SMSACTIVATION=\u8BBE\u7F6E\u77ED\u4FE1\u6FC0\u6D3B\u65E0\u7EBF\u8FDE\u63A5\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_DIALINACTIVATION=\u83B7\u53D6\u62E8\u53F7\u6FC0\u6D3B\u65E0\u7EBF\u8FDE\u63A5\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_DIALINACTIVATION=\u8BBE\u7F6E\u62E8\u53F7\u6FC0\u6D3B\u65E0\u7EBF\u8FDE\u63A5\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_VIDEOOUT=\u67E5\u8BE2\u89C6\u9891\u8F93\u51FA\u53C2\u6570\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_VIDEOOUT=\u8BBE\u7F6E\u89C6\u9891\u8F93\u51FA\u53C2\u6570\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_OSDENABLE=\u83B7\u53D6osd\u53E0\u52A0\u4F7F\u80FD\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_OSDENABLE=\u8BBE\u7F6Eosd\u53E0\u52A0\u4F7F\u80FD\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_ENCODERINFO=\u8BBE\u7F6E\u6570\u5B57\u901A\u9053\u524D\u7AEF\u7F16\u7801\u63A5\u5165\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_TVADJUST=\u83B7\u53D6TV\u8C03\u8282\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_TVADJUST=\u8BBE\u7F6ETV\u8C03\u8282\u914D\u7F6E\u5931\u8D25
+NET_ERROR_CONNECT_FAILED=\u8BF7\u6C42\u5EFA\u7ACB\u8FDE\u63A5\u5931\u8D25
+NET_ERROR_SETCFG_BURNFILE=\u8BF7\u6C42\u523B\u5F55\u6587\u4EF6\u4E0A\u4F20\u5931\u8D25
+NET_ERROR_SNIFFER_GETCFG=\u83B7\u53D6\u6293\u5305\u914D\u7F6E\u4FE1\u606F\u5931\u8D25
+NET_ERROR_SNIFFER_SETCFG=\u8BBE\u7F6E\u6293\u5305\u914D\u7F6E\u4FE1\u606F\u5931\u8D25
+NET_ERROR_DOWNLOADRATE_GETCFG=\u67E5\u8BE2\u4E0B\u8F7D\u9650\u5236\u4FE1\u606F\u5931\u8D25
+NET_ERROR_DOWNLOADRATE_SETCFG=\u8BBE\u7F6E\u4E0B\u8F7D\u9650\u5236\u4FE1\u606F\u5931\u8D25
+NET_ERROR_SEARCH_TRANSCOM=\u67E5\u8BE2\u4E32\u53E3\u53C2\u6570\u5931\u8D25
+NET_ERROR_GETCFG_POINT=\u83B7\u53D6\u9884\u5236\u70B9\u4FE1\u606F\u9519\u8BEF
+NET_ERROR_SETCFG_POINT=\u8BBE\u7F6E\u9884\u5236\u70B9\u4FE1\u606F\u9519\u8BEF
+NET_SDK_LOGOUT_ERROR=SDK\u6CA1\u6709\u6B63\u5E38\u767B\u51FA\u8BBE\u5907
+NET_ERROR_GET_VEHICLE_CFG=\u83B7\u53D6\u8F66\u8F7D\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_VEHICLE_CFG=\u8BBE\u7F6E\u8F66\u8F7D\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GET_ATM_OVERLAY_CFG=\u83B7\u53D6atm\u53E0\u52A0\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_ATM_OVERLAY_CFG=\u8BBE\u7F6Eatm\u53E0\u52A0\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GET_ATM_OVERLAY_ABILITY=\u83B7\u53D6atm\u53E0\u52A0\u80FD\u529B\u5931\u8D25
+NET_ERROR_GET_DECODER_TOUR_CFG=\u83B7\u53D6\u89E3\u7801\u5668\u89E3\u7801\u8F6E\u5DE1\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_DECODER_TOUR_CFG=\u8BBE\u7F6E\u89E3\u7801\u5668\u89E3\u7801\u8F6E\u5DE1\u914D\u7F6E\u5931\u8D25
+NET_ERROR_CTRL_DECODER_TOUR=\u63A7\u5236\u89E3\u7801\u5668\u89E3\u7801\u8F6E\u5DE1\u5931\u8D25
+NET_GROUP_OVERSUPPORTNUM=\u8D85\u51FA\u8BBE\u5907\u652F\u6301\u6700\u5927\u7528\u6237\u7EC4\u6570\u76EE
+NET_USER_OVERSUPPORTNUM=\u8D85\u51FA\u8BBE\u5907\u652F\u6301\u6700\u5927\u7528\u6237\u6570\u76EE
+NET_ERROR_GET_SIP_CFG=\u83B7\u53D6SIP\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_SIP_CFG=\u8BBE\u7F6ESIP\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GET_SIP_ABILITY=\u83B7\u53D6SIP\u80FD\u529B\u5931\u8D25
+NET_ERROR_GET_WIFI_AP_CFG=\u83B7\u53D6WIFIap\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_WIFI_AP_CFG=\u8BBE\u7F6EWIFIap\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GET_DECODE_POLICY=\u83B7\u53D6\u89E3\u7801\u7B56\u7565\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_DECODE_POLICY=\u8BBE\u7F6E\u89E3\u7801\u7B56\u7565\u914D\u7F6E\u5931\u8D25
+NET_ERROR_TALK_REJECT=\u62D2\u7EDD\u5BF9\u8BB2
+NET_ERROR_TALK_OPENED=\u5BF9\u8BB2\u88AB\u5176\u4ED6\u5BA2\u6237\u7AEF\u6253\u5F00
+NET_ERROR_TALK_RESOURCE_CONFLICIT=\u8D44\u6E90\u51B2\u7A81
+NET_ERROR_TALK_UNSUPPORTED_ENCODE=\u4E0D\u652F\u6301\u7684\u8BED\u97F3\u7F16\u7801\u683C\u5F0F
+NET_ERROR_TALK_RIGHTLESS=\u65E0\u6743\u9650
+NET_ERROR_TALK_FAILED=\u8BF7\u6C42\u5BF9\u8BB2\u5931\u8D25
+NET_ERROR_GET_MACHINE_CFG=\u83B7\u53D6\u673A\u5668\u76F8\u5173\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SET_MACHINE_CFG=\u8BBE\u7F6E\u673A\u5668\u76F8\u5173\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GET_DATA_FAILED=\u8BBE\u5907\u65E0\u6CD5\u83B7\u53D6\u5F53\u524D\u8BF7\u6C42\u6570\u636E
+NET_ERROR_MAC_VALIDATE_FAILED=MAC\u5730\u5740\u9A8C\u8BC1\u5931\u8D25
+NET_ERROR_GET_INSTANCE=\u83B7\u53D6\u670D\u52A1\u5668\u5B9E\u4F8B\u5931\u8D25
+NET_ERROR_JSON_REQUEST=\u751F\u6210\u7684json\u5B57\u7B26\u4E32\u9519\u8BEF
+NET_ERROR_JSON_RESPONSE=\u54CD\u5E94\u7684json\u5B57\u7B26\u4E32\u9519\u8BEF
+NET_ERROR_VERSION_HIGHER=\u534F\u8BAE\u7248\u672C\u4F4E\u4E8E\u5F53\u524D\u4F7F\u7528\u7684\u7248\u672C
+NET_SPARE_NO_CAPACITY=\u8BBE\u5907\u64CD\u4F5C\u5931\u8D25,\u5BB9\u91CF\u4E0D\u8DB3
+NET_ERROR_SOURCE_IN_USE=\u663E\u793A\u6E90\u88AB\u5176\u4ED6\u8F93\u51FA\u5360\u7528
+NET_ERROR_REAVE=\u9AD8\u7EA7\u7528\u6237\u62A2\u5360\u4F4E\u7EA7\u7528\u6237\u8D44\u6E90
+NET_ERROR_NETFORBID=\u7981\u6B62\u5165\u7F51
+NET_ERROR_GETCFG_MACFILTER=\u83B7\u53D6MAC\u8FC7\u6EE4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_MACFILTER=\u8BBE\u7F6EMAC\u8FC7\u6EE4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_GETCFG_IPMACFILTER=\u83B7\u53D6IP/MAC\u8FC7\u6EE4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_SETCFG_IPMACFILTER=\u8BBE\u7F6EIP/MAC\u8FC7\u6EE4\u914D\u7F6E\u5931\u8D25
+NET_ERROR_OPERATION_OVERTIME=\u5F53\u524D\u64CD\u4F5C\u8D85\u65F6
+NET_ERROR_SENIOR_VALIDATE_FAILED=\u9AD8\u7EA7\u6821\u9A8C\u5931\u8D25
+NET_ERROR_DEVICE_ID_NOT_EXIST=\u8BBE\u5907ID\u4E0D\u5B58\u5728
+NET_ERROR_UNSUPPORTED=\u4E0D\u652F\u6301\u5F53\u524D\u64CD\u4F5C
+NET_ERROR_PROXY_DLLLOAD=\u4EE3\u7406\u5E93\u52A0\u8F7D\u5931\u8D25
+NET_ERROR_PROXY_ILLEGAL_PARAM=\u4EE3\u7406\u7528\u6237\u53C2\u6570\u4E0D\u5408\u6CD5
+NET_ERROR_PROXY_INVALID_HANDLE=\u4EE3\u7406\u53E5\u67C4\u65E0\u6548
+NET_ERROR_PROXY_LOGIN_DEVICE_ERROR=\u4EE3\u7406\u767B\u5165\u524D\u7AEF\u8BBE\u5907\u5931\u8D25
+NET_ERROR_PROXY_START_SERVER_ERROR=\u542F\u52A8\u4EE3\u7406\u670D\u52A1\u5931\u8D25
+NET_ERROR_SPEAK_FAILED=\u8BF7\u6C42\u558A\u8BDD\u5931\u8D25
+NET_ERROR_NOT_SUPPORT_F6=\u8BBE\u5907\u4E0D\u652F\u6301\u6B64F6\u63A5\u53E3\u8C03\u7528
+NET_ERROR_CD_UNREADY=\u5149\u76D8\u672A\u5C31\u7EEA
+NET_ERROR_DIR_NOT_EXIST=\u76EE\u5F55\u4E0D\u5B58\u5728
+NET_ERROR_UNSUPPORTED_SPLIT_MODE=\u8BBE\u5907\u4E0D\u652F\u6301\u7684\u5206\u5272\u6A21\u5F0F
+NET_ERROR_OPEN_WND_PARAM=\u5F00\u7A97\u53C2\u6570\u4E0D\u5408\u6CD5
+NET_ERROR_LIMITED_WND_COUNT=\u5F00\u7A97\u6570\u91CF\u8D85\u8FC7\u9650\u5236
+NET_ERROR_UNMATCHED_REQUEST=\u8BF7\u6C42\u547D\u4EE4\u4E0E\u5F53\u524D\u6A21\u5F0F\u4E0D\u5339\u914D
+NET_RENDER_ENABLELARGEPICADJUSTMENT_ERROR=Render\u5E93\u542F\u7528\u9AD8\u6E05\u56FE\u50CF\u5185\u90E8\u8C03\u6574\u7B56\u7565\u51FA\u9519
+NET_ERROR_UPGRADE_FAILED=\u8BBE\u5907\u5347\u7EA7\u5931\u8D25
+NET_ERROR_NO_TARGET_DEVICE=\u627E\u4E0D\u5230\u76EE\u6807\u8BBE\u5907
+NET_ERROR_NO_VERIFY_DEVICE=\u627E\u4E0D\u5230\u9A8C\u8BC1\u8BBE\u5907
+NET_ERROR_CASCADE_RIGHTLESS=\u65E0\u7EA7\u8054\u6743\u9650
+NET_ERROR_LOW_PRIORITY=\u4F4E\u4F18\u5148\u7EA7
+NET_ERROR_REMOTE_REQUEST_TIMEOUT=\u8FDC\u7A0B\u8BBE\u5907\u8BF7\u6C42\u8D85\u65F6
+NET_ERROR_LIMITED_INPUT_SOURCE=\u8F93\u5165\u6E90\u8D85\u51FA\u6700\u5927\u8DEF\u6570\u9650\u5236
+NET_ERROR_SET_LOG_PRINT_INFO=\u8BBE\u7F6E\u65E5\u5FD7\u6253\u5370\u5931\u8D25
+NET_ERROR_PARAM_DWSIZE_ERROR=\u5165\u53C2\u7684dwsize\u5B57\u6BB5\u51FA\u9519
+NET_ERROR_LIMITED_MONITORWALL_COUNT=\u7535\u89C6\u5899\u6570\u91CF\u8D85\u8FC7\u4E0A\u9650
+NET_ERROR_PART_PROCESS_FAILED=\u90E8\u5206\u8FC7\u7A0B\u6267\u884C\u5931\u8D25
+NET_ERROR_TARGET_NOT_SUPPORT=\u8BE5\u529F\u80FD\u4E0D\u652F\u6301\u8F6C\u53D1
+NET_ERROR_VISITE_FILE=\u8BBF\u95EE\u6587\u4EF6\u5931\u8D25
+NET_ERROR_DEVICE_STATUS_BUSY=\u8BBE\u5907\u5FD9
+NET_USER_PWD_NOT_AUTHORIZED=\u4FEE\u6539\u5BC6\u7801\u65E0\u6743\u9650
+NET_USER_PWD_NOT_STRONG=\u5BC6\u7801\u5F3A\u5EA6\u4E0D\u591F
+NET_ERROR_NO_SUCH_CONFIG=\u6CA1\u6709\u5BF9\u5E94\u7684\u914D\u7F6E
+NET_ERROR_AUDIO_RECORD_FAILED=\u5F55\u97F3\u5931\u8D25
+NET_ERROR_SEND_DATA_FAILED=\u6570\u636E\u53D1\u9001\u5931\u8D25
+NET_ERROR_OBSOLESCENT_INTERFACE=\u5E9F\u5F03\u63A5\u53E3
+NET_ERROR_INSUFFICIENT_INTERAL_BUF=\u5185\u90E8\u7F13\u51B2\u4E0D\u8DB3
+NET_ERROR_NEED_ENCRYPTION_PASSWORD=\u4FEE\u6539\u8BBE\u5907ip\u65F6,\u9700\u8981\u6821\u9A8C\u5BC6\u7801
+NET_ERROR_NOSUPPORT_RECORD=\u8BBE\u5907\u4E0D\u652F\u6301\u6B64\u8BB0\u5F55\u96C6
+NET_ERROR_SERIALIZE_ERROR=\u6570\u636E\u5E8F\u5217\u5316\u9519\u8BEF
+NET_ERROR_DESERIALIZE_ERROR=\u6570\u636E\u53CD\u5E8F\u5217\u5316\u9519\u8BEF
+NET_ERROR_LOWRATEWPAN_ID_EXISTED=\u8BE5\u65E0\u7EBFID\u5DF2\u5B58\u5728
+NET_ERROR_LOWRATEWPAN_ID_LIMIT=\u65E0\u7EBFID\u6570\u91CF\u5DF2\u8D85\u9650
+NET_ERROR_LOWRATEWPAN_ID_ABNORMAL=\u65E0\u7EBF\u5F02\u5E38\u6DFB\u52A0
+NET_ERROR_ENCRYPT=\u52A0\u5BC6\u6570\u636E\u5931\u8D25
+NET_ERROR_PWD_ILLEGAL=\u65B0\u5BC6\u7801\u4E0D\u5408\u89C4\u8303
+NET_ERROR_DEVICE_ALREADY_INIT=\u8BBE\u5907\u5DF2\u7ECF\u521D\u59CB\u5316
+NET_ERROR_SECURITY_CODE=\u5B89\u5168\u7801\u9519\u8BEF
+NET_ERROR_SECURITY_CODE_TIMEOUT=\u5B89\u5168\u7801\u8D85\u51FA\u6709\u6548\u671F
+NET_ERROR_GET_PWD_SPECI=\u83B7\u53D6\u5BC6\u7801\u89C4\u8303\u5931\u8D25
+NET_ERROR_NO_AUTHORITY_OF_OPERATION=\u65E0\u6743\u9650\u8FDB\u884C\u8BE5\u64CD\u4F5C
+NET_ERROR_DECRYPT=\u89E3\u5BC6\u6570\u636E\u5931\u8D25
+NET_ERROR_2D_CODE=2Dcode\u6821\u9A8C\u5931\u8D25
+NET_ERROR_INVALID_REQUEST=\u975E\u6CD5\u7684RPC\u8BF7\u6C42
+NET_ERROR_PWD_RESET_DISABLE=\u5BC6\u7801\u91CD\u7F6E\u529F\u80FD\u5DF2\u5173\u95ED
+NET_ERROR_PLAY_PRIVATE_DATA=\u663E\u793A\u79C1\u6709\u6570\u636E\uFF0C\u6BD4\u5982\u89C4\u5219\u6846\u7B49\u5931\u8D25
+NET_ERROR_ROBOT_OPERATE_FAILED=\u673A\u5668\u4EBA\u64CD\u4F5C\u5931\u8D25
+NET_ERROR_PHOTOSIZE_EXCEEDSLIMIT=\u56FE\u7247\u5927\u5C0F\u8D85\u9650
+NET_ERROR_USERID_INVALID=\u7528\u6237ID\u4E0D\u5B58\u5728
+NET_ERROR_EXTRACTFEATURE_FAILED=\u7167\u7247\u7279\u5F81\u503C\u63D0\u53D6\u5931\u8D25
+NET_ERROR_PHOTO_EXIST=\u7167\u7247\u5DF2\u5B58\u5728
+NET_ERROR_PHOTO_OVERFLOW=\u7167\u7247\u6570\u91CF\u8D85\u8FC7\u4E0A\u9650
+NET_ERROR_CHANNEL_ALREADY_OPENED=\u901A\u9053\u5DF2\u7ECF\u6253\u5F00
+NET_ERROR_CREATE_SOCKET=\u521B\u5EFA\u5957\u63A5\u5B57\u5931\u8D25
+NET_ERROR_CHANNEL_NUM=\u901A\u9053\u53F7\u9519\u8BEF
+NET_ERROR_FACE_RECOGNITION_SERVER_GROUP_ID_EXCEED=\u7EC4ID\u8D85\u8FC7\u6700\u5927\u503C
+
+# RealPlay Info
+START_REALPLAY=\u5F00\u59CB\u9884\u89C8
+STOP_REALPLAY=\u505C\u6B62\u9884\u89C8
+ATTACH=\u667A\u80FD\u8BA2\u9605
+DETACH=\u53D6\u6D88\u8BA2\u9605
+REALPLAY_SUCCEED=\u5B9E\u65F6\u9884\u89C8\u6210\u529F
+REALPLAY_FAILED=\u5B9E\u65F6\u9884\u89C8\u5931\u8D25
+
+CHN=\u901A\u9053
+CHANNEL=\u901A\u9053
+STREAM_TYPE=\u7801\u6D41
+MASTER_AND_SUB_STREAM=\u4E3B\u8F85\u7801\u6D41
+MASTER_STREAM=\u4E3B\u7801\u6D41
+SUB_STREAM=\u8F85\u7801\u6D41
+
+# Capture Picture
+LOCAL_CAPTURE=\u672C\u5730\u6293\u56FE
+REMOTE_CAPTURE=\u8FDC\u7A0B\u6293\u56FE
+TIMER_CAPTURE=\u5B9A\u65F6\u6293\u56FE
+STOP_CAPTURE=\u505C\u6B62\u6293\u56FE
+INTERVAL=\u95F4\u9694
+
+TIME_INTERVAL_ILLEGAL=\u65F6\u95F4\u95F4\u9694\u8F93\u5165\u975E\u6CD5 
+PLEASE_START_REALPLAY=\u8BF7\u5148\u6253\u5F00\u5B9E\u65F6\u9884\u89C8
+
+# PTZ Info
+PTZ_CONTROL=\u4E91\u53F0\u63A7\u5236
+LEFT_UP=\u5DE6\u4E0A
+UP=\u4E0A
+RIGHT_UP=\u53F3\u4E0A
+LEFT=\u5DE6
+RIGHT=\u53F3
+LEFT_DOWN=\u5DE6\u4E0B
+DOWN=\u4E0B
+RIGHT_DOWN=\u53F3\u4E0B
+
+ZOOM_ADD=\u53D8\u500D+
+ZOOM_DEC=\u53D8\u500D-
+FOCUS_ADD=\u8C03\u7126+
+FOCUS_DEC=\u8C03\u7126-
+IRIS_ADD=\u5149\u5708+
+IRIS_DEC=\u5149\u5708-
+
+SPEED=\u901F\u7387
+
+#ITS
+EVENT_INFO=\u4E8B\u4EF6\u4FE1\u606F
+EVENT_NAME=\u4E8B\u4EF6\u540D\u79F0
+EVENT_TIME=\u4E8B\u4EF6\u65F6\u95F4
+EVENT_PICTURE=\u4E8B\u4EF6\u4EE5\u53CA\u56FE\u7247
+PLATE_PICTURE=\u8F66\u724C\u56FE
+LICENSE_PLATE=\u8F66\u724C\u53F7
+PLATE_TYPE=\u8F66\u724C\u7C7B\u578B
+PLATE_COLOR=\u8F66\u724C\u989C\u8272
+VEHICLE_TYPE=\u8F66\u8F86\u7C7B\u578B
+VEHICLE_SIZE=\u8F66\u8F86\u5927\u5C0F
+VEHICLE_COLOR=\u8F66\u8F86\u989C\u8272
+FILE_COUNT=\u6587\u4EF6\u603B\u6570
+FILE_INDEX=\u6587\u4EF6\u7F16\u53F7
+GROUP_ID=\u7EC4ID
+ILLEGAL_PLACE=\u8FDD\u6CD5\u5730\u70B9
+LANE_NUMBER=\u8F66\u9053\u53F7
+MANUAL_CAPTURE=\u624B\u52A8\u6293\u62CD
+OPEN_STROBE=\u51FA\u5165\u53E3\u5F00\u95F8
+CLOSE_STROBE=\u51FA\u5165\u53E3\u5173\u95F8
+INDEX=\u5E8F\u53F7
+
+OPERATE=\u64CD\u4F5C
+FUNCTION=\u57FA\u672C
+
+UNDEFINED_COLOR=\u672A\u5B9A\u4E49\u989C\u8272
+BLACK=\u9ED1\u8272
+WHITE=\u767D\u8272
+RED=\u7EA2\u8272
+BLUE=\u84DD\u8272
+GREEN=\u7EFF\u8272
+YELLOW=\u9EC4\u8272
+GRAY=\u7070\u8272
+ORANGE=\u6A59\u8272
+
+LIGHT_DUTY=\u5C0F\u578B\u8F66
+MEDIUM=\u4E2D\u578B\u8F66
+OVER_SIZE=\u5927\u578B\u8F66
+MINI_SIZE=\u5FAE\u578B\u8F66
+LARGE_SIZE=\u957F\u8F66
+
+NO_PLATENUMBER=\u65E0\u8F66\u724C
+MANUALSNAP_SUCCEED=\u624B\u52A8\u6293\u62CD\u6210\u529F
+MANUALSNAP_FAILED=\u624B\u52A8\u6293\u62CD\u5931\u8D25
+
+OPEN_STROBE_SUCCEED=\u5F00\u95F8\u6210\u529F
+OPEN_STROBE_FAILED=\u5F00\u95F8\u5931\u8D25
+CLOSE_STROBE_SUCCEED=\u5173\u95F8\u6210\u529F
+CLOSE_STROBE_FAILED=\u5173\u95F8\u5931\u8D25
+
+EVENT_IVS_TRAFFICJUNCTION=\u4EA4\u901A\u5361\u53E3
+EVENT_IVS_TRAFFIC_RUNREDLIGHT=\u95EF\u7EA2\u706F
+EVENT_IVS_TRAFFIC_OVERLINE=\u538B\u8F66\u9053\u7EBF
+EVENT_IVS_TRAFFIC_RETROGRADE=\u9006\u884C
+EVENT_IVS_TRAFFIC_TURNLEFT=\u8FDD\u7AE0\u5DE6\u8F6C
+EVENT_IVS_TRAFFIC_TURNRIGHT=\u8FDD\u7AE0\u53F3\u8F6C
+EVENT_IVS_TRAFFIC_UTURN=\u8FDD\u7AE0\u6389\u5934
+EVENT_IVS_TRAFFIC_OVERSPEED=\u8D85\u901F
+EVENT_IVS_TRAFFIC_UNDERSPEED=\u4F4E\u901F
+EVENT_IVS_TRAFFIC_PARKING=\u8FDD\u7AE0\u505C\u8F66
+EVENT_IVS_TRAFFIC_WRONGROUTE=\u4E0D\u6309\u8F66\u9053\u884C\u9A76
+EVENT_IVS_TRAFFIC_CROSSLANE=\u8FDD\u7AE0\u53D8\u9053
+EVENT_IVS_TRAFFIC_OVERYELLOWLINE=\u538B\u9EC4\u7EBF
+EVENT_IVS_TRAFFIC_YELLOWPLATEINLANE=\u9EC4\u724C\u8F66\u5360\u9053
+EVENT_IVS_TRAFFIC_PEDESTRAINPRIORITY=\u6591\u9A6C\u7EBF\u884C\u4EBA\u4F18\u5148
+EVENT_IVS_TRAFFIC_MANUALSNAP=\u4EA4\u901A\u624B\u52A8\u6293\u62CD
+EVENT_IVS_TRAFFIC_VEHICLEINROUTE=\u6709\u8F66\u5360\u9053
+EVENT_IVS_TRAFFIC_VEHICLEINBUSROUTE=\u5360\u7528\u516C\u4EA4\u8F66\u9053
+EVENT_IVS_TRAFFIC_BACKING=\u8FDD\u7AE0\u5012\u8F66
+EVENT_IVS_TRAFFIC_PARKINGSPACEPARKING=\u8F66\u4F4D\u6709\u8F66
+EVENT_IVS_TRAFFIC_PARKINGSPACENOPARKING=\u8F66\u4F4D\u65E0\u8F66
+EVENT_IVS_TRAFFIC_WITHOUT_SAFEBELT=\u4EA4\u901A\u672A\u7CFB\u5B89\u5168\u5E26
+
+# DownLoad Info
+DOWNLOAD_RECORD_BYTIME=\u6309\u65F6\u95F4\u4E0B\u8F7D
+DOWNLOAD_RECORD_BYFILE=\u6309\u6587\u4EF6\u4E0B\u8F7D
+QUERY=\u67E5\u8BE2 
+DOWNLOAD=\u4E0B\u8F7D
+STOP_DOWNLOAD=\u505C\u6B62\u4E0B\u8F7D
+START_TIME=\u5F00\u59CB\u65F6\u95F4
+END_TIME=\u7ED3\u675F\u65F6\u95F4
+RECORD_TYPE=\u5F55\u50CF\u7C7B\u578B
+
+GENERAL_RECORD=\u666E\u901A\u5F55\u50CF
+ALARM_RECORD=\u62A5\u8B66\u5F55\u50CF
+MOTION_DETECTION=\u79FB\u52A8\u68C0\u6D4B\u5F55\u50CF
+CARD_NUMBER_RECORD=\u5361\u53F7\u5F55\u50CF
+INTELLIGENT_DETECTION=\u667A\u80FD\u5F55\u50CF
+POS_RECORD=POS\u5F55\u50CF
+
+QUERY_RECORD_IS_NOT_EXIST=\u67E5\u8BE2\u5F55\u50CF\u4E0D\u5B58\u5728
+PLEASE_CHECK_RECORD_TIME=\u8BF7\u68C0\u67E5\u5F55\u50CF\u65F6\u95F4
+PLEASE_SELECT_TIME_AGAIN=\u8BF7\u91CD\u65B0\u9009\u62E9\u65F6\u95F4\uFF0C\u6700\u5927\u65F6\u95F4\u5DEE6\u5C0F\u65F6
+DOWNLOAD_COMPLETED=\u4E0B\u8F7D\u7ED3\u675F
+
+PLEASE_FIRST_QUERY_RECORD=\u8BF7\u5148\u67E5\u8BE2\u5F55\u50CF
+PLEASE_FIRST_SELECT_ROW_WITH_DATA=\u8BF7\u5148\u9009\u62E9\u6709\u5F55\u50CF\u7684\u4E00\u884C
+
+# Time Set
+YEAR=\u5E74
+MONTH=\u6708
+DAY=\u65E5
+HOUR=\u65F6
+MINUTE=\u5206
+SECOND=\u79D2
+CONFIRM=\u786E\u5B9A
+CANCEL=\u53D6\u6D88
+DATE_CHOOSER=\u65F6\u95F4\u9009\u62E9
+
+MONDAY=\u661F\u671F\u4E00
+TUESDAY=\u661F\u671F\u4E8C
+WEDNESDAY=\u661F\u671F\u4E09
+THURSDAY=\u661F\u671F\u56DB
+FRIDAY=\u661F\u671F\u4E94
+SATURDAY=\u661F\u671F\u516D
+SUNDAY=\u661F\u671F\u65E5
+
+# Talk
+TRANSMIT_TYPE=\u8F6C\u53D1\u7C7B\u578B
+LOCAL_TRANSMIT_TYPE=\u672C\u5730\uFF08\u4E0D\u8F6C\u53D1\uFF09
+REMOTE_TRANSMIT_TYPE=\u8FDC\u7A0B\uFF08\u8F6C\u53D1\uFF09
+TRANSMIT_CHANNEL=\u8F6C\u53D1\u901A\u9053
+START_TALK=\u5F00\u59CB\u901A\u8BDD
+STOP_TALK=\u7ED3\u675F\u901A\u8BDD
+TALK_FAILED=\u901A\u8BDD\u5931\u8D25
+
+# DeviceSearchAndInt
+DEVICESEARCH_OPERATE=\u8BBE\u5907\u641C\u7D22\u64CD\u4F5C
+DEVICESEARCH_RESULT=\u8BBE\u5907\u641C\u7D22\u7ED3\u679C
+DEVICEINIT=\u8BBE\u5907\u521D\u59CB\u5316
+
+DEVICESEARCH=\u8BBE\u5907\u641C\u7D22
+DEVICE_POINT_TO_POINT_SEARCH=\u8BBE\u5907IP\u70B9\u5BF9\u70B9\u641C\u7D22
+
+START_SEARCH=\u5F00\u59CB\u641C\u7D22
+STOP_SEARCH=\u505C\u6B62\u641C\u7D22
+
+START_IP=\u8D77\u59CBIP
+END_IP=\u7ED3\u675FIP
+
+DEVICE_TYPE=\u8BBE\u5907\u7C7B\u578B
+MAC=MAC
+SN=\u5E8F\u5217\u53F7
+DEVICE_INIT_STATE=\u521D\u59CB\u5316\u72B6\u6001
+INIT_PASSWD=\u521D\u59CB\u5316\u5BC6\u7801
+PHONE=\u624B\u673A\u53F7
+MAIL=\u90AE\u7BB1
+IP_VERSION=IP\u7248\u672C
+SUB_MASK=\u5B50\u7F51\u63A9\u7801
+GETWAY=\u7F51\u5173
+DETAIL_TYPE=\u8BE6\u7EC6\u7C7B\u578B
+HTTP_PORT=HTTP\u7AEF\u53E3\u53F7
+LOCAL_IP=\u672C\u5730ip
+CONFIRM_PASSWORD=\u786E\u8BA4\u5BC6\u7801
+
+OLD_DEVICE=\u8001\u8BBE\u5907
+DONOT_SUPPORT_INITIALIZATION=\u4E0D\u652F\u6301\u521D\u59CB\u5316
+NOT_INITIALIZED=\u672A\u521D\u59CB\u5316
+INITIALIZED=\u5DF2\u521D\u59CB\u5316
+
+THE_IP_CONTROL_SCOPE=\u8303\u56F4\u592A\u5927\uFF0C\u8BF7\u63A7\u5236\u57281000\u4E2A\u4E4B\u95F4
+PLEASE_FIRST_SELECT_INITIALIZED_DEVICE=\u8BF7\u5148\u9009\u62E9\u9700\u8981\u521D\u59CB\u5316\u7684\u8BBE\u5907
+PLEASE_INPUT_PHONE=\u8BF7\u8F93\u5165\u624B\u673A\u53F7
+PLEASE_INPUT_MAIL=\u8BF7\u8F93\u5165\u90AE\u7BB1
+INCONSISTENT=\u5BC6\u7801\u548C\u786E\u8BA4\u5BC6\u7801\u4E0D\u4E00\u81F4
+PLEASE_CHECK_IP=\u8BF7\u68C0\u67E5IP
+
+SEARCHING_WAITING=\u6B63\u5728\u641C\u7D22\uFF0C\u8BF7\u7B49\u5F85\u641C\u7D22\u7ED3\u675F
+
+START_LISTEN=\u5F00\u59CB\u76D1\u542C
+STOP_LISTEN=\u505C\u6B62\u76D1\u542C
+SHOW_ALARM_EVENT=\u62A5\u8B66\u4E8B\u4EF6\u7ED3\u679C\u4FE1\u606F
+ALARM_LISTEN_FAILED=\u62A5\u8B66\u76D1\u542C\u5931\u8D25
+ALARM_MESSAGE=\u62A5\u8B66\u4FE1\u606F
+
+EXTERNAL_ALARM=\u5916\u90E8\u62A5\u8B66
+MOTION_ALARM=\u52A8\u6001\u68C0\u6D4B\u62A5\u8B66
+VIDEOLOST_ALARM=\u89C6\u9891\u4E22\u5931\u62A5\u8B66
+SHELTER_ALARM=\u89C6\u9891\u906E\u6321\u62A5\u8B66
+DISKFULL_ALARM=\u786C\u76D8\u6EE1\u62A5\u8B66
+DISKERROR_ALARM=\u574F\u786C\u76D8\u62A5\u8B66
+START=\u5F00\u59CB
+STOP=\u7ED3\u675F
+
+CURRENT_TIME=\u5F53\u524D\u65F6\u95F4
+DEVICE_REBOOT=\u8BBE\u5907\u91CD\u542F
+SYNCHRONIZE_TIME=\u65F6\u95F4\u540C\u6B65
+REBOOT=\u91CD\u542F
+SET_TIME=\u8BBE\u7F6E\u65F6\u95F4
+GET_TIME=\u83B7\u53D6\u65F6\u95F4
+REBOOT_TIPS=\u60A8\u786E\u5B9A\u8981\u91CD\u542F\u5417\uFF1F
+OPERATE_SUCCESS=\u64CD\u4F5C\u6210\u529F
+
+#FaceRecognition
+FACE_GROUP_ID=\u4EBA\u8138\u5E93ID
+FACE_GROUP_NAME=\u4EBA\u8138\u5E93\u540D\u79F0
+PERSON_COUNT=\u4EBA\u5458\u4E2A\u6570
+
+GROUP_OPERATE=\u4EBA\u8138\u5E93\u64CD\u4F5C
+PERSON_OPERATE=\u4EBA\u5458\u64CD\u4F5C
+
+TARGET_RECOGNITION_EVENT=\u76EE\u6807\u8BC6\u522B\u4E8B\u4EF6
+TARGET_DETECT_EVENT=\u76EE\u6807\u68C0\u6D4B\u4E8B\u4EF6
+
+GLOBAL_PICTURE=\u5168\u666F\u56FE
+PERSON_PICTURE=\u4EBA\u8138\u56FE
+CANDIDATE_PICTURE=\u5019\u9009\u4EBA\u56FE
+
+TIME=\u65F6\u95F4
+SEX=\u6027\u522B
+AGE=\u5E74\u9F84
+COLOR=
+EYE=\u773C\u775B
+MOUTH=\u5634\u5DF4
+MASK=\u53E3\u7F69
+BEARD=\u80E1\u5B50
+MALE=\u7537
+FEMALE=\u5973
+ID_CARD=\u8EAB\u4EFD\u8BC1
+OFFICE_CARD=\u519B\u5B98\u8BC1
+PASSPORT=\u62A4\u7167
+UNIDENTIFIED=\u672A\u8BC6\u522B
+HAVE_BEARD=\u6709\u80E1\u5B50
+NO_BEARD=\u6CA1\u80E1\u5B50
+OPEN_MOUTH=\u5F20\u5634
+CLOSE_MOUTH=\u95ED\u5634
+YELLOW_COLOR=
+BLACK_COLOR=
+WHITE_COLOR=
+OPEN_EYE=\u7741\u773C
+CLOSE_EYE=\u95ED\u773C
+SMILE=\u5FAE\u7B11
+ANGER=\u6124\u6012
+SADNESS=\u60B2\u4F24
+DISGUST=\u538C\u6076
+FEAR=\u5BB3\u6015
+SURPRISE=\u60CA\u8BB6
+NEUTRAL=\u6B63\u5E38
+LAUGH=\u5927\u7B11
+WEAR_MASK=\u6234\u53E3\u7F69
+NO_MASK=\u6CA1\u6234\u53E3\u7F69
+WEAR_GLASSES=\u6234\u773C\u955C
+NO_GLASSES=\u4E0D\u6234\u773C\u955C
+UNKNOW=\u672A\u77E5
+UNLIMITED=\u4E0D\u9650
+
+NAME=\u59D3\u540D
+BIRTHDAY=\u751F\u65E5
+ID_NO=\u8BC1\u4EF6\u53F7
+ID_TYPE=\u8BC1\u4EF6\u7C7B\u578B
+SIMILARITY=\u76F8\u4F3C\u5EA6
+UID=\u4EBA\u5458\u6807\u8BC6\u7B26
+STRANGER=\u964C\u751F\u4EBA
+GLASSES=\u773C\u955C
+PICTURE_PATH=\u56FE\u7247\u8DEF\u5F84
+FACE_LIBRARY_ID=\u4EBA\u8138\u5E93ID
+FACE_LIBRARY_NAME=\u4EBA\u8138\u5E93\u540D\u79F0
+
+
+ADD=\u6DFB\u52A0
+MODIFY=\u4FEE\u6539
+DELETE=\u5220\u9664
+FRESH=\u5237\u65B0
+ADD_GROUP=\u6DFB\u52A0\u4EBA\u8138\u5E93
+MODIFY_GROUP=\u4FEE\u6539\u4EBA\u8138\u5E93
+DEL_GROUP=\u5220\u9664\u4EBA\u8138\u5E93
+DISPOSITION=\u5E03\u63A7
+DEL_DISPOSITION=\u64A4\u63A7
+
+FIND_CONDITION=\u67E5\u627E\u6761\u4EF6
+FIND_PERSON=\u67E5\u627E\u4EBA\u5458
+ADD_PERSON=\u6DFB\u52A0\u4EBA\u5458
+MODIFY_PERSON=\u4FEE\u6539\u4EBA\u5458
+DEL_PERSON=\u5220\u9664\u4EBA\u5458
+
+PREVIOUSPAGE=\u4E0A\u4E00\u9875
+LASTPAGE=\u4E0B\u4E00\u9875
+SELECT_PICTURE=\u9009\u62E9\u56FE\u7247
+SEARCH_BY_PIC=\u4EE5\u56FE\u641C\u56FE
+DOWNLOAD_QUERY_PICTURE=\u4E0B\u8F7D\u67E5\u8BE2\u5230\u7684\u56FE\u7247
+FACE_LIBRARY=\u4EBA\u8138\u5E93
+HISTORY_LIBRARY=\u5386\u53F2\u5E93
+CHOOSE_FACE_PIC=\u8BF7\u9009\u62E9\u4EBA\u8138\u56FE\u7247
+EVENT_TYPE=\u4E8B\u4EF6\u7C7B\u578B
+PAGES_NUMBER=\u9875\u6570
+
+SIMILARITY_RANGE=\u76F8\u4F3C\u5EA6\u8303\u56F4[0, 100]
+PLEASE_INPUT_GROUPNAME=\u8BF7\u8F93\u5165\u4EBA\u8138\u5E93\u540D\u79F0
+PLEASE_SELECT_GROUP=\u8BF7\u9009\u62E9\u4EBA\u8138\u5E93
+
+PLEASE_SELECT_PERSON=\u8BF7\u9009\u62E9\u4EBA\u5458
+PLEASE_ADD_DISPOSITION_INFO=\u8BF7\u6DFB\u52A0\u5E03\u63A7\u4FE1\u606F
+PLEASE_SELECT_DEL_DISPOSITION_INFO=\u8BF7\u9009\u62E9\u64A4\u63A7\u4FE1\u606F
+
+#AutoRegister
+AUTOREGISTER_LISTEN=\u4E3B\u52A8\u6CE8\u518C\u76D1\u542C
+DEVICE_CONFIG=\u8BBE\u5907\u914D\u7F6E
+DEVICE_LIST=\u8BBE\u5907\u5217\u8868
+DEVICE_MANAGER=\u8BBE\u5907\u7BA1\u7406
+ADD_DEVICE=\u6DFB\u52A0\u8BBE\u5907
+MODIFY_DEVICE=\u4FEE\u6539\u8BBE\u5907
+DELETE_DEVICE=\u5220\u9664\u8BBE\u5907
+CLEAR_DEVICE=\u6E05\u7A7A\u8BBE\u5907
+IMPORT_DEVICE=\u5BFC\u5165\u8BBE\u5907
+EXPORT_DEVICE=\u5BFC\u51FA\u8BBE\u5907
+DEVICE_ID=\u8BBE\u5907ID
+ENABLE=\u542F\u7528
+REGISTER_ADDRESS=\u6CE8\u518C\u5730\u5740
+REGISTER_PORT=\u6CE8\u518C\u7AEF\u53E3\u53F7
+GET=\u83B7\u53D6
+SET=\u8BBE\u7F6E
+RECORD=\u5F55\u97F3
+DEVICE_LOGIN=\u8BBE\u5907\u5DF2\u767B\u5F55
+
+ALREADY_EXISTED=\u5DF2\u5B58\u5728
+ALREADY_EXISTED_WHETHER_OR_NOT_TO_COVER=\u5DF2\u5B58\u5728\uFF0C\u662F\u5426\u8986\u76D6(\u5426\uFF0C\u4E0D\u4F1A\u5BFC\u51FA)
+FILE_OPEN_PLEASE_CLOSE_FILE=\u6587\u4EF6\u88AB\u6253\u5F00\uFF0C\u8BF7\u5148\u5173\u95ED\u6587\u4EF6
+IMPORT_COMPLETION=\u5BFC\u5165\u5B8C\u6210
+EXPORT_COMPLETION=\u5BFC\u51FA\u5B8C\u6210
+FILE_NOT_EXIST=\u6587\u4EF6\u4E0D\u5B58\u5728
+
+PLEASE_INPUT=\u8BF7\u8F93\u5165
+MAX_SUPPORT_100=\u6700\u5927\u652F\u6301100\u4E2A
+
+#Attendance
+ATTENDANCE=\u8003\u52E4\u673A
+USER_ID=\u7528\u6237ID
+USER_NAME=\u7528\u6237\u540D
+CARD_NO=\u5361\u53F7
+QUERY_CONDITION=\u67E5\u8BE2\u6761\u4EF6
+USER_OPERATE=\u7528\u6237\u64CD\u4F5C
+FINGERPRINT_OPERATE=\u6307\u7EB9\u64CD\u4F5C
+OPERATE_BY_USER_ID=\u901A\u8FC7\u7528\u6237ID\u64CD\u4F5C\u6307\u7EB9
+OPERATE_BY_FINGERPRINT_ID=\u901A\u8FC7\u6307\u7EB9ID\u64CD\u4F5C\u6307\u7EB9
+FINGERPRINT_ID=\u6307\u7EB9ID
+SEARCH=\u67E5\u627E
+SEARCH_FINGERPRINT=\u67E5\u627E\u6307\u7EB9
+ADD_FINGERPRINT=\u6DFB\u52A0\u6307\u7EB9
+DELETE_FINGERPRINT=\u5220\u9664\u6307\u7EB9
+SUBSCRIBE=\u8BA2\u9605
+UNSUBSCRIBE=\u53D6\u6D88\u8BA2\u9605
+USER_LIST=\u7528\u6237\u5217\u8868
+NEXT_PAGE=\u4E0B\u4E00\u9875
+USER_INFO=\u7528\u6237\u4FE1\u606F
+DOOROPEN_METHOD=\u5F00\u95E8\u65B9\u5F0F
+FINGERPRINT=\u6307\u7EB9
+FINGERPRINT_INFO=\u6307\u7EB9\u4FE1\u606F
+FINGERPRINT_DATA=\u6307\u7EB9\u6570\u636E
+CARD=\u5361
+DELETE_FINGERPRINT_PROMPT=\u5C06\u4F1A\u5220\u9664\u8BE5\u7528\u6237\u4E0B\u6240\u6709\u6307\u7EB9\u6570\u636E
+SUBSCRIBE_FAILED=\u8BA2\u9605\u5931\u8D25
+FINGERPRINT_ID_ILLEGAL=\u6307\u7EB9ID\u975E\u6CD5
+FINGERPRINT_COLLECTION=\u6307\u7EB9\u91C7\u96C6
+START_COLLECTION=\u5F00\u59CB\u91C7\u96C6
+STOP_COLLECTION=\u505C\u6B62\u91C7\u96C6
+IN_THE_COLLECTION=\u91C7\u96C6\u4E2D...
+COLLECTION_COMPLETED=\u91C7\u96C6\u5B8C\u6210
+COLLECTION_FAILED=\u91C7\u96C6\u5931\u8D25
+FINGERPRINT_ID_NOT_EXIST=\u6307\u7EB9ID\u4E0D\u5B58\u5728
+USER_ID_EXCEED_LENGTH=\u7528\u6237ID\u8D85\u8FC7\u6700\u5927\u957F\u5EA6
+USER_NAME_EXCEED_LENGTH=\u7528\u6237\u540D\u8D85\u8FC7\u6700\u5927\u957F\u5EA6
+CARD_NO_EXCEED_LENGTH=\u5361\u53F7\u8D85\u8FC7\u6700\u5927\u957F\u5EA6
+CARD_NAME_EXCEED_LENGTH=\u5361\u540D\u8D85\u8FC7\u6700\u5927\u9650\u5236
+CARD_PASSWD_EXCEED_LENGTH=\u5361\u5BC6\u7801\u8D85\u8FC7\u6700\u5927\u9650\u5236
+
+#Gate
+
+GATE=\u4EBA\u8138\u5F00\u95E8
+CARD_OPERATE=\u5361\u64CD\u4F5C
+CARD_INFO=\u5361\u4FE1\u606F
+CARD_MANAGER=\u5361\u7BA1\u7406
+
+CLEAR=\u6E05\u7A7A
+
+OPEN_STATUS=\u5F00\u95E8\u72B6\u6001
+OPEN_METHOD=\u5F00\u95E8\u65B9\u5F0F
+
+TEMPERATURE=\u6E29\u5EA6
+MASK_STATUS=\u53E3\u7F69\u72B6\u6001
+
+CARD_UNKNOW=\u672A\u77E5\u5361
+CARD_GENERAL=\u4E00\u822C\u5361
+CARD_VIP=VIP\u5361
+CARD_GUEST=\u6765\u5BBE\u5361
+CARD_PATROL=\u5DE1\u903B\u5361
+CARD_BACKLIST=\u7981\u6B62\u540D\u5355\u5361
+CARD_COERCE=\u80C1\u8FEB\u5361
+CARD_POLLING=\u5DE1\u68C0\u5361
+CARD_MOTHERCARD=\u6BCD\u5361
+
+STATE_UNKNOWN=\u672A\u77E5
+STATE_NORMAL=\u6B63\u5E38
+STATE_LOSE=\u4E22\u5931
+STATE_LOGOFF=\u6CE8\u9500
+STATE_FREEZE=\u51BB\u7ED3
+STATE_ARREARS=\u6B20\u8D39
+STATE_OVERDUE=\u903E\u671F
+STATE_PREARREARS=\u9884\u6B20\u8D39
+
+RECORD_NO=\u8BB0\u5F55\u96C6\u7F16\u53F7
+CARD_NAME=\u5361\u540D
+CARD_STATUS=\u5361\u72B6\u6001
+CARD_PASSWORD=\u5361\u5BC6\u7801
+CARD_TYPE=\u5361\u7C7B\u578B
+CARD_NUM=\u8BC1\u4EF6\u53F7
+USE_TIMES=\u4F7F\u7528\u6B21\u6570
+IS_FIRST_ENTER=\u662F\u5426\u9996\u5361
+IS_VALID=\u662F\u5426\u6709\u6548
+VALID_PERIOD=\u6709\u6548\u671F
+VALID_START_TIME=\u6709\u6548\u5F00\u59CB\u65F6\u95F4
+VALID_END_TIME=\u6709\u6548\u7ED3\u675F\u65F6\u95F4
+FIRST_ENTER=\u9996\u5361
+NO_FIRST_ENTER=\u975E\u9996\u5361
+VALID=\u6709\u6548
+INVALID=\u65E0\u6548
+
+PLEASE_SELECT_CARD=\u8BF7\u9009\u62E9\u5361
+PLEASE_INPUT_CARDNO=\u8BF7\u8F93\u5165\u5361\u53F7
+PLEASE_INPUT_USERID=\u8BF7\u8F93\u5165\u7528\u6237ID
+WANT_CLEAR_ALL_INFO=\u4F60\u662F\u5426\u60F3\u8981\u6E05\u7A7A\u6240\u6709\u4FE1\u606F?
+
+ADD_CARD_INDO_FAILED=\u6DFB\u52A0\u5361\u4FE1\u606F\u5931\u8D25 
+ADD_CARD_INFO_AND_PERSON_PICTURE_SUCCEED=\u6DFB\u52A0\u5361\u4FE1\u606F\u548C\u4EBA\u8138\u6210\u529F
+ADD_CARD_INFO_SUCCEED_BUT_ADD_PERSON_PICTURE_FAILED=\u6DFB\u52A0\u5361\u4FE1\u606F\u6210\u529F\uFF0C\u4F46\u6DFB\u52A0\u4EBA\u8138\u5931\u8D25
+CARD_EXISTED_ADD_PERSON_PICTURE_SUCCEED=\u5361\u4FE1\u606F\u5DF2\u5B58\u5728\uFF0C\u6DFB\u52A0\u4EBA\u8138\u6210\u529F
+
+MODIFY_CARD_INFO_SUCCEED=\u4FEE\u6539\u5361\u4FE1\u606F\u6210\u529F
+MODIFY_CARD_INFO_FAILED=\u4FEE\u6539\u5361\u4FE1\u606F\u5931\u8D25
+MODIFY_CARD_INFO_AND_PERSON_PICTURE_SUCCEED=\u4FEE\u6539\u5361\u4FE1\u606F\u548C\u4EBA\u8138\u6210\u529F
+MODIFY_CARD_INFO_SUCCEED_BUT_MODIFY_PERSON_PICTURE_FAILED=\u4FEE\u6539\u5361\u4FE1\u606F\u6210\u529F\uFF0C\u4F46\u4FEE\u6539\u4EBA\u8138\u5931\u8D25
+
+NET_ACCESS_DOOROPEN_METHOD_UNKNOWN=\u672A\u77E5
+NET_ACCESS_DOOROPEN_METHOD_PWD_ONLY=\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD=\u5237\u5361\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_FIRST=\u5148\u5237\u5361\u540E\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_PWD_FIRST=\u5148\u5BC6\u7801\u540E\u5237\u5361\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_REMOTE=\u8FDC\u7A0B\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_BUTTON=\u5F00\u9501\u6309\u94AE\u8FDB\u884C\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT=\u6307\u7EB9\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_PWD_CARD_FINGERPRINT=\u5BC6\u7801+\u5237\u5361+\u6307\u7EB9\u7EC4\u5408\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_PWD_FINGERPRINT=\u5BC6\u7801+\u6307\u7EB9\u7EC4\u5408\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_FINGERPRINT=\u5237\u5361+\u6307\u7EB9\u7EC4\u5408\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_PERSONS=\u591A\u4EBA\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_KEY=\u94A5\u5319\u5F00\u95E8
+NET_ACCESS_DOOROPEN_METHOD_COERCE_PWD=\u80C1\u8FEB\u5BC6\u7801\u5F00\u95E8
+NET_ACCESS_DOOROPEN_METHOD_QRCODE=\u4E8C\u7EF4\u7801\u5F00\u95E8
+NET_ACCESS_DOOROPEN_METHOD_FACE_RECOGNITION=\u76EE\u6807\u8BC6\u522B\u5F00\u95E8
+NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD=\u4EBA\u8BC1\u5BF9\u6BD4
+NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD_AND_IDCARD=\u8EAB\u4EFD\u8BC1+ \u4EBA\u8BC1\u6BD4\u5BF9
+NET_ACCESS_DOOROPEN_METHOD_BLUETOOTH=\u84DD\u7259\u5F00\u95E8
+NET_ACCESS_DOOROPEN_METHOD_CUSTOM_PASSWORD=\u4E2A\u6027\u5316\u5BC6\u7801\u5F00\u95E8
+NET_ACCESS_DOOROPEN_METHOD_USERID_AND_PWD=UserID+\u5BC6\u7801
+NET_ACCESS_DOOROPEN_METHOD_FACE_AND_PWD=\u4EBA\u8138+\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_PWD=\u6307\u7EB9+\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_FACE=\u6307\u7EB9+\u4EBA\u8138\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FACE=\u5237\u5361+\u4EBA\u8138\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FACE_OR_PWD=\u4EBA\u8138\u6216\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_PWD=\u6307\u7EB9\u6216\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_FACE=\u6307\u7EB9\u6216\u4EBA\u8138\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FACE=\u5237\u5361\u6216\u4EBA\u8138\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT=\u5237\u5361\u6216\u6307\u7EB9\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_AND_FACE_AND_PWD=\u6307\u7EB9+\u4EBA\u8138+\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FACE_AND_PWD=\u5237\u5361+\u4EBA\u8138+\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FINGERPRINT_AND_PWD=\u5237\u5361+\u6307\u7EB9+\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_PWD_AND_FACE=\u5361+\u6307\u7EB9+\u4EBA\u8138\u7EC4\u5408\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FINGERPRINT_OR_FACE_OR_PWD=\u6307\u7EB9\u6216\u4EBA\u8138\u6216\u5BC6\u7801
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FACE_OR_PWD =\u5361\u6216\u4EBA\u8138\u6216\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT_OR_FACE=\u5361\u6216\u6307\u7EB9\u6216\u4EBA\u8138\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_CARD_AND_FINGERPRINT_AND_FACE_AND_PWD=\u5361+\u6307\u7EB9+\u4EBA\u8138+\u5BC6\u7801\u7EC4\u5408\u5F00\u9501 
+NET_ACCESS_DOOROPEN_METHOD_CARD_OR_FINGERPRINT_OR_FACE_OR_PWD=\u5361\u6216\u6307\u7EB9\u6216\u4EBA\u8138\u6216\u5BC6\u7801\u5F00\u9501
+NET_ACCESS_DOOROPEN_METHOD_FACEIPCARDANDIDCARD_OR_CARD_OR_FACE=(\u8EAB\u4EFD\u8BC1+\u4EBA\u8BC1\u6BD4\u5BF9)\u6216 \u5237\u5361 \u6216 \u4EBA\u8138
+NET_ACCESS_DOOROPEN_METHOD_FACEIDCARD_OR_CARD_OR_FACE=\u4EBA\u8BC1\u6BD4\u5BF9 \u6216 \u5237\u5361(\u4E8C\u7EF4\u7801) \u6216 \u4EBA\u8138
+
+#ThemalCamera
+THERMAL_CAMERA=\u70ED\u6210\u50CF
+THERMAL_OPERATE=\u64CD\u4F5C
+POINT_QUERY=\u67E5\u8BE2\u6D4B\u6E29\u70B9
+REGION_QUERY=\u67E5\u8BE2\u6D4B\u6E29\u533A\u57DF
+ITEM_QUERY=\u67E5\u8BE2\u6D4B\u6E29\u9879
+TEMPER_QUERY=\u67E5\u8BE2\u6E29\u5EA6
+HEATMAP=\u70ED\u56FE\u4FE1\u606F
+POINT_TEMPER=\u6D4B\u6E29\u70B9
+REGION_TEMPER=\u6D4B\u6E29\u533A\u57DF
+ITEM_TEMPER=\u6D4B\u6E29\u9879
+X=X
+Y=Y
+COORDINATE_ILLEGAL=\u5750\u6807\u975E\u6CD5
+QUERY_RESULT=\u67E5\u8BE2\u7ED3\u679C
+METER_TYPE=\u6D4B\u6E29\u9879\u7C7B\u522B
+TEMPER_UNIT=\u6E29\u5EA6\u5355\u4F4D
+TEMPER=\u6E29\u5EA6
+UNKNOWN=\u672A\u77E5
+SPOT=\u70B9
+LINE=\u7EBF
+AREA=\u533A\u57DF
+CENTIGRADE=\u6444\u6C0F\u5EA6
+FAHRENHEIT=\u534E\u6C0F\u5EA6
+KELVINS=\u5F00\u5C14\u6587
+PRESET_ID=\u9884\u7F6E\u70B9\u7F16\u53F7
+RULE_ID=\u89C4\u5219\u7F16\u53F7
+TEMPER_AVER=\u5E73\u5747\u6E29\u5EA6
+TEMPER_MAX=\u6700\u9AD8\u6E29\u5EA6
+TEMPER_MIN=\u6700\u4F4E\u6E29\u5EA6
+TEMPER_MAX_POINT=\u6700\u9AD8\u6E29\u5EA6\u5750\u6807
+TEMPER_MIN_POINT=\u6700\u4F4E\u6E29\u5EA6\u5750\u6807
+TEMPER_MID=\u4E2D\u95F4\u6E29\u5EA6
+TEMPER_STD=\u6807\u51C6\u65B9\u5DEE
+INPUT_ILLEGAL=\u8F93\u5165\u975E\u6CD5
+TEMPER_INFO=\u6D4B\u6E29\u4FE1\u606F
+FIVE_MINUTES=\u4E94\u5206\u949F
+TEN_MINUTES=\u5341\u5206\u949F
+FIFTEEN_MINUTES=\u5341\u4E94\u5206\u949F
+THIRTY_MINUTES=\u4E09\u5341\u5206\u949F
+SAVE_PERIOD=\u4FDD\u5B58\u5468\u671F
+QUERY_LIST=\u67E5\u8BE2\u5217\u8868
+RECORD_TIME=\u8BB0\u5F55\u65F6\u95F4
+ITEM_NAME=\u540D\u79F0
+COORDINATE=\u5750\u6807
+NO_RECORD=\u65E0\u8BB0\u5F55
+HEATMAP_OPERATE=\u64CD\u4F5C
+IDLE=\u7A7A\u95F2
+ACQUIRING=\u83B7\u53D6\u4E2D
+RADIOMETRY_ATTACH=\u8BA2\u9605\u70ED\u56FE\u6570\u636E
+RADIOMETRY_DETACH=\u505C\u6B62\u8BA2\u9605
+RADIOMETRY_FETCH=\u83B7\u53D6\u70ED\u56FE
+SAVE_HEATMAP=\u4FDD\u5B58\u70ED\u56FE
+HEATMAP_METADATA_INFO=\u70ED\u56FE\u5143\u6570\u636E
+HEIGHT=\u9AD8
+WIDTH=\u5BBD
+LENGTH=\u6570\u636E\u5927\u5C0F
+SENSOR_TYPE=\u673A\u82AF\u7C7B\u578B
+HEATMAP_SAVE_SUCCESS=\u70ED\u56FE\u4FDD\u5B58\u6210\u529F
+
+# matrix screen
+MATRIX_SCREEN=\u70B9\u9635\u5C4F\u4E0B\u53D1
+PASSING_STATE=\u8FC7\u8F66\u72B6\u6001
+PASSING_CAR=\u8FC7\u8F66
+NO_CAR=\u65E0\u8F66
+IN_TIME=\u5165\u573A\u65F6\u95F4
+OUT_TIME=\u51FA\u573A\u65F6\u95F4
+PLATE_NUMBER=\u8F66\u724C\u53F7\u7801
+CAR_OWNER=\u8F66\u4E3B
+PARKING_TIME=\u505C\u8F66\u65F6\u957F
+USER_TYPE=\u7528\u6237\u7C7B\u578B
+MONTHLY_CARD_USER=\u6708\u5361\u7528\u6237
+ANNUAL_CARD_USER=\u5E74\u5361\u7528\u6237
+LONG_TERM_USER=\u957F\u671F\u7528\u6237/VIP
+TEMPORARY_USER=\u4E34\u65F6\u7528\u6237/Visitor
+PARKING_CHARGE=\u505C\u8F66\u8D39
+DAYS_DUE=\u5230\u671F\u5929\u6570
+REMAINING_PARKING_SPACES=\u5269\u4F59\u8F66\u4F4D
+VEHICLES_NOT_ALLOWED_TO_PASS=\u4E0D\u5141\u8BB8\u8F66\u8F86\u901A\u8FC7
+ALLOWED_VEHICLES_TO_PASS=\u5141\u8BB8\u8F66\u8F86\u901A\u8FC7
+SET_UP=\u8BBE\u7F6E
+SUCCESSFULLY_ISSUED=\u4E0B\u53D1\u6210\u529F
+DELIVERY_FAILED=\u4E0B\u53D1\u5931\u8D25
+CUSTOM_USER_CLASS=\u81EA\u5B9A\u4E49\u7528\u6237\u7C7B
+REMARKS_INFORMATION=\u5907\u6CE8\u4FE1\u606F
+CUSTOM_INFORMATION=\u81EA\u5B9A\u4E49\u4FE1\u606F
+
+# \uFFFD\uFFFD\uFFFD\uFFFD\u0373\uFFFD\uFFFD
+HUMAN_NUMBER_STATISTIC_TITLE=\u4EBA\u6570\u7EDF\u8BA1
+HUMAN_NUMBER_STATISTIC_CONTROL=\u4EBA\u6570\u7EDF\u8BA1\u63A7\u5236
+
+HUMAN_NUMBER_STATISTIC_EVENT_TITLE=\u4EBA\u6570\u7EDF\u8BA1\u4E8B\u4EF6\u5217\u8868
+
+HUMAN_NUMBER_STATISTIC_EVENT_CHANNEL=\u901A\u9053
+HUMAN_NUMBER_STATISTIC_EVENT_TIME=\u4E8B\u4EF6\u65F6\u523B
+HUMAN_NUMBER_STATISTIC_EVENT_HOUR_IN=\u672C\u5C0F\u65F6\u8FDB
+HUMAN_NUMBER_STATISTIC_EVENT_HOUR_OUT=\u672C\u5C0F\u65F6\u51FA
+HUMAN_NUMBER_STATISTIC_EVENT_TODAY_IN=\u4ECA\u65E5\u8FDB
+HUMAN_NUMBER_STATISTIC_EVENT_TODAY_OUT=\u4ECA\u65E5\u51FA
+HUMAN_NUMBER_STATISTIC_EVENT_TOTAL_IN=\u603B\u5171\u8FDB
+HUMAN_NUMBER_STATISTIC_EVENT_TOTAL_OUT=\u603B\u5171\u51FA
+
+HUMAN_NUMBER_STATIC_EVENT_OSD_CLEAR=OSD\u6E05\u9664
+
+VTO_ALARM_EVENT_ROOM_NO=\u623F\u95F4\u53F7
+VTO_ALARM_EVENT_CARD_NO=\u5361\u53F7
+VTO_ALARM_EVENT_TIME=\u65F6\u95F4
+VTO_ALARM_EVENT_OPEN_METHOD=\u5F00\u95E8\u65B9\u5F0F
+VTO_ALARM_EVENT_STATUS=\u72B6\u6001
+
+VTO_REAL_LOAD_ROOM_NO=\u623F\u95F4\u53F7
+VTO_REAL_LOAD_CARD_NO=\u5361\u53F7
+VTO_REAL_LOAD_TIME=\u65F6\u95F4
+VTO_REAL_LOAD_EVENT_INFO=\u4E8B\u4EF6\u4FE1\u606F
+
+VTO_OPERATE_MANAGER_TITLE=\u5361\u4E0E\u6307\u7EB9\u4E0E\u4EBA\u8138\u7BA1\u7406
+VTO_OPERATE_MANAGER_REC_NO=\u7F16\u53F7
+VTO_OPERATE_MANAGER_ROOM_NO=\u623F\u95F4\u53F7
+VTO_OPERATE_MANAGER_CARD_NO=\u5361\u53F7
+VTO_OPERATE_MANAGER_FINGER_PRINT_DATA=\u6307\u7EB9\u6570\u636E
+
+VTO_OPERATE_INFO_TITLE=\u589E\u52A0
+
+VTO_OPERATE_COLLECTION_FINGER_PRINT_TITLE=\u91C7\u96C6\u6307\u7EB9
+DOOR_OPEN=\u5F00\u95E8
+DOOR_CLOSE=\u5173\u95E8
+EVENT_OPERATE=\u4E8B\u4EF6\u64CD\u4F5C
+START_REAL_LOAD_PIC=\u5F00\u59CB\u667A\u80FD\u76D1\u542C
+STOP_REAL_LOAD_PIC=\u505C\u6B62\u667A\u80FD\u76D1\u542C
+ALARM_EVENT=\u62A5\u8B66\u4E8B\u4EF6
+REAL_LOAD_EVENT=\u667A\u80FD\u4E8B\u4EF6
+COLLECTION_RESULT=\u91C7\u96C6\u7ED3\u679C
+NEED_FINGER_PRINT=\u9700\u8981\u6307\u7EB9
+FACE_INFO=\u4EBA\u8138\u4FE1\u606F
+OPEN=\u6253\u5F00
+VTO=\u53EF\u89C6\u5BF9\u8BB2\u95E8\u53E3\u673A
+TRAFFIC_ALLOW_LIST=\u667A\u80FD\u4EA4\u901A\u5141\u8BB8\u540D\u5355
+MODIFY_CARD_FACE_FAILED=\u4FEE\u6539\u4EBA\u8138\u5931\u8D25
+EM_MASK_STATE_UNKNOWN=\u672A\u77E5
+EM_MASK_STATE_NODISTI=\u672A\u8BC6\u522B
+EM_MASK_STATE_NOMASK=\u6CA1\u6234\u53E3\u7F69
+EM_MASK_STATE_WEAR=\u6234\u53E3\u7F69
+
+END_SEARCH=\u67E5\u8BE2\u7ED3\u675F
+DOWNLOAD_PICTURE=\u4E0B\u8F7D\u56FE\u7247
+ENTER_PICTURE_PATH=\u8BF7\u8F93\u5165\u56FE\u7247\u8DEF\u5F84
+LOADING=\u8BBE\u5907\u6B63\u5728\u5904\u7406\u4E2D
+REMOTE_OPEN_DOOR=\u8FDC\u7A0B\u5F00\u95E8
+QUERY_CARD_EXIST_FAILED=\u68C0\u67E5\u5361\u53F7\u662F\u5426\u5B58\u5728\u5931\u8D25
+CARD_EXIST=\u5361\u53F7\u5DF2\u5B58\u5728
+INPUT_ROOM_NO=\u8BF7\u8F93\u5165\u623F\u95F4\u53F7
+ROOM_NO_EXCEED_LENGTH=\u623F\u95F4\u53F7\u8D85\u8FC7\u6700\u5927\u957F\u5EA6
+REMOVE_CARD_FACE_FAILED=\u5220\u9664\u4EBA\u8138\u5931\u8D25
+
+
+#SCADA
+SCADA=\u52A8\u73AF\u4E3B\u673A
+SCADA_DEVICE_LIST=\u8BBE\u5907\u8868
+SCADA_POINT_LIST=\u70B9\u4F4D\u8868
+SCADA_ATTACH_ALARM=\u8BA2\u9605\u62A5\u8B66
+SCADA_ATTACH_INFO=\u8BA2\u9605\u4FE1\u606F
+SCADA_ATTACH=\u8BA2\u9605
+BTN_LIST = \u83B7\u53D6
+BTN_ATTACH = \u8BA2\u9605
+
+STOP_LISTEN_FAILED=\u505C\u6B62\u76D1\u542C\u5931\u8D25
+
+SCREEN_NUMBER=\u5C4F\u5E55\u7F16\u53F7
+TEXT_CONTENT=\u6587\u672C\u5185\u5BB9
+TEXT_CONTENT_TYPE=\u6587\u672C\u7C7B\u578B
+TEXT_CONTENT_COLOR=\u6587\u672C\u989C\u8272
+SCROLL_TYPE=\u6EDA\u52A8\u7C7B\u578B
+SCROLL_SPEED=\u6EDA\u52A8\u901F\u5EA6
+
+ORDINARY=\u666E\u901A
+QR_CODE=\u4E8C\u7EF4\u7801
+LOCAL_TIME=\u672C\u5730\u65F6\u95F4
+RESOURCE=\u8D44\u6E90\u6587\u4EF6
+
+NOT_ROLLING=\u4E0D\u6EDA\u52A8
+SCROLL_LEFT_AND_RIGHT=\u5DE6\u53F3\u6EDA\u52A8
+SCROLL_UP_AND_DOWN=\u4E0A\u4E0B\u7FFB\u9875\u6EDA\u52A8
+
+NUMBER_STRING=\u6570\u5B57\u5B57\u7B26\u4E32
+VOICE_TEXT=\u8BED\u97F3\u6587\u672C
+ISSUED=\u4E0B\u53D1
+PROMPT=\u8BF7\u6DFB\u52A0\u5BF9\u5E94\u53C2\u6570
+
+DEVICE_NAME=\u8BBE\u5907\u540D\u79F0
+POINT_ID=\u70B9\u4F4DID
+IF_VALID_SIGNAL_POINT=\u662F\u5426\u6709\u6548\u4FE1\u53F7\u70B9
+POINT_NAME=\u70B9\u4F4D\u540D\u79F0
+ALARM_DESCRIBE=\u62A5\u8B66\u63CF\u8FF0
+ALARM_LEVEL=\u62A5\u8B66\u7EA7\u522B
+ALARM_DELAY=\u62A5\u8B66\u65F6\u5EF6
+ALARM_TYPE=\u62A5\u8B66\u7C7B\u578B
+ALARM_TIME=\u62A5\u8B66\u65F6\u95F4
+COLLECT_TIME=\u91C7\u96C6\u65F6\u95F4
+
+
+ALLOWLIST_OPERATION=\u5141\u8BB8\u540D\u5355\u64CD\u4F5C
+SINGLE_UPLOAD =\u5355\u4E2A\u4E0A\u4F20
+LICENSE_PLATE_RUN=\u8F93\u5165\u8981\u67E5\u7684\u8F66\u724C\u53F7
+FUZZY_QUERY=\u6A21\u7CCA\u67E5\u8BE2
+DELETE_ALL=\u5168\u90E8\u5220\u9664
+AUTHORIZATION=\u6388\u6743
+UNAUTHORIZATION=\u672A\u6388\u6743
+BATCH_UPLOAD=\u6279\u91CF\u4E0A\u4F20
+BROWSE=\u6D4F\u89C8
+UPLOAD=\u4E0A\u4F20
+QUERY_INFORMATION=\u67E5\u8BE2\u4FE1\u606F
+DIALOG=\u5BF9\u8BDD\u6846
+LICENSE_PLATE_NUMBER=\u8F66\u724C\u53F7
+MODIFY_PANEL=\u4FEE\u6539\u9762\u677F
+SERIAL_NUMBER=\u5E8F\u53F7
+OPEN_MODEL=\u5F00\u95F8\u6A21\u5F0F
+LICENSE_PLATE_LENGTH_TOO_LONG=\u8F66\u724C\u957F\u5EA6\u8FC7\u957F
+NAME_TOO_LONG=\u540D\u5B57\u957F\u5EA6\u8FC7\u957F
+ADD_SUCCESS=\u6DFB\u52A0\u6210\u529F
+ADD_FAIL=\u6DFB\u52A0\u5931\u8D25
+DELETE_SUCCESS=\u5220\u9664\u6210\u529F
+DELETE_FAIL=\u5220\u9664\u5931\u8D25
+MODIFY_SUCCESS=\u4FEE\u6539\u6210\u529F
+MODIFY_FAIL=\u4FEE\u6539\u5931\u8D25
+UPLOAD_SUCCESS=\u4E0A\u4F20\u6210\u529F
+ENTER_QUERY_DATA=\u8BF7\u8F93\u5165\u8981\u67E5\u8BE2\u7684\u6570\u636E
+FILLING_RULES=\u586B\u5199\u5408\u6CD5\u5B57\u7B26
+UPLOAD_FAIL=\u4E0A\u4F20\u5931\u8D25
+UPLOADING=\u6B63\u5728\u4E0A\u4F20
+SURE_UPLOAD=\u786E\u5B9A\u4E0A\u4F20?
+DATA_NUMBER=\u6761\u6570\u636E
+SELECT_DATA=\u8BF7\u9009\u62E9\u6570\u636E
+
+

--
Gitblit v1.8.0