{
	"ipAddress":  "172.6.64.7",	
	/*ro, req, string, 报警设备IPv4地址, range:[,]*/
	"ipv6Address":  "null",	
	/*ro, opt, string, 报警设备IPv6地址, range:[,]*/
	"portNo":  80,	
	/*ro, opt, int, 报警设备端口号, range:[,], step:, unit:, unitType:*/
	"protocol":  "HTTP",	
	/*ro, opt, enum, 传输通信协议类型, subType:string, [HTTP#HTTP,HTTPS#HTTPS,EHome#EHome], desc:传输通信协议HTTP/HTTPS/EHome（萤石透传ISAPI 的时候赋值HTTP；ISUP透传ISAPI 的时候赋值 EHome）protocolType作为历史遗留由平台兼容*/
	"macAddress":  "01:17:24:45:D9:F4",	
	/*ro, opt, string, MAC地址, range:[,]*/
	"channelID":  1,	
	/*ro, opt, int, 触发报警的设备通道号, range:[,], step:, unit:, unitType:, desc:触发的视频通道号（1、    在SDK透传ISAPI协议的时候，上传的是 私有协议对应的视频通道号；（2、    在萤石透传ISAPI协议的时候，上传的是 萤石协议对应的视频通道号；（3、    在ISUP透传ISAPI协议的时候，上传的是 ISUP协议对应的视频通道号；*/
	"dateTime":  "2004-05-03T17:30:08+08:00",	
	/*ro, req, datetime, 报警触发时间*/
	"activePostCount":  1,	
	/*ro, opt, int, 同一个报警已经上传的次数, range:[,], step:, unit:, unitType:, desc:事件触发频次脉冲事件 定义：事件持续触发（按照设备的检测频率），例如：移动侦测。瞬时事件 定义：区分目标，一个目标触发一次，例如：人脸识别activePostCount  在脉冲事件 类型触发的时候，用于区分是否是同一触发源触发的事件。例如：移动侦测，按照设备检测频率会一直上传；如果触发源发生了变化，这个时候计数就可以重新开始了。这个可以作为事件触发频次的方式来集成；*/
	"eventType":  "AccessControllerEvent",	
	/*ro, req, string, 事件类型, range:[,], desc:AccessControllerEvent-门禁事件上传报警*/
	"eventState":  "active",	
	/*ro, req, enum, 事件状态, subType:string, [active#有效事件,inactive#无效事件], desc:针对持续性事件active – 表示有效事件（开始 或者 无过程状态也使用该字段）；inactive – 表示无效事件（结束）；remark:在心跳类型下，该字段赋值（表示心跳数据,10s上传一次）；*/
	"eventDescription":  "AccessControllerEvent",	
	/*ro, req, string, 事件描述, range:[,], desc:AccessControllerEvent-门禁事件上传报警*/
	"deviceID":  "test0123",	
	/*ro, opt, string, 即PUID, range:[,], desc:在ISUP协议接入透传ISAPI事件信息中必须返回*/
	"AccessControllerEvent": {	
	/*ro, req, object, 门禁事件信息*/
		"deviceName":  "test",	
		/*ro, opt, string, 设备名称, range:[,]*/
		"majorEventType":  1,	
		/*ro, req, int, 报警主类型, range:[,], step:, unit:, unitType:, desc:参考宏定义（此处传递的是10进制数据，不能传递16进制，如传递1代表0x1（报警主类型））*/
		"subEventType":  1,	
		/*ro, req, int, 报警次类型, range:[,], step:, unit:, unitType:, desc:参考宏定义（此处传递的是10进制数据，不能传递16进制，如传递1024代表0x400（防区短路报警次类型））*/
		"inductiveEventType":  "authenticated",	
		/*ro, opt, enum, 归纳事件类型, subType:string, [authenticated#认证通过,authenticationFailed#认证失败,openingDoor#开门动作,closingDoor#关门动作,doorException#门异常,remoteOperation#远程操作,timeSynchronization#校时事件,deviceException#设备异常事件,deviceRecovered#设备恢复正常事件,alarmTriggered#报警事件,alarmRecovered#报警恢复事件,callCenter#呼叫中心], desc:（后端设备定义，门禁设备暂时用不到）*/
		"netUser":  "test",	
		/*ro, opt, string, 网络操作的用户名, range:[,]*/
		"remoteHostAddr":  "test",	
		/*ro, opt, string, 远程主机地址, range:[,]*/
		"cardNo":  "test",	
		/*ro, opt, string, 卡号, range:[,]*/
		"cardType":  1,	
		/*ro, opt, enum, 卡类型, subType:int, [1#普通卡,2#残疾人卡,3#黑名单卡,4#巡更卡,5#胁迫卡,6#超级卡,7#来宾卡,8#解除卡]*/
		"name":  "test",	
		/*ro, opt, string, 人员姓名, range:[,]*/
		"whiteListNo":  1,	
		/*ro, opt, int, 白名单单号, range:[,], step:, unit:, unitType:*/
		"reportChannel":  1,	
		/*ro, opt, enum, 报告上传通道, subType:int, [1#布防上传,2#中心组1上传,3#中心组2上传]*/
		"cardReaderKind":  1,	
		/*ro, opt, enum, 读卡器属于哪一类, subType:int, [1#IC读卡器,2#身份证读卡器,3#二维码读卡器,4#指纹头]*/
		"cardReaderNo":  1,	
		/*ro, opt, int, 读卡器编号, range:[,], step:, unit:, unitType:*/
		"doorNo":  1,	
		/*ro, opt, int, 门编号（楼层编号）, range:[,], step:, unit:, unitType:*/
		"verifyNo":  1,	
		/*ro, opt, int, 多重卡认证序号, range:[,], step:, unit:, unitType:*/
		"alarmInNo":  1,	
		/*ro, opt, int, 报警输入号, range:[,], step:, unit:, unitType:*/
		"alarmOutNo":  1,	
		/*ro, opt, int, 报警输出号, range:[,], step:, unit:, unitType:*/
		"caseSensorNo":  1,	
		/*ro, opt, int, 事件触发器编号, range:[,], step:, unit:, unitType:*/
		"RS485No":  1,	
		/*ro, opt, int, RS485通道号, range:[,], step:, unit:, unitType:*/
		"multiCardGroupNo":  1,	
		/*ro, opt, int, 群组编号, range:[,], step:, unit:, unitType:*/
		"accessChannel":  1,	
		/*ro, opt, int, 人员通道号, range:[,], step:, unit:, unitType:*/
		"deviceNo":  1,	
		/*ro, opt, int, 设备编号, range:[,], step:, unit:, unitType:*/
		"distractControlNo":  1,	
		/*ro, opt, int, 分控器编号, range:[,], step:, unit:, unitType:*/
		"employeeNo":  1,	
		/*ro, opt, int, 工号（人员ID）, range:[,], step:, unit:, unitType:*/
		"employeeNoString":  "test",	
		/*ro, opt, string, 工号（人员ID）, range:[,], desc:对于设备来说，如果使用了工号（人员ID）字段，employeeNoString一定要传递，如果employeeNoString可转换为employeeNo，那么该字段也要传递；对于上层平台或客户端来说，优先解析employeeNoString字段，如该字段为空，再考虑解析employeeNo字段*/
		"employeeName":  "test",	
		/*ro, opt, string, 人员名称, range:[,], desc:该字段仅信息发布项目使用,增加时报文上面的name字段丢失,导致多增加了人员名称字段，目前要求信息发布设备支持两个name字段均上传*/
		"localControllerID":  1,	
		/*ro, opt, int, 就地控制器编号, range:[,], step:, unit:, unitType:, desc:0-门禁主机，1-64代表就地控制器*/
		"InternetAccess":  "1",	
		/*ro, opt, enum, 网口ID, subType:string, [1#上行网口1,2#上行网口2,3#下行网口1]*/
		"type":  1,	
		/*ro, opt, enum, 防区类型, subType:int, [0#即时防区,1#24小时防区,2#延时防区,3#内部防区,4#钥匙防区,5#火警防区,6#周界防区,7#24小时无声防区,8#24小时辅助防区,9#24小时震动防区,10#门禁紧急开门防区,11#门禁紧急关门防区,255#无]*/
		"MACAddr":  "test",	
		/*ro, opt, string, 物理地址, range:[,]*/
		"swipeCardType":  1,	
		/*ro, opt, enum, 刷卡类型, subType:int, [0#无效,1#二维码]*/
		"serialNo":  1,	
		/*ro, opt, int, 事件流水号, range:[1,100000], step:, unit:, unitType:, desc:从1开始,递增加1,达到设备支持的最大值后循环覆盖*/
		"channelControllerID":  1,	
		/*ro, opt, enum, 通道控制器ID, subType:int, [1#主通道控制器,2#从通道控制器]*/
		"channelControllerLampID":  1,	
		/*ro, opt, int, 通道控制器灯板ID, range:[1,255], step:, unit:, unitType:*/
		"channelControllerIRAdaptorID":  1,	
		/*ro, opt, int, 通道控制器红外转接板ID, range:[1,255], step:, unit:, unitType:*/
		"channelControllerIREmitterID":  1,	
		/*ro, opt, int, 通道控制器红外对射ID, range:[1,255], step:, unit:, unitType:*/
		"userType":  "normal",	
		/*ro, opt, enum, 人员类型, subType:string, [normal#普通人（主人）,visitor#来宾（访客）,blackList#黑名单人,administrators#管理员]*/
		"currentVerifyMode":  "cardAndPw",	
		/*ro, opt, enum, 读卡器当前验证方式, subType:string, [cardAndPw#刷卡+密码,card#刷卡,cardOrPw#刷卡或密码,fp#指纹,fpAndPw#指纹+密码,fpOrCard#指纹或刷卡,fpAndCard#指纹+刷卡,fpAndCardAndPw#指纹+刷卡+密码,faceOrFpOrCardOrPw#人脸或指纹或刷卡或密码,faceAndFp#人脸+指纹,faceAndPw#人脸+密码,faceAndCard#人脸+刷卡,face#人脸,employeeNoAndPw#工号+密码,fpOrPw#指纹或密码,employeeNoAndFp#工号+指纹,employeeNoAndFpAndPw#工号+指纹+密码,faceAndFpAndCard#人脸+指纹+刷卡,faceAndPwAndFp#人脸+密码+指纹,employeeNoAndFace#工号+人脸,faceOrfaceAndCard#人脸或人脸+刷卡,fpOrface#指纹或人脸,cardOrfaceOrPw#刷卡或人脸或密码], desc:人员验证方式的优先级高于读卡器验证方式*/
		"currentEvent":  true,	
		/*ro, opt, bool, 是否为实时事件*/
		"QRCodeInfo":  "test",	
		/*ro, opt, string, 二维码信息, range:[,]*/
		"thermometryUnit":  "celsius",	
		/*ro, opt, enum, 测温单位, subType:string, [celsius#摄氏度（默认）,fahrenheit#华氏度,kelvin#开尔文]*/
		"currTemperature":  36.1,	
		/*ro, opt, float, 人脸温度（精确到小数点后一位）, range:[,], step:, unit:, unitType:*/
		"isAbnomalTemperature":  true,	
		/*ro, opt, bool, 人脸测温是否温度异常*/
		"RegionCoordinates": {	
		/*ro, opt, object, 人脸温度坐标*/
			"positionX":  0,	
			/*ro, opt, int, X坐标 归一化坐标0-1000, range:[0,1000], step:, unit:, unitType:*/
			"positionY":  0	
			/*ro, opt, int, Y坐标 归一化坐标0-1000, range:[0,1000], step:, unit:, unitType:*/
		},
		"remoteCheck":  true,	
		/*ro, opt, bool, 是否需要远程核验（默认false）*/
		"mask":  "unknown",	
		/*ro, opt, enum, 是否戴口罩, subType:string, [unknown#未知,yes#戴口罩,no#不戴口罩]*/
		"frontSerialNo":  1,	
		/*ro, opt, int, 上一条事件流水号, range:[,], step:, unit:, unitType:, desc:若设备没返回该字段，平台根据serialNo判断是否丢失事件；若设备返回该字段，平台根据该字段和serialNo字段共同判断是否丢失事件（主要用于解决报警订阅后导致serialNo不连续的情况）*/
		"attendanceStatus":  "checkIn",	
		/*ro, opt, enum, 考勤状态, subType:string, [checkIn#上班,checkOut#下班,breakOut#开始休息,breakIn#结束休息,overtimeIn#开始加班,overtimeOut#结束加班]*/
		"statusValue":  1,	
		/*ro, opt, int, 状态值, range:[,], step:, unit:, unitType:*/
		"pictureURL":  "test",	
		/*ro, opt, string, 抓拍图片URL, range:[0,256]*/
		"visibleLightURL":  "test",	
		/*ro, opt, string, 热成像相机可见光图片URL, range:[0,256]*/
		"thermalURL":  "test",	
		/*ro, opt, string, 热成像图片URL, range:[0,256]*/
		"picturesNumber":  1,	
		/*ro, opt, int, 图片数量, range:[,], step:, unit:, unitType:*/
		"unlockType":  "password",	
		/*ro, opt, enum, 开锁类型, subType:string, [password#密码开锁,hijcking#劫持开锁,card#刷卡开锁,householder#户主开锁,centerplatform#中心平台开锁,bluetooth#蓝牙开锁,qrcode#二维码开锁,face#人脸开锁,fingerprint#指纹开锁], desc:对应次类型（MINOR_UNCLOCK_RECORD）时返回*/
		"classroomId":  "test",	
		/*ro, opt, string, 教室UUID, range:[,]*/
		"classroomName":  "test",	
		/*ro, opt, string, 教室名称, range:[,]*/
		"analysisModule":  "signageApp",	
		/*ro, opt, enum, 分析模块, subType:string, [signageApp#班牌APP,faceSDK#人脸SDK], desc:本字段不返回默认采用班牌APP上报*/
		"customInfo":  "test",	
		/*ro, opt, string, 自定义信息, range:[,]*/
		"helmet":  "unknown",	
		/*ro, opt, enum, 是否戴安全帽, subType:string, [unknown#未知,yes#戴安全帽,no#不戴安全帽]*/
		"purePwdVerifyEnable":  true,	
		/*ro, opt, bool, 是否支持纯密码开门（人员信息中的-password字段）, 
		desc:*纯密码方案：
		*①认证方式中的"或密码"为人员密码
		*②设备不对人员密码的重复性进行校验，需要上层平台自行保证密码的唯一性
		*③设备本地不能对人员密码进行操作（增删改查）*/
		"appType":  "attendance",	
		/*ro, opt, enum, 应用类型（信发产品使用）, subType:string, [attendance#考勤应用,signIn#签到应用]*/
		"HealthInfo": {	
		/*ro, opt, object, 健康信息*/
			"healthCode":  1,	
			/*ro, opt, enum, 健康码状态, subType:int, [0#未请求,1#未申领,2#绿码,3#黄码,4#红码,5#无此人员,6#其他错误信息（如接口异常导致查询失败）,7#查询健康码超时]*/
			"NADCode":  1,	
			/*ro, opt, enum, 核酸检测结果, subType:int, [0#未查询到核酸检测结果,1#核酸检测阴性（代表正常）,2#核酸检测阳性（代表确诊）,3#核酸检测有效期已过]*/
			"travelCode":  1,	
			/*ro, opt, enum, 行程编码, subType:int, [0#14天内一直在当地,1#14天内离开过当地,2#14天内到过疫区,3#其他]*/
			"vaccineStatus":  1	
			/*ro, opt, enum, 打疫苗状态, subType:int, [0#未打疫苗,1#打过疫苗]*/
		},
		"PhysicalInfo": {	
		/*ro, opt, object, 身体信息, desc:明眸对接体脂称，认证通过后明眸获取体脂称信息*/
			"weight":  7000,	
			/*ro, opt, int, 体重, range:[,], step:, unit:kg, unitType:质量, 由于测量值存在小数点，实际值为体重(kg)*100*/
			"height":  18000	
			/*ro, opt, int, 身高, range:[,], step:, unit:cm, unitType:长度, 由于测量值存在小数点，实际值为身高(cm)*100*/
		},
		"meetingID":  "test"	
		/*ro, req, string, 会议编号UUID, range:[1,32]*/
	},
	"URLCertificationType":  "digest"	
	/*ro, opt, enum, 图片url认证方式, subType:string, [no#无,digest#摘要认证], desc:no-无（这个是针对武汉云存储协议），digest-摘要认证（这个针对设备本地存储返回URL的方式，设备例如NVR/DVR）*/
}