stun server

This commit is contained in:
2023-10-03 03:10:23 +08:00
parent 689154ff5f
commit ee6dbe97da
1 changed files with 29 additions and 5 deletions

View File

@ -18,11 +18,33 @@ export default class ClientList {
const data = JSON.parse(event.data) const data = JSON.parse(event.data)
const webrtc_init = async () => { const webrtc_init = async () => {
const webrtc = new RTCPeerConnection({ const webrtc = new RTCPeerConnection({
iceServers: [{ iceServers: [
{
urls: 'turn:satori.love:3478?transport=udp', urls: 'turn:satori.love:3478?transport=udp',
username: 'x-username', username: 'x-username',
credential: 'x-password' credential: 'x-password'
}], },
{
urls: [
'stun:stun.minisipserver.com',
'stun:stun.zoiper.com',
'stun:stun.voipbuster.com',
'stun:stun.sipgate.net',
'stun:stun.schlund.de',
'stun:stun.voipstunt.com',
'stun:stun.1und1.de',
'stun:stun.gmx.net',
'stun:stun.callwithus.com',
'stun:stun.internetcalls.com',
'stun:stun.voip.aebc.com',
'stun:stun.internetcalls.com',
'stun:stun.callwithus.com',
'stun:stun.gmx.net',
'stun:stun.1und1.de',
'stun:stun.voxgratia.org',
],
}
],
iceCandidatePoolSize: 10, // 限制 ICE 候选者的数量 iceCandidatePoolSize: 10, // 限制 ICE 候选者的数量
iceTransportPolicy: 'all', // 使用所有可用的候选者 iceTransportPolicy: 'all', // 使用所有可用的候选者
bundlePolicy: 'balanced', // 每種類型的內容建立一個單獨的傳輸 bundlePolicy: 'balanced', // 每種類型的內容建立一個單獨的傳輸
@ -65,6 +87,8 @@ export default class ClientList {
})) }))
} }
} }
webrtc.getReceivers
webrtc.getTransceivers
webrtc.oniceconnectionstatechange = async event => { webrtc.oniceconnectionstatechange = async event => {
if (webrtc.iceConnectionState === 'disconnected' || webrtc.iceConnectionState === 'failed') { if (webrtc.iceConnectionState === 'disconnected' || webrtc.iceConnectionState === 'failed') {
console.log('需要添加新的 candidate') console.log('需要添加新的 candidate')