设备网络SDK开发使用手册

NET_DVR_StartListen_V30

启动监听,接收设备主动上传的报警等信息(支持多线程)。

LONG NET_DVR_StartListen_V30(
  char           *sLocalIP,
  WORD           wLocalPort,
  MSGCallBack    DataCallback,
  void           *pUserData
);

Parameters

sLocalIP
[in] PC机本地IP地址,可以置为NULL
wLocalPort
[in] PC本地监听端口号。由用户设置,必须和设备端设置的一致
DataCallback
[in] 回调函数
pUserData
[in] 用户数据

Callback Function

typedef void(CALLBACK *MSGCallBack)(
  LONG               lCommand,
  NET_DVR_ALARMER    *pAlarmer,
  char               *pAlarmInfo,
  DWORD              dwBufLen,
  void               *pUser
);

Callback Function Parameters

lCommand
[out] 上传的消息类型,不同的报警信息对应不同的类型,通过类型区分是什么报警信息,详见“Remarks”中列表
pAlarmer
[out] 报警设备信息,包括设备序列号、IP地址等
pAlarmInfo
[out] 报警信息,通过lCommand值判断pAlarmer对应的结构体,详见“Remarks”中列表
dwBufLen
[out] 报警信息缓存大小
pUser
[out] 用户数据

Return Values

-1表示失败,其他值作为NET_DVR_StopListen_V30函数的句柄参数。接口返回失败请调用NET_DVR_GetLastError获取错误码,通过错误码判断出错原因。

以下是该接口可能返回的错误值

错误类型 错误值 错误信息
NET_DVR_NOERROR 0 没有错误。
NET_DVR_NOINIT 3 SDK未初始化。
NET_DVR_VERSIONNOMATCH 6 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_ORDER_ERROR 12 调用次序错误。
NET_DVR_PARAMETER_ERROR 17 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR 41 SDK资源分配错误。
NET_DVR_CREATESOCKET_ERROR 44 创建SOCKET出错。
NET_DVR_USERNOTEXIST 47 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR 72 绑定套接字失败。
NET_DVR_SOCKETLISTEN_ERROR 75 监听失败。

Remarks

要使PC能够收到设备主动发过来的报警等信息,必须将设备的网络配置中的“远程管理主机地址”或者“远程报警主机地址”设置成PC机的IP地址(与接口中的sLocalIP参数一致),“远程管理主机端口号”或者“远程报警主机端口号”设置成PC机的监听端口号(与接口中的wLocalPort参数一致)。

该接口中的回调函数优先级高于其他回调函数,即设置了该接口中的回调函数,其他回调函数将接收不到报警信息。所有设备报警信息都是在同一个回调函数中返回的,通过报警设备信息(pAlarmInfo)区分是哪台设备。

该接口中回调函数的第一个参数(lCommand)和第三个参数(pAlarmInfo)是密切关联的,其关系见下表:

