package com.ard.work.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.web.domain.AjaxResult; import com.ard.work.api.domian.CameraCmd; import com.ard.work.api.domian.PtzDto; import com.ard.work.api.domian.VideoCompressionCfg; import com.ard.work.api.factory.RemoteSDKFallbackFactory; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.*; /** * 相机SDK服务 * * @author ard */ @FeignClient(contextId = "remoteSDKService", value = ServiceNameConstants.WORK_SERVICE, fallbackFactory = RemoteSDKFallbackFactory.class) public interface RemoteSDKService { /** * 获取视频压缩参数 * * @return 结果 */ @PostMapping(value = "/cameraSdk/getVideoCompressionCfg") public R getVideoCompressionCfg(@RequestBody CameraCmd cameraCmd); /** * 引导目标 * * @return 结果 */ @PostMapping(value = "/cameraSdk/guideTargetPosition") public R guideTargetPosition(@RequestBody CameraCmd cameraCmd); /** * 抓图 * * @return 结果 */ @PostMapping(value = "/cameraSdk/picCutCate") public R picCutCate(@RequestBody CameraCmd cameraCmd); /** * 抓图 * * @return 结果 */ @PostMapping(value = "/cameraSdk/picCutCate/rpc/{bucketName}/{objectName}") public R picCutCateRpc(@RequestBody CameraCmd cameraCmd, @PathVariable("bucketName") String bucketName, @PathVariable("objectName") String objectName,@RequestHeader(SecurityConstants.FROM_SOURCE) String source); /** * 开始录像 * * @return 结果 */ @PostMapping(value = "/cameraSdk/recordStart") public R recordStart(@RequestBody CameraCmd cameraCmd); /** * 停止录像 * * @return 结果 */ @PostMapping(value = "/cameraSdk/recordStop") public R recordStop(@RequestBody CameraCmd cameraCmd); /** * 开始录像 * * @return 结果 */ @PostMapping(value = "/cameraSdk/recordStart/rpc") public R recordStartRpc(@RequestBody CameraCmd cameraCmd,@RequestHeader(SecurityConstants.FROM_SOURCE) String source); /** * 停止录像 * * @return 结果 */ @PostMapping(value = "/cameraSdk/recordStop/rpc") public R recordStopRpc(@RequestBody CameraCmd cameraCmd,@RequestHeader(SecurityConstants.FROM_SOURCE) String source); /** * 设置PTZ * * @return 结果 */ @PostMapping(value = "/cameraSdk/setPTZ/rpc") public R setPTZRpc(@RequestBody CameraCmd cmd, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); /** * 获取PTZ * * @return 结果 */ @PostMapping(value = "/cameraSdk/getPTZ/rpc") public R getPTZRpc(@RequestBody CameraCmd cmd, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); }