zhangjian
2023-08-27 f3fdcc01e5d7e4391acf72479f24082242086d09
ard-work/src/main/java/com/ruoyi/utils/forest/MediaClient.java
@@ -1,10 +1,8 @@
package com.ruoyi.utils.forest;
import com.dtflys.forest.annotation.Get;
import com.dtflys.forest.annotation.JSONBody;
import com.dtflys.forest.annotation.Post;
import com.dtflys.forest.annotation.Var;
import com.dtflys.forest.annotation.*;
import com.ruoyi.media.domain.Conf;
import com.ruoyi.media.domain.Items;
/**
 * @Description: mediamtx流媒体客户端
@@ -13,40 +11,71 @@
 * @Date: 2023年07月06日9:51
 * @Version: 1.0
 **/
@BaseRequest(baseURL = "http://#{mediamtx.host}:9997/v2")
public interface MediaClient {
    /**
     * 增加路径
     */
    @Post("{apiUrl}/config/paths/add/{name}")
    String addPath(@Var("apiUrl") String apiUrl, @Var("name") String name, @JSONBody Conf body);
    @Post("/config/paths/add/{name}")
    String addPath( @Var("name") String name, @JSONBody Conf body);
    /**
     * 移除路径
     */
    @Post("{apiUrl}/config/paths/remove/{name}")
    String removePath(@Var("apiUrl") String apiUrl, @Var("name") String name);
    @Post("/config/paths/remove/{name}")
    String removePath(@Var("name") String name);
    /**
     * 获取路径详情
     */
    @Get("/paths/get/{name}")
    Items getPathInfo(@Var("name") String name);
    /**
     * 查询所有路径
     */
    @Get("{apiUrl}/paths/list")
    String paths(@Var("apiUrl") String apiUrl);
    @Get("/paths/list")
    String paths();
    /**
     * 查询所有rtsp会话
     */
    @Get("{apiUrl}/rtspsessions/list")
    String rtspsessions(@Var("apiUrl") String apiUrl);
    @Get("/rtspsessions/list")
    String rtspsessions();
    /**
     * 查询所有rtsp连接
     */
    @Get("{apiUrl}/rtspconns/list")
    String rtspconns(@Var("apiUrl") String apiUrl);
    @Get("/rtspconns/list")
    String rtspconns();
    /**
     * 按id查询rtsp会话
     * 按sessionId查询rtsp会话
     */
    @Get("{apiUrl}/rtspsessions/get/{sessionId}")
    String getRtspsessionById(@Var("apiUrl") String apiUrl, @Var("sessionId") String sessionId);
    @Get("/rtspsessions/get/{sessionId}")
    String getRtspsessionById(@Var("sessionId") String sessionId);
    /**
     * 按sessionId查询webrtc会话
     */
    @Get("/webrtcsessions/get/{sessionId}")
    String getWebrtcsessionById(@Var("sessionId") String sessionId);
    /**
     * 按sessionId查询rtmp会话
     */
    @Get("/rtmpconns/get/{sessionId}")
    String getRtmpsessionById(@Var("sessionId") String sessionId);
    /**
     * 按sessionId删除rtsp会话
     */
    @Post("/rtspsessions/kick/{sessionId}")
    String kickRtspSessions(@Var("sessionId") String sessionId);
    /**
     * 按sessionId删除rtmp连接
     */
    @Post("/rtmpconns/kick/{sessionId}")
    String kickRtmpSessions(@Var("sessionId") String sessionId);
    /**
     * 按sessionId删除webrtc会话
     */
    @Post("/webrtcsessions/kick/{sessionId}")
    String kickWebrtcSessions(@Var("sessionId") String sessionId);
}