DeviceOperation.py 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. class DeviceOperation:
  2. @staticmethod
  3. def getOperation(type):
  4. data = {
  5. # Operation 操作
  6. "0x10000": 'LOG_TYPE_SYSTEM_CTRL', # 系统
  7. "0x10001": 'LOG_TYPE_BOOT', # 系统关机
  8. "0x10002": 'LOG_TYPE_SHUTDOWN', # 系统关机
  9. "0x10003": 'LOG_TYPE_REBOOT', # 系统重启
  10. "0x10004": 'LOG_TYPE_FORMAT_SUCC', # 格式化磁盘失败
  11. "0x10005": 'LOG_TYPE_FORMAT_FAIL', # 格式化磁盘成功
  12. "0x10006": 'LOG_TYPE_UPGRADE_SUCC', # 升级成功
  13. "0x10007": 'LOG_TYPE_UPGRADE_FAIL', # 升级失败
  14. "0x10008": 'LOG_TYPE_CLEAR_ALARM', # 清除报警
  15. "0x10009": 'LOG_TYPE_OPEN_ALARM', # 开启报警
  16. "0x1000A": 'LOG_TYPE_MANUAL_START', # 开启手动录像
  17. "0x1000B": 'LOG_TYPE_MANUAL_STOP', # 停止手动录像
  18. "0x1000C": 'LOG_TYPE_PTZ_ENTER', # 开始云台控制
  19. "0x1000D": 'LOG_TYPE_PTZ_CTRL', # 云台操作
  20. "0x1000E": 'LOG_TYPE_PTZ_EXIT', # 结束云台控制
  21. "0x1000F": 'LOG_TYPE_AUDIO_CH_CHANGE', # 改变现场音频通道
  22. "0x10010": 'LOG_TYPE_VOLUME_ADJUST', # 调节音量
  23. "0x10011": 'LOG_TYPE_MUTE_ENABLE', # 开启静音
  24. "0x10012": 'LOG_TYPE_MUTE_DISENABLE', # 关闭静音
  25. "0x10013": 'LOG_TYPE_DWELL_ENABLE', # 开启轮循
  26. "0x10014": 'LOG_TYPE_DWELL_DISENABLE', # 关闭轮循
  27. "0x10015": 'LOG_TYPE_LOG_IN', # 登录
  28. "0x10016": 'LOG_TYPE_LOG_OFF', # 登出
  29. "0x10017": 'LOG_TYPE_CHANGE_TIME', # 修改系统时间
  30. "0x10018": 'LOG_TYPE_MANUAL_SNAP_SUCC', # 手动抓图成功
  31. "0x10019": 'LOG_TYPE_MANUAL_SNAP_FAIL', # 手动抓图失败
  32. # setup 系统配置
  33. "0x20000": 'LOG_TYPE_CONFIG',
  34. "0x20001": 'LOG_TYPE_CHGE_VIDEO_FORMAT', # 改变视频制式
  35. "0x20002": 'LOG_TYPE_CHGE_VGA_RESOLUTION', # 改变显示器分辨率
  36. "0x20003": 'LOG_TYPE_CHGE_LANGUAGE', # 调整语言
  37. "0x20004": 'LOG_TYPE_CHGE_NET_USER_NUM', # 调整网络用户数目
  38. "0x20005": 'LOG_TYPE_CHGE_TIME_ZONE', # 调整时区
  39. "0x20006": 'LOG_TYPE_NTP_MANUAL', # 手动网络校时
  40. "0x20007": 'LOG_TYPE_NTP_ON', # 开启自动网络校时
  41. "0x20008": 'LOG_TYPE_NTP_OFF', # 关闭自动网络校时
  42. "0x20009": 'LOG_TYPE_CHGE_NTP_SERVER', # 修改网络时间服务器地址
  43. "0x2000A": 'LOG_TYPE_CHGE_DST', # 调整夏令时设置
  44. "0x2000B": 'LOG_TYPE_PASSWD_ON', # 开启操作密码
  45. "0x2000C": 'LOG_TYPE_PASSWD_OFF', # 关闭操作密码
  46. "0x2000D": 'LOG_TYPE_CHGE_CAM_NAME', # 调整通道名称
  47. "0x2000E": 'LOG_TYPE_MODIFY_COLOR', # 调整图像色彩
  48. "0x2000F": 'LOG_TYPE_CHGE_HOST_MONITOR', # 调整主监视器画面设置
  49. "0x20010": 'LOG_TYPE_CHGE_SPOT', # 调整辅助输出画面设置
  50. "0x20011": 'LOG_TYPE_CHGE_OSD', # 调整字符叠加设置
  51. "0x20012": 'LOG_TYPE_CHGE_LOCAL_ENCODE', # 调整录像流编码参数
  52. "0x20013": 'LOG_TYPE_CHGE_REC_VIDEO_SWITCH', # 调整录像开关设置
  53. "0x20014": 'LOG_TYPE_CHGE_REC_AUDIO_SWITCH', # 调整录制音频开关设置
  54. "0x20015": 'LOG_TYPE_CHGE_REC_REDU_SWITCH', # 调整冗余录像开关设置
  55. "0x20016": 'LOG_TYPE_CHGE_REC_PRE_TIME', # 调整景前录像时间
  56. "0x20017": 'LOG_TYPE_CHGE_REC_POST_TIME', # 调整景后录像时间
  57. "0x20018": 'LOG_TYPE_CHGE_REC_HOLD_TIME', # 调整录像数据过期时间
  58. "0x20019": 'LOG_TYPE_CHGE_SCH_SCHEDULE', # 调整定时录像计划
  59. "0x2001A": 'LOG_TYPE_CHGE_SCH_MOTION', # 调整移动侦测录像计划
  60. "0x2001B": 'LOG_TYPE_CHGE_SCH_ALARM', # 调整报警录像计划
  61. "0x2001C": 'LOG_TYPE_CHGE_SENSOR_SWITCH', # 调整报警输入开关设置
  62. "0x2001D": 'LOG_TYPE_CHGE_SENSOR_TYPE', # 调整报警输入设备类型
  63. "0x2001E": 'LOG_TYPE_CHGE_SENSOR_TRIGGER', # 调整报警输入处理方式设置
  64. "0x2001F": 'LOG_TYPE_CHGE_SENSOR_SCH', # 调整报警输入侦测计划
  65. "0x20020": 'LOG_TYPE_CHGE_MOTION_SWITCH', # 调整移动侦测开关设置
  66. "0x20021": 'LOG_TYPE_CHGE_MOTION_SENS', # 调整移动侦测灵敏度
  67. "0x20022": 'LOG_TYPE_CHGE_MOTION_AREA', # 调整移动侦测区域设置
  68. "0x20023": 'LOG_TYPE_CHGE_MOTION_TRIGGER', # 调整移动侦测处理方式
  69. "0x20024": 'LOG_TYPE_CHGE_MOTION_SCH', # 调整移动侦测计划
  70. "0x20025": 'LOG_TYPE_CHGE_VL_TRIGGER', # 调整视频丢失处理方式设置
  71. "0x20026": 'LOG_TYPE_CHGE_RELAY_SWITCH', # 调整报警输出开关设置
  72. "0x20027": 'LOG_TYPE_CHGE_RELAY_SCH', # 调整报警输出计划
  73. "0x20028": 'LOG_TYPE_BUZZER_ON', # 开启声音报警设备
  74. "0x20029": 'LOG_TYPE_BUZZER_OFF', # 关闭声音报警设备
  75. "0x2002A": 'LOG_TYPE_CHGE_BUZZER_SCH', # 调整声音报警计划
  76. "0x2002B": 'LOG_TYPE_CHGE_HTTP_PORT', # 修改HTTP服务器端口
  77. "0x2002C": 'LOG_TYPE_CHGE_SER_PORT', # 修改网络服务器端口
  78. "0x2002D": 'LOG_TYPE_CHGE_IP', # 设置网络地址
  79. "0x2002E": 'LOG_TYPE_DHCP_SUCC', # 自动获取网络地址成功
  80. "0x2002F": 'LOG_TYPE_DHCP_FAIL', # 自动获取网络地址失败
  81. "0x20030": 'LOG_TYPE_CHGE_PPPOE', # 设置PPPoE
  82. "0x20031": 'LOG_TYPE_CHGE_DDNS', # 设置DDNS
  83. "0x20032": 'LOG_TYPE_NET_STREAM_CFG', # 调整网络流编码设置
  84. "0x20033": 'LOG_TYPE_CHGE_SERIAL', # 调整云台串口设置
  85. "0x20034": 'LOG_TYPE_PRESET_MODIFY', # 调整预置点
  86. "0x20035": 'LOG_TYPE_CRUISE_MODIFY', # 调整巡航线
  87. "0x20036": 'LOG_TYPE_TRACK_MODIFY', # 调整轨迹
  88. "0x20037": 'LOG_TYPE_USER_ADD', # 增加用户
  89. "0x20038": 'LOG_TYPE_USER_MODIFY', # 调整用户权限
  90. "0x20039": 'LOG_TYPE_USER_DELETE', # 删除用户
  91. "0x2003A": 'LOG_TYPE_CHANGE_PASSWD', # 修改用户密码
  92. "0x2003B": 'LOG_TYPE_LOAD_DEFAULT', # 恢复默认配置
  93. "0x2003C": 'LOG_TYPE_IMPORT_CONFIG', # 导入配置
  94. "0x2003D": 'LOG_TYPE_EXPORT_CONFIG', # 导出配置
  95. "0x2003E": 'LOG_TYPE_CHGE_IMAGE_MASK', # 图像遮挡
  96. "0x2003F": 'LOG_TYPE_RECYCLE_REC_ON', # 开启循环录像
  97. "0x20040": 'LOG_TYPE_RECYCLE_REC_OFF', # 关闭循环录像
  98. "0x20041": 'LOG_TYPE_CHGE_DISK_ALARM', # 调整磁盘报警空间
  99. "0x20042": 'LOG_TYPE_CHGE_SEND_EMAIL', # 设置Email 发送人信息
  100. "0x20043": 'LOG_TYPE_CHGE_RECV_EMAIL', # 设置Email 接收人信息
  101. "0x20044": 'LOG_TYPE_CHGE_SNAP_SETTING', # 调整抓图配置
  102. "0x20045": 'LOG_TYPE_CHGE_SCH_PIR', # 调整人体红外感应录像计划
  103. "0x20046": 'LOG_TYPE_CHGE_PIR_SWITCH', # 调整人体红外感应开关设置
  104. "0x20047": 'LOG_TYPE_CHGE_PIR_TRIGGER', # 调整人体红外感应处理方式
  105. "0x20048": 'LOG_TYPE_CHGE_PIR_SCH', # 调整人体红外感应计划
  106. # 录像回放(Playback)
  107. "0x40000": 'LOG_TYPE_PLAYBACK', # 播放
  108. "0x40001": 'LOG_TYPE_PLAYBACK_PLAY', # 播放
  109. "0x40002": 'LOG_TYPE_CHGE_PIR_SWITCH', # 暂停
  110. "0x40003": 'LOG_TYPE_PLAYBACK_RESUME', # 恢复播放
  111. "0x40004": 'LOG_TYPE_PLAYBACK_FF', # 快进
  112. "0x40005": 'LOG_TYPE_PLAYBACK_REW', # 快退
  113. "0x40006": 'LOG_TYPE_PLAYBACK_STOP', # 停止
  114. "0x40007": 'LOG_TYPE_PLAYBACK_NEXT_SECTION', # 下一段
  115. "0x40008": 'LOG_TYPE_PLAYBACK_PREV_SECTION', # 上一段
  116. # 数据备份(Backup)
  117. "0x80000": 'LOG_TYPE_BACKUP', #
  118. "0x80001": 'LOG_TYPE_BACKUP_START', # 开始备份
  119. "0x80002": 'LOG_TYPE_BACKUP_COMPLETE', # 备份完成
  120. "0x80003": 'LOG_TYPE_BACKUP_CANCEL', # 放弃备份
  121. "0x80004": 'LOG_TYPE_BACKUP_FAIL', # 备份失败
  122. # 录像检索(Search)
  123. "0x100000": 'LOG_TYPE_SEARCH', # 按时间检索
  124. "0x100001": 'LOG_TYPE_SEARCH_TIME', # 按时间检索
  125. "0x100002": 'LOG_TYPE_SEARCH_EVENT', # 按事件检索
  126. "0x100003": 'LOG_TYPE_SEARCH_FILE_MAN', # 文件管理
  127. "0x100004": 'LOG_TYPE_DELETE_FILE', # 调整人体红外感应开关设置
  128. "0x100005": 'LOG_TYPE_LOCK_FILE', # 锁定文件
  129. "0x100006": 'LOG_TYPE_UNLOCK_FILE', # 解锁文件
  130. "0x100007": 'LOG_TYPE_DELETE_PICTURE', # 删除图片
  131. "0x100008": 'LOG_TYPE_LOCK_PICTURE', # 锁定图片
  132. "0x100009": 'LOG_TYPE_UNLOCK_PICTURE', # 解锁图片
  133. # 查看信息(Check Infomantion)
  134. "0x200000": 'LOG_TYPE_VIEW_INFO', # 查看系统信息
  135. "0x200001": 'LOG_TYPE_VIEW_SYSTEM', # 查看系统信息
  136. "0x200002": 'LOG_TYPE_VIEW_EVENT', # 查看事件
  137. "0x200003": 'LOG_TYPE_VIEW_LOG', # 查看日志
  138. "0x200004": 'LOG_TYPE_VIEW_NETWORK', # 查看网络状态
  139. "0x200005": 'LOG_TYPE_VIEW_ONLINE_USER', # 查看在线用户
  140. "0x200006": 'LOG_TYPE_VIEW_EXPORT_LOG', # 导出日志
  141. "0x200007": 'LOG_TYPE_VIEW_EXPORT_EVENT', # 导出事件
  142. # 异常信息(Error)
  143. "0x400000": 'LOG_TYPE_ERROR_INFO', # 网络地址冲突
  144. "0x400001": 'LOG_TYPE_IP_CONFLICT', # 网络地址冲突
  145. "0x400002": 'LOG_TYPE_NETWORK_ERR', # 网络异常
  146. "0x400003": 'LOG_TYPE_DDNS_ERR', # DDNS错误
  147. "0x400004": 'LOG_TYPE_DISK_IO_ERR', # 磁盘读写错误
  148. "0x400005": 'LOG_TYPE_UNKNOWN_OFF', # 异常断电
  149. "0x400006": 'LOG_TYPE_UNKNOWN_ERR', # 未知错误
  150. "0x400007": 'LOG_TYPE_ERR_9A9A9A9A', #
  151. "0x400008": 'LOG_TYPE_ERR_9A000001', #
  152. "0x400009": 'LOG_TYPE_ERR_9A000002', #
  153. "0x40000A": 'LOG_TYE_DISK_WARNING', # 磁盘衰减报警
  154. "0x40000B": 'LOG_TYE_DISK_DISCONNECT', # 磁盘掉线报警
  155. "0x40000C": 'LOG_TYE_DISK_NOTFIND', # 开机无硬盘
  156. # 事件信息 Event
  157. "0x800000": 'LOG_TYPE_EVENT', # 事件信息
  158. "0x800001": 'LOG_TYPE_EVENT_MOTION', # 调整人体红外感应开关设置
  159. "0x800002": 'LOG_TYPE_EVENT_SENSOR', # 调整人体红外感应开关设置
  160. "0x800004": 'LOG_TYPE_EVENT_VIDEO_LOSS', # 调整人体红外感应开关设置
  161. "0x800008": 'LOG_TYPE_EVENT_COVER', # 调整人体红外感应开关设置
  162. "0x800010": 'LOG_TYPE_EVENT_PIR', # 调整人体红外感应开关设置
  163. }
  164. try:
  165. res = data[type]
  166. except Exception as e:
  167. res = ''
  168. return res
  169. @staticmethod
  170. def getODla(search_class):
  171. data = {
  172. 'Operation': ['0x10000', '0x10019'], #操作
  173. 'Setup': ['0x20000', '0x20048'], #系统配置
  174. 'Playback': ['0x40000', '0x40008'], #录像回放
  175. 'Backup': ['0x80000', '0x80004'], #数据备份
  176. 'Search': ['0x100001', '0x100009'], #录像检索
  177. 'Check Infomantion': ['0x200000', '0x200007'], #查看信息
  178. 'Error': ['0x400000', '0x40000C'], #异常信息
  179. 'Event': ['0x800000', '0x800010'], #事件信息
  180. }
  181. return data[search_class]
  182. # print(DeviceOperation.getOperation(type='0x10019'))