[*] 日常优化
This commit is contained in:
@@ -33,7 +33,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
"consumerId": "消费者ID"
|
||||
}
|
||||
""",
|
||||
flow = "终端=>信令服务->媒体服务"
|
||||
flow = "终端->信令服务->媒体服务->信令服务->终端"
|
||||
)
|
||||
public class MediaConsumerPauseProtocol extends ProtocolRoomAdapter implements ApplicationListener<MediaConsumerPauseEvent> {
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
"consumerId": "消费者ID"
|
||||
}
|
||||
""",
|
||||
flow = "终端=>信令服务->媒体服务"
|
||||
flow = "终端->信令服务->媒体服务->信令服务->终端"
|
||||
)
|
||||
public class MediaConsumerResumeProtocol extends ProtocolRoomAdapter implements ApplicationListener<MediaConsumerResumeEvent> {
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ import com.acgist.taoyao.signal.protocol.ProtocolRoomAdapter;
|
||||
}
|
||||
}
|
||||
""",
|
||||
flow = "媒体服务->信令服务->终端"
|
||||
flow = "媒体服务->信令服务+)终端"
|
||||
)
|
||||
public class MediaConsumerScoreProtocol extends ProtocolRoomAdapter {
|
||||
|
||||
|
||||
@@ -20,19 +20,19 @@ import com.acgist.taoyao.signal.protocol.ProtocolRoomAdapter;
|
||||
body = {
|
||||
"""
|
||||
{
|
||||
"roomId": "房间标识",
|
||||
"roomId" : "房间标识",
|
||||
"transportId": "通道标识"
|
||||
}
|
||||
""",
|
||||
"""
|
||||
{
|
||||
"roomId": "房间标识",
|
||||
"transportId": "通道标识",
|
||||
"roomId" : "房间标识",
|
||||
"transportId" : "通道标识",
|
||||
"iceParameters": "iceParameters"
|
||||
}
|
||||
"""
|
||||
},
|
||||
flow = "终端=>信令服务->媒体服务->信令服务->终端"
|
||||
flow = "终端=>信令服务->媒体服务"
|
||||
)
|
||||
public class MediaIceRestartProtocol extends ProtocolRoomAdapter {
|
||||
|
||||
|
||||
@@ -28,14 +28,14 @@ import lombok.extern.slf4j.Slf4j;
|
||||
body = {
|
||||
"""
|
||||
{
|
||||
"kind": "媒体类型",
|
||||
"roomId": "房间标识",
|
||||
"transportId": "通道标识",
|
||||
"kind" : "媒体类型",
|
||||
"roomId" : "房间标识",
|
||||
"transportId" : "通道标识",
|
||||
"rtpParameters": "rtpParameters"
|
||||
}
|
||||
"""
|
||||
},
|
||||
flow = "终端->信令服务->媒体服务->信令服务->终端"
|
||||
flow = "终端=>信令服务->媒体服务"
|
||||
)
|
||||
public class MediaProduceProtocol extends ProtocolRoomAdapter {
|
||||
|
||||
|
||||
@@ -27,13 +27,14 @@ import lombok.extern.slf4j.Slf4j;
|
||||
@Slf4j
|
||||
@Protocol
|
||||
@Description(
|
||||
memo = "关闭通过回调实现所以不能同步响应",
|
||||
body = """
|
||||
{
|
||||
"roomId": "房间ID"
|
||||
"roomId" : "房间ID"
|
||||
"consumerId": "生产者ID"
|
||||
}
|
||||
""",
|
||||
flow = "终端->信令服务->媒体服务->信令服务+)终端"
|
||||
flow = "终端->信令服务->媒体服务->信令服务->终端"
|
||||
)
|
||||
public class MediaProducerCloseProtocol extends ProtocolRoomAdapter implements ApplicationListener<MediaProducerCloseEvent> {
|
||||
|
||||
@@ -49,7 +50,7 @@ public class MediaProducerCloseProtocol extends ProtocolRoomAdapter implements A
|
||||
final Room room = event.getRoom();
|
||||
final Client mediaClient = event.getMediaClient();
|
||||
final Map<String, Object> body = Map.of(
|
||||
Constant.ROOM_ID, room.getRoomId(),
|
||||
Constant.ROOM_ID, room.getRoomId(),
|
||||
Constant.PRODUCER_ID, event.getProducerId()
|
||||
);
|
||||
mediaClient.push(this.build(body));
|
||||
@@ -66,9 +67,8 @@ public class MediaProducerCloseProtocol extends ProtocolRoomAdapter implements A
|
||||
if(clientType.mediaClient()) {
|
||||
producer.close();
|
||||
} else if(clientType.mediaServer()) {
|
||||
// TODO:路由到真实消费者
|
||||
producer.remove();
|
||||
room.broadcast(message);
|
||||
producer.getProducerClient().push(message);
|
||||
} else {
|
||||
this.logNoAdapter(clientType);
|
||||
}
|
||||
|
||||
@@ -16,17 +16,20 @@ import com.acgist.taoyao.signal.party.media.Producer;
|
||||
import com.acgist.taoyao.signal.party.room.Room;
|
||||
import com.acgist.taoyao.signal.protocol.ProtocolRoomAdapter;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
/**
|
||||
* 暂停生产者信令
|
||||
*
|
||||
* @author acgist
|
||||
*/
|
||||
@Slf4j
|
||||
@Protocol
|
||||
@Description(
|
||||
body = """
|
||||
{
|
||||
"roomId": "房间ID"
|
||||
"producerId": "消费者ID"
|
||||
"roomId" : "房间ID"
|
||||
"producerId": "生产者ID"
|
||||
}
|
||||
""",
|
||||
flow = "终端->信令服务->媒体服务->信令服务->终端"
|
||||
@@ -44,7 +47,7 @@ public class MediaProducerPauseProtocol extends ProtocolRoomAdapter implements A
|
||||
final Room room = event.getRoom();
|
||||
final Client mediaClient = event.getMediaClient();
|
||||
final Map<String, Object> body = Map.of(
|
||||
Constant.ROOM_ID, room.getRoomId(),
|
||||
Constant.ROOM_ID, room.getRoomId(),
|
||||
Constant.PRODUCER_ID, event.getProducerId()
|
||||
);
|
||||
mediaClient.push(this.build(body));
|
||||
@@ -52,13 +55,16 @@ public class MediaProducerPauseProtocol extends ProtocolRoomAdapter implements A
|
||||
|
||||
@Override
|
||||
public void execute(String clientId, ClientType clientType, Room room, Client client, Client mediaClient, Message message, Map<String, Object> body) {
|
||||
final String producerId = MapUtils.get(body, Constant.PRODUCER_ID);
|
||||
final Producer producer = room.producer(producerId);
|
||||
if(producer == null) {
|
||||
log.debug("生产者无效:{} - {}", producerId, clientType);
|
||||
return;
|
||||
}
|
||||
if(clientType.mediaClient()) {
|
||||
final String producerId = MapUtils.get(body, Constant.PRODUCER_ID);
|
||||
final Producer producer = room.producer(producerId);
|
||||
producer.pause();
|
||||
} else if(clientType.mediaServer()) {
|
||||
// TODO:路由到真实消费者
|
||||
room.broadcast(message);
|
||||
producer.getProducerClient().push(message);
|
||||
} else {
|
||||
this.logNoAdapter(clientType);
|
||||
}
|
||||
|
||||
@@ -16,17 +16,20 @@ import com.acgist.taoyao.signal.party.media.Producer;
|
||||
import com.acgist.taoyao.signal.party.room.Room;
|
||||
import com.acgist.taoyao.signal.protocol.ProtocolRoomAdapter;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
/**
|
||||
* 恢复生产者信令
|
||||
*
|
||||
* @author acgist
|
||||
*/
|
||||
@Slf4j
|
||||
@Protocol
|
||||
@Description(
|
||||
body = """
|
||||
{
|
||||
"roomId": "房间ID"
|
||||
"producerId": "消费者ID"
|
||||
"roomId" : "房间ID"
|
||||
"producerId": "生产者ID"
|
||||
}
|
||||
""",
|
||||
flow = "终端->信令服务->媒体服务->信令服务->终端"
|
||||
@@ -44,7 +47,7 @@ public class MediaProducerResumeProtocol extends ProtocolRoomAdapter implements
|
||||
final Room room = event.getRoom();
|
||||
final Client mediaClient = event.getMediaClient();
|
||||
final Map<String, Object> body = Map.of(
|
||||
Constant.ROOM_ID, room.getRoomId(),
|
||||
Constant.ROOM_ID, room.getRoomId(),
|
||||
Constant.PRODUCER_ID, event.getProducerId()
|
||||
);
|
||||
mediaClient.push(this.build(body));
|
||||
@@ -52,13 +55,16 @@ public class MediaProducerResumeProtocol extends ProtocolRoomAdapter implements
|
||||
|
||||
@Override
|
||||
public void execute(String clientId, ClientType clientType, Room room, Client client, Client mediaClient, Message message, Map<String, Object> body) {
|
||||
final String producerId = MapUtils.get(body, Constant.PRODUCER_ID);
|
||||
final Producer producer = room.producer(producerId);
|
||||
if(producer == null) {
|
||||
log.debug("生产者无效:{} - {}", producerId, clientType);
|
||||
return;
|
||||
}
|
||||
if(clientType.mediaClient()) {
|
||||
final String producerId = MapUtils.get(body, Constant.PRODUCER_ID);
|
||||
final Producer producer = room.producer(producerId);
|
||||
producer.resume();
|
||||
} else if(clientType.mediaServer()) {
|
||||
// TODO:路由到真实消费者
|
||||
room.broadcast(message);
|
||||
producer.getProducerClient().push(message);
|
||||
} else {
|
||||
this.logNoAdapter(clientType);
|
||||
}
|
||||
|
||||
@@ -17,7 +17,16 @@ import com.acgist.taoyao.signal.protocol.ProtocolRoomAdapter;
|
||||
*/
|
||||
@Protocol
|
||||
@Description(
|
||||
flow = "媒体服务->信令服务->终端"
|
||||
body = """
|
||||
{
|
||||
"roomId" : "房间ID"
|
||||
"consumerId": "消费者ID"
|
||||
"score" : {
|
||||
...生产者评分
|
||||
}
|
||||
}
|
||||
""",
|
||||
flow = "媒体服务->信令服务+)终端"
|
||||
)
|
||||
public class MediaProducerScoreProtocol extends ProtocolRoomAdapter {
|
||||
|
||||
|
||||
@@ -19,11 +19,11 @@ import com.acgist.taoyao.signal.protocol.ProtocolRoomAdapter;
|
||||
@Description(
|
||||
body = """
|
||||
{
|
||||
"roomId": "房间ID",
|
||||
"roomId" : "房间ID",
|
||||
"producerId": "生产者ID"
|
||||
}
|
||||
""",
|
||||
flow = "终端=>信令服务->媒体服务->信令服务->终端"
|
||||
flow = "终端=>信令服务->媒体服务"
|
||||
)
|
||||
public class MediaProducerStatusProtocol extends ProtocolRoomAdapter {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user