消息类型(lCommand) 宏定义值 上传内容 pAlarmInfo对应的结构体
智能报警      
COMM_ALARM_RULE 0x1102 行为分析信息 NET_VCA_RULE_ALARM
COMM_ALARM_PDC 0x1103 客流量统计报警上传 NET_DVR_PDC_ALRAM_INFO
COMM_UPLOAD_FACESNAP_RESULT 0x1112 人脸抓拍结果 NET_VCA_FACESNAP_RESULT
COMM_ALARM_FACE_DETECTION 0x4010 人脸侦测报警信息 NET_DVR_FACE_DETECTION
COMM_VCA_ALARM 0x4993 智能检测通用报警(Json数据结构) 人体目标识别报警Json数据
人员密度报警Json数据
人员排队时长检测报警JSON数据
人员排队人数检测报警JSON数据
安全帽检测报警JSON数据
录制状态报警信息上传JSON数据
资源上传云存储状态报警信息上传JSON数据
COMM_SNAP_MATCH_ALARM 0x2902 人脸黑名单比对结果信息 NET_VCA_FACESNAP_MATCH_ALARM
COMM_FACESNAP_RAWDATA_ALARM 0x6015 人脸比对报警(Json数据透传方式) NET_VCA_FACESNAP_RAWDATA_ALARM
COMM_ALARM_VQD_EX 0x1116 VQD报警信息 NET_DVR_VQD_ALARM
COMM_DIAGNOSIS_UPLOAD 0x5100 诊断服务器VQD报警信息 NET_DVR_DIAGNOSIS_UPLOAD
COMM_ALARM_VQD 0x6000 VQD诊断报警信息 NET_DVR_VQD_DIAGNOSE_INFO
COMM_SCENECHANGE_DETECTION_UPLOAD 0x1130 场景变更报警信息 NET_DVR_SCENECHANGE_DETECTION_RESULT
COMM_CROSSLINE_ALARM 0x1131 压线报警信息 NET_DVR_CROSSLINE_ALARM
COMM_ALARM_AUDIOEXCEPTION 0x1150 声音报警信息 NET_DVR_AUDIOEXCEPTION_ALARM
COMM_ALARM_DEFOCUS 0x1151 虚焦报警信息 NET_DVR_DEFOCUS_ALARM
COMM_UPLOAD_HEATMAP_RESULT 0x4008 热度图报警信息 NET_DVR_HEATMAP_RESULT
COMM_SWITCH_LAMP_ALARM 0x6002 开关灯检测报警信息 NET_DVR_SWITCH_LAMP_ALARM
智能交通      
COMM_ALARM_TFS 0x1113 交通取证报警信息 NET_DVR_TFS_ALARM
COMM_ALARM_TPS_V41 0x1114 交通参数统计报警信息(扩展) NET_DVR_TPS_ALARM_V41
COMM_ALARM_AID_V41 0x1115 交通事件报警信息扩展 NET_DVR_AID_ALARM_V41
COMM_ITS_PLATE_RESULT 0x3050 交通抓拍结果(车辆、车牌识别及抓拍图片)上传 NET_ITS_PLATE_RESULT
COMM_ITS_TRAFFIC_COLLECT 0x3051 交通统计数据 NET_ITS_TRAFFIC_COLLECT
COMM_ITS_GATE_VEHICLE 0x3052 出入口车辆抓拍数据 NET_ITS_GATE_VEHICLE
COMM_ITS_GATE_FACE 0x3053 出入口人脸抓拍数据 NET_ITS_GATE_FACE
COMM_ITS_GATE_COSTITEM 0x3054 出入口过车收费明细 NET_ITS_PASSVEHICLE_COST_ITEM
COMM_ITS_GATE_HANDOVER 0x3055 出入口交接班数据 NET_ITS_HANDOVER_INFO
COMM_ITS_PARK_VEHICLE 0x3056 停车场数据上传 NET_ITS_PARK_VEHICLE
COMM_ITS_BLACKLIST_ALARM 0x3057 车辆黑名单报警上传 NET_ITS_ECT_BLACKLIST
COMM_VEHICLE_CONTROL_LIST_DSALARM 0x3058 车辆黑白名单数据需要同步报警上传 NET_DVR_VEHICLE_CONTROL_LIST_DSALARM
COMM_VEHICLE_CONTROL_ALARM 0x3059 黑白名单车辆报警上传 NET_DVR_VEHICLE_CONTROL_ALARM
COMM_FIRE_ALARM 0x3060 消防报警上传 NET_DVR_FIRE_ALARM
COMM_VEHICLE_RECOG_RESULT 0x3062 车辆二次识别结果上传 NET_DVR_VEHICLE_RECOG_RESULT
COMM_SIGNAL_LAMP_ABNORMAL 0x3080 信号灯异常检测上传 NET_DVR_SIGNALLAMP_DETCFG
COMM_ALARM_TPS_REAL_TIME 0x3081 TPS实时过车数据上传 NET_DVR_TPS_REAL_TIME_INFO
COMM_ALARM_TPS_STATISTICS 0x3082 TPS统计过车数据上传 NET_DVR_TPS_STATISTICS_INFO
COMM_ITC_STATUS_DETECT_RESULT 0x2810 实时状态检测结果 NET_ITC_STATUS_DETECT_RESULT
COMM_ITS_ROAD_EXCEPTION 0x4500 路口设备异常报警信息 NET_ITS_ROADINFO
COMM_ITS_EXTERNAL_CONTROL_ALARM 0x4520 指示灯外控报警信息 NET_DVR_EXTERNAL_CONTROL_ALARM
报警主机      
COMM_SENSOR_VALUE_UPLOAD 0x1120 模拟量数据实时信息 NET_DVR_SENSOR_ALARM
COMM_SENSOR_ALARM 0x1121 模拟量报警信息 NET_DVR_SENSOR_ALARM
COMM_SWITCH_ALARM 0x1122 开关量报警信息 NET_DVR_SWITCH_ALARM
COMM_ALARMHOST_EXCEPTION 0x1123 故障报警信息 NET_DVR_ALARMHOST_EXCEPTION_ALARM
COMM_ALARMHOST_SAFETYCABINSTATE 0x1125 防护舱状态信息 NET_DVR_ALARMHOST_SAFETYCABINSTATE
COMM_ALARMHOST_ALARMOUTSTATUS 0x1126 报警主机报警输出口或警号状态信息 NET_DVR_ALARMHOST_ALARMOUTSTATUS
COMM_ALARMHOST_CID_ALARM 0x1127 报警主机CID报告报警上传 NET_DVR_CID_ALARM
COMM_ALARMHOST_EXTERNAL_DEVICE_ALARM 0x1128 报警主机RS485外接设备报警信息 NET_DVR_485_EXTERNAL_DEVICE_ALARMINFO
COMM_ALARMHOST_DATA_UPLOAD 0x1129 报警数据信息 NET_DVR_ALARMHOST_DATA_UPLOAD
COMM_ALARM_WIRELESS_INFO 0x122b 无线网络信息上传 NET_DVR_ALARMWIRELESSINFO
其他设备报警      
COMM_ALARM 0x1100 移动侦测、视频丢失、遮挡、IO信号量等报警信息上传(V3.0以下版本支持的设备) NET_DVR_ALARMINFO
COMM_ALARM_V30 0x4000 移动侦测、视频丢失、遮挡、IO信号量等报警信息上传(V3.0以上版本支持的设备) NET_DVR_ALARMINFO_V30
COMM_ALARM_V40 0x4007 移动侦测、视频丢失、遮挡、IO信号量等报警信息,报警数据为可变长 NET_DVR_ALARMINFO_V40
COMM_IPCCFG 0x4001 混合型DVR、NVR等在IPC接入配置改变时的报警信息 NET_DVR_IPALARMINFO
COMM_IPCCFG_V31 0x4002 混合型DVR、NVR等在IPC接入配置改变时的报警信息(扩展) NET_DVR_IPALARMINFO_V31
COMM_IPC_AUXALARM_RESULT 0x2820 PIR报警、无线报警、呼救报警信息 NET_IPC_AUXALARM_RESULT
COMM_ALARM_DEVICE 0x4004 CVR设备报警信息,由于通道值大于256而扩展 NET_DVR_ALARMINFO_DEV
COMM_ALARM_DEVICE_V40 0x4009 CVR设备报警信息扩展(增加报警信息子结构) NET_DVR_ALARMINFO_DEV_V40
COMM_ALARM_CVR 0x4005 CVR外部报警信息 NET_DVR_CVR_ALARM
COMM_TRADEINFO 0x1500 ATM DVR交易信息 NET_DVR_TRADEINFO
COMM_ALARM_HOT_SPARE 0x4006 热备异常报警(N+1模式异常报警)信息 NET_DVR_ALARM_HOT_SPARE
COMM_ALARM_BUTTON_DOWN_EXCEPTION 0x1152 按钮按下报警信息(IP可视对讲主机) NET_BUTTON_DOWN_EXCEPTION_ALARM
COMM_ALARM_ACS 0x5002 门禁主机报警信息 NET_DVR_ACS_ALARM_INFO
COMM_ALARM_LCD 0x5011 LCD屏幕报警信息 NET_DVR_LCD_ALARM
COMM_UPLOAD_VIDEO_INTERCOM_EVENT 0x1132 可视对讲事件记录信息 NET_DVR_VIDEO_INTERCOM_EVENT
COMM_ALARM_VIDEO_INTERCOM 0x1133 可视对讲报警信息 NET_DVR_VIDEO_INTERCOM_ALARM
COMM_ALARM_DEC_VCA 0x5010 解码器智能解码报警信息 NET_DVR_DEC_VCA_ALARM
COMM_ALARM_STORAGE_DETECTION 0x4015 存储智能检测报警信息 NET_DVR_STORAGE_DETECTION_ALARM
COMM_CONFERENCE_CALL_ALARM 0x5012 会议终端会议呼叫报警信息 NET_DVR_CONFERENCE_CALL_ALARM
COMM_INQUEST_ALARM 0x6005 审讯主机报警信息 NET_DVR_INQUEST_ALARM
COMM_PANORAMIC_LINKAGE_ALARM 0x5213 鹰眼全景联动到位事件信息 NET_DVR_PANORAMIC_LINKAGE
COMM_ISAPI_ALARM 0x6009 ISAPI协议报警信息 NET_DVR_ALARM_ISAPI_INFO

报警类型是COMM_ALARM_ACS时候,如设备断开连接后,回调函数返回异常状态,获取错误码为7。

See Also

NET_DVR_StopListen_V30

Reference Interface

该接口扩展源于

NET_DVR_StartListen