OpenSDK  V4.2.0
类型定义 | 函数
消息推送

类型定义

typedef void(CALLBACK * OpenSDK_Push_MessageHandler) (const char *szDesc, const char *szContent, const char *szDetail, void *pUser)
 告警消息推送回调函数 更多...
 

函数

OPENSDK_API OPENSDK_RESULT CALLBACK OpenSDK_Push_SetAlarmCallBack (OpenSDK_Push_MessageHandler pHandle, void *pUser)
 设置告警推送回调 更多...
 
OPENSDK_API OPENSDK_RESULT CALLBACK OpenSDK_Push_SetDeviceStatusCallBack (OpenSDK_Push_MessageHandler pHandle, void *pUser)
 设置设备下线状态推送 更多...
 
OPENSDK_API OPENSDK_RESULT CALLBACK OpenSDK_Push_SetTransparentChannelCallBack (OpenSDK_Push_MessageHandler pHandle, void *pUser)
 设置设备透明通道推送 更多...
 
OPENSDK_API OPENSDK_RESULT CALLBACK OpenSDK_Push_StartRecvEx (const char *szPushSecret)
 开启接收推送, 不推荐应用在服务器端上 更多...
 
OPENSDK_API OPENSDK_RESULT CALLBACK OpenSDK_Push_StopRecv ()
 关闭接收推送 更多...
 

详细描述

类型定义说明

typedef void(CALLBACK * OpenSDK_Push_MessageHandler) (const char *szDesc, const char *szContent, const char *szDetail, void *pUser)

告警消息推送回调函数

参数
szDesc推送描述信息
szContent推送内容
szDetail完整的推送信息
pUser用户自定义数据
参见
OpenSDK_Push_SetAlarmCallBack()
OpenSDK_Push_SetDeviceStatusCallBack()
OpenSDK_Push_SetTransparentChannelCallBack()
注解
告警推送内容(szContent) JSON格式如下:
1 {
2  "msgType": "1", // 消息类型
3  "alarmTime": "2012-12-25 15:25:42", // 告警时间
4  "deviceSeril": "421877673", // 设备序列号
5  "channelID": "1", // 通道ID
6  "alarmType": "11", // 告警类型
7  "picUrl": "http://www.hikvision.com/", // 图片短地址URL
8  "videoUrl": "http://www.hikvision.com/",// 视频URL
9  "custominfo":"sn=507669173^cn=30", // 自定义内容,涉及告警防区
10  "custominfoType":"CS-A1-32W_01", // 自定义内容的类型
11  "alarmPicUrl":"" // 图片URL,有效期1天, 通过调用OpenSDK_DecryptPicture接口来解密
12  "isEncrypt":1 // 图片是否加密, 1:加密, 0:非加密
13 }
消息推送内容JSON格式如下:
1 {
2  "msgType": "3", // 消息类型, 设备状态触发为3
3  "devMsgType": "1", // 推送类型号,下线状态为1
4  "msgTime": "2016-01-27 16:09:39", // 消息的时间
5  "deviceSeril": "421877673", // 设备序列号
6  "channelID": "1" // 通道ID
7 }
通明通道消息推送内容JSON格式如下:
1 {
2  "msgType": "com,hikvision.open.transparent", // 消息类型,透传数据类型
3  "msgSeq": "123456789", // 消息ID
4  "createDate": 1456070400000.0, // 消息时间, 时间戳(日期)
5  "data": "hello", // 消息内容,即透传的数据
6  "sn": "421877673", // 设备序列号
7 }

函数说明

OPENSDK_API OPENSDK_RESULT CALLBACK OpenSDK_Push_SetAlarmCallBack ( OpenSDK_Push_MessageHandler  pHandle,
void *  pUser 
)

设置告警推送回调

参数
[in]pHandle告警推送函数
[in]pUser用户自定义数据,回调函数会原样抛出
返回
0表示成功,-1表示失败
参见
OpenSDK_Push_AlarmHandler
OPENSDK_API OPENSDK_RESULT CALLBACK OpenSDK_Push_SetDeviceStatusCallBack ( OpenSDK_Push_MessageHandler  pHandle,
void *  pUser 
)

设置设备下线状态推送

参数
[in]pHandle设备状态推送函数
[in]pUser用户自定义数据,回调函数会原样抛出
返回
0表示成功,-1表示失败
参见
OpenSDK_Push_MessageHandler
OPENSDK_API OPENSDK_RESULT CALLBACK OpenSDK_Push_SetTransparentChannelCallBack ( OpenSDK_Push_MessageHandler  pHandle,
void *  pUser 
)

设置设备透明通道推送

参数
[in]handle告警推送函数
[in]publishHandle推送消息函数
[in]pUser用户自定义数据,回调函数会原样抛出
返回
0表示成功,-1表示失败
参见
OpenSDK_Push_MessageHandler
OPENSDK_API OPENSDK_RESULT CALLBACK OpenSDK_Push_StartRecvEx ( const char *  szPushSecret)

开启接收推送, 不推荐应用在服务器端上

参数
[in]szPushSecret接入Push所使用密钥,创建应用的时候有平台生成
返回
0表示成功,-1表示失败, 失败时调用GetLastErrorCode()
参见
OpenSDK_Push_StopRecv()
OPENSDK_API OPENSDK_RESULT CALLBACK OpenSDK_Push_StopRecv ( )

关闭接收推送

返回
0表示成功,-1表示失败
参见
OpenSDK_Push_StartRecv()