Video chat issues

This commit is contained in:
venbatechnologies@gmail.com 2020-09-02 13:09:48 +05:30
parent 195faa6958
commit 5fcb071b31
6 changed files with 32 additions and 16 deletions

View File

@ -65,6 +65,7 @@ export class AdminLayoutComponent implements OnInit, OnDestroy {
alertTAT: any; alertTAT: any;
countTAT: number; countTAT: number;
incomingDialogOpened:boolean = false incomingDialogOpened:boolean = false
dialogRef: any;
constructor(private router: Router, public menuItems: MenuItems, public horizontalMenuItems : HorizontalMenuItems, public translate: TranslateService,public aws:AwsService,public users:UserService,private _dashboardService: DashboardService,private messagingService:MessagingService,private socket:Socket,private matDialog:MatDialog, constructor(private router: Router, public menuItems: MenuItems, public horizontalMenuItems : HorizontalMenuItems, public translate: TranslateService,public aws:AwsService,public users:UserService,private _dashboardService: DashboardService,private messagingService:MessagingService,private socket:Socket,private matDialog:MatDialog,
private _notificationService:PushNotifyService) { private _notificationService:PushNotifyService) {
@ -356,10 +357,17 @@ export class AdminLayoutComponent implements OnInit, OnDestroy {
openIncomingDialog(offer?,curr_pd_info?) { openIncomingDialog(offer?,curr_pd_info?) {
offer.pd_id = curr_pd_info.pd_id offer.pd_id = curr_pd_info.pd_id
if(this.incomingDialogOpened == true) { if(this.incomingDialogOpened == true) {
if(this.dialogRef) {
console.log("dialog",this.dialogRef)
this.dialogRef.close();
}
else {
return; return;
} }
}
let autoCloseDialog:any;
this.incomingDialogOpened = true this.incomingDialogOpened = true
const dialogRef = this.matDialog.open(IncomingCallComponent,{ this.dialogRef = this.matDialog.open(IncomingCallComponent,{
// minWidth:'25%', // minWidth:'25%',
// maxWidth:'30%', // maxWidth:'30%',
data:curr_pd_info, data:curr_pd_info,
@ -367,13 +375,19 @@ export class AdminLayoutComponent implements OnInit, OnDestroy {
backdropClass: 'incoming-call-background' , backdropClass: 'incoming-call-background' ,
panelClass:'incoming-call-background' panelClass:'incoming-call-background'
}) })
dialogRef.afterClosed().subscribe(data=>{ autoCloseDialog = setTimeout(()=>{
this.dialogRef.close()
},15000)
this.dialogRef.afterClosed().subscribe(data=>{
console.log(data) console.log(data)
if(autoCloseDialog != undefined && autoCloseDialog) {
clearTimeout(autoCloseDialog)
}
if(data == 'decline'){ if(data == 'decline'){
this.incomingDialogOpened = false this.incomingDialogOpened = false
this.socket.emit('callStatus',{random_string:curr_pd_info.random_string,status:'declined',status_code:3}) this.socket.emit('callStatus',{random_string:curr_pd_info.random_string,status:'declined',status_code:3})
} }
else { else if(data == 'answered'){
this.incomingDialogOpened = false this.incomingDialogOpened = false
this.openVideoChatDialog(offer) this.openVideoChatDialog(offer)
} }

View File

@ -132,7 +132,7 @@
<mat-icon>sms</mat-icon> <mat-icon>sms</mat-icon>
</button> --> </button> -->
<button style ="float: right" mat-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="viewPD(details.is_child == 0 ? details.pd_id : details.parent_pd_id,details.random_string)" matTooltip="View" <button mat-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="viewPD(details.is_child == 0 ? details.pd_id : details.parent_pd_id,details.random_string)" matTooltip="View"
matTooltipPosition="above" color="primary"><mat-icon>visibility</mat-icon></button> matTooltipPosition="above" color="primary"><mat-icon>visibility</mat-icon></button>
<button style="float: right" mat-button mat-icon-button class="mb-1 hover-icon" type="button" color="primary" (click)="copyPD(details)" <button style="float: right" mat-button mat-icon-button class="mb-1 hover-icon" type="button" color="primary" (click)="copyPD(details)"
matTooltip="Copy PD" matTooltipPosition="above"> matTooltip="Copy PD" matTooltipPosition="above">

View File

@ -126,7 +126,7 @@
matTooltip="Send Link Via SMS" matTooltipPosition="above"> matTooltip="Send Link Via SMS" matTooltipPosition="above">
<mat-icon>sms</mat-icon> <mat-icon>sms</mat-icon>
</button> --> </button> -->
<button style="float: right" mat-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="viewPD(details.is_child == 0 ? details.pd_id : details.parent_pd_id,details.random_string)" matTooltip="View" matTooltipPosition="above" color="primary"><mat-icon>visibility</mat-icon></button> <button mat-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="viewPD(details.is_child == 0 ? details.pd_id : details.parent_pd_id,details.random_string)" matTooltip="View" matTooltipPosition="above" color="primary"><mat-icon>visibility</mat-icon></button>
<button style="float: right" mat-button mat-icon-button class="mb-1 hover-icon" type="button" color="primary" (click)="copyPD(details)" <button style="float: right" mat-button mat-icon-button class="mb-1 hover-icon" type="button" color="primary" (click)="copyPD(details)"
matTooltip="Copy PD" matTooltipPosition="above"> matTooltip="Copy PD" matTooltipPosition="above">
<mat-icon>file_copy</mat-icon> <mat-icon>file_copy</mat-icon>

View File

@ -131,7 +131,7 @@
<mat-icon>sms</mat-icon> <mat-icon>sms</mat-icon>
</button> --> </button> -->
<button style="float: right" mat-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="viewPD(details.is_child == 0 ? details.pd_id : details.parent_pd_id,details.random_string)" color="primary" matTooltip="View" matTooltipPosition="above"><mat-icon>visibility</mat-icon></button> <button mat-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="viewPD(details.is_child == 0 ? details.pd_id : details.parent_pd_id,details.random_string)" color="primary" matTooltip="View" matTooltipPosition="above"><mat-icon>visibility</mat-icon></button>
<button style="float: right" mat-button mat-icon-button class="mb-1 hover-icon" type="button" color="primary" (click)="copyPD(details)" <button style="float: right" mat-button mat-icon-button class="mb-1 hover-icon" type="button" color="primary" (click)="copyPD(details)"
matTooltip="Copy PD" matTooltipPosition="above"> matTooltip="Copy PD" matTooltipPosition="above">
<mat-icon>file_copy</mat-icon> <mat-icon>file_copy</mat-icon>

View File

@ -131,7 +131,7 @@
<mat-icon>sms</mat-icon> <mat-icon>sms</mat-icon>
</button> --> </button> -->
<button style="float: right" mat-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="viewPD(details.is_child == 0 ? details.pd_id : details.parent_pd_id,details.random_string)" color="primary" matTooltip="View" matTooltipPosition="above"><mat-icon>visibility</mat-icon></button> <button mat-button mat-icon-button class="mr-1 mb-1 hover-icon" type="button" (click)="viewPD(details.is_child == 0 ? details.pd_id : details.parent_pd_id,details.random_string)" color="primary" matTooltip="View" matTooltipPosition="above"><mat-icon>visibility</mat-icon></button>
<button style="float: right" mat-button mat-icon-button class="mb-1 hover-icon" type="button" color="primary" (click)="copyPD(details)" <button style="float: right" mat-button mat-icon-button class="mb-1 hover-icon" type="button" color="primary" (click)="copyPD(details)"
matTooltip="Copy PD" matTooltipPosition="above"> matTooltip="Copy PD" matTooltipPosition="above">
<mat-icon>file_copy</mat-icon> <mat-icon>file_copy</mat-icon>

View File

@ -232,9 +232,6 @@ export class VideoChatComponent implements OnInit {
// //wait for 1 sec // //wait for 1 sec
// } // }
function connectPeer(answer) { function connectPeer(answer) {
if(this.callDisconnectTimer) {
clearTimeout(this.callDisconnectTimer)
}
console.log("$$$$$$$$$$$$$$44"); console.log("$$$$$$$$$$$$$$44");
console.log(answer); console.log(answer);
setTimeout(()=>{ setTimeout(()=>{
@ -260,7 +257,7 @@ export class VideoChatComponent implements OnInit {
console.log('Failed to get stream', err); console.log('Failed to get stream', err);
alert('Failed to get stream '+err); alert('Failed to get stream '+err);
}); });
this.socket.on('callStatusMessage',this.updateTheMsg) // this.socket.on('callStatusMessage',this.updateTheMsg)
this.socket.fromEvent('callStatusMessage').subscribe(res=>{ this.socket.fromEvent('callStatusMessage').subscribe(res=>{
if(res) { if(res) {
this.updateTheMsg(res) this.updateTheMsg(res)
@ -288,8 +285,8 @@ export class VideoChatComponent implements OnInit {
// socket.on('Disconnect', RemovePeer) // socket.on('Disconnect', RemovePeer)
} }
updateTheMsg(msg_obj) { updateTheMsg(msg_obj) {
console.log("CallstatusMsg",msg_obj) console.log("CallstatusMsg",msg_obj,this.chat_info)
if(msg_obj && (msg_obj.status_code == 2) || (msg_obj.status_code == 3) && msg_obj.random_string == this.chat_info.random_string){ if(msg_obj && (msg_obj.status_code == 2) || (msg_obj.status_code == 3) && msg_obj.random_string == this.chat_info.random_string && !this.peerVideoEnable){
console.log("entered"); console.log("entered");
this.start_btn_enable = false this.start_btn_enable = false
this.displayMsg = msg_obj.msg this.displayMsg = msg_obj.msg
@ -314,6 +311,9 @@ export class VideoChatComponent implements OnInit {
this.peervideo.nativeElement.style.marginTop = '0px' this.peervideo.nativeElement.style.marginTop = '0px'
} }
this.peerVideoEnable = enablePeerVideo this.peerVideoEnable = enablePeerVideo
if(this.callDisconnectTimer != undefined && this.callDisconnectTimer) {
clearTimeout(this.callDisconnectTimer)
}
this.socket.emit('callStatus',{random_string:this.chat_info.random_string,status:'connected',status_code:1}) this.socket.emit('callStatus',{random_string:this.chat_info.random_string,status:'connected',status_code:1})
// this.camereSwitchBtn.nativeElement.disabled = true; // this.camereSwitchBtn.nativeElement.disabled = true;
console.log("peervideo check",this.peerVideoEnable,this.peervideo.nativeElement.videoWidth,this.peervideo.nativeElement.videoHeight); console.log("peervideo check",this.peerVideoEnable,this.peervideo.nativeElement.videoWidth,this.peervideo.nativeElement.videoHeight);
@ -483,12 +483,14 @@ sendVideoToServer(blob,is_auto_start) {
this.peer.send('Hello world'); this.peer.send('Hello world');
} }
disconnect() { disconnect() {
console.log(this.peer) console.log("onDisconnect",this.peer,this.peerVideoEnable)
if(this.peer) { if(this.peer) {
if(this.peerVideoEnable) {
this.stopRecording().then(res=>{ this.stopRecording().then(res=>{
}) })
if(this.callDisconnectTimer) { }
if(this.callDisconnectTimer != undefined && this.callDisconnectTimer) {
clearTimeout(this.callDisconnectTimer) clearTimeout(this.callDisconnectTimer)
} }
this.peer.destroy(); this.peer.destroy();