package com.ard.vtdu.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.vtdu.api.domian.ArdVtdu; import com.ard.vtdu.api.factory.RemoteArdVtduFallbackFactory; import org.apache.ibatis.annotations.Param; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.*; /** * 流媒体服务 * * @author ard */ @FeignClient(contextId = "remoteArdMediaService", value = ServiceNameConstants.VTDU_SERVICE, fallbackFactory = RemoteArdVtduFallbackFactory.class) public interface RemoteArdMediaService { /** * 添加流媒体 * * @param ardVtdu 流媒体管理对象 * @return 结果 */ @PostMapping(value = "/mediamtx/media", consumes = MediaType.APPLICATION_JSON_VALUE) public R add(@RequestBody ArdVtdu ardVtdu, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); /** * 移除流媒体 * * @return 结果 */ @DeleteMapping(value = "/mediamtx/media") public R remove(@RequestParam("name") String name, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); }