648540858
2024-01-31 fc74ce9de4c38d56ee429893758776eeb5432e9b
Merge branch '2.6.9' into wvp-28181-2.0

# Conflicts:
# src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java
# src/main/resources/application-dev.yml
7个文件已修改
29 ■■■■ 已修改文件
src/main/java/com/genersoft/iot/vmp/conf/security/WebSecurityConfig.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/InviteRequestProcessor.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/media/zlm/AssistRESTfulUtils.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStorageImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/all-application.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application-dev.yml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/conf/security/WebSecurityConfig.java
@@ -25,6 +25,7 @@
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
/**
 * 配置Spring Security
@@ -135,8 +136,14 @@
        corsConfiguration.setAllowedHeaders(Arrays.asList("*"));
        corsConfiguration.setAllowedMethods(Arrays.asList("*"));
        corsConfiguration.setMaxAge(3600L);
        corsConfiguration.setAllowCredentials(true);
        corsConfiguration.setAllowedOrigins(userSetting.getAllowedOrigins());
        if (userSetting.getAllowedOrigins() != null && !userSetting.getAllowedOrigins().isEmpty()) {
            corsConfiguration.setAllowCredentials(true);
            corsConfiguration.setAllowedOrigins(userSetting.getAllowedOrigins());
        }else {
            corsConfiguration.setAllowCredentials(false);
            corsConfiguration.setAllowedOrigins(Collections.singletonList(CorsConfiguration.ALL));
        }
        corsConfiguration.setExposedHeaders(Arrays.asList(JwtUtils.getHeader()));
        UrlBasedCorsConfigurationSource url = new UrlBasedCorsConfigurationSource();
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java
@@ -613,6 +613,10 @@
     */
    @Override
    public void streamByeCmd(Device device, String channelId, String stream, String callId, SipSubscribe.Event okEvent) throws InvalidArgumentException, SipException, ParseException, SsrcTransactionNotFoundException {
        if (device == null) {
            logger.warn("[发送BYE] device为null");
            return;
        }
        List<SsrcTransaction> ssrcTransactionList = streamSession.getSsrcTransactionForAll(device.getDeviceId(), channelId, callId, stream);
        if (ssrcTransactionList == null || ssrcTransactionList.isEmpty()) {
            logger.info("[发送BYE] 未找到事务信息,设备: device: {}, channel: {}", device.getDeviceId(), channelId);
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/InviteRequestProcessor.java
@@ -818,7 +818,7 @@
        // 发送redis消息
        redisGbPlayMsgListener.sendMsg(streamPushItem.getServerId(), streamPushItem.getMediaServerId(),
                streamPushItem.getApp(), streamPushItem.getStream(), addressStr, port, ssrc, requesterId,
                channelId, mediaTransmissionTCP, platform.isRtcp(),null, responseSendItemMsg -> {
                channelId, mediaTransmissionTCP, platform.isRtcp(),platform.getName(), responseSendItemMsg -> {
                    SendRtpItem sendRtpItem = responseSendItemMsg.getSendRtpItem();
                    if (sendRtpItem == null || responseSendItemMsg.getMediaServerItem() == null) {
                        logger.warn("服务器端口资源不足");
src/main/java/com/genersoft/iot/vmp/media/zlm/AssistRESTfulUtils.java
@@ -161,6 +161,7 @@
        if (mediaServerItem == null) {
            return null;
        }
        logger.info("[访问assist]: {}, 参数: {}", url, param);
        JSONObject responseJSON = new JSONObject();
        //-2自定义流媒体 调用错误码
        responseJSON.put("code",-2);
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStorageImpl.java
@@ -1,5 +1,6 @@
package com.genersoft.iot.vmp.storager.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.genersoft.iot.vmp.conf.SipConfig;
import com.genersoft.iot.vmp.conf.UserSetting;
import com.genersoft.iot.vmp.gb28181.bean.*;
@@ -38,6 +39,7 @@
 */
@SuppressWarnings("rawtypes")
@Component
@DS("master")
public class VideoManagerStorageImpl implements IVideoManagerStorage {
    private final Logger logger = LoggerFactory.getLogger(VideoManagerStorageImpl.class);
src/main/resources/all-application.yml
@@ -237,7 +237,7 @@
    register-again-after-time: 60
    # 国标续订方式,true为续订,每次注册在同一个会话里,false为重新注册,每次使用新的会话
    register-keep-int-dialog: false
    # 跨域配置,配置你访问前端页面的地址即可, 可以配置多个
    # 跨域配置,不配置此项则允许所有跨域请求,配置后则只允许配置的页面的地址请求, 可以配置多个
    allowed-origins:
        - http://localhost:8008
        - http://192.168.1.3:8008
src/main/resources/application-dev.yml
@@ -110,8 +110,7 @@
  auto-apply-play: true
  # 设备/通道状态变化时发送消息
  device-status-notify: true
  # 跨域配置,配置你访问前端页面的地址即可, 可以配置多个
  allowed-origins:
    - http://localhost:8080
    - http://127.0.0.1:8080
# [可选] 日志配置, 一般不需要改
logging:
  config: classpath:logback-spring-local.xml