Update callId update

This commit is contained in:
Sergiu Toma 2021-02-17 14:16:59 +02:00
parent b7ff16b50d
commit d9834a3b53
1 changed files with 42 additions and 19 deletions

View File

@ -36,22 +36,22 @@ var socket, stream;
// } // }
var config = { var config = {
iceServers: [{ iceServers: [{
//urls: [ "stun:numb.viagenie.ca" //urls: [ "stun:numb.viagenie.ca"
urls: [ "stun:dev.linx.safemobile.com:19302" ] urls: [ "stun:dev.linx.safemobile.com:19302" ]
}, { }, {
//username: "claudiustancu@outlook.com", //username: "claudiustancu@outlook.com",
username: "sergiu", username: "sergiu",
//credential: "Parola123", //credential: "Parola123",
credential: "test123", credential: "test123",
urls: [ urls: [
// "turn:numb.viagenie.ca" // "turn:numb.viagenie.ca"
"turn:dev.linx.safemobile.com:19302" "turn:dev.linx.safemobile.com:19302"
] ]
}], }],
//FOR CHROME //FOR CHROME
rtcpMuxPolicy:"negotiate" rtcpMuxPolicy:"negotiate"
} }
var pc = new RTCPeerConnection(config) var pc = new RTCPeerConnection(config)
@ -135,11 +135,13 @@ class App extends Component {
// HUB 'video' event handler // HUB 'video' event handler
socket.on('video', async (data) => { socket.on('video', async (data) => {
const parseData = JSON.parse(data); const parseData = JSON.parse(data);
console.log('[VIDEO]', parseData);
if(parseData.type === 'notify-request') { if(parseData.type === 'notify-request') {
console.log('[NOTIFY-REQUEST]', parseData);
await pc.setLocalDescription(await pc.createOffer()) await pc.setLocalDescription(await pc.createOffer())
console.log('IIIIIIIIIIIIIIIIIIIIIIIII', this.state.callId);
socket.emit('video', JSON.stringify({ socket.emit('video', JSON.stringify({
origin_asset_id: this.state.user.asset.id, origin_asset_id: this.state.user.asset.id,
dest_asset_id: parseInt(parseData.origin_asset_id), dest_asset_id: parseInt(parseData.origin_asset_id),
@ -162,6 +164,7 @@ class App extends Component {
console.log('[ANSWER]'); console.log('[ANSWER]');
await pc.setRemoteDescription(parseData.sdp) await pc.setRemoteDescription(parseData.sdp)
pc.onicecandidate = ({candidate}) => { pc.onicecandidate = ({candidate}) => {
console.log('candidate1', candidate);
this.state.socket.emit('video', JSON.stringify({ this.state.socket.emit('video', JSON.stringify({
type: 'candidate', type: 'candidate',
candidate, candidate,
@ -172,7 +175,9 @@ class App extends Component {
} }
} }
} else if(parseData.type === 'candidate') { } else if(parseData.type === 'candidate') {
console.log('candidate parseData', parseData);
if(parseData.candidate) { if(parseData.candidate) {
console.log('parseData.candidate', parseData.candidate)
pc.addIceCandidate(parseData.candidate).catch(e => {console.log(e)}) pc.addIceCandidate(parseData.candidate).catch(e => {console.log(e)})
} }
} }
@ -185,21 +190,28 @@ class App extends Component {
} }
offerReceived = async (offer) => { offerReceived = async (offer) => {
console.log('Received offer', offer)
await pc.setRemoteDescription(offer.sdp) await pc.setRemoteDescription(offer.sdp)
pc.onicecandidate = ({candidate}) => { pc.onicecandidate = ({candidate}) => {
console.log('IIIIIIIIIIIIIIIIIIIIIIIII2', this.state.callId);
this.state.socket.emit('video', JSON.stringify({ this.state.socket.emit('video', JSON.stringify({
type: 'candidate', type: 'candidate',
candidate: candidate, candidate: candidate,
dest_asset_id: parseInt(this.state.dest_asset_id), dest_asset_id: parseInt(this.state.dest_asset_id),
video_call_id: this.state.callId video_call_id: this.state.callId,
test: '1111111111'
})); }));
} }
await pc.setLocalDescription(await pc.createAnswer()) await pc.setLocalDescription(await pc.createAnswer())
pc.onnegotiationneeded = async () => { pc.onnegotiationneeded = async () => {
console.log('---------onnegotiationneeded--------');
try { try {
console.log('IIIIIIIIIIIIIIIIIIIIIIIII3', this.state.callId);
await pc.setLocalDescription(await pc.createOffer()); await pc.setLocalDescription(await pc.createOffer());
// socket.emit('signal', {destination:remoteUser, data:pc.localDescription}) // socket.emit('signal', {destination:remoteUser, data:pc.localDescription})
socket.emit('video', JSON.stringify({ socket.emit('video', JSON.stringify({
@ -216,6 +228,7 @@ class App extends Component {
console.error(err); console.error(err);
} }
}; };
console.log('IIIIIIIIIIIIIIIIIIIIIIIII4', this.state.callId);
this.state.socket.emit('video', JSON.stringify({ this.state.socket.emit('video', JSON.stringify({
origin_asset_id: this.state.user.asset.id, origin_asset_id: this.state.user.asset.id,
dest_asset_id: parseInt(this.state.dest_asset_id), dest_asset_id: parseInt(this.state.dest_asset_id),
@ -226,6 +239,7 @@ class App extends Component {
video_call_id: this.state.callId, video_call_id: this.state.callId,
sdp: pc.localDescription sdp: pc.localDescription
})); }));
console.log('---------onnegotiationneeded END--------');
} }
handleChangeLogin = (e) => { handleChangeLogin = (e) => {
@ -257,6 +271,7 @@ class App extends Component {
} }
handleClickEvent = () => { handleClickEvent = () => {
console.log('IIIIIIIIIIIIIIIIIIIIIIIII6', this.state.callId);
this.state.socket.emit('video', JSON.stringify({ this.state.socket.emit('video', JSON.stringify({
origin_asset_id: this.state.user.asset.id, origin_asset_id: this.state.user.asset.id,
dest_asset_id: parseInt(this.state.dest_asset_id), dest_asset_id: parseInt(this.state.dest_asset_id),
@ -266,9 +281,17 @@ class App extends Component {
origin_asset_name: this.state.user.name, origin_asset_name: this.state.user.name,
video_call_id: this.state.callId video_call_id: this.state.callId
})); }));
// var userToCall = document.getElementById('calluser').value
// remoteUser = userToCall
// document.getElementById('invitestatus').innerHTML = " INVITATIE TRIMISA"
// document.getElementById('loadingOverlay').style.display = "block"
// var x = document.getElementById('calluser');
// x.style.display = "none";
// socket.emit('call', userToCall)
} }
closeVideo = () => { closeVideo = () => {
console.log('IIIIIIIIIIIIIIIIIIIIIIIII7', this.state.callId);
this.state.socket.emit('video', JSON.stringify({ this.state.socket.emit('video', JSON.stringify({
origin_asset_id: this.state.user.asset.id, origin_asset_id: this.state.user.asset.id,
dest_asset_id: parseInt(this.state.dest_asset_id), dest_asset_id: parseInt(this.state.dest_asset_id),
@ -283,7 +306,7 @@ class App extends Component {
return ( return (
<div className="App"> <div className="App">
<h1>WebRTC Client 0.2</h1> <h1>WebRTC Client 0.1 - {Math.random()}</h1>
<br></br> <br></br>
<h2><u>STUN and TURN servers</u></h2> <h2><u>STUN and TURN servers</u></h2>