package com.ard.zlm.api; import com.ard.common.core.constant.SecurityConstants; import com.ard.common.core.constant.ServiceNameConstants; import com.ard.common.core.domain.R; import com.ard.common.core.domain.RtpServerParam; import com.ard.zlm.api.factory.RemoteZlmFallbackFactory; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.*; /** * zlm接口 服务 * * @FileName RemoteZlmService * @Description * @Author fengcheng * @date 2026-03-28 **/ @FeignClient(contextId = "remoteZlmService", value = ServiceNameConstants.ZLM_SERVICE, fallbackFactory = RemoteZlmFallbackFactory.class) public interface RemoteZlmService { @DeleteMapping("/api/zlm/sessionManagerPut/{mediaServerId}/{ssrc}") R releaseSsrc(@PathVariable String mediaServerId, @PathVariable String ssrc, @RequestHeader(SecurityConstants.FROM_SOURCE) String inner); /** * 关闭rtp服务 * * @param mediaServerId * @param rtpServer * @param inner */ @PostMapping("/api/zlm/closeRTPServer/{mediaServerId}") R closeRTPServer(@PathVariable String mediaServerId, @RequestBody RtpServerParam rtpServer, @RequestHeader(SecurityConstants.FROM_SOURCE) String inner); /** * 连接rtp服务 * * @param mediaServerId * @param address * @param port * @param stream * @param inner * @return */ @PostMapping("/api/zlm/connectRtpServer/{mediaServerId}") R connectRtpServer(@PathVariable String mediaServerId, @RequestParam String address, @RequestParam int port, @RequestParam String stream, @RequestHeader(SecurityConstants.FROM_SOURCE) String inner); }