|  |  |  | 
|---|
|  |  |  | package com.genersoft.iot.vmp.gb28181.event; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.genersoft.iot.vmp.gb28181.event.platformKeepaliveExpire.PlatformKeepaliveExpireEvent; | 
|---|
|  |  |  | import com.genersoft.iot.vmp.gb28181.event.platformNotRegister.PlatformNotRegisterEvent; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.context.ApplicationEventPublisher; | 
|---|
|  |  |  | import org.springframework.stereotype.Component; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.genersoft.iot.vmp.gb28181.bean.DeviceAlarm; | 
|---|
|  |  |  | import com.genersoft.iot.vmp.gb28181.event.alarm.AlarmEvent; | 
|---|
|  |  |  | import com.genersoft.iot.vmp.gb28181.event.offline.OfflineEvent; | 
|---|
|  |  |  | import com.genersoft.iot.vmp.gb28181.event.online.OnlineEvent; | 
|---|
|  |  |  | import com.genersoft.iot.vmp.gb28181.event.outline.OutlineEvent; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * @Description:Event事件通知推送器,支持推送在线事件、离线事件 | 
|---|
|  |  |  | * @author: songww | 
|---|
|  |  |  | * @author: swwheihei | 
|---|
|  |  |  | * @date:   2020年5月6日 上午11:30:50 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Component | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void outlineEventPublish(String deviceId, String from){ | 
|---|
|  |  |  | OutlineEvent outEvent = new OutlineEvent(this); | 
|---|
|  |  |  | OfflineEvent outEvent = new OfflineEvent(this); | 
|---|
|  |  |  | outEvent.setDeviceId(deviceId); | 
|---|
|  |  |  | outEvent.setFrom(from); | 
|---|
|  |  |  | applicationEventPublisher.publishEvent(outEvent); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 平台心跳到期事件 | 
|---|
|  |  |  | * @param platformGbId | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public void platformKeepaliveExpireEventPublish(String platformGbId){ | 
|---|
|  |  |  | PlatformKeepaliveExpireEvent platformNotRegisterEvent = new PlatformKeepaliveExpireEvent(this); | 
|---|
|  |  |  | platformNotRegisterEvent.setPlatformGbID(platformGbId); | 
|---|
|  |  |  | applicationEventPublisher.publishEvent(platformNotRegisterEvent); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 平台未注册事件 | 
|---|
|  |  |  | * @param platformGbId | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public void platformNotRegisterEventPublish(String platformGbId){ | 
|---|
|  |  |  | PlatformNotRegisterEvent platformNotRegisterEvent = new PlatformNotRegisterEvent(this); | 
|---|
|  |  |  | platformNotRegisterEvent.setPlatformGbID(platformGbId); | 
|---|
|  |  |  | applicationEventPublisher.publishEvent(platformNotRegisterEvent); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 设备报警事件 | 
|---|
|  |  |  | * @param deviceAlarm | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public void deviceAlarmEventPublish(DeviceAlarm deviceAlarm) { | 
|---|
|  |  |  | AlarmEvent alarmEvent = new AlarmEvent(this); | 
|---|
|  |  |  | alarmEvent.setAlarmInfo(deviceAlarm); | 
|---|
|  |  |  | applicationEventPublisher.publishEvent(alarmEvent); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|