RTCDataChannel.readyState is not 'open'

Nikita_

New Member
Добрый день!
Использую SFU SDK sfu.js

создаю комнату const
JavaScript:
session = sfu.createRoom(roomConfig);
получаю событие constants.SFU_EVENT.CONNECTED

пытаюсь отправить сообщение
JavaScript:
room.sendMessage(message)
получаю ошибку
JavaScript:
Uncaught (in promise) DOMException: Failed to execute 'send' on 'RTCDataChannel': RTCDataChannel.readyState is not 'open'
Подскажите пожалуста в чем может быть проблема?
 

Max

Administrator
Staff member
Добрый день.
Уточните, какую версию SFU SDK используете. В последних сборках операция createRoom асинхронная
Code:
const session = await sfu.createRoom(roomConfig);
Также для передачи сообщений используются RTC data channels. Поэтому клиент должен установить WebRTC соединение при помощи метода Room.join:
Code:
const publishPreconfiguredStreams = async function (room, pc, streams) {
    try {
        const config = {};
        ...
        //join room
        await room.join(pc, null, config, 10);
        ...
    } catch (e) {
        ...
    }
}
См код примера SFU Client.
 
Top