From f6893cf95b15531dfc45950fea7e780e045ba2ae Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期三, 11 五月 2022 18:37:24 +0800
Subject: [PATCH] 优化设备在线状态

---
 src/main/java/com/genersoft/iot/vmp/service/IDeviceService.java |   63 ++++++++++++++++++++++++++++---
 1 files changed, 56 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/service/IDeviceService.java b/src/main/java/com/genersoft/iot/vmp/service/IDeviceService.java
index 5621d2a..a7c52ba 100644
--- a/src/main/java/com/genersoft/iot/vmp/service/IDeviceService.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/IDeviceService.java
@@ -3,56 +3,105 @@
 import com.genersoft.iot.vmp.gb28181.bean.Device;
 import com.genersoft.iot.vmp.gb28181.bean.SyncStatus;
 
+import java.util.List;
+
 /**
  * 璁惧鐩稿叧涓氬姟澶勭悊
+ * @author lin
  */
 public interface IDeviceService {
 
     /**
+     * 璁惧涓婄嚎
+     * @param device 璁惧淇℃伅
+     */
+    void online(Device device);
+
+    /**
+     * 璁惧涓嬬嚎
+     * @param deviceId 璁惧缂栧彿
+     */
+    void offline(String deviceId);
+
+    /**
      * 娣诲姞鐩綍璁㈤槄
      * @param device 璁惧淇℃伅
-     * @return
+     * @return 甯冨皵
      */
     boolean addCatalogSubscribe(Device device);
 
     /**
      * 绉婚櫎鐩綍璁㈤槄
      * @param device 璁惧淇℃伅
-     * @return
+     * @return 甯冨皵
      */
     boolean removeCatalogSubscribe(Device device);
 
     /**
      * 娣诲姞绉诲姩浣嶇疆璁㈤槄
      * @param device 璁惧淇℃伅
-     * @return
+     * @return 甯冨皵
      */
     boolean addMobilePositionSubscribe(Device device);
 
     /**
      * 绉婚櫎绉诲姩浣嶇疆璁㈤槄
      * @param device 璁惧淇℃伅
-     * @return
+     * @return 甯冨皵
      */
     boolean removeMobilePositionSubscribe(Device device);
 
     /**
      * 绉婚櫎绉诲姩浣嶇疆璁㈤槄
      * @param deviceId 璁惧ID
-     * @return
+     * @return 鍚屾鐘舵��
      */
     SyncStatus getChannelSyncStatus(String deviceId);
 
     /**
      * 鏌ョ湅鏄惁浠嶅湪鍚屾
      * @param deviceId 璁惧ID
-     * @return
+     * @return 甯冨皵
      */
     Boolean isSyncRunning(String deviceId);
 
     /**
      * 閫氶亾鍚屾
-     * @param device
+     * @param device 璁惧淇℃伅
      */
     void sync(Device device);
+
+    /**
+     * 鏌ヨ璁惧淇℃伅
+     * @param deviceId 璁惧缂栧彿
+     * @return 璁惧淇℃伅
+     */
+    Device queryDevice(String deviceId);
+
+    /**
+     * 鑾峰彇鎵�鏈夊湪绾胯澶�
+     * @return 璁惧鍒楄〃
+     */
+    List<Device> getAllOnlineDevice();
+
+    /**
+     * 鍒ゆ柇鏄惁娉ㄥ唽宸茬粡澶辨晥
+     * @param device 璁惧淇℃伅
+     * @return 甯冨皵
+     */
+    boolean expire(Device device);
+
+    /**
+     * 妫�鏌ヨ澶囩姸鎬�
+     * @param device 璁惧淇℃伅
+     */
+    void checkDeviceStatus(Device device);
+
+    /**
+     * 鏍规嵁IP鍜岀鍙h幏鍙栬澶囦俊鎭�
+     * @param host IP
+     * @param port 绔彛
+     * @return 璁惧淇℃伅
+     */
+    Device getDeviceByHostAndPort(String host, int port);
 }

--
Gitblit v1.8.0