[*] 日常优化
This commit is contained in:
@@ -1181,15 +1181,13 @@ class Taoyao {
|
|||||||
// dataConsumer.on("sctpsendbufferfull", fn());
|
// dataConsumer.on("sctpsendbufferfull", fn());
|
||||||
dataConsumer.observer.on("close", () => {
|
dataConsumer.observer.on("close", () => {
|
||||||
if(room.dataConsumers.delete(dataConsumer.id)) {
|
if(room.dataConsumers.delete(dataConsumer.id)) {
|
||||||
console.info("数据消费者关闭", dataConsumer.id, streamId);
|
console.debug("数据消费者关闭", dataConsumer.id, streamId);
|
||||||
me.push(
|
me.push(protocol.buildMessage("media::data::consumer::close", {
|
||||||
protocol.buildMessage("media::data::consumer::close", {
|
roomId,
|
||||||
roomId : roomId,
|
consumerId: dataConsumer.id,
|
||||||
consumerId: dataConsumer.id,
|
}));
|
||||||
})
|
|
||||||
);
|
|
||||||
} else {
|
} else {
|
||||||
console.debug("数据消费者关闭(无效)", dataConsumer.id, streamId);
|
console.debug("数据消费者关闭(数据消费者无效)", dataConsumer.id, streamId);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
me.push(
|
me.push(
|
||||||
@@ -1211,20 +1209,22 @@ class Taoyao {
|
|||||||
/**
|
/**
|
||||||
* 关闭数据消费者信令
|
* 关闭数据消费者信令
|
||||||
*
|
*
|
||||||
* @param {*} message 消息
|
* @param {*} message 信令消息
|
||||||
* @param {*} body 消息主体
|
* @param {*} body 消息主体
|
||||||
*/
|
*/
|
||||||
async mediaDataConsumerClose(message, body) {
|
async mediaDataConsumerClose(message, body) {
|
||||||
const me = this;
|
const {
|
||||||
const { roomId, consumerId } = body;
|
roomId,
|
||||||
const room = me.rooms.get(roomId);
|
consumerId
|
||||||
|
} = body;
|
||||||
|
const room = this.rooms.get(roomId);
|
||||||
const dataConsumer = room?.dataConsumers.get(consumerId);
|
const dataConsumer = room?.dataConsumers.get(consumerId);
|
||||||
if(dataConsumer) {
|
if(!dataConsumer) {
|
||||||
console.info("关闭数据消费者", consumerId);
|
console.debug("关闭数据消费者(数据消费者无效)", roomId, consumerId);
|
||||||
await dataConsumer.close();
|
return;
|
||||||
} else {
|
|
||||||
console.info("关闭数据消费者(无效)", consumerId);
|
|
||||||
}
|
}
|
||||||
|
console.debug("关闭数据消费者", consumerId);
|
||||||
|
await dataConsumer.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -1531,7 +1531,6 @@ class Taoyao extends RemoteClient {
|
|||||||
if (consumer) {
|
if (consumer) {
|
||||||
console.debug("关闭消费者", consumerId);
|
console.debug("关闭消费者", consumerId);
|
||||||
consumer.close();
|
consumer.close();
|
||||||
me.consumers.delete(consumerId);
|
|
||||||
} else {
|
} else {
|
||||||
console.debug("关闭消费者无效", consumerId);
|
console.debug("关闭消费者无效", consumerId);
|
||||||
}
|
}
|
||||||
@@ -1711,37 +1710,6 @@ class Taoyao extends RemoteClient {
|
|||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 关闭数据消费者信令
|
|
||||||
*
|
|
||||||
* @param {*} consumerId 数据消费者ID
|
|
||||||
*/
|
|
||||||
mediaDataConsumerClose(consumerId) {
|
|
||||||
const me = this;
|
|
||||||
me.push(protocol.buildMessage("media::data::consumer::close", {
|
|
||||||
roomId : me.roomId,
|
|
||||||
consumerId: consumerId,
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 关闭数据消费者信令
|
|
||||||
*
|
|
||||||
* @param {*} message 信令消息
|
|
||||||
*/
|
|
||||||
defaultMediaDataConsumerClose(message) {
|
|
||||||
const me = this;
|
|
||||||
const { roomId, consumerId } = message.body;
|
|
||||||
const dataConsumer = me.dataConsumers.get(consumerId);
|
|
||||||
if (dataConsumer) {
|
|
||||||
console.debug("关闭数据消费者", consumerId);
|
|
||||||
dataConsumer.close();
|
|
||||||
me.dataConsumers.delete(consumerId);
|
|
||||||
} else {
|
|
||||||
console.debug("关闭数据消费者无效", consumerId);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 消费媒体信令
|
* 消费媒体信令
|
||||||
*
|
*
|
||||||
@@ -1920,6 +1888,36 @@ class Taoyao extends RemoteClient {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 关闭数据消费者信令
|
||||||
|
*
|
||||||
|
* @param {*} consumerId 数据消费者ID
|
||||||
|
*/
|
||||||
|
mediaDataConsumerClose(consumerId) {
|
||||||
|
this.push(protocol.buildMessage("media::data::consumer::close", {
|
||||||
|
consumerId,
|
||||||
|
roomId: this.roomId,
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 关闭数据消费者信令
|
||||||
|
*
|
||||||
|
* @param {*} message 信令消息
|
||||||
|
*/
|
||||||
|
defaultMediaDataConsumerClose(message) {
|
||||||
|
const {
|
||||||
|
consumerId
|
||||||
|
} = message.body;
|
||||||
|
const dataConsumer = this.dataConsumers.get(consumerId);
|
||||||
|
if (!dataConsumer) {
|
||||||
|
console.debug("关闭数据消费者(数据消费者无效)", consumerId);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
console.debug("关闭数据消费者", consumerId);
|
||||||
|
dataConsumer.close();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询数据消费者状态信令
|
* 查询数据消费者状态信令
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
@Protocol
|
@Protocol
|
||||||
@Description(
|
@Description(
|
||||||
memo = "关闭通过回调实现所以不能同步响应",
|
memo = "关闭通过回调实现所以不能同步响应,以下场景出现:主动断开、离开房间、信令断开",
|
||||||
body = """
|
body = """
|
||||||
{
|
{
|
||||||
"roomId" : "房间ID"
|
"roomId" : "房间ID"
|
||||||
|
|||||||
@@ -22,6 +22,13 @@ import com.acgist.taoyao.signal.protocol.ProtocolRoomAdapter;
|
|||||||
"roomId" : "房间ID",
|
"roomId" : "房间ID",
|
||||||
"consumerId": "数据消费者ID"
|
"consumerId": "数据消费者ID"
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
"roomId" : "房间ID",
|
||||||
|
"consumerId": "数据消费者ID",
|
||||||
|
"status" : [
|
||||||
|
...状态信息
|
||||||
|
]
|
||||||
|
}
|
||||||
""",
|
""",
|
||||||
flow = "终端=>信令服务->媒体服务"
|
flow = "终端=>信令服务->媒体服务"
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -27,14 +27,18 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
@Protocol
|
@Protocol
|
||||||
@Description(
|
@Description(
|
||||||
memo = "关闭通过回调实现所以不能同步响应",
|
memo = "关闭通过回调实现所以不能同步响应,以下场景出现:主动断开、离开房间、信令断开",
|
||||||
body = """
|
body = """
|
||||||
{
|
{
|
||||||
"roomId" : "房间ID"
|
"roomId" : "房间ID"
|
||||||
"consumerId": "数据生产者ID"
|
"consumerId": "数据生产者ID"
|
||||||
}
|
}
|
||||||
""",
|
""",
|
||||||
flow = "终端->信令服务->媒体服务->信令服务->终端"
|
flow = {
|
||||||
|
"媒体服务->信令服务->终端",
|
||||||
|
"信令服务->媒体服务->信令服务->终端",
|
||||||
|
"终端->信令服务->媒体服务->信令服务->终端"
|
||||||
|
}
|
||||||
)
|
)
|
||||||
public class MediaDataProducerCloseProtocol extends ProtocolRoomAdapter implements ApplicationListener<MediaDataProducerCloseEvent> {
|
public class MediaDataProducerCloseProtocol extends ProtocolRoomAdapter implements ApplicationListener<MediaDataProducerCloseEvent> {
|
||||||
|
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ import com.acgist.taoyao.signal.protocol.ProtocolRoomAdapter;
|
|||||||
}
|
}
|
||||||
{
|
{
|
||||||
"roomId" : "房间ID",
|
"roomId" : "房间ID",
|
||||||
"producerId": "生产者ID",
|
"producerId": "数据生产者ID",
|
||||||
"status" : [
|
"status" : [
|
||||||
...状态信息
|
...状态信息
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -27,14 +27,18 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
@Protocol
|
@Protocol
|
||||||
@Description(
|
@Description(
|
||||||
memo = "关闭通过回调实现所以不能同步响应",
|
memo = "关闭通过回调实现所以不能同步响应,以下场景出现:主动断开、离开房间、信令断开",
|
||||||
body = """
|
body = """
|
||||||
{
|
{
|
||||||
"roomId" : "房间ID"
|
"roomId" : "房间ID"
|
||||||
"consumerId": "生产者ID"
|
"consumerId": "生产者ID"
|
||||||
}
|
}
|
||||||
""",
|
""",
|
||||||
flow = "终端->信令服务->媒体服务->信令服务->终端"
|
flow = {
|
||||||
|
"媒体服务->信令服务->终端",
|
||||||
|
"信令服务->媒体服务->信令服务->终端",
|
||||||
|
"终端->信令服务->媒体服务->信令服务->终端"
|
||||||
|
}
|
||||||
)
|
)
|
||||||
public class MediaProducerCloseProtocol extends ProtocolRoomAdapter implements ApplicationListener<MediaProducerCloseEvent> {
|
public class MediaProducerCloseProtocol extends ProtocolRoomAdapter implements ApplicationListener<MediaProducerCloseEvent> {
|
||||||
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
@Protocol
|
@Protocol
|
||||||
@Description(
|
@Description(
|
||||||
memo = "关闭通过回调实现所以不能同步响应",
|
memo = "关闭通过回调实现所以不能同步响应,以下场景出现:主动断开、离开房间、信令断开",
|
||||||
body = """
|
body = """
|
||||||
{
|
{
|
||||||
"roomId" : "房间ID"
|
"roomId" : "房间ID"
|
||||||
@@ -35,8 +35,9 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
}
|
}
|
||||||
""",
|
""",
|
||||||
flow = {
|
flow = {
|
||||||
"终端->信令服务->媒体服务->信令服务->终端",
|
"媒体服务->信令服务->终端",
|
||||||
"终端-[离开房间]>信令服务->媒体服务->信令服务->终端"
|
"信令服务->媒体服务->信令服务->终端",
|
||||||
|
"终端->信令服务->媒体服务->信令服务->终端"
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
public class MediaTransportCloseProtocol extends ProtocolRoomAdapter implements ApplicationListener<TransportCloseEvent> {
|
public class MediaTransportCloseProtocol extends ProtocolRoomAdapter implements ApplicationListener<TransportCloseEvent> {
|
||||||
|
|||||||
Reference in New Issue
Block a user