liusuyi
2024-10-10 38f29e38fcc668171dc05c53d40a36b895c86102
ard-work/src/main/java/com/ruoyi/utils/forest/MediaClient.java
@@ -1,8 +1,10 @@
package com.ruoyi.utils.forest;
import com.dtflys.forest.annotation.*;
import com.ruoyi.media.domain.Conf;
import com.ruoyi.media.domain.Items;
import com.ruoyi.media.domain.*;
import java.nio.file.Path;
import java.util.List;
/**
 * @Description: mediamtx流媒体客户端
@@ -11,53 +13,90 @@
 * @Date: 2023年07月06日9:51
 * @Version: 1.0
 **/
@BaseRequest(baseURL = "http://#{mediamtx.host}:9997/v2")
@BaseRequest(baseURL = "http://#{mediamtx.host}:9997/v3")
public interface MediaClient {
    /**
     * 增加路径
     */
    @Post("/config/paths/add/{name}")
    String addPath( @Var("name") String name, @JSONBody Conf body);
    public String addPath(@Var("name") String name, @JSONBody Conf body);
    /**
     * 修改路径
     */
    @Patch("/config/paths/patch/{name}")
    public String editPath(@Var("name") String name, @JSONBody Conf body);
    /**
     * 移除路径
     */
    @Post("/config/paths/remove/{name}")
    String removePath(@Var("name") String name);
    @Delete("/config/paths/delete/{name}")
    public String removePath(@Var("name") String name);
    /**
     * 获取路径详情
     */
    @Get("/paths/get/{name}")
    Items getPathInfo(@Var("name") String name);
    @Get(url = "/config/paths/get/{name}")
    public Conf getPathInfo(@Var("name") String name);
    /**
     * 查询所有路径
     */
    @Get("/paths/list")
    String paths();
    @Get("/paths/list?page={pageNum}&itemsPerPage={pageSize}")
    public Paths paths(@Var("pageNum") Integer pageNum, @Var("pageSize") Integer pageSize);
    /**
     * 查询所有rtsp会话
     */
    @Get("/rtspsessions/list")
    String rtspsessions();
    @Get("/rtspsessions/list?page={pageNum}&itemsPerPage={pageSize}")
    public RtspSessions rtspsessions(@Var("pageNum") Integer pageNum, @Var("pageSize") Integer pageSize);
    /**
     * 查询所有rtsp连接
     * 查询所有webrt会话
     */
    @Get("/rtspconns/list")
    String rtspconns();
    @Get("/webrtcsessions/list?page={pageNum}&itemsPerPage={pageSize}")
    public WebrtcSessions webrtcsessions(@Var("pageNum") Integer pageNum, @Var("pageSize") Integer pageSize);
    /**
     * 查询所有rtmp会话
     */
    @Get("/rtmpsessions/list?page={pageNum}&itemsPerPage={pageSize}")
    public RtmpSessions rtmpsessions(@Var("pageNum") Integer pageNum, @Var("pageSize") Integer pageSize);
    /**
     * 按sessionId查询rtsp会话
     */
    @Get("/rtspsessions/get/{sessionId}")
    String getRtspsessionById(@Var("sessionId") String sessionId);
    public RtspSession getRtspsessionById(@Var("sessionId") String sessionId);
    /**
     * 按sessionId查询webrtc会话
     */
    @Get("/webrtcsessions/get/{sessionId}")
    public WebrtcSession getWebrtcsessionById(@Var("sessionId") String sessionId);
    /**
     * 按sessionId查询rtmp会话
     */
    @Get("/rtmpconns/get/{sessionId}")
    public RtmpSession getRtmpsessionById(@Var("sessionId") String sessionId);
    /**
     * 按sessionId删除rtsp会话
     */
    @Post("/rtspsessions/kick/{sessionId}")
    String kick(@Var("sessionId") String sessionId);
    public String kickRtspSessions(@Var("sessionId") String sessionId);
    /**
     * 按sessionId删除rtmp连接
     */
    @Post("/rtmpconns/kick/{sessionId}")
    public String kickRtmpSessions(@Var("sessionId") String sessionId);
    /**
     * 按sessionId删除webrtc会话
     */
    @Post("/webrtcsessions/kick/{sessionId}")
    public String kickWebrtcSessions(@Var("sessionId") String sessionId);
}