| | |
| | | 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.Config; |
| | | import com.ruoyi.media.domain.Items; |
| | | |
| | | /** |
| | | * @Description: mediamtx流媒体客户端 |
| | |
| | | * @Date: 2023年07月06日9:51 |
| | | * @Version: 1.0 |
| | | **/ |
| | | @BaseRequest(baseURL = "http://#{mediamtx.host}:9997/v3") |
| | | 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}") |
| | | 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("{apiUrl}/config/paths/remove/{name}") |
| | | String removePath(@Var("apiUrl") String apiUrl, @Var("name") String name); |
| | | @Delete("/config/paths/delete/{name}") |
| | | public String removePath(@Var("name") String name); |
| | | |
| | | /** |
| | | * 获取路径详情 |
| | | */ |
| | | @Get(url ="/config/paths/get/{name}") |
| | | public Conf getPathInfo(@Var("name") String name); |
| | | |
| | | /** |
| | | * 查询所有路径 |
| | | */ |
| | | @Get("{apiUrl}/paths/list") |
| | | String paths(@Var("apiUrl") String apiUrl); |
| | | @Get("/paths/list") |
| | | public String paths(); |
| | | |
| | | /** |
| | | * 查询所有rtsp会话 |
| | | */ |
| | | @Get("{apiUrl}/rtspsessions/list") |
| | | String rtspsessions(@Var("apiUrl") String apiUrl); |
| | | |
| | | /** |
| | | * 查询所有rtsp连接 |
| | | */ |
| | | @Get("{apiUrl}/rtspconns/list") |
| | | String rtspconns(@Var("apiUrl") String apiUrl); |
| | | @Get("/rtspsessions/list") |
| | | public String rtspsessions(); |
| | | |
| | | /** |
| | | * 按sessionId查询rtsp会话 |
| | | */ |
| | | @Get("{apiUrl}/rtspsessions/get/{sessionId}") |
| | | String getRtspsessionById(@Var("apiUrl") String apiUrl, @Var("sessionId") String sessionId); |
| | | @Get("/rtspsessions/get/{sessionId}") |
| | | public String getRtspsessionById(@Var("sessionId") String sessionId); |
| | | |
| | | /** |
| | | * 按sessionId查询webrtc会话 |
| | | */ |
| | | @Get("/webrtcsessions/get/{sessionId}") |
| | | public String getWebrtcsessionById(@Var("sessionId") String sessionId); |
| | | |
| | | /** |
| | | * 按sessionId查询rtmp会话 |
| | | */ |
| | | @Get("/rtmpconns/get/{sessionId}") |
| | | public String getRtmpsessionById(@Var("sessionId") String sessionId); |
| | | |
| | | /** |
| | | * 按sessionId删除rtsp会话 |
| | | */ |
| | | @Post("{apiUrl}/rtspsessions/kick/{sessionId}") |
| | | String kick(@Var("apiUrl") String apiUrl, @Var("sessionId") String sessionId); |
| | | @Post("/rtspsessions/kick/{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); |
| | | |
| | | /** |
| | | * 配置流媒体参数 |
| | | */ |
| | | @Post("/config/set") |
| | | public String setConfig(@JSONBody Config config); |
| | | } |