From 0e9cb5ceb6baeed953bd64a4b71d9d6bacb1798c Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期三, 06 九月 2023 09:31:43 +0800
Subject: [PATCH] Merge pull request #1048 from lunasaw/wvp-dev-0901
---
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/ISIPCommanderForPlatform.java | 97 ++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 89 insertions(+), 8 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/ISIPCommanderForPlatform.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/ISIPCommanderForPlatform.java
old mode 100644
new mode 100755
index 38d08ec..a4558c7
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/ISIPCommanderForPlatform.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/ISIPCommanderForPlatform.java
@@ -1,11 +1,13 @@
package com.genersoft.iot.vmp.gb28181.transmit.cmd;
-import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
-import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
+import com.genersoft.iot.vmp.gb28181.bean.*;
import com.genersoft.iot.vmp.gb28181.event.SipSubscribe;
+import com.genersoft.iot.vmp.service.bean.GPSMsgInfo;
+import javax.sip.InvalidArgumentException;
+import javax.sip.SipException;
import javax.sip.header.WWWAuthenticateHeader;
-import java.nio.channels.Channel;
+import java.text.ParseException;
import java.util.List;
public interface ISIPCommanderForPlatform {
@@ -15,15 +17,19 @@
* @param parentPlatform
* @return
*/
- boolean register(ParentPlatform parentPlatform);
- boolean register(ParentPlatform parentPlatform, String callId, WWWAuthenticateHeader www, SipSubscribe.Event errorEvent , SipSubscribe.Event okEvent);
+ void register(ParentPlatform parentPlatform, SipSubscribe.Event errorEvent , SipSubscribe.Event okEvent) throws InvalidArgumentException, ParseException, SipException;
+
+ void register(ParentPlatform parentPlatform, SipTransactionInfo sipTransactionInfo, SipSubscribe.Event errorEvent , SipSubscribe.Event okEvent) throws InvalidArgumentException, ParseException, SipException;
+
+
+ void register(ParentPlatform parentPlatform, SipTransactionInfo sipTransactionInfo, WWWAuthenticateHeader www, SipSubscribe.Event errorEvent , SipSubscribe.Event okEvent, boolean isRegister) throws SipException, InvalidArgumentException, ParseException;
/**
* 鍚戜笂绾у钩鍙版敞閿�
* @param parentPlatform
* @return
*/
- boolean unregister(ParentPlatform parentPlatform, SipSubscribe.Event errorEvent , SipSubscribe.Event okEvent);
+ void unregister(ParentPlatform parentPlatform, SipTransactionInfo sipTransactionInfo, SipSubscribe.Event errorEvent , SipSubscribe.Event okEvent) throws InvalidArgumentException, ParseException, SipException;
/**
@@ -31,7 +37,7 @@
* @param parentPlatform
* @return callId(浣滀负鎺ュ彈鍥炲鐨勫垽瀹�)
*/
- String keepalive(ParentPlatform parentPlatform);
+ String keepalive(ParentPlatform parentPlatform,SipSubscribe.Event errorEvent , SipSubscribe.Event okEvent) throws SipException, InvalidArgumentException, ParseException;
/**
@@ -43,5 +49,80 @@
* @param size
* @return
*/
- boolean catalogQuery(DeviceChannel channel, ParentPlatform parentPlatform, String sn, String fromTag, int size);
+ void catalogQuery(DeviceChannel channel, ParentPlatform parentPlatform, String sn, String fromTag, int size) throws SipException, InvalidArgumentException, ParseException;
+ void catalogQuery(List<DeviceChannel> channels, ParentPlatform parentPlatform, String sn, String fromTag) throws InvalidArgumentException, ParseException, SipException;
+
+ /**
+ * 鍚戜笂绾у洖澶岲eviceInfo鏌ヨ淇℃伅
+ * @param parentPlatform 骞冲彴淇℃伅
+ * @param sn SN
+ * @param fromTag FROM澶寸殑tag淇℃伅
+ * @return
+ */
+ void deviceInfoResponse(ParentPlatform parentPlatform,Device device, String sn, String fromTag) throws SipException, InvalidArgumentException, ParseException;
+
+ /**
+ * 鍚戜笂绾у洖澶岲eviceStatus鏌ヨ淇℃伅
+ * @param parentPlatform 骞冲彴淇℃伅
+ * @param sn
+ * @param fromTag
+ * @return
+ */
+ void deviceStatusResponse(ParentPlatform parentPlatform,String channelId, String sn, String fromTag,boolean status) throws SipException, InvalidArgumentException, ParseException;
+
+ /**
+ * 鍚戜笂绾у洖澶嶇Щ鍔ㄤ綅缃闃呮秷鎭�
+ * @param parentPlatform 骞冲彴淇℃伅
+ * @param gpsMsgInfo GPS淇℃伅
+ * @param subscribeInfo 璁㈤槄鐩稿叧鐨勪俊鎭�
+ * @return
+ */
+ void sendNotifyMobilePosition(ParentPlatform parentPlatform, GPSMsgInfo gpsMsgInfo, SubscribeInfo subscribeInfo) throws InvalidArgumentException, ParseException, NoSuchFieldException, SipException, IllegalAccessException;
+
+ /**
+ * 鍚戜笂绾у洖澶嶆姤璀︽秷鎭�
+ * @param parentPlatform 骞冲彴淇℃伅
+ * @param deviceAlarm 鎶ヨ淇℃伅淇℃伅
+ * @return
+ */
+ void sendAlarmMessage(ParentPlatform parentPlatform, DeviceAlarm deviceAlarm) throws SipException, InvalidArgumentException, ParseException;
+
+ /**
+ * 鍥炲catalog浜嬩欢-澧炲姞/鏇存柊
+ * @param parentPlatform
+ * @param deviceChannels
+ */
+ void sendNotifyForCatalogAddOrUpdate(String type, ParentPlatform parentPlatform, List<DeviceChannel> deviceChannels, SubscribeInfo subscribeInfo, Integer index) throws InvalidArgumentException, ParseException, NoSuchFieldException, SipException, IllegalAccessException;
+
+ /**
+ * 鍥炲catalog浜嬩欢-鍒犻櫎
+ * @param parentPlatform
+ * @param deviceChannels
+ */
+ void sendNotifyForCatalogOther(String type, ParentPlatform parentPlatform, List<DeviceChannel> deviceChannels, SubscribeInfo subscribeInfo, Integer index) throws InvalidArgumentException, ParseException, NoSuchFieldException, SipException, IllegalAccessException;
+
+ /**
+ * 鍥炲recordInfo
+ * @param deviceChannel 閫氶亾淇℃伅
+ * @param parentPlatform 骞冲彴淇℃伅
+ * @param fromTag fromTag
+ * @param recordInfo 褰曞儚淇℃伅
+ */
+ void recordInfo(DeviceChannel deviceChannel, ParentPlatform parentPlatform, String fromTag, RecordInfo recordInfo) throws SipException, InvalidArgumentException, ParseException;
+
+ /**
+ * 褰曞儚鎾斁鎺ㄩ�佸畬鎴愭椂鍙戦�丮ediaStatus娑堟伅
+ * @param platform
+ * @param sendRtpItem
+ * @return
+ */
+ void sendMediaStatusNotify(ParentPlatform platform, SendRtpItem sendRtpItem) throws SipException, InvalidArgumentException, ParseException;
+
+ /**
+ * 鍚戝彂璧风偣鎾殑涓婄骇鍥炲bye
+ * @param platform 骞冲彴淇℃伅
+ * @param callId callId
+ */
+ void streamByeCmd(ParentPlatform platform, String callId) throws SipException, InvalidArgumentException, ParseException;
+ void streamByeCmd(ParentPlatform platform, SendRtpItem sendRtpItem) throws SipException, InvalidArgumentException, ParseException;
}
--
Gitblit v1.8.0