ソースを参照

增加门灯控制

weizhengliang 3 年 前
コミット
df313c384d

+ 2 - 0
callingdoor/src/main/java/com/wdkl/app/ncs/callingdoor/activity/CallingdoorActivity.kt

@@ -572,6 +572,8 @@ class CallingdoorActivity :BaseActivity<CallingdoorActivityPresenter, Callingdoo
                     } else if (tcpModel.action == TcpAction.DataAction.REFRESH) {
                     } else if (tcpModel.action == TcpAction.DataAction.REFRESH) {
                         //重新加载数据
                         //重新加载数据
                         initDevice()
                         initDevice()
+                    } else if (tcpModel.type == TcpType.SIDE) {
+                        DoorLightHelper.handleDoorLight(tcpModel)
                     }
                     }
                 }
                 }
             }
             }

+ 20 - 0
callingdoor/src/main/java/com/wdkl/app/ncs/callingdoor/helper/DoorLightHelper.java

@@ -0,0 +1,20 @@
+package com.wdkl.app.ncs.callingdoor.helper;
+
+import com.wdkl.ncs.android.middleware.tcp.dto.TcpModel;
+import com.wdkl.ncs.android.middleware.tcp.enums.TcpAction;
+
+public class DoorLightHelper {
+
+    public static void handleDoorLight(TcpModel tcpModel) {
+        if (TcpAction.SideAction.CALL == tcpModel.getAction()
+            || TcpAction.SideAction.SOS_CALL == tcpModel.getAction()) {
+            //门灯红色闪烁
+            SerialPortHelper.setDoorLight(1, "200"); //红色闪烁
+        } else if (TcpAction.SideAction.ACCEPT == tcpModel.getAction()
+            || TcpAction.SideAction.CANCEL == tcpModel.getAction()
+            || TcpAction.SideAction.SOS_CANCEL == tcpModel.getAction()) {
+            //门灯恢复
+            SerialPortHelper.setDoorLight(1, "111"); //白色
+        }
+    }
+}

+ 1 - 1
callingdoor/src/main/java/com/wdkl/app/ncs/callingdoor/helper/SerialPortHelper.java

@@ -29,7 +29,7 @@ public class SerialPortHelper {
     /**
     /**
      * 门灯控制开关
      * 门灯控制开关
      *
      *
-     * @param data  0  表示灯灭   1  表示常亮    2 表示闪烁
+     * @param data  0  表示灯灭   1  表示灯亮
      * @param color 0 表示灯灭  非0表示灯的颜色
      * @param color 0 表示灯灭  非0表示灯的颜色
      */
      */
     public static void setDoorLight(int data, String color) {
     public static void setDoorLight(int data, String color) {

+ 24 - 0
middleware/src/main/code/com/wdkl/ncs/android/middleware/model/dos/DeviceDO.java

@@ -204,6 +204,14 @@ public class DeviceDO implements Serializable {
     @ApiModelProperty(value = "roleId", required = false)
     @ApiModelProperty(value = "roleId", required = false)
     private Integer roleId;
     private Integer roleId;
 
 
+    @Column(name = "trans_rs485_id", allowNullUpdate = true)
+    @ApiModelProperty(value = "485转换盒ID", required = false)
+    private Integer transRs485Id;
+
+    @Column(name = "trans_audio_id", allowNullUpdate = true)
+    @ApiModelProperty(value = "语音转换盒ID", required = false)
+    private Integer transAudioId;
+
 
 
     @PrimaryKeyField
     @PrimaryKeyField
     public Integer getId() {
     public Integer getId() {
@@ -475,6 +483,22 @@ public class DeviceDO implements Serializable {
         this.config = config;
         this.config = config;
     }
     }
 
 
+    public Integer getTransRs485Id() {
+        return transRs485Id;
+    }
+
+    public void setTransRs485Id(Integer transRs485Id) {
+        this.transRs485Id = transRs485Id;
+    }
+
+    public Integer getTransAudioId() {
+        return transAudioId;
+    }
+
+    public void setTransAudioId(Integer transAudioId) {
+        this.transAudioId = transAudioId;
+    }
+
     @Override
     @Override
     public boolean equals(Object o) {
     public boolean equals(Object o) {
         if (this == o) return true;
         if (this == o) return true;

+ 5 - 5
middleware/src/main/code/com/wdkl/ncs/android/middleware/model/vo/FramePartVO.java

@@ -18,7 +18,7 @@ public class FramePartVO implements Serializable {
 
 
     private FrameDO framePart;
     private FrameDO framePart;
     private Integer deviceCount;
     private Integer deviceCount;
-    private List<FrameRoomVO> frameRoomVOs;
+    private List<FrameRoomVO> frameRoomVos;
 
 
 
 
     public FrameDO getFramePart() {
     public FrameDO getFramePart() {
@@ -37,11 +37,11 @@ public class FramePartVO implements Serializable {
         this.deviceCount = deviceCount;
         this.deviceCount = deviceCount;
     }
     }
 
 
-    public List<FrameRoomVO> getFrameRoomVOs() {
-        return frameRoomVOs;
+    public List<FrameRoomVO> getFrameRoomVos() {
+        return frameRoomVos;
     }
     }
 
 
-    public void setFrameRoomVOs(List<FrameRoomVO> frameRoomVOs) {
-        this.frameRoomVOs = frameRoomVOs;
+    public void setFrameRoomVos(List<FrameRoomVO> frameRoomVos) {
+        this.frameRoomVos = frameRoomVos;
     }
     }
 }
 }

+ 293 - 60
middleware/src/main/code/com/wdkl/ncs/android/middleware/model/vo/InteractionVO.java

@@ -3,12 +3,12 @@ package com.wdkl.ncs.android.middleware.model.vo;
 import com.fasterxml.jackson.databind.PropertyNamingStrategy;
 import com.fasterxml.jackson.databind.PropertyNamingStrategy;
 import com.fasterxml.jackson.databind.annotation.JsonNaming;
 import com.fasterxml.jackson.databind.annotation.JsonNaming;
 import com.wdkl.ncs.android.middleware.model.annotation.Column;
 import com.wdkl.ncs.android.middleware.model.annotation.Column;
-import com.wdkl.ncs.android.middleware.model.dos.InteractionDO;
-
-import io.swagger.annotations.ApiModelProperty;
+import com.wdkl.ncs.android.middleware.model.annotation.Id;
 
 
 import java.io.Serializable;
 import java.io.Serializable;
 
 
+import io.swagger.annotations.ApiModelProperty;
+
 /**
 /**
  * @program nc
  * @program nc
  * @description:
  * @description:
@@ -16,7 +16,109 @@ import java.io.Serializable;
  * @create: 2021/04/02 15:27
  * @create: 2021/04/02 15:27
  */
  */
 @JsonNaming(value = PropertyNamingStrategy.SnakeCaseStrategy.class)
 @JsonNaming(value = PropertyNamingStrategy.SnakeCaseStrategy.class)
-public class InteractionVO extends InteractionDO implements Serializable {
+public class InteractionVO implements Serializable {
+
+    /**
+     * id
+     */
+    @Column(name = "id")
+    @ApiModelProperty(value = "id", required = false)
+    @Id(name = "id")
+    private Integer id;
+    /**
+     * 创建时间
+     */
+    @Column(name = "create_date")
+    @ApiModelProperty(value = "创建时间", required = false)
+    private Long createDate;
+    /**
+     * 科室Id
+     */
+    @Column(name = "part_id")
+    @ApiModelProperty(value = "科室Id", required = false)
+    private Integer partId;
+    /**
+     * 交互类型(1:语音通话,2:视频通话,3:卫生间紧急呼叫,4:语音留言,5:文本消息,6:按键事件)
+     */
+    @Column(name = "action_type")
+    @ApiModelProperty(value = "交互类型(1:语音通话,2:视频通话,3:卫生间紧急呼叫,4:语音留言,5:文本消息,6:按键事件)", required = false)
+    private String actionType;
+    /**
+     * SUCCESS、FAILED
+     */
+    @Column(name = "action_result")
+    @ApiModelProperty(value = "0失败,1成功", required = false)
+    private Integer actionResult;
+    /**
+     * 交互发起设备Id
+     */
+    @Column(name = "from_device_id")
+    @ApiModelProperty(value = "交互发起设备Id", required = false)
+    private Integer fromDeviceId;
+    /**
+     * 交互对象设备Id
+     */
+    @Column(name = "to_device_id")
+    @ApiModelProperty(value = "交互对象设备Id", required = false)
+    private Integer toDeviceId;
+    /**
+     * 发起设备所在空间结构
+     */
+    @Column(name = "from_device_frame_id")
+    @ApiModelProperty(value = "发起设备所在空间结构", required = false)
+    private Integer fromDeviceFrameId;
+    /**
+     * 交互对象所在空间结果
+     */
+    @Column(name = "to_device_frame_id")
+    @ApiModelProperty(value = "交互对象所在空间结果", required = false)
+    private Integer toDeviceFrameId;
+    /**
+     * 交互发起设备使用者member_id
+     */
+    @Column(name = "from_device_member_id")
+    @ApiModelProperty(value = "交互发起设备使用者member_id", required = false)
+    private Integer fromDeviceMemberId;
+    /**
+     * 交互对象设备使用者member_id
+     */
+    @Column(name = "to_device_member_id")
+    @ApiModelProperty(value = "交互对象设备使用者member_id", required = false)
+    private Integer toDeviceMemberId;
+    /**
+     * 交互开始时间(通话时指通话接通时间,与create_time相同)
+     */
+    @Column(name = "action_start")
+    @ApiModelProperty(value = "交互开始时间(通话时指通话接通时间,与create_time相同)", required = false)
+    private Long actionStart;
+    /**
+     * 应答时间
+     */
+    @Column(name = "action_accept")
+    @ApiModelProperty(value = "应答时间", required = false)
+    private Long actionAccept;
+    /**
+     * 交互结束时间(通话时指通话挂断时间,通话挂断后要更新此字段)。事件响应时间、语音已读时间
+     */
+    @Column(name = "action_end")
+    @ApiModelProperty(value = "交互结束时间(通话时指通话挂断时间,通话挂断后要更新此字段)。事件响应时间、语音已读时间", required = false)
+    private Long actionEnd;
+    /**
+     * 交互处理者的member_id
+     */
+    @Column(name = "action_end_member_id")
+    @ApiModelProperty(value = "交互处理者的member_id", required = false)
+    private Integer actionEndMemberId;
+    /**
+     * 交互数据(类型1,2,3为空)(类型4为音频文件地址)(5为文本内容)(类型6为具体按键类型)
+     */
+    @Column(name = "data")
+    @ApiModelProperty(value = "交互数据(类型1,2,3为空)(类型4为音频文件地址)(5为文本内容)(类型6为具体按键类型)", required = false)
+    private String data;
+
+    @Column(name = "action_direction_type")
+    @ApiModelProperty(value = "交互方向类型(1:分机到主机、腕表、医生机,2:主机、腕表、医生机到分机,3主机、腕表、医生机之间互通,4:分机到分机)",required = false)
+    private Integer actionDirectionType;
 
 
     /** 用户 **/
     /** 用户 **/
     @Column(name = "from_customer_id")
     @Column(name = "from_customer_id")
@@ -79,6 +181,10 @@ public class InteractionVO extends InteractionDO implements Serializable {
     @ApiModelProperty(value = "发起端设备的设备类型", required = false)
     @ApiModelProperty(value = "发起端设备的设备类型", required = false)
     private Integer fromDeviceType;
     private Integer fromDeviceType;
 
 
+    @Column(name = "from_device_name")
+    @ApiModelProperty(value = "发起端设备的名称", required = false)
+    private String fromDeviceName;
+
 
 
     @Column(name = "to_eth_mac")
     @Column(name = "to_eth_mac")
     @ApiModelProperty(value = "目的端设备的有线以太网卡MAC地址", required = false)
     @ApiModelProperty(value = "目的端设备的有线以太网卡MAC地址", required = false)
@@ -97,6 +203,12 @@ public class InteractionVO extends InteractionDO implements Serializable {
     @ApiModelProperty(value = "目的端设备的设备类型", required = false)
     @ApiModelProperty(value = "目的端设备的设备类型", required = false)
     private Integer toDeviceType;
     private Integer toDeviceType;
 
 
+
+    @Column(name = "to_device_name")
+    @ApiModelProperty(value = "目的端设备的名称", required = false)
+    private String toDeviceName;
+
+
     /** 空间结构 **/
     /** 空间结构 **/
 
 
     @Column(name = "from_frame_type")
     @Column(name = "from_frame_type")
@@ -135,10 +247,148 @@ public class InteractionVO extends InteractionDO implements Serializable {
     @ApiModelProperty(value = "外部来电时,from_member亲属关系", required = false)
     @ApiModelProperty(value = "外部来电时,from_member亲属关系", required = false)
     private String relativeName;
     private String relativeName;
 
 
-    @Column(name = "outerior_action_name")
-    @ApiModelProperty(value = "外部来电时,from_member亲属名字", required = false)
-    private String outeriorActionName;
+    @Column(name = "action_end_member_name")
+    @ApiModelProperty(value = "交互处理者的用户姓名", required = false)
+    private String actionEndMemberName;
+
+
+
+
+    public Integer getId() {
+        return id;
+    }
+
+    public void setId(Integer id) {
+        this.id = id;
+    }
+
+    public Long getCreateDate() {
+        return createDate;
+    }
+
+    public void setCreateDate(Long createDate) {
+        this.createDate = createDate;
+    }
+
+    public Integer getPartId() {
+        return partId;
+    }
+
+    public void setPartId(Integer partId) {
+        this.partId = partId;
+    }
+
+    public String getActionType() {
+        return actionType;
+    }
+
+    public void setActionType(String actionType) {
+        this.actionType = actionType;
+    }
+
+    public Integer getActionResult() {
+        return actionResult;
+    }
+
+    public void setActionResult(Integer actionResult) {
+        this.actionResult = actionResult;
+    }
+
+    public Integer getFromDeviceId() {
+        return fromDeviceId;
+    }
+
+    public void setFromDeviceId(Integer fromDeviceId) {
+        this.fromDeviceId = fromDeviceId;
+    }
+
+    public Integer getToDeviceId() {
+        return toDeviceId;
+    }
+
+    public void setToDeviceId(Integer toDeviceId) {
+        this.toDeviceId = toDeviceId;
+    }
+
+    public Integer getFromDeviceFrameId() {
+        return fromDeviceFrameId;
+    }
+
+    public void setFromDeviceFrameId(Integer fromDeviceFrameId) {
+        this.fromDeviceFrameId = fromDeviceFrameId;
+    }
+
+    public Integer getToDeviceFrameId() {
+        return toDeviceFrameId;
+    }
+
+    public void setToDeviceFrameId(Integer toDeviceFrameId) {
+        this.toDeviceFrameId = toDeviceFrameId;
+    }
+
+    public Integer getFromDeviceMemberId() {
+        return fromDeviceMemberId;
+    }
+
+    public void setFromDeviceMemberId(Integer fromDeviceMemberId) {
+        this.fromDeviceMemberId = fromDeviceMemberId;
+    }
+
+    public Integer getToDeviceMemberId() {
+        return toDeviceMemberId;
+    }
+
+    public void setToDeviceMemberId(Integer toDeviceMemberId) {
+        this.toDeviceMemberId = toDeviceMemberId;
+    }
+
+    public Long getActionStart() {
+        return actionStart;
+    }
+
+    public void setActionStart(Long actionStart) {
+        this.actionStart = actionStart;
+    }
+
+    public Long getActionAccept() {
+        return actionAccept;
+    }
+
+    public void setActionAccept(Long actionAccept) {
+        this.actionAccept = actionAccept;
+    }
+
+    public Long getActionEnd() {
+        return actionEnd;
+    }
+
+    public void setActionEnd(Long actionEnd) {
+        this.actionEnd = actionEnd;
+    }
+
+    public Integer getActionEndMemberId() {
+        return actionEndMemberId;
+    }
+
+    public void setActionEndMemberId(Integer actionEndMemberId) {
+        this.actionEndMemberId = actionEndMemberId;
+    }
+
+    public String getData() {
+        return data;
+    }
+
+    public void setData(String data) {
+        this.data = data;
+    }
 
 
+    public Integer getActionDirectionType() {
+        return actionDirectionType;
+    }
+
+    public void setActionDirectionType(Integer actionDirectionType) {
+        this.actionDirectionType = actionDirectionType;
+    }
 
 
     public Integer getFromCustomerId() {
     public Integer getFromCustomerId() {
         return fromCustomerId;
         return fromCustomerId;
@@ -244,6 +494,22 @@ public class InteractionVO extends InteractionDO implements Serializable {
         this.fromSipId = fromSipId;
         this.fromSipId = fromSipId;
     }
     }
 
 
+    public Integer getFromDeviceType() {
+        return fromDeviceType;
+    }
+
+    public void setFromDeviceType(Integer fromDeviceType) {
+        this.fromDeviceType = fromDeviceType;
+    }
+
+    public String getFromDeviceName() {
+        return fromDeviceName;
+    }
+
+    public void setFromDeviceName(String fromDeviceName) {
+        this.fromDeviceName = fromDeviceName;
+    }
+
     public String getToEthMac() {
     public String getToEthMac() {
         return toEthMac;
         return toEthMac;
     }
     }
@@ -268,6 +534,22 @@ public class InteractionVO extends InteractionDO implements Serializable {
         this.toSipId = toSipId;
         this.toSipId = toSipId;
     }
     }
 
 
+    public Integer getToDeviceType() {
+        return toDeviceType;
+    }
+
+    public void setToDeviceType(Integer toDeviceType) {
+        this.toDeviceType = toDeviceType;
+    }
+
+    public String getToDeviceName() {
+        return toDeviceName;
+    }
+
+    public void setToDeviceName(String toDeviceName) {
+        this.toDeviceName = toDeviceName;
+    }
+
     public Integer getFromFrameType() {
     public Integer getFromFrameType() {
         return fromFrameType;
         return fromFrameType;
     }
     }
@@ -332,60 +614,11 @@ public class InteractionVO extends InteractionDO implements Serializable {
         this.relativeName = relativeName;
         this.relativeName = relativeName;
     }
     }
 
 
-    public String getOuteriorActionName() {
-        return outeriorActionName;
-    }
-
-    public void setOuteriorActionName(String outeriorActionName) {
-        this.outeriorActionName = outeriorActionName;
-    }
-
-    public Integer getFromDeviceType() {
-        return fromDeviceType;
-    }
-
-    public void setFromDeviceType(Integer fromDeviceType) {
-        this.fromDeviceType = fromDeviceType;
-    }
-
-    public Integer getToDeviceType() {
-        return toDeviceType;
-    }
-
-    public void setToDeviceType(Integer toDeviceType) {
-        this.toDeviceType = toDeviceType;
+    public String getActionEndMemberName() {
+        return actionEndMemberName;
     }
     }
 
 
-    @Override
-    public String toString() {
-        return "InteractionVO{" +
-                "fromCustomerId=" + fromCustomerId +
-                ", fromMemberName='" + fromMemberName + '\'' +
-                ", fromMemberFace='" + fromMemberFace + '\'' +
-                ", fromClerkId=" + fromClerkId +
-                ", fromRoleName='" + fromRoleName + '\'' +
-                ", toCustomerId=" + toCustomerId +
-                ", toMemberName='" + toMemberName + '\'' +
-                ", toMemberFace='" + toMemberFace + '\'' +
-                ", toClerkId=" + toClerkId +
-                ", toRoleName='" + toRoleName + '\'' +
-                ", fromEthMac='" + fromEthMac + '\'' +
-                ", fromEthIp='" + fromEthIp + '\'' +
-                ", fromSipId='" + fromSipId + '\'' +
-                ", fromDeviceType='" + fromDeviceType + '\'' +
-                ", toEthMac='" + toEthMac + '\'' +
-                ", toEthIp='" + toEthIp + '\'' +
-                ", toSipId='" + toSipId + '\'' +
-                ", toDeviceType='" + toDeviceType + '\'' +
-                ", fromFrameType=" + fromFrameType +
-                ", fromFrameName='" + fromFrameName + '\'' +
-                ", fromFrameFullName='" + fromFrameFullName + '\'' +
-                ", toFrameType=" + toFrameType +
-                ", toFrameName='" + toFrameName + '\'' +
-                ", toFrameFullName='" + toFrameFullName + '\'' +
-                ", relativeId=" + relativeId +
-                ", relativeName='" + relativeName + '\'' +
-                ", outeriorActionName='" + outeriorActionName + '\'' +
-                '}';
+    public void setActionEndMemberName(String actionEndMemberName) {
+        this.actionEndMemberName = actionEndMemberName;
     }
     }
 }
 }

+ 1 - 4
middleware/src/main/code/com/wdkl/ncs/android/middleware/tcp/channel/DeviceChannel.java

@@ -89,12 +89,9 @@ public class DeviceChannel {
                 }
                 }
                 break;
                 break;
             case DEVICE:
             case DEVICE:
-                EventBus.getDefault().post(new MessageEvent(tcpModel, EVENT_TCP_MSG));
-                break;
             case BROADCAST:
             case BROADCAST:
-                EventBus.getDefault().post(new MessageEvent(tcpModel, EVENT_TCP_MSG));
-                break;
             case SOS:
             case SOS:
+            case SIDE:
                 EventBus.getDefault().post(new MessageEvent(tcpModel, EVENT_TCP_MSG));
                 EventBus.getDefault().post(new MessageEvent(tcpModel, EVENT_TCP_MSG));
                 break;
                 break;
         }
         }

+ 3 - 0
middleware/src/main/code/com/wdkl/ncs/android/middleware/tcp/dto/TcpModel.java

@@ -133,6 +133,9 @@ public class TcpModel implements Serializable {
             case SOS:
             case SOS:
                 tcpAction = TcpAction.SOSAction.fromString(action);
                 tcpAction = TcpAction.SOSAction.fromString(action);
                 break;
                 break;
+            case SIDE:
+                tcpAction = TcpAction.SideAction.fromString(action);
+                break;
         }
         }
 
 
         tcpModel.setType(tcpType);
         tcpModel.setType(tcpType);

+ 48 - 3
middleware/src/main/code/com/wdkl/ncs/android/middleware/tcp/enums/TcpAction.java

@@ -43,14 +43,15 @@ public interface TcpAction {
     enum VoiceAction implements TcpAction {
     enum VoiceAction implements TcpAction {
         CALL("呼叫"),
         CALL("呼叫"),
         ACCEPT("接受呼叫"),
         ACCEPT("接受呼叫"),
-        CANCEL("取消"),
         REJECT("拒绝"),
         REJECT("拒绝"),
         CALLING("通话中"),
         CALLING("通话中"),
         TRANSFER("转接"),
         TRANSFER("转接"),
         HANDOFF("挂断"),
         HANDOFF("挂断"),
+        CANCEL("取消"),
         SUCCESS("呼叫成功"),
         SUCCESS("呼叫成功"),
         FAILED("呼叫失败");
         FAILED("呼叫失败");
 
 
+
         private String description;
         private String description;
         VoiceAction(String description){
         VoiceAction(String description){
             this.description = description;
             this.description = description;
@@ -77,8 +78,18 @@ public interface TcpAction {
     }
     }
 
 
     enum VideoAction implements TcpAction {
     enum VideoAction implements TcpAction {
-        CALL("呼叫"),
-        CANCEL("取消");
+        CALL("视频通话"),   //正常视频对讲
+        VIDEO_OUT_CALL("我方视频输出"),   //我方视频输出(我方语音,对方可视)
+        VIDEO_IN_CALL("对方视频输出"),    //对方视频输出(我方可视,对方语音)
+        VIDEO_ON("打开视频"),   //打开视频
+        VIDEO_INVITE_JOIN("邀请加入视频"),    //邀请加入视频
+        ACCEPT("接受呼叫"),
+        REJECT("拒绝"),
+        CALLING("通话中"),
+        HANDOFF("挂断"),
+        CANCEL("取消"),
+        SUCCESS("呼叫成功"),
+        FAILED("呼叫失败");
 
 
         private String description;
         private String description;
         VideoAction(String description){
         VideoAction(String description){
@@ -226,6 +237,40 @@ public interface TcpAction {
         }
         }
     }
     }
 
 
+    enum SideAction implements TcpAction {
+        CALL("呼叫"),
+        ACCEPT("接听"),
+        CANCEL("挂断"),
+        SOS_CALL("紧急呼叫"),
+        SOS_CANCEL("取消"),
+        NURSING("护理"),
+        NURSING_END("护理结束");
+        private String description;
+        SideAction(String description){
+            this.description = description;
+        }
+        public String getDescription() {
+            return description;
+        }
+
+        public String getName(){
+            return this.name();
+        }
+
+        private final static Map<String , SideAction> ENUM_MAP = new HashMap<String, SideAction>();
+        static {
+            for(SideAction v : values()) {
+                ENUM_MAP.put(v.toString() , v);
+            }
+        }
+        public static SideAction fromString(String v) {
+            SideAction userOptionEnum = ENUM_MAP.get(v);
+            return userOptionEnum == null ? CALL :userOptionEnum;
+        }
+    }
+
+
+
     enum DataAction implements TcpAction {
     enum DataAction implements TcpAction {
         REFRESH("刷新数据"),
         REFRESH("刷新数据"),
         INTERACTION("刷新交互列表");
         INTERACTION("刷新交互列表");

+ 2 - 1
middleware/src/main/code/com/wdkl/ncs/android/middleware/tcp/enums/TcpType.java

@@ -12,9 +12,10 @@ public enum TcpType {
     VIDEO("视频"),
     VIDEO("视频"),
     SOS("紧急呼叫"),
     SOS("紧急呼叫"),
     IM("留言"),
     IM("留言"),
+    EVENT("事件"),
+    SIDE("边外信息"),
     DEVICE("设备"),
     DEVICE("设备"),
     DATA("数据"),
     DATA("数据"),
-    EVENT("事件"),
     BROADCAST("广播"),
     BROADCAST("广播"),
     TIME("时间");
     TIME("时间");