new RTCClient(options)
options
configuration:
RTCConfigurationconstraints:
MediaStreamConstraintssocketConfig:
host:
域名或者ipport?:
端口
import RTCClient from 'rtc-client';
const host = 'https://127.0.0.1'
const port = 3000
const rtc = new RTCClient({
configuration: {
iceServers: [
{
urls: `turn:stun.l.google.com:19302`,
username: "webrtc",
credential: "turnserver",
},
],
},
constraints: {
audio: true,
video: true
},
socketConfig: {
host,
port,
}
})
绑定event事件
解除绑定event事件
开启视频共享
取消视频共享
加入房间
离开房间
获取设备列表
获取当前使用的视频输入设备信息
获取当前使用的音频输入设备信息
使用RTCDataChannel数据通道发送消息
切换设备媒体轨道
切换视频媒体轨道
切换音频媒体轨道
切换设备状态
禁用麦克风
启用麦克风
禁用摄像头
启用摄像头
获取本地媒体流
获取共享屏幕媒体流
关闭rtcclient实例
当与连接的客户端列表发生改变或者更新时触发
rtc.on('connectorInfoListChange', (data) => {
console.log('onConnectorInfoListChange', data);
})
当共享屏幕媒体流发生变化时触发
rtc.on('displayStreamChange', async (stream) => {
displayStream = stream
})
当本地媒体流发生变化时触发
rtc.on('localStreamChange', async (stream) => {
localStream = stream
})
当RTCDataChannel数据通道接收到数据时触发
rtc.on('message', async (message: MessageItem) =>{
message.isSelf = false
messageList.push(message)
console.log(message);
})