{"version":3,"sources":["./src/$_lazy_route_resource lazy namespace object","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/conferenceschedule/conferenceschedule.component.ts","./src/app/conferenceschedule/conferenceschedule.component.html","./src/app/contact/contact.component.ts","./src/app/contact/contact.component.html","./src/app/dashboard/dashboard.component.ts","./src/app/dashboard/dashboard.component.html","./src/app/feedback/feedback.component.ts","./src/app/feedback/feedback.component.html","./src/app/header/nav-bar/nav-bar.component.ts","./src/app/header/nav-bar/nav-bar.component.html","./src/app/home/home.component.ts","./src/app/home/home.component.html","./src/app/join-meeting/join-meeting.component.ts","./src/app/join-meeting/join-meeting.component.html","./src/app/joinmeeting/joinmeeting.component.ts","./src/app/joinmeeting/joinmeeting.component.html","./src/app/livewebinar/livewebinar.component.ts","./src/app/livewebinar/livewebinar.component.html","./src/app/login/login.component.ts","./src/app/login/login.component.html","./src/app/logout/logout.component.ts","./src/app/logout/logout.component.html","./src/app/meeting-room/meeting-room.component.ts","./src/app/meeting-room/meeting-room.component.html","./src/app/offlinewebinar/offlinewebinar.component.ts","./src/app/offlinewebinar/offlinewebinar.component.html","./src/app/profile/profile.component.ts","./src/app/profile/profile.component.html","./src/app/schedule/schedule.component.ts","./src/app/schedule/schedule.component.html","./src/app/services/api.service.ts","./src/app/shared/components/chat/chat.component.ts","./src/app/shared/components/chat/chat.component.html","./src/app/shared/components/dialog-error/dialog-error.component.ts","./src/app/shared/components/dialog-error/dialog-error.component.html","./src/app/shared/components/footer/footer.component.ts","./src/app/shared/components/footer/footer.component.html","./src/app/shared/components/right-menu/right-menu.component.ts","./src/app/shared/components/right-menu/right-menu.component.html","./src/app/shared/components/room-config/room-config.component.ts","./src/app/shared/components/room-config/room-config.component.html","./src/app/shared/components/stream/ov-video.component.ts","./src/app/shared/components/stream/stream.component.ts","./src/app/shared/components/stream/stream.component.html","./src/app/shared/components/toolbar/logo.component.ts","./src/app/shared/components/toolbar/toolbar.component.ts","./src/app/shared/components/toolbar/toolbar.component.html","./src/app/shared/config/custom-cdk-overlay-container.ts","./src/app/shared/forms-matchers/nickname.ts","./src/app/shared/layout/openvidu-layout.ts","./src/app/shared/models/external-config.ts","./src/app/shared/models/ovSettings.ts","./src/app/shared/models/user-model.ts","./src/app/shared/models/webcomponent-model.ts","./src/app/shared/pipes/linkfy.ts","./src/app/shared/pipes/ovSettings.pipe.ts","./src/app/shared/pipes/tooltipList.pipe.ts","./src/app/shared/services/cdk-overlay/cdk-overlay.service.ts","./src/app/shared/services/chat/chat.service.ts","./src/app/shared/services/devices/devices.service.ts","./src/app/shared/services/layout/layout.service.ts","./src/app/shared/services/local-users/local-users.service.ts","./src/app/shared/services/logger/logger.service.ts","./src/app/shared/services/network/network.service.ts","./src/app/shared/services/notifications/notification.service.ts","./src/app/shared/services/openvidu-webrtc/openvidu-webrtc.service.ts","./src/app/shared/services/remote-users/remote-users.service.ts","./src/app/shared/services/storage/storage.service.ts","./src/app/shared/services/token/token.service.ts","./src/app/shared/services/utils/utils.service.ts","./src/app/shared/types/chat-type.ts","./src/app/shared/types/device-type.ts","./src/app/shared/types/icon-type.ts","./src/app/shared/types/layout-type.ts","./src/app/shared/types/storage-type.ts","./src/app/shared/types/video-type.ts","./src/app/shared/types/webcomponent-config.ts","./src/app/start-meeting/start-meeting.component.ts","./src/app/start-meeting/start-meeting.component.html","./src/app/startmeeting/startmeeting.component.ts","./src/app/startmeeting/startmeeting.component.html","./src/app/video-room/video-room.component.ts","./src/app/video-room/video-room.component.html","./src/app/videoorom/videoorom.component.ts","./src/app/videoorom/videoorom.component.html","./src/app/videoroommeeting/videoroommeeting.component.ts","./src/app/videoroommeeting/videoroommeeting.component.html","./src/app/web-component/web-component.component.ts","./src/app/webinar/webinar.component.ts","./src/app/webinar/webinar.component.html","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":"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","file":"main.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { HomeComponent } from './home/home.component';\nimport { MeetingRoomComponent } from './meeting-room/meeting-room.component';\nimport { VideoRoomComponent } from './video-room/video-room.component';\nimport { LoginComponent } from './login/login.component';\nimport { DashboardComponent } from './dashboard/dashboard.component';\nimport { LogoutComponent } from './logout/logout.component';\nimport { JoinMeetingComponent } from './join-meeting/join-meeting.component';\nimport { StartMeetingComponent } from './start-meeting/start-meeting.component';\nimport { ScheduleComponent } from './schedule/schedule.component';\nimport { WebinarComponent } from './webinar/webinar.component';\nimport { ContactComponent } from './contact/contact.component';\nimport { ConferencescheduleComponent } from './conferenceschedule/conferenceschedule.component';\nimport { LivewebinarComponent } from './livewebinar/livewebinar.component';\nimport { OfflinewebinarComponent } from './offlinewebinar/offlinewebinar.component';\nimport { ProfileComponent } from './profile/profile.component';\nimport { FeedbackComponent } from './feedback/feedback.component';\nimport { StartmeetingComponent } from './startmeeting/startmeeting.component';\nimport { JoinmeetingComponent } from './joinmeeting/joinmeeting.component';\nimport { VideooromComponent } from './videoorom/videoorom.component';\nimport { VideoroommeetingComponent } from './videoroommeeting/videoroommeeting.component';\n// import { ConferenceComponent } from './conference/conference.component';\n\n\nconst routes: Routes = [\n\t{ path: 'home', component: HomeComponent },\n\t{ path: 'dashboard', component: DashboardComponent },\n\t{ path: 'startMeeting', component: StartMeetingComponent },\n\t{ path: 'joinMeeting', component: JoinMeetingComponent },\n\t{ path: 'logout', component: LogoutComponent },\n\t{ path: 'schedule', component: ScheduleComponent },\n\t// { path: 'meeting/:roomName', component:MeetingRoomComponent },\n\t{path:'webinar', component:WebinarComponent},\n\t{path:'contact', component:ContactComponent},\n\t{path:'conferenceschedule', component:ConferencescheduleComponent},\n\t{path:'livewebinar', component:LivewebinarComponent},\n\t{path:'offlinewebinar', component:OfflinewebinarComponent},\n\t{path:'profile', component:ProfileComponent},\n\t{path:'feedback', component:FeedbackComponent},\n\t{path:'startmeeting', component:StartmeetingComponent},\n\t{path:'joinmeeting', component:JoinmeetingComponent},\n\t/*{ path: ':roomName', component: VideoRoomComponent },*/\n\t{ path: 'videoorom', component: VideooromComponent },\n\t// {path:'conference', component:ConferenceComponent},\n\t{ path: 'videoroommeeting/:id', component: VideoroommeetingComponent },\n\t{ path: '', component: LoginComponent }\n\n];\n\n@NgModule({\n\timports: [RouterModule.forRoot(routes, { useHash: true })],\n\texports: [RouterModule]\n})\nexport class AppRoutingModule {}\n","import { Component } from '@angular/core';\n\n@Component({\n\tselector: 'app-root',\n\ttemplateUrl: './app.component.html',\n\tstyleUrls: ['./app.component.css']\n})\nexport class AppComponent {\n\ttitle = 'OpenVidu Call';\n}\n","\n\n","import { BrowserModule } from '@angular/platform-browser';\nimport { NgModule, Injector } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatOptionModule } from '@angular/material/core';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatGridListModule } from '@angular/material/grid-list';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatSliderModule } from '@angular/material/slider';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { HttpClientModule } from '@angular/common/http';\nimport { createCustomElement } from '@angular/elements';\nimport { ElementZoneStrategyFactory } from 'elements-zone-strategy';\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { AppRoutingModule } from './app-routing.module';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { ModalModule } from 'ngb-modal';\n\n// Pipes\nimport { LinkifyPipe } from './shared/pipes/linkfy';\nimport {\n\tHasChatPipe,\n\tHasAudioPipe,\n\tHasVideoPipe,\n\tIsAutoPublishPipe,\n\tHasScreenSharingPipe,\n\tHasFullscreenPipe,\n\tHasLayoutSpeakingPipe,\n\tHasExitPipe,\n\t\n\tFilterPipe\n} from './shared/pipes/ovSettings.pipe';\nimport { TooltipListPipe } from './shared/pipes/tooltipList.pipe';\nimport { ToastrModule } from 'ngx-toastr';\n\n// Components\nimport { StreamComponent } from './shared/components/stream/stream.component';\nimport { ChatComponent } from './shared/components/chat/chat.component';\nimport { OpenViduVideoComponent } from './shared/components/stream/ov-video.component';\nimport { DialogErrorComponent } from './shared/components/dialog-error/dialog-error.component';\nimport { ToolbarComponent } from './shared/components/toolbar/toolbar.component';\nimport { ToolbarLogoComponent } from './shared/components/toolbar/logo.component';\nimport { RoomConfigComponent } from './shared/components/room-config/room-config.component';\nimport { WebComponentComponent } from './web-component/web-component.component';\nimport { VideoRoomComponent } from './video-room/video-room.component';\nimport { HomeComponent } from './home/home.component';\nimport { AppComponent } from './app.component';\nimport { FooterComponent } from './shared/components/footer/footer.component';\nimport { WebinarComponent } from './webinar/webinar.component';\nimport { ContactComponent } from './contact/contact.component';\nimport { ConferencescheduleComponent } from './conferenceschedule/conferenceschedule.component';\nimport { LivewebinarComponent } from './livewebinar/livewebinar.component';\nimport { OfflinewebinarComponent } from './offlinewebinar/offlinewebinar.component';\nimport { ProfileComponent } from './profile/profile.component';\nimport { FeedbackComponent } from './feedback/feedback.component';\n// import { ConferenceComponent } from './conference/conference.component';\n\n// Services\nimport { NetworkService } from './shared/services/network/network.service';\nimport { OpenViduWebrtcService } from './shared/services/openvidu-webrtc/openvidu-webrtc.service';\nimport { UtilsService } from './shared/services/utils/utils.service';\nimport { DevicesService } from './shared/services/devices/devices.service';\nimport { RemoteUsersService } from './shared/services/remote-users/remote-users.service';\nimport { ChatService } from './shared/services/chat/chat.service';\nimport { LoggerService } from './shared/services/logger/logger.service';\nimport { NotificationService } from './shared/services/notifications/notification.service';\nimport { StorageService } from './shared/services/storage/storage.service';\nimport { CdkOverlayContainer } from './shared/config/custom-cdk-overlay-container';\nimport { LocalUsersService } from './shared/services/local-users/local-users.service';\nimport { LoginComponent } from './login/login.component';\nimport { DashboardComponent } from './dashboard/dashboard.component';\nimport { LogoutComponent } from './logout/logout.component';\nimport { JoinMeetingComponent } from './join-meeting/join-meeting.component';\nimport { StartMeetingComponent } from './start-meeting/start-meeting.component';\nimport { ScheduleComponent } from './schedule/schedule.component';\nimport { MeetingRoomComponent } from './meeting-room/meeting-room.component';\nimport { CountdownModule } from 'ngx-countdown';\nimport { NavBarComponent } from './header/nav-bar/nav-bar.component';\nimport { RightMenuComponent } from './shared/components/right-menu/right-menu.component';\nimport { StartmeetingComponent } from './startmeeting/startmeeting.component';\nimport { JoinmeetingComponent } from './joinmeeting/joinmeeting.component';\nimport { VideooromComponent } from './videoorom/videoorom.component';\nimport { VideoroommeetingComponent } from './videoroommeeting/videoroommeeting.component';\n\n\n@NgModule({\n\tdeclarations: [\n\t\tAppComponent,\n\t\tVideoRoomComponent,\n\t\tHomeComponent,\n\t\tStreamComponent,\n\t\t// ConferenceComponent,\n\t\tChatComponent,\n\t\tOpenViduVideoComponent,\n\t\tDialogErrorComponent,\n\t\tRoomConfigComponent,\n\t\tWebComponentComponent,\n\t\tToolbarComponent,\n\t\tToolbarLogoComponent,\n\t\tLinkifyPipe,\n\t\tHasChatPipe,\n\t\tHasAudioPipe,\n\t\tHasVideoPipe,\n\t\tIsAutoPublishPipe,\n\t\tHasScreenSharingPipe,\n\t\tHasFullscreenPipe,\n\t\tHasLayoutSpeakingPipe,\n\t\tHasExitPipe,\n\t\tFilterPipe,\n\t\tTooltipListPipe,\n\t\tFooterComponent,\n\t\tLoginComponent,\n\t\tDashboardComponent,\n\t\tLogoutComponent,\n\t\tJoinMeetingComponent,\n\t\tStartMeetingComponent,\n\t\tScheduleComponent,\n\t\tMeetingRoomComponent,\n\t\tNavBarComponent,\n\t\tRightMenuComponent,\n\t\tWebinarComponent,\n\t\tContactComponent,\n\t\tConferencescheduleComponent,\n\t\tLivewebinarComponent,\n\t\tOfflinewebinarComponent,\n\t\tProfileComponent,\n\t\tFeedbackComponent,\n\t\tStartmeetingComponent,\n\t\tJoinmeetingComponent,\n\t\tVideooromComponent,\n\t\tVideoroommeetingComponent\n\t],\n\timports: [\n\t\tFormsModule,\n\t\tReactiveFormsModule,\n\t\tBrowserModule,\n\t\tBrowserAnimationsModule,\n\t\tMatButtonModule,\n\t\tMatCardModule,\n\t\tMatToolbarModule,\n\t\tMatIconModule,\n\t\tMatInputModule,\n\t\tMatFormFieldModule,\n\t\tMatDialogModule,\n\t\tMatTooltipModule,\n\t\tMatBadgeModule,\n\t\tMatGridListModule,\n\t\tMatSelectModule,\n\t\tMatOptionModule,\n\t\tMatProgressSpinnerModule,\n\t\tMatSliderModule,\n\t\tMatSidenavModule,\n\t\tMatSnackBarModule,\n\t\tAppRoutingModule,\n\t\tHttpClientModule,\n\t\tFlexLayoutModule,\n\t\tMatMenuModule,\n\t\tModalModule,\n\t\tCountdownModule,\n\t\tToastrModule.forRoot(),\n\t\tNgMultiSelectDropDownModule.forRoot()\n\t],\n\tentryComponents: [DialogErrorComponent, WebComponentComponent],\n\tproviders: [\n\t\tNetworkService,\n\t\tOpenViduWebrtcService,\n\t\tLocalUsersService,\n\t\tUtilsService,\n\t\tRemoteUsersService,\n\t\tDevicesService,\n\t\tLoggerService,\n\t\tChatService,\n\t\tNotificationService,\n\t\tStorageService,\n\t\tCdkOverlayContainer,\n\t\t{ provide: OverlayContainer, useClass: CdkOverlayContainer },\n\t],\n\tbootstrap: [AppComponent]\n})\nexport class AppModule {\n\tconstructor(private injector: Injector) {\n\t\tconst strategyFactory = new ElementZoneStrategyFactory(WebComponentComponent, this.injector);\n\t\tconst element = createCustomElement(WebComponentComponent, { injector: this.injector, strategyFactory });\n\t\tcustomElements.define('openvidu-webcomponent', element);\n\t}\n\n\tngDoBootstrap() {}\n}\n","import { Component, OnInit } from '@angular/core';\nimport {ApiService} from '../services/api.service';\nimport { Router, ActivatedRoute, ParamMap } from \"@angular/router\";\n// import { THIS_EXPR } from '@angular/compiler/src/output/output_ast';\nimport * as _ from 'lodash';\n\n@Component({\n selector: 'app-conferenceschedule',\n templateUrl: './conferenceschedule.component.html',\n styleUrls: ['./conferenceschedule.component.css']\n})\nexport class ConferencescheduleComponent implements OnInit {\n model: any = {};\n isShowGroup:boolean = false;\n isShowOrganization:boolean = false;\n isShowErp:boolean = false;\n isShowSms:boolean = false;\n groupList: any;\n groupMemberList: any;\n stuinfonew: any[];\n stuinfonewName: any[];\n group:any;\n groupMemebr:any;\n departmentsList: any;\n department: any;\n usersList: any;\n dUser:any;\n courseList: any;\n course:any;\n sessionList: any;\n session: any;\n facultyList: any;\n takenBy:any;\n studentList: any;\n randomIDs: any;\n randomPasswords: any;\n from: string;\n selectedGroup: any;\n selectedGroupName: any;\n dropdownSettings:any;\n selectedID: any;\n selectedDPTname: any;\n module: any;\n takenByList:any;\n groupDropdownSettings: any = {};\n selectedDeptName: any;\n takenByName:any;\n selectedCourseName:any;\n selectedSession:any;\n \n\n // userList: Array = [\"user\", \"system\", \"admin\"];\n // sharedUsers: Array = [];\n // dropdownSettings1: Object = {\n // singleSelection: false,\n // idField: 'item_id',\n // textField: 'item_text',\n // selectAllText: 'Select All',\n // unSelectAllText: 'UnSelect All',\n // itemsShowLimit: 3,\n // allowSearchFilter: true\n // };\n\n \n\n\n\n\n constructor(\n private router: Router,\n private route: ActivatedRoute,\n public ApiServiceCall: ApiService\n ) { \n this.groupList = [];\n this.groupList = [];\n this.departmentsList = [];\n this.groupMemberList = [];\n this.usersList = [];\n this.courseList = [];\n this.sessionList = [];\n this.facultyList = [];\n this.studentList = [];\n this.selectedGroup = [];\n this.selectedGroupName = [];\n this.selectedID = [];\n this.dropdownSettings = {};\n this.takenByList = [];\n this.selectedDPTname = [];\n this.takenByName;\n this.session;\n this.course;\n this.selectedCourseName;\n this.selectedSession;\n\n \n \n // this.selectedDeptName = JSON.stringify(this.module.erpDept);\n\n }\n getDropDownTextForGroupMember(webinarAttendee, object){\n const groupMemberObj = _.filter(object, function (o) {\n return (_.includes(webinarAttendee,o.webinarAttendee));\n });\n return groupMemberObj;\n }\n getDropDownTextForEmp(webinarAttendee, object){\n const EmpObj = _.filter(object, function (o) {\n return (_.includes(webinarAttendee,o.webinarAttendee));\n });\n return EmpObj;\n }\n \n getDropDownTextForCourse(id, object){\n const courseObj = _.filter(object, function (o) {\n return (_.includes(id,o.id));\n });\n return courseObj;\n }\n getDropDownTextForSession(id, object){\n const sessionObj = _.filter(object, function (o) {\n return (_.includes(id,o.id));\n });\n return sessionObj;\n }\n getDropDownTextForFaculty(id, object){\n const facultyObj = _.filter(object, function (o) {\n return (_.includes(id,o.id));\n });\n return facultyObj;\n }\n \n\n ngOnInit(): void {\n this. getAllGroupList();\n this.getAllCourseList();\n this.getAllDepartmentList();\n this.getAllSessionList();\n this.randomIDs = this.makeid(9);\n this.randomPasswords = this.makepassword(6);\n this.dropdownSettings = {\n singleSelection: false,\n idField: 'id',\n textField: 'deptName',\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n allowSearchFilter: true\n };\n this.groupDropdownSettings = {\n singleSelection: false,\n idField: 'groupId',\n textField: 'groupName',\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n limitSelection:'3',\n allowSearchFilter: true\n};\n }\n\n showGroup(){\n this.isShowGroup = true;\n this.isShowOrganization = false;\n this.from = 'Group';\n }\n showOrganization(){\n this.isShowOrganization = true;\n this.isShowGroup = false;\n this.isShowErp = false;\n this.isShowSms = false;\n this.from = 'Organization';\n }\n showErp(){\n this.isShowErp = true;\n this.isShowSms = false;\n this.module = 'ERP'\n \n }\n showSms(){\n this.isShowSms = true;\n this.isShowErp = false;\n this.module = 'SMS'\n \n \n }\n deleteMemeber(index)\n {\n this.stuinfonew.splice(index,1);\n this.stuinfonewName.splice(index,1);\n }\n\n\n takenByGroupMember(gList:any){\n \n this.takenByName = this.getDropDownTextForGroupMember(this.takenBy, gList)[0].webinarAttendeeName;\n console.log('Vishnu'+ this.takenByName);\n }\n \n takenByEmp(empList:any){\n this.takenByName = this.getDropDownTextForEmp(this.takenBy, empList)[0].webinarAttendeeName;\n console.log('Vishnu'+ this.takenByName);\n }\n getCourseName(courseList:any){\n this.selectedCourseName = this.getDropDownTextForCourse(this.course, courseList)[0].name;\n }\n getSessionName(sessionList:any){\n this.selectedSession = this.getDropDownTextForSession(this.session, sessionList)[0].session;\n this.getAllFacultyList();\n }\n takenByFaculty(getFacultyList:any){\n this.takenByName = this.getDropDownTextForFaculty(this.takenBy, getFacultyList)[0].name;\n }\n\n // getAllStudentList(getSessionList:any) {\n // this.stuinfonew = [];\n // this.stuinfonewName = [];\n // this.selectedSession = this.getDropDownTextForSession(this.session, getSessionList)[0].session;\n // var obj = { userId: '11', courseId: this.course, sessionId: this.session };\n // this.ApiServiceCall.getstuData(obj).subscribe((data) => {\n // console.log(data);\n // this.studentList = data.responseValue.studentList;\n \n // for(let i=0; i i.id > 0)[0].deptName;\n // if(this.selectedDPTname.indexOf(item1) !== -1 || this.selectedDPTname.length==0) {\n // this.selectedDPTname.push(item1);\n // }\n // }\n \n console.log(\"Sandeep Sir............\"+this.selectedDPTname);\n this.getMemberListfor();\n \n}\n\ngetMemberListfor()\n {\n this.takenByList = [];\n this.stuinfonew = [];\n this.stuinfonewName = [];\n console.log('sam');\n console.log(this.selectedID);\n \n for(var i=0; i {\n // $(\".loading-overlay\").removeClass(\"is-active\");\n console.log(data['emp']);\n this.usersList = data['emp'];\n\n \n for(let ii=0; ii i.groupId > 0 )[0].groupName;\n // this.selectedGroupName = item2;\n \n // console.log('Kumar.........'+this.selectedGroupName);\n // this.getGroupMemberListfor();\n }\n onGroupDeSelect(gValue:any){\n this.selectedGroup.splice(this.selectedGroup.indexOf(gValue),1);\n this.getGroupMemberListfor();\n // this.selectedGroupName = [];\n // this.takenByName = [];\n }\n\n\n \n getGroupMemberListfor(){\n this.takenByList = [];\n this.stuinfonew = [];\n this.stuinfonewName = []; \n for(var i=0; i {\n // $(\".loading-overlay\").removeClass(\"is-active\");\n console.log(data);\n this.groupMemberList = data.responseValue; \n\n for(let i=0; i {\n this.groupList = data.responseValue;\n console.log(data.responseValue);\n });\n }\n getAllGroupMemberList(group) {\n //console.log('sandeep'+this.getDropDownText(this.group, objList)[0].groupName);\n // this.selectValue = this.getDropDownTextForGroup(this.group, objList)[0].groupName;\n var obj = {groupId: group };\n \n this.ApiServiceCall.showGroupList(obj).subscribe((data) => {\n \n console.log(data);\n this.groupMemberList = data.responseValue;\n console.log(\"Vishnu\" + JSON.stringify(this.groupMemberList));\n \n this.stuinfonew = [];\n this.stuinfonewName = [];\n \n for(let i=0; i {\n this.departmentsList = data['dept'];\n // this.departmentsList = data['id'];\n console.log('departmentsList' + JSON.stringify(this.departmentsList));\n \n });\n \n \n }\n \n getAllUsersList(department) {\n var obj = { deptID: department };\n this.ApiServiceCall.getemployData(obj).subscribe((data) => {\n\n console.log(\"Visnhu\"+data['emp']);\n this.usersList = data['emp'];\n this.stuinfonew = [];\n for(let i=0; i {\n console.log(data.responseValue.courseMaster);\n this.courseList = data.responseValue.courseMaster;\n\n });\n \n }\n getAllSessionList() {\n var obj = { userId: '11' };\n this.ApiServiceCall.getsesData(obj).subscribe((data) => {\n console.log(data.responseValue.sessionMaster);\n this.sessionList = data.responseValue.sessionMaster;\n });\n\n }\n \n getAllFacultyList() {\n this.stuinfonew = [];\n this.stuinfonewName = [];\n var obj = { userId: '11' };\n this.ApiServiceCall.getfacData(obj).subscribe((data) => {\n console.log(data.responseValue.teacherMaster);\n this.facultyList = data.responseValue.teacherMaster;\n for(let i=0; i {\n // $(\".loading-overlay\").removeClass(\"is-active\");\n if(data.responseCode == '1')\n {\n console.log(data.responseMessage);\n alert('success');\n }\n else\n {\n alert(data.responseMessage);\n }\n });\n\n }\n makeid(length) {\n var result = '';\n var characters = '0123456789';\n var charactersLength = characters.length;\n for (var i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n }\n\n makepassword(length) {\n var result = '';\n var characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\n var charactersLength = characters.length;\n for (var i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n }\n\n \n \n // onSubmit(){\n // alert(JSON.stringify(this.model));\n // }\n\n\n}\n","\n
\n
\n
\n
\n \n Conference Schedule Preview\n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Meeting Id {{randomIDs}}
Meeting Password{{randomPasswords}}
Event Title Name{{model.eventTitleC}}
From{{from}}
Group Name

{{grpName.groupName}} ,

Module{{module}}
Department Name

{{dept.deptName}} ,

Taken By{{takenByName}}
Course Name{{selectedCourseName}}
Session {{selectedSession}}
Member's Name\n \n
\n \n \n \n \n \n
\n {{memeber.webinarAttendeeName}}\n \n \n
\n
\n
Start Date{{model.startDateC}}
End Date{{model.endDateC}}
Start Time{{model.startTimeC}}
End Time{{model.endTimeC}}
Note{{model.noteC}}
\n \n \n
\n
\n
\n
\n Create Conference Schedule\n
\n
\n \n
\n
\n
\n \n
\n
Event Title is required
\n
\n
\n\n
\n \n Group \n   \n Organization \n \n \n
\n
\n\n
\n
\n

{{grpName.groupName}} ,

\n \n     \n \n \n
\n
\n \n \n     \n \n \n\n
\n\n
\n
\n \n \n \n \n   \n ERP  \n    \n \n \n \n   \n SMS  \n \n \n \n
\n
\n
\n
\n

{{dept.deptName}} ,

\n \n \n    \n \n\n\n \n
\n
\n \n \n     \n\n \n\n \n \n
\n\n
\n \n    \n \n \n \n \n
\n
\n \n    \n \n \n \n \n
\n
\n \n    \n \n\n \n \n \n
\n
\n \n
\n\n
\n\n
\n\n
\n
\n
\n \n
\n
Start Date is required
\n
\n
\n\n
\n
\n \n
\n \n
\n
End Date is required
\n
\n
\n\n
\n
\n\n
\n
\n
\n \n
\n
Start Time is required
\n
\n \n
\n\n
\n
\n
\n\n \n
\n
Start Time is required
\n
\n\n \n
\n\n
\n
\n \n\n
\n \n \n
\n
Note is required
\n
\n
\n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n
Department Name
\n \n \n
\n \n
\n \n \n \n
\n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
Group Name
\n \n \n
\n \n
\n \n \n \n
\n
\n
\n
\n
\n
\n \n\n\n \n \n
\n\n \n
\n\n\n\n\n","import { Component, OnInit } from '@angular/core';\nimport {ApiService} from '../services/api.service';\n\n@Component({\n selector: 'app-contact',\n templateUrl: './contact.component.html',\n styleUrls: ['./contact.component.css']\n})\nexport class ContactComponent implements OnInit {\n model:any;\n\n constructor(\n public ApiServiceCall: ApiService,\n ) { \n this.model = {};\n }\n\n ngOnInit(): void {\n }\n onSubmit() {\n var obj = {\n name:this.model.fullName, \n mobileNo:this.model.mobileNo,\n email:this.model.email,\n TextMessage:this.model.msg\n }\n this.ApiServiceCall.contactSave(obj).subscribe((data) => {\n alert(data.responseMessage);\n });\n // alert('SUCCESS!! :-)\\n\\n' + JSON.stringify(this.model));\n this.model = {};\n }\n\n}\n","\n
\n\n
\n
\n
\n
\n \n Contact Us\n \n
\n
\n

For questions about our company and service found on our company.

\n
\n
\n
\n
\n

Contact

\n

+91 8957926677

\n

info@criteriontech.in

\n
\n
\n

\n

\n Company address\n
Sarfarazganj, Hardoi Road,\n
Lucknow-226003\n

\n \n
\n
\n
\n \n

Connect With Us

\n \n
\n   \n   \n \n \n \n   \n   \n \n \n
\n
\n \n
\n
\n
\n Get in touch\n
\n \n
\n
\n \n \n
\n
*Full Name is required
\n
\n
\n
\n \n \n
\n
*Email is required
\n
*Email must be a valid email address
\n
\n
\n
\n \n \n
\n
*Message is required
\n
\n \n \n\n
\n
\n \n \n
\n \n \n
\n \n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { NgbModal } from \"@ng-bootstrap/ng-bootstrap\";\nimport { ApiService } from \"../services/api.service\";\nimport { Router, ActivatedRoute, ParamMap } from \"@angular/router\";\n\n@Component({\n selector: 'app-dashboard',\n templateUrl: 'dashboard.component.html',\n styleUrls: ['dashboard.component.css']\n\n})\nexport class DashboardComponent implements OnInit {\n\n hostInfo:any;\n userId: any;\n userName: any;\n webnarAttendList: any;\n attendInfo: any;\n getMeetingID: any;\n webinarMembersList:any;\n\n constructor(\n private router: Router,\n private modalService: NgbModal,\n public ApiServiceCall: ApiService\n ) {\n this.userId = localStorage.getItem('userID');\n this.userName = localStorage.getItem('userName');\n this.hostInfo = [];\n this.attendInfo = [];\n this.webinarMembersList = [];\n }\n\n ngOnInit(): void {\n this.getAllHostList();\n this.getAllAttendList();\n }\n\n \ngetAllHostList(){\n var obj = {userId:this.userId};\n this.ApiServiceCall.getAllHostedList(obj).subscribe((data) => {\n \n console.log(data.responseValue);\n let myData = data.responseValue; \n for (let i=0;i {\n \n console.log(data.responseValue);\n let myData = data.responseValue; \n for (let i=0;i {\n console.log(data.responseValue);\n this.webinarMembersList = data.responseValue;\n \n });\n }\ntoCreateConference(){\n this.router.navigate(['/conferenceschedule']);\n // [routerLink]=\"['/conferenceschedule']\"\n}\n\ndelete(component,item) {\n this.getMeetingID=item;\n console.log('DeleteWebinar', this.getMeetingID);\n this.modalService.open(component);\n}\n\nonDeleteMeeting(){\n var obj ={\n isWebinar:1,\n id: this.getMeetingID.webinarId,\n userId:localStorage.getItem(\"userID\")\n }\n console.log(\"DeleteMeeting\"+ JSON.stringify(obj));\n this.ApiServiceCall.deleteWebinar(obj).subscribe((data) => {\n // this.webnarAttendList.slice(this.webnarAttendList.indexOf(this.getWebinarID),1);\n this.hostInfo.slice(this.hostInfo.indexOf(this.getMeetingID.webinarId),1);\n this.modalService.dismissAll();\n console.log(data.responseMessage);\n // alert('success');\n });\n \n \n}\n\n}\n","\n
\n\n
\n
\n
\n

Scheduled Conference List

\n
\n \n
\n \n \n \n
\n \n
\n \n \n \n \n \n \n
\n \n \n
\n
\n
\n
\n
\n
\n Topic\n

\n {{list.eventName}}\n
\n {{list.startTime}}\n
\n \n \n
\n \n \n Call \n |\n \n \n\n \n \n {{list.webinarAttendeesCount}} Members \n \n
\n
\n
\n \n
\n\n\n
\n
\n \n
\n
\n \n
\n \n
\n
\n \n {{list.startDate}}-{{list.dayName}} | \n \n \n 00.00.00\n \n \n \n
\n
\n    \n \n \n \n \n 0\">\n \n \n \n \n \n \n
\n
\n
\n \n
\n \n
\n \n \n \n
\n \n \n \n \n
\n
\n \n
\n
\n
\n
\n Topic\n

\n {{list.eventName}}\n
\n {{list.startTime}}\n
\n \n
\n \n \n Call \n |\n \n \n \n {{list.webinarAttendeesCount}} Members \n
\n
\n \n
\n \n
\n
\n \n {{list.startDate}}-{{list.dayName}} | \n \n \n 00.00.00\n \n \n \n
\n
\n    \n \n \n \n \n \n 0\">\n \n \n \n \n \n \n
\n
\n
\n
\n \n
\n
\n \n
\n \n
\n\n \n \n
\n
\n
\n
\n
Members Name
\n \n
\n
\n
\n \n

\"Avatar\"\n {{list.name}}

\n \n \n \n \n
\n \n \n \n
\n
\n \n \n
\n
\n
\n
\n\n \n\n \n \n
\n

Alert Messages!!

\n
\n
\n

Do you want to delete this Webinar?…

\n
\n
\n \n \n
\n
\n \n \n
","import { Component, OnInit } from '@angular/core';\nimport {ApiService} from '../services/api.service'\n@Component({\n selector: 'app-feedback',\n templateUrl: './feedback.component.html',\n styleUrls: ['./feedback.component.css']\n})\nexport class FeedbackComponent implements OnInit {\n userId:any;\n model:any;\n\n constructor(\n public ApiServiceCall: ApiService\n ) {\n this.model = {};\n\n }\n\n ngOnInit(): void {\n this.userId = localStorage.getItem('userID');\n }\n sendFeedback(){\n var obj ={\n ratingPoints:this.model.ratingPoints,\n InstituteId:0,\n feedback:this.model.msg,\n userId:this.userId,\n type:1,\n Webnierid:0\n }\n this.ApiServiceCall.sendFeedback(obj).subscribe((data)=>{\n alert(data.responseMessage);\n });\n // alert('SUCCESS!! :-)\\n\\n' + JSON.stringify(this.model));\n this.model = {}; \n\n }\n\n}\n","\n
\n
\n
\n
\n \n Review\n \n
\n
\t\t\n
\n
\n \t\t\t\t\t\t\n \n \n \n \n \n \t\t\t\t\t\t\n \t\t\t\t\t \t\t\t\n

\n

\n \n
\n
\n

\n \n \n
\n
\n \t\t\t\t\t\t\n \n \n \n \n \t\t\t\t\t\t\n \t\t\t\t\t \t\t\t\n \n
\n
\n \n
\n \n
\n
\n
\n Feedback\n
\n
\n
\n \n
\n

How satisfied were you with our Service?

\n \t\t\t\t\n Excellent \n     \n Good \n    \n Neutral \n     \n Poor \n    \n \n


\n

If you have specific feedback, please write to us...

\n \n \n
\n
*feedback is required
\n
\n

\n \n

\n
\n\n
\n
\n
","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute, ParamMap } from \"@angular/router\";\nimport {ApiService} from '../../services/api.service';\n@Component({\n selector: 'app-nav-bar',\n templateUrl: './nav-bar.component.html',\n styleUrls: ['./nav-bar.component.css']\n})\nexport class NavBarComponent implements OnInit {\n\n constructor(\n private router: Router,\n private route: ActivatedRoute,\n public addVideoService: ApiService\n ) { \n\n }\n\n ngOnInit(): void {\n }\n logout(){\n var obj = {\n userId:localStorage.getItem(\"userID\")\n }\n this.addVideoService.logout(obj).subscribe((data) => {\n localStorage.clear();\n this.router.navigate(['']);\n\n });\n }\n\n}\n","\n
\n \n\t\n\t
\n\t\t \"Nature\"\n\t\t \n\t
\n\t \n\t
Logout
\n\t
Setting\n\t\t \n\t\t \n
\n
\n\t User Profile\n\t Feedback\n\t \n
\n \n \n\t\n\t\n
\n\n\n\n","import { Component, OnInit } from '@angular/core';\nimport { FormBuilder, Validators, FormControl } from '@angular/forms';\nimport { Router } from '@angular/router';\nimport { uniqueNamesGenerator, adjectives, colors, animals } from 'unique-names-generator';\n\n@Component({\n\tselector: 'app-home',\n\ttemplateUrl: './home.component.html',\n\tstyleUrls: ['./home.component.css']\n})\nexport class HomeComponent implements OnInit {\n\tpublic roomForm: FormControl;\n\tpublic version = require('../../../package.json').version;\n\n\tconstructor(private router: Router, public formBuilder: FormBuilder) {}\n\n\tngOnInit() {\n\t\tconst randomName = uniqueNamesGenerator({ dictionaries: [adjectives, colors, animals], separator: '-', });\n\t\tthis.roomForm = new FormControl(randomName, [Validators.minLength(4), Validators.required]);\n\t}\n\n\tpublic goToVideoCall() {\n\t\tif (this.roomForm.valid) {\n\t\t\tconst roomName = this.roomForm.value.replace(/ /g, '-'); // replace white spaces by -\n\t\t\tthis.roomForm.setValue(roomName);\n\t\t\tthis.router.navigate(['/', roomName]);\n\t\t}\n\t}\n}\n","
\n\t\n\t\t\n\t\t\t\"OpenVidu\n\t\t\n\t\t
\n\t\t\t{{ version }}\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t\"OpenVidu\n\t\t\t

Videoconference rooms in one click

\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\tRoom name is required\n\t\t\t
\n\t\t\t
\n\t\t\t\tRoom name is too short!\n\t\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t
\n\n\n\t\n\t\t\n\t\t\tPhoto by\n\t\t\t\n\t\t\t\tDaniel Leone\n\t\t\t\n\t\t\ton\n\t\t\t\n\t\t\t\tUnsplash\n\t\t\t\n\t\n
\n","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute, ParamMap } from \"@angular/router\";\nimport { ApiService } from \"../services/api.service\";\n\n@Component({\n selector: 'app-join-meeting',\n templateUrl: './join-meeting.component.html',\n styleUrls: ['./join-meeting.component.css']\n})\nexport class JoinMeetingComponent implements OnInit {\n meetingID:any;\n password:any;\n constructor(\n private route: ActivatedRoute,\n private router: Router,\n public ApiServiceCall: ApiService,\n\n ) {\nthis.meetingID;\nthis.password;\n\n }\n\n ngOnInit(): void {\n }\n\n onJoinMeeting() {\n\n var obj = {\n meetingId: this.meetingID,\n password: this.password,\n isAudioEnabled: 1,\n isVideoEnabled: 1\n };\n this.ApiServiceCall.joinMeeting(obj).subscribe((data) => {\n \n this.router.navigate(['meeting/'+this.meetingID]);\n \n });\n \n }\n \n}\n","\n
\n
\n
\n
\n
\n \n
Join Meeting
\n
\n
\n \n \n \n \n \n \n \n \n
\n \n
\n \n
\n
\n
\n \n \n
\n\n
","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute, ParamMap } from \"@angular/router\";\nimport { data } from 'jquery';\nimport { ApiService } from \"../services/api.service\";\nimport * as $ from \"jquery\";\n\n@Component({\n selector: 'app-joinmeeting',\n templateUrl: './joinmeeting.component.html',\n styleUrls: ['./joinmeeting.component.css']\n})\nexport class JoinmeetingComponent implements OnInit {\n model:any;\n\n constructor(\n private route: ActivatedRoute,\n private router: Router,\n public ApiServiceCall: ApiService,\n ) {\n this.model = {};\n }\n\n ngOnInit(): void {\n }\n joinMeeting(){\n var obj = {\n meetingId: this.model.ID,\n password: this.model.password,\n userId:localStorage.getItem(\"userID\"),\n isAudioEnabled: 1,\n isVideoEnabled: 1\n };\n $('.loading-overlay').addClass('is-active');\n this.ApiServiceCall.joinMeeting(obj).subscribe((data) => {\n $('.loading-overlay').removeClass('is-active');\n localStorage.setItem('meetingId',this.model.ID);\n //alert(\"Join Meeting:-\\n\\n\" + JSON.stringify(this.model));\n // alert(data.responseMessage);\n // this.router.navigate(['meeting/'+ this.model.ID]);\n this.router.navigate(['videoroommeeting/'+this.model.ID]);\n });\n\n }\n\n}\n","\n\n
\n\n\t
\n\t\t
\n\n\t\t\t\n\t\t
\n\t
\n\n\t\tJoin Meeting\n\t\t
\n\t\t
\n\t\t

Use Meeting ID and Password you received

\n\t\t\t\t

to join meeting

\n\n
\t\t\t \n
\n\t
\n\t
\n\t \n\t
\n\t\t\n\t
\n\n\n\t
\n\t
\n\t
\n\t\n\t
\n
\n\n
\n \n
\n
\n \n
\n\t\n
\n
\n
\n
\n \n
\n
\n\n
\n \n
\n\t \n\t\t \n\t\t    \n\t Enable Video\n\t    \n\t \n\n
\n\n
\n
\n \n
\n\t \n\t\t \n\t\t       \n\t Enable Audio\n\t     \n\t \n\n
\n \n
\n
\n
\n\t \n
\n
\n
\n
\n\n
\n\t\n
\n\n\t\n
\n
","import { Component,Optional, OnInit } from '@angular/core';\nimport {ApiService} from '../services/api.service';\nimport { Router, ActivatedRoute, ParamMap } from \"@angular/router\";\nimport { ToastrService } from 'ngx-toastr';\nimport * as _ from 'lodash';\nimport * as $ from \"jquery\";\n// import {NgForm} from '@angular/forms';\n// import { ControlContainer, NgForm } from '@angular/forms';\n\n\n\n@Component({\n selector: 'app-livewebinar',\n templateUrl: './livewebinar.component.html',\n styleUrls: ['./livewebinar.component.css']\n})\nexport class LivewebinarComponent implements OnInit {\n model: any = {};\n isShowGroup:boolean = false;\n isShowOrganization:boolean = false;\n isShowErp:boolean = false;\n isShowSms:boolean = false;\n groupList: any;\n group:any;\n groupMemebr:any;\n groupMemberList: any;\n stuinfonew: any[];\n stuinfonewName: any[];\n departmentsList: any;\n department: any;\n usersList: any;\n dUser:any;\n courseList: any;\n course:any;\n sessionList: any;\n session: any;\n facultyList: any;\n takenBy:any;\n studentList: any;\n from: any;\n module:any;\n randomIDs: any;\n randomPasswords: any;\n groupDropdownSettings: any = {};\n selectedGroup: any;\n selectedGroupName: any;\n takenByList: any[];\n selectedID: any;\n dropdownSettings:any;\n selectedDeptName: any;\n takenByName:any;\n selectedCourseName:any;\n selectedSession:any;\n\n constructor(\n private router: Router,\n private route: ActivatedRoute,\n public ApiServiceCall: ApiService,\n private toastrService:ToastrService\n \n ) { \n this.groupList = [];\n this.departmentsList = [];\n this.groupMemberList = [];\n this.usersList = [];\n this.courseList = [];\n this.sessionList = [];\n this.facultyList = [];\n this.studentList = [];\n this.selectedGroup = [];\n this.selectedGroupName = [];\n this.selectedID = [];\n this.dropdownSettings = {};\n this.takenByName;\n this.session;\n this.course;\n this.selectedCourseName;\n this.selectedSession;\n \n }\n getDropDownTextForGroupMember(webinarAttendee, object){\n const groupMemberObj = _.filter(object, function (o) {\n return (_.includes(webinarAttendee,o.webinarAttendee));\n });\n return groupMemberObj;\n }\n getDropDownTextForEmp(webinarAttendee, object){\n const EmpObj = _.filter(object, function (o) {\n return (_.includes(webinarAttendee,o.webinarAttendee));\n });\n return EmpObj;\n }\n \n getDropDownTextForCourse(id, object){\n const courseObj = _.filter(object, function (o) {\n return (_.includes(id,o.id));\n });\n return courseObj;\n }\n getDropDownTextForSession(id, object){\n const sessionObj = _.filter(object, function (o) {\n return (_.includes(id,o.id));\n });\n return sessionObj;\n }\n getDropDownTextForFaculty(id, object){\n const facultyObj = _.filter(object, function (o) {\n return (_.includes(id,o.id));\n });\n return facultyObj;\n }\n \n\n ngOnInit(): void {\n this.getAllGroupList();\n this.getAllDepartmentList();\n this.getAllCourseList();\n this.getAllSessionList();\n // this.getAllFacultyList();\n this.randomIDs = this.makeid(9);\n this.randomPasswords = this.makepassword(6);\n\n this.groupDropdownSettings = {\n singleSelection: false,\n idField: 'groupId',\n textField: 'groupName',\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n limitSelection:'3',\n allowSearchFilter: true\n };\n this.dropdownSettings = {\n singleSelection: false,\n idField: 'id',\n textField: 'deptName',\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n allowSearchFilter: true\n};\n \n }\n\n\n\n\n deleteMemeber(index)\n {\n this.stuinfonew.splice(index,1);\n this.stuinfonewName.splice(index,1);\n }\n \n takenByGroupMember(gList:any){\n \n this.takenByName = this.getDropDownTextForGroupMember(this.takenBy, gList)[0].webinarAttendeeName;\n console.log('Vishnu'+ this.takenByName);\n }\n \n takenByEmp(empList:any){\n this.takenByName = this.getDropDownTextForEmp(this.takenBy, empList)[0].webinarAttendeeName;\n console.log('Vishnu'+ this.takenByName);\n }\n getCourseName(courseList:any){\n this.selectedCourseName = this.getDropDownTextForCourse(this.course, courseList)[0].name;\n }\n getSessionName(sessionList:any){\n this.selectedSession = this.getDropDownTextForSession(this.session, sessionList)[0].session;\n this.getAllFacultyList();\n }\n takenByFaculty(getFacultyList:any){\n this.takenByName = this.getDropDownTextForFaculty(this.takenBy, getFacultyList)[0].name;\n }\n\n\n onGroupSelect(gValue:any){\n console.log(\"Vishnu\"+gValue);\n this.selectedGroup.push(gValue);\n \n // let item2 = this.selectedGroup.filter(i => i.groupId > 0 )[0].groupName;\n // this.selectedGroupName = item2;\n \n // console.log('Kumar.........'+this.selectedGroupName);\n // this.getGroupMemberListfor();\n }\n onGroupDeSelect(gValue:any){\n this.selectedGroup.splice(this.selectedGroup.indexOf(gValue),1);\n this.getGroupMemberListfor();\n // this.selectedGroupName = [];\n // this.takenByName = [];\n }\n \n \n getGroupMemberListfor(){\n this.takenByList = [];\n this.stuinfonew = [];\n this.stuinfonewName = []; \n for(var i=0; i {\n // $(\".loading-overlay\").removeClass(\"is-active\");\n console.log(data);\n this.groupMemberList = data.responseValue; \n\n for(let i=0; i {\n // $(\".loading-overlay\").removeClass(\"is-active\");\n console.log(data['emp']);\n this.usersList = data['emp'];\n\n \n for(let ii=0; ii {\n this.groupList = data.responseValue;\n console.log(data.responseValue);\n });\n }\n\n\n\n getAllGroupMemberList(group) {\n //console.log('sandeep'+this.getDropDownText(this.group, objList)[0].groupName);\n // this.selectValue = this.getDropDownTextForGroup(this.group, objList)[0].groupName;\n var obj = {groupId: group };\n \n this.ApiServiceCall.showGroupList(obj).subscribe((data) => {\n \n console.log(data);\n this.groupMemberList = data.responseValue;\n console.log(\"Vishnu\" + JSON.stringify(this.groupMemberList));\n \n this.stuinfonew = [];\n this.stuinfonewName = [];\n \n for(let i=0; i {\n this.departmentsList = data['dept'];\n // this.departmentsList = data['id'];\n // console.log('departmentsList' + JSON.stringify(this.departmentsList));\n \n });\n \n \n }\n \n getAllUsersList(department) {\n var obj = { deptID: department };\n this.ApiServiceCall.getemployData(obj).subscribe((data) => {\n\n console.log(\"Visnhu\"+data['emp']);\n this.usersList = data['emp'];\n this.stuinfonew = [];\n for(let i=0; i {\n console.log(data.responseValue.courseMaster);\n this.courseList = data.responseValue.courseMaster;\n\n });\n }\n \n getAllSessionList() {\n var obj = { userId: '11' };\n this.ApiServiceCall.getsesData(obj).subscribe((data) => {\n console.log(data.responseValue.sessionMaster);\n this.sessionList = data.responseValue.sessionMaster;\n });\n\n }\n \n \n getAllFacultyList() {\n this.stuinfonew = [];\n this.stuinfonewName = [];\n var obj = { userId: '11' };\n this.ApiServiceCall.getfacData(obj).subscribe((data) => {\n console.log(data.responseValue.teacherMaster);\n this.facultyList = data.responseValue.teacherMaster;\n for(let i=0; i {\n console.log(data);\n this.studentList = data.responseValue.studentList;\n this.stuinfonew = [];\n this.stuinfonewName = [];\n for(let i=0; i {\n $('.loading-overlay').removeClass('is-active');\n\n console.log(data.responseMessage);\n alert('success');\n this.toastrService.success('Success!!');\n\n });\n \n }\n\n\n\n\n\n // onSubmit(){\n \n // alert('SUCCESS!! :-)\\n\\n' + JSON.stringify(this.model));\n\n // }\n showGroup(){\n this.isShowGroup = true;\n this.isShowOrganization = false;\n this.from = 'Group';\n }\n showOrganization(){\n this.isShowOrganization = true;\n this.isShowGroup = false;\n this.isShowErp = false;\n this.isShowSms = false;\n this.from = 'Organization';\n }\n showErp(){\n this.isShowErp = true;\n this.isShowSms = false;\n this.module = 'ERP'\n \n }\n showSms(){\n this.isShowSms = true;\n this.isShowErp = false;\n this.module = 'SMS'\n \n }\n makeid(length) {\n var result = '';\n var characters = '0123456789';\n var charactersLength = characters.length;\n for (var i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n }\n\n makepassword(length) {\n var result = '';\n var characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\n var charactersLength = characters.length;\n for (var i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n }\n\n}\n","\n
\n\n
\n
\n
\n \n Live Webinar Preview\n \n
\n
\n\n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n\n \n \n \n \n \n \n\n \n \n \n \n\n\n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n
Meeting Id {{randomIDs}}
Meeting Password{{randomPasswords}}
Event Title Name{{model.eventTitleLW}}
From{{from}}
Group Name

{{grpName.groupName}} ,

Module{{module}}
Department Name

{{dept.deptName}} ,

Taken By{{takenByName}}
Course Name{{selectedCourseName}}
Session {{selectedSession}}
Member's Name\n\n
\n\n\n \n \n\n\n
\n{{memeber.webinarAttendeeName}}\n\n \n \n
\n\n
\n\n
Start Date{{model.startDateLW}}
End Date{{model.endDateLW}}
Start Time{{model.startTimeLW}}
End Time{{model.endTimeLW}}
Note{{model.noteLW}}
\n\n
\n\n\n
\n
\n
\n Create Live Webinar\n
\n
\n \n
\n
\n
\n \n
\n
Event Title is required
\n
\n
\n
\n \n Group \n   \n Organization \n \n \n
\n
\n
\n
\n
\n

{{grpName.groupName}} ,

\n \n    \n \n \n
\n
\n\n \n    \n \n \n\n
\n
\n
\n \n \n \n \n   \n ERP  \n    \n \n \n \n   \n SMS  \n \n\n \n
\n
\n
\n
\n

{{dept.deptName}} ,

\n \n\n    \n \n\n\n \n
\n
\n\n \n    \n\n \n\n \n\n\n
\n\n
\n \n    \n\n \n\n \n
\n
\n \n    \n\n \n\n \n
\n
\n \n    \n\n\n \n\n \n
\n
\n\n\n
\n\n
\n\n
\n\n
\n
\n
\n \n
\n
Start Date is required
\n
\n
\n\n
\n
\n \n
\n \n
\n
End Date is required
\n
\n
\n\n
\n
\n\n
\n
\n
\n \n
\n
Start Time is required
\n
\n \n
\n\n
\n
\n
\n\n \n
\n
Start Time is required
\n
\n\n \n
\n\n
\n
\n\n\n
\n \n \n
\n
Note is required
\n
\n
\n \n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n
Group Name
\n\n \n
\n\n
\n \n \n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Department Name
\n\n \n
\n\n
\n \n \n\n
\n
\n
\n
\n
\n
\n\n
\n\n \n
\n\n\n\n\n\n\n\n
\n
\n\n\n\n","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute, ParamMap } from \"@angular/router\";\nimport { ApiService } from \"../services/api.service\";\nimport { ToastrService } from 'ngx-toastr';\nimport * as $ from \"jquery\";\n\n\n//import { ToastrService } from \"ngx-toastr\";\n// import { map } from \"jquery\";\n// import * as $ from \"jquery\";\n// import { from } from 'rxjs';\n\n@Component({\n selector: \"app-login\",\n templateUrl: \"./login.component.html\",\n styleUrls: [\"./login.component.css\"]\n})\nexport class LoginComponent implements OnInit {\n\n loginUserData:any\n alert:boolean=false;\n email:any;\n password:any;\n loginModel:any;\n signUpModel:any;\n isShowLogin:boolean = true;\n isShowForgetPassword:boolean = false;\n isShowSignUp:boolean = false;\n isShowOtp:boolean = false;\n\n constructor(\n private router: Router,\n public addVideoService: ApiService,\n private toastrService:ToastrService\n ) {\n this.loginModel = {};\n this.signUpModel = {};\n }\n\n ngOnInit(): void {\n\n if(localStorage.getItem('accessToken') !=null && localStorage.getItem('userID') != null && localStorage.getItem('userName') != null)\n{\n // this.router.navigate(['']);\n this.router.navigate(['']);\n}\n }\n\n\n onLogin() {\n\n if ( this.addVideoService.isEmptyValue(this.loginModel.userID) || this.addVideoService.isEmptyValue(this.loginModel.password)) {\n this.alert=true;\n this.toastrService.error('Login Error!!');\n return;\n } else {\n\n var obj = {\n email:this.loginModel.userID,\n password:this.loginModel.password\n }\n console.log(\"SandeepSir\",obj);\n $('.loading-overlay').addClass('is-active');\n // alert('vishnu');\n this.addVideoService.checkLogin(obj).subscribe((data) => {\n//alert(data.responseCode);\n console.log('sandeep');\n console.log(data);\n var logindetails = data.responseValue[0];\n localStorage.setItem('accessToken',logindetails.accessToken);\n localStorage.setItem('userID',JSON.stringify(data.responseValue[0].userId));\n localStorage.setItem('userName',JSON.stringify(data.responseValue[0].name));\n this.router.navigate(['./dashboard']);\n $('.loading-overlay').removeClass('is-active');\n\n },\n\n (error) => { //Error callback\n console.error('error caught in component')\n this.toastrService.error('Login Error!!Check Username or Password');\n $('.loading-overlay').removeClass('is-active');\n\n //throw error; //You can also throw the error to a global error handler\n }\n\n );\n }\n }\n onSendOtp(){\n\n var obj = {\n mobileNo:this.signUpModel.mobileNo,\n email:this.signUpModel.email\n }\n console.log(\"Vishnu\",obj);\n this.addVideoService.sendOtp(obj).subscribe((data) => {\n console.log(obj);\n alert('Send otp');\n alert(data.responseMessage);\n\n\n\n });\n\n\n this.isShowOtp=true;\n this.isShowSignUp=false;\n this.isShowForgetPassword = false;\n\n }\n resendOtp(){\n var obj = {\n mobileNo:this.signUpModel.mobileNo,\n email:this.signUpModel.email\n }\n alert(JSON.stringify(obj));\n // this.addVideoService.sendOtp(obj).subscribe((data) => {\n // console.log(obj);\n // alert('Resend otp');\n // alert(data.responseMessage);\n\n // });\n\n }\n\n\n\n showSignUp(){\n this.isShowLogin = false;\n this.isShowForgetPassword = false;\n this.isShowSignUp = true;\n }\n onSubmit(){\n var obj = {\n email:this.loginModel.email\n }\n alert(\"Your mailID:- \"+ JSON.stringify(this.loginModel.email));\n console.log(obj);\n\n this.addVideoService.forgetpassword(obj).subscribe((data) => {\n if(data.responseMessage == \" Email Not Exists\")\n {\n console.log(\"helo\");\n\n }else\n {\n console.log(\"Reset your password successfully!\");\n }\n\n\n });\n\n this.isShowLogin=true;\n this.isShowForgetPassword = false;\n\n }\n onSignUp(){\n\n console.log(JSON.stringify(this.signUpModel));\n this.addVideoService.signUp(this.signUpModel).subscribe((data) => {\n if(data.responseMessage === \"success\"){\n console.log(data.responseMessage);\n }\n else{\n alert(\"Enter Correct OTP\");\n }\n\n });\n this.isShowLogin=true;\n this.isShowOtp=false;\n this.signUpModel = {};\n this.isShowForgetPassword = false;\n\n\n\n }\n showForgetPassword(){\n this.isShowForgetPassword = true;\n this.isShowLogin=false;\n\n }\n\n showLogin(){\n this.isShowLogin=true;\n this.isShowSignUp=false;\n this.isShowForgetPassword = false;\n }\n\n\n}\n","\n
\n
\n
\n
\n
\n \n\n
SIGN IN
\n
\n
\n \n
\n \n
\n
*UserID is required
\n
\n \n \n
\n
*Password is required
\n
\n \n \n\n
\n
\n

Forgot password?

\n\n

Login With                                        \"go\"      \"face\"

\n\n
\n
\n
\n
\n
\n \n \n Sign Up,If new here! \n\n
\n
\n
\n
\n
\n
\n \n \n
Forget Password
\n
\n
\n \n
\n\n \n
\n
*Email is required
\n
*Email must be a valid email address
\n
\n \n \n \n \n\n \n \n
\n\n
\n \n\n \n\n
\n \n
\n
\n
\n
\n\n \n Sign In \n\n
\n\n \n
\n\n \n
\n\n \n
\n
\n
\n
\n
\n \n
SIGN UP
\n
\n
\n
\n \n
\n \n
\n \n \n
\n \n
*Email must be a valid email address
\n
\n \n \n
\n \n
\n \n \n
\n \n
\n \n \n
\n
\n \n
\n
\n
\n
\n
\n \n Sign In, Already have an account \n\n
\n\n\n
\n
\n
\n
\n
\n \n
OTP Verification
\n
\n
\n \n Enter the OTP sent to +91-{{signUpModel.mobileNo}}\n \n\n
\n \n \n
\n
*OTP is required
\n
\n \n
\n
\n
\n \n Dont Recieve OTP? RESEND OTP\n \n
\n \n \n\n
\n
\n \n
\n \n
\n
\n
\n \n \n
\n \n
\n\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-logout',\n templateUrl: './logout.component.html',\n styleUrls: ['./logout.component.css']\n})\nexport class LogoutComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","

logout works!

\n","import { Component, EventEmitter, HostListener, Input, OnDestroy, OnInit, Output, ViewChild } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { Router } from '@angular/router';\nimport {\n\tPublisher,\n\tSubscriber,\n\tSession,\n\tStreamEvent,\n\tStreamPropertyChangedEvent,\n\tSessionDisconnectedEvent,\n\tPublisherSpeakingEvent,\n\tConnectionEvent\n} from 'openvidu-browser';\nimport { UserModel } from '../shared/models/user-model';\nimport { ChatComponent } from '../shared/components/chat/chat.component';\nimport { OvSettingsModel } from '../shared/models/ovSettings';\nimport { ScreenType, VideoType } from '../shared/types/video-type';\nimport { ILogger } from '../shared/types/logger-type';\nimport { LayoutType } from '../shared/types/layout-type';\nimport { Theme } from '../shared/types/webcomponent-config';\nimport { ExternalConfigModel } from '../shared/models/external-config';\nimport { Storage } from '../shared/types/storage-type';\nimport {TakenByModel} from \"../_models/takenBy\";\n\n// Services\nimport { DevicesService } from '../shared/services/devices/devices.service';\nimport { LoggerService } from '../shared/services/logger/logger.service';\nimport { RemoteUsersService } from '../shared/services/remote-users/remote-users.service';\nimport { UtilsService } from '../shared/services/utils/utils.service';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { ChatService } from '../shared/services/chat/chat.service';\nimport { UserName } from '../shared/types/username-type';\nimport { StorageService } from '../shared/services/storage/storage.service';\nimport { OpenViduLayoutService } from '../shared/services/layout/layout.service';\nimport { TokenService } from '../shared/services/token/token.service';\nimport { LocalUsersService } from '../shared/services/local-users/local-users.service';\nimport { OpenViduWebrtcService } from '../shared/services/openvidu-webrtc/openvidu-webrtc.service';\n\n@Component({\n\tselector: 'app-video-room',\n\ttemplateUrl: './meeting-room.component.html',\n\tstyleUrls: ['./meeting-room.component.css']\n})\nexport class MeetingRoomComponent implements OnInit, OnDestroy {\n\t// Config from webcomponent or angular-library\n\t@Input() externalConfig: ExternalConfigModel;\n\t@Output() _session = new EventEmitter();\n\t@Output() _publisher = new EventEmitter();\n\t@Output() _error = new EventEmitter();\n\n\t// !Deprecated\n\t@Output() _joinSession = new EventEmitter();\n\t// !Deprecated\n\t@Output() _leaveSession = new EventEmitter();\n\n\t@ViewChild('chatComponent') chatComponent: ChatComponent;\n\t@ViewChild('sidenav') chatSidenav: MatSidenav;\n\n\tovSettings: OvSettingsModel;\n\tcompact = false;\n\tsidenavMode: 'side' | 'over' = 'side';\n\tlightTheme: boolean;\n\tshowConfigRoomCard = true;\n\tsession: Session;\n\tsessionScreen: Session;\n\tlocalUsers: UserModel[] = [];\n\tremoteUsers: UserModel[] = [];\n\tremoteUsersForPart: UserModel[] = [];\n\tparticipantsNameList: UserName[] = [];\n\tisConnectionLost: boolean;\n\tisAutoLayout = false;\n\thasVideoDevices: boolean;\n\thasAudioDevices: boolean;\n\tprivate log: ILogger;\n\tprivate oVUsersSubscription: Subscription;\n\tprivate remoteUsersSubscription: Subscription;\n\tprivate chatSubscription: Subscription;\n\tprivate remoteUserNameSubscription: Subscription;\n\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate utilsSrv: UtilsService,\n\t\t//private takenBy : TakenByModel,\n\t\tprivate remoteUsersService: RemoteUsersService,\n\t\tprivate openViduWebRTCService: OpenViduWebrtcService,\n\t\tprivate localUsersService: LocalUsersService,\n\t\tprivate oVDevicesService: DevicesService,\n\t\tprivate loggerSrv: LoggerService,\n\t\tprivate chatService: ChatService,\n\t\tprivate storageSrv: StorageService,\n\t\tprivate oVLayout: OpenViduLayoutService,\n\t\tprivate tokenService: TokenService\n\t) {\n\t\tthis.log = this.loggerSrv.get('VideoRoomComponent');\n\t}\n\n\t@HostListener('window:beforeunload')\n\tbeforeunloadHandler() {\n\t\tthis.leaveSession();\n\t}\n\n\t@HostListener('window:resize')\n\tsizeChange() {\n\t\tthis.oVLayout.update();\n\t\tthis.checkSizeComponent();\n\t}\n\n\tasync ngOnInit() {\n alert('on');\n\t\tthis.localUsersService.initialize();\n\t\tthis.openViduWebRTCService.initialize();\n\n\t\tthis.lightTheme = this.externalConfig?.getTheme() === Theme.LIGHT;\n\t\tthis.ovSettings = !!this.externalConfig ? this.externalConfig.getOvSettings() : new OvSettingsModel();\n\t\tthis.ovSettings.setScreenSharing(this.ovSettings.hasScreenSharing() && !this.utilsSrv.isMobile());\n\t}\n\n\tngOnDestroy() {\n\t\t// Reconnecting session is received in Firefox\n\t\t// To avoid 'Connection lost' message uses session.off()\n\t\tthis.session?.off('reconnecting');\n\t\tthis.remoteUsersService.clear();\n\t\tthis.oVLayout.clear();\n\t\tthis.localUsersService.clear();\n\t\tthis.session = null;\n\t\tthis.sessionScreen = null;\n\t\tthis.localUsers = [];\n\t\tthis.remoteUsers = [];\n\t\tthis.remoteUsersForPart = [];\n\t\tif (this.oVUsersSubscription) {\n\t\t\tthis.oVUsersSubscription.unsubscribe();\n\t\t}\n\t\tif (this.remoteUsersSubscription) {\n\t\t\tthis.remoteUsersSubscription.unsubscribe();\n\t\t}\n\t\tif (this.chatSubscription) {\n\t\t\tthis.chatSubscription.unsubscribe();\n\t\t}\n\t\tif (this.remoteUserNameSubscription) {\n\t\t\tthis.remoteUserNameSubscription.unsubscribe();\n\t\t}\n\t}\n\n\tonConfigRoomJoin() {\n\t\tthis.hasVideoDevices = this.oVDevicesService.hasVideoDeviceAvailable();\n\t\tthis.hasAudioDevices = this.oVDevicesService.hasAudioDeviceAvailable();\n\t\tthis.showConfigRoomCard = false;\n\t\tthis.subscribeToLocalUsers();\n\t\tthis.subscribeToRemoteUsers();\n\t\tthis.tokenService.initialize(this.ovSettings);\n\n\t\tsetTimeout(() => {\n\t\t\tthis.oVLayout.initialize();\n\t\t\tthis.checkSizeComponent();\n\t\t\tthis.joinToSession();\n\t\t}, 50);\n\t}\n\n\tasync joinToSession() {\n\t\tthis.openViduWebRTCService.initSessions();\n\t\tthis.session = this.openViduWebRTCService.getWebcamSession();\n\t\tthis._session.emit(this.session);\n\t\tthis.sessionScreen = this.openViduWebRTCService.getScreenSession();\n\t\tthis.subscribeToConnectionCreatedAndDestroyed();\n\t\tthis.subscribeToStreamCreated();\n\t\tthis.subscribeToStreamDestroyed();\n\t\tthis.subscribeToStreamPropertyChange();\n\t\tthis.subscribeToNicknameChanged();\n\t\tthis.chatService.setChatComponent(this.chatSidenav);\n\t\tthis.chatService.subscribeToChat();\n\t\tthis.subscribeToChatComponent();\n\t\tthis.subscribeToReconnection();\n\t\tawait this.connectToSession();\n\t\t// Workaround, firefox does not have audio when publisher join with muted camera\n\t\tif (this.utilsSrv.isFirefox() && !this.localUsersService.hasWebcamVideoActive()) {\n\t\t\tthis.openViduWebRTCService.publishWebcamVideo(true);\n\t\t\tthis.openViduWebRTCService.publishWebcamVideo(false);\n\t\t}\n\t}\n\n\tleaveSession() {\n\t\tthis.log.d('Leaving session...');\n\t\tthis.openViduWebRTCService.disconnect();\n\t\tthis.router.navigate(['']);\n\t\tthis._leaveSession.emit();\n\t}\n\n\tonNicknameUpdate(nickname: string) {\n\t\tthis.localUsersService.updateUsersNickname(nickname);\n\t\tthis.storageSrv.set(Storage.USER_NICKNAME, nickname);\n\t\tthis.openViduWebRTCService.sendNicknameSignal();\n\t}\n\n\ttoggleMic() {\n\t\tif (this.localUsersService.isWebCamEnabled()) {\n\t\t\tthis.openViduWebRTCService.publishWebcamAudio(!this.localUsersService.hasWebcamAudioActive());\n\t\t\treturn;\n\t\t}\n\t\tthis.openViduWebRTCService.publishScreenAudio(!this.localUsersService.hasScreenAudioActive());\n\t}\n\n\tasync toggleCam() {\n\t\tconst publishVideo = !this.localUsersService.hasWebcamVideoActive();\n\n\t\t// Disabling webcam\n\t\tif (this.localUsersService.areBothConnected()) {\n\t\t\tthis.openViduWebRTCService.publishWebcamVideo(publishVideo);\n\t\t\tthis.localUsersService.disableWebcamUser();\n\t\t\tthis.openViduWebRTCService.unpublishWebcamPublisher();\n\t\t\treturn;\n\t\t}\n\t\t// Enabling webcam\n\t\tif (this.localUsersService.isOnlyScreenConnected()) {\n\t\t\tconst hasAudio = this.localUsersService.hasScreenAudioActive();\n\n\t\t\tif (!this.openViduWebRTCService.isWebcamSessionConnected()) {\n\t\t\t\tawait this.connectWebcamSession();\n\t\t\t}\n\t\t\tawait this.openViduWebRTCService.publishWebcamPublisher();\n\t\t\tthis.openViduWebRTCService.publishScreenAudio(false);\n\t\t\tthis.openViduWebRTCService.publishWebcamAudio(hasAudio);\n\t\t\tthis.localUsersService.enableWebcamUser();\n\t\t}\n\t\t// Muting/unmuting webcam\n\t\tthis.openViduWebRTCService.publishWebcamVideo(publishVideo);\n\t}\n\n\tasync toggleScreenShare() {\n\t\t// Disabling screenShare\n\t\tif (this.localUsersService.areBothConnected()) {\n\t\t\tthis.removeScreen();\n\t\t\treturn;\n\t\t}\n\n\t\t// Enabling screenShare\n\t\tif (this.localUsersService.isOnlyWebcamConnected()) {\n\t\t\tconst screenPublisher = this.initScreenPublisher();\n\n\t\t\tscreenPublisher.once('accessAllowed', async (event) => {\n\t\t\t\t// Listen to event fired when native stop button is clicked\n\t\t\t\tscreenPublisher.stream\n\t\t\t\t\t.getMediaStream()\n\t\t\t\t\t.getVideoTracks()[0]\n\t\t\t\t\t.addEventListener('ended', () => {\n\t\t\t\t\t\tthis.log.d('Clicked native stop button. Stopping screen sharing');\n\t\t\t\t\t\tthis.toggleScreenShare();\n\t\t\t\t\t});\n\t\t\t\tthis.log.d('ACCESS ALOWED screenPublisher');\n\t\t\t\tthis.localUsersService.enableScreenUser(screenPublisher);\n\n\t\t\t\tif (!this.openViduWebRTCService.isScreenSessionConnected()) {\n\t\t\t\t\tawait this.connectScreenSession();\n\t\t\t\t}\n\t\t\t\tawait this.openViduWebRTCService.publishScreenPublisher();\n\t\t\t\tthis.openViduWebRTCService.sendNicknameSignal();\n\t\t\t\tif (!this.localUsersService.hasWebcamVideoActive()) {\n\t\t\t\t\t// Disabling webcam\n\t\t\t\t\tthis.localUsersService.disableWebcamUser();\n\t\t\t\t\tthis.openViduWebRTCService.unpublishWebcamPublisher();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tscreenPublisher.once('accessDenied', (event) => {\n\t\t\t\tthis.log.w('ScreenShare: Access Denied');\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\n\t\t// Disabling screnShare and enabling webcam\n\t\tconst hasAudio = this.localUsersService.hasScreenAudioActive();\n\t\tawait this.openViduWebRTCService.publishWebcamPublisher();\n\t\tthis.openViduWebRTCService.publishScreenAudio(false);\n\t\tthis.openViduWebRTCService.publishWebcamAudio(hasAudio);\n\t\tthis.localUsersService.enableWebcamUser();\n\t\tthis.removeScreen();\n\t}\n\n\ttoggleSpeakerLayout() {\n\t\tif (!this.localUsersService.isScreenShareEnabled()) {\n\t\t\tthis.isAutoLayout = !this.isAutoLayout;\n\n\t\t\tthis.log.d('Automatic Layout ', this.isAutoLayout ? 'Disabled' : 'Enabled');\n\t\t\tif (this.isAutoLayout) {\n\t\t\t\tthis.subscribeToSpeechDetection();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.log.d('Unsubscribe to speech detection');\n\t\t\tthis.session.off('publisherStartSpeaking');\n\t\t\tthis.resetAllBigElements();\n\t\t\tthis.oVLayout.update();\n\t\t\treturn;\n\t\t}\n\t\tthis.log.w('Screen is enabled. Speech detection has been rejected');\n\t}\n\n\tonReplaceScreenTrack(event) {\n\t\tthis.openViduWebRTCService.replaceScreenTrack();\n\t}\n\n\tcheckSizeComponent() {\n\t\tthis.compact = document.getElementById('room-container')?.offsetWidth <= 790;\n\t\tthis.sidenavMode = this.compact ? 'over' : 'side';\n\t}\n\n\tonToggleVideoSize(event: { element: HTMLElement; connectionId?: string; resetAll?: boolean }) {\n\t\tconst element = event.element;\n\t\tif (!!event.resetAll) {\n\t\t\tthis.resetAllBigElements();\n\t\t}\n\n\t\tthis.utilsSrv.toggleBigElementClass(element);\n\n\t\t// Has been mandatory change the user zoom property here because of\n\t\t// zoom icons and cannot handle publisherStartSpeaking event in other component\n\t\tif (!!event?.connectionId) {\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(event.connectionId)) {\n\t\t\t\tthis.localUsersService.toggleZoom(event.connectionId);\n\t\t\t} else {\n\t\t\t\tthis.remoteUsersService.toggleUserZoom(event.connectionId);\n\t\t\t}\n\t\t}\n\t\tthis.oVLayout.update();\n\t}\n\n\ttoolbarMicIconEnabled(): boolean {\n\t\tif (this.localUsersService.isWebCamEnabled()) {\n\t\t\treturn this.localUsersService.hasWebcamAudioActive();\n\t\t}\n\t\treturn this.localUsersService.hasScreenAudioActive();\n\t}\n\n\tprivate async connectToSession(): Promise {\n\t\ttry {\n\t\t\t// Initialize tokens from externalConfig or create new ones\n\t\t\tawait this.tokenService.initTokens(this.externalConfig);\n\t\t} catch (error) {\n\t\t\tthis.log.e('There was an error initializing the token:', error.status, error.message);\n\t\t\tthis._error.emit({ error: error.error, messgae: error.message, code: error.code, status: error.status });\n\t\t\tthis.utilsSrv.showErrorMessage('There was an error initializing the token:', error.error || error.message);\n\t\t}\n\n\t\tif (this.localUsersService.areBothConnected()) {\n\t\t\tawait this.connectWebcamSession();\n\t\t\tawait this.connectScreenSession();\n\t\t\tawait this.openViduWebRTCService.publishWebcamPublisher();\n\t\t\tawait this.openViduWebRTCService.publishScreenPublisher();\n\t\t} else if (this.localUsersService.isOnlyScreenConnected()) {\n\t\t\tawait this.connectScreenSession();\n\t\t\tawait this.openViduWebRTCService.publishScreenPublisher();\n\t\t} else {\n\t\t\tawait this.connectWebcamSession();\n\t\t\tawait this.openViduWebRTCService.publishWebcamPublisher();\n\t\t}\n\t\t// !Deprecated\n\t\tthis._joinSession.emit();\n\n\t\tthis.oVLayout.update();\n\t}\n\n\tprivate async connectScreenSession() {\n\t\ttry {\n\t\t\tawait this.openViduWebRTCService.connectScreenSession(this.tokenService.getScreenToken());\n\t\t} catch (error) {\n\t\t\tthis._error.emit({ error: error.error, messgae: error.message, code: error.code, status: error.status });\n\t\t\tthis.log.e('There was an error connecting to the session:', error.code, error.message);\n\t\t\tthis.utilsSrv.showErrorMessage('There was an error connecting to the session:', error?.error || error?.message);\n\t\t}\n\t}\n\n\tprivate async connectWebcamSession() {\n\t\ttry {\n\t\t\tawait this.openViduWebRTCService.connectWebcamSession(this.tokenService.getWebcamToken());\n\t\t} catch (error) {\n\t\t\tthis._error.emit({ error: error.error, messgae: error.message, code: error.code, status: error.status });\n\t\t\tthis.log.e('There was an error connecting to the session:', error.code, error.message);\n\t\t\tthis.utilsSrv.showErrorMessage('There was an error connecting to the session:', error?.error || error?.message);\n\t\t}\n\t}\n\n\tprivate subscribeToConnectionCreatedAndDestroyed() {\n\t\tthis.session.on('connectionCreated', (event: ConnectionEvent) => {\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(event.connection.connectionId)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst nickname: string = this.utilsSrv.getNicknameFromConnectionData(event.connection.data);\n\t\t\tthis.remoteUsersService.addUserName(event);\n\n\t\t\t// Adding participant when connection is created\n\t\t\tif (!nickname?.includes('_' + VideoType.SCREEN)) {\n\t\t\t\tthis.remoteUsersService.add(event, null);\n\t\t\t\tthis.openViduWebRTCService.sendNicknameSignal(event.connection);\n\t\t\t}\n\t\t});\n\n\t\tthis.session.on('connectionDestroyed', (event: ConnectionEvent) => {\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(event.connection.connectionId)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.remoteUsersService.deleteUserName(event);\n\t\t\tconst nickname: string = this.utilsSrv.getNicknameFromConnectionData(event.connection.data);\n\t\t\t// Deleting participant when connection is destroyed\n\t\t\tif (!nickname?.includes('_' + VideoType.SCREEN)) {\n\t\t\t\tthis.remoteUsersService.removeUserByConnectionId(event.connection.connectionId);\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate subscribeToStreamCreated() {\n\t\tthis.session.on('streamCreated', (event: StreamEvent) => {\n\t\t\tconst connectionId = event.stream.connection.connectionId;\n\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(connectionId)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst subscriber: Subscriber = this.session.subscribe(event.stream, undefined);\n\t\t\tthis.remoteUsersService.add(event, subscriber);\n\t\t\t// this.oVSessionService.sendNicknameSignal(event.stream.connection);\n\t\t});\n\t}\n\n\tprivate subscribeToStreamDestroyed() {\n\t\tthis.session.on('streamDestroyed', (event: StreamEvent) => {\n\t\t\tconst connectionId = event.stream.connection.connectionId;\n\t\t\tthis.remoteUsersService.removeUserByConnectionId(connectionId);\n\t\t\t// event.preventDefault();\n\t\t});\n\t}\n\n\t// Emit publisher to webcomponent\n\temitPublisher(publisher: Publisher) {\n\t\tthis._publisher.emit(publisher);\n\t}\n\n\tprivate subscribeToStreamPropertyChange() {\n\t\tthis.session.on('streamPropertyChanged', (event: StreamPropertyChangedEvent) => {\n\t\t\tconst connectionId = event.stream.connection.connectionId;\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(connectionId)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (event.changedProperty === 'videoActive') {\n\t\t\t\tthis.remoteUsersService.updateUsers();\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate subscribeToNicknameChanged() {\n\t\tthis.session.on('signal:nicknameChanged', (event: any) => {\n\t\t\tconst connectionId = event.from.connectionId;\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(connectionId)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst nickname = this.utilsSrv.getNicknameFromConnectionData(event.data);\n\t\t\tthis.remoteUsersService.updateNickname(connectionId, nickname);\n\t\t});\n\t}\n\n\tprivate subscribeToSpeechDetection() {\n\t\tthis.log.d('Subscribe to speech detection', this.session);\n\t\t// Has been mandatory change the user zoom property here because of\n\t\t// zoom icons and cannot handle publisherStartSpeaking event in other component\n\t\tthis.session.on('publisherStartSpeaking', (event: PublisherSpeakingEvent) => {\n\t\t\tconst someoneIsSharingScreen = this.remoteUsersService.someoneIsSharingScreen();\n\t\t\tif (!this.localUsersService.isScreenShareEnabled() && !someoneIsSharingScreen) {\n\t\t\t\tconst elem = event.connection.stream.streamManager.videos[0].video;\n\t\t\t\tconst element = this.utilsSrv.getHTMLElementByClassName(elem, LayoutType.ROOT_CLASS);\n\t\t\t\tthis.resetAllBigElements();\n\t\t\t\tthis.remoteUsersService.setUserZoom(event.connection.connectionId, true);\n\t\t\t\tthis.onToggleVideoSize({ element });\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate removeScreen() {\n\t\tthis.localUsersService.disableScreenUser();\n\t\tthis.openViduWebRTCService.unpublishScreenPublisher();\n\t}\n\n\tprivate subscribeToChatComponent() {\n\t\tthis.chatSubscription = this.chatService.toggleChatObs.subscribe((opened) => {\n\t\t\tconst timeout = this.externalConfig ? 300 : 0;\n\t\t\tthis.oVLayout.update(timeout);\n\t\t});\n\t}\n\n\tprivate subscribeToReconnection() {\n\t\tthis.session.on('reconnecting', () => {\n\t\t\tthis.log.w('Connection lost: Reconnecting');\n\t\t\tthis.isConnectionLost = true;\n\t\t\tthis.utilsSrv.showErrorMessage('Connection Problem', 'Oops! Trying to reconnect to the session ...', true);\n\t\t});\n\t\tthis.session.on('reconnected', () => {\n\t\t\tthis.log.w('Connection lost: Reconnected');\n\t\t\tthis.isConnectionLost = false;\n\t\t\tthis.utilsSrv.closeDialog();\n\t\t});\n\t\tthis.session.on('sessionDisconnected', (event: SessionDisconnectedEvent) => {\n\t\t\tif (event.reason === 'networkDisconnect') {\n\t\t\t\tthis.utilsSrv.closeDialog();\n\t\t\t\tthis.leaveSession();\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate initScreenPublisher(): Publisher {\n\t\tconst videoSource = ScreenType.SCREEN;\n\t\tconst audioSource = this.hasAudioDevices ? undefined : null;\n\t\tconst willThereBeWebcam = this.localUsersService.isWebCamEnabled() && this.localUsersService.hasWebcamVideoActive();\n\t\tconst hasAudio = willThereBeWebcam ? false : this.hasAudioDevices && this.localUsersService.hasWebcamAudioActive();\n\t\tconst properties = this.openViduWebRTCService.createPublisherProperties(videoSource, audioSource, true, hasAudio, false);\n\n\t\ttry {\n\t\t\treturn this.openViduWebRTCService.initScreenPublisher(undefined, properties);\n\t\t} catch (error) {\n\t\t\tthis.log.e(error);\n\t\t\tthis.utilsSrv.handlerScreenShareError(error);\n\t\t}\n\t}\n\n\tprivate resetAllBigElements() {\n\t\tthis.utilsSrv.removeAllBigElementClass();\n\t\tthis.remoteUsersService.resetUsersZoom();\n\t\tthis.localUsersService.resetUsersZoom();\n\t}\n\n\tprivate subscribeToLocalUsers() {\n\t\tthis.oVUsersSubscription = this.localUsersService.OVUsers.subscribe((users: UserModel[]) => {\n\t\t\tthis.localUsers = users;\n\t\t\tthis.oVLayout.update();\n\t\t});\n\t}\n\n\tprivate subscribeToRemoteUsers() {\n\t\tthis.remoteUsersSubscription = this.remoteUsersService.remoteUsers.subscribe((users: UserModel[]) => {\n\t\t\tthis.remoteUsers = [...users];\n\t\t\tthis.oVLayout.update();\n\t\t});\n\n\t\tthis.remoteUserNameSubscription = this.remoteUsersService.remoteUserNameList.subscribe((names: UserName[]) => {\n\t\t\tthis.participantsNameList = [...names];\n\t\t});\n\t}\n}\n","
\n\t\n \n\t
0\">\n\t
\n\t \n \n\t \n\t\t\n\t\t \n\t\t\n \n\t\t\n\t\t
\n\t\t\t\n\t\t\t\n\t\t\t \n\t\t\t
\n \n\t\t\t\n\t\t\t \n\t\t\t
\n\t\t
\n\t\t\n\t \n \n\t \n\t\n \n ","import { Component, OnInit } from '@angular/core';\nimport {ApiService} from '../services/api.service';\nimport { Router, ActivatedRoute, ParamMap } from \"@angular/router\";\nimport * as _ from 'lodash';\nimport * as $ from \"jquery\";\n\n@Component({\n selector: 'app-offlinewebinar',\n templateUrl: './offlinewebinar.component.html',\n styleUrls: ['./offlinewebinar.component.css']\n})\nexport class OfflinewebinarComponent implements OnInit {\n model: any = {};\n isShowGroup: boolean = false;\n isShowOrganization: boolean = false;\n isShowErp: boolean = false;\n isShowSms: boolean = false;\n group:any;\n groupMemebr:any;\n groupList: any;\n groupMemberList: any;\n stuinfonew: any[];\n stuinfonewName: any[];\n department:any;\n departmentsList: any;\n dUser:any;\n usersList: any;\n courseList: any;\n sessionList: any;\n course: any;\n session:any;\n studentList: any;\n takenBy:any;\n facultyList: any;\n selectedFile: any;\n userId: any;\n from: any;\n module:any;\n randomIDs: any;\n randomPasswords: any;\n groupDropdownSettings: any = {};\n selectedGroup: any;\n takenByList:any;\n selectedID: any;\n dropdownSettings:any;\n selectedDeptName: any;\n takenByName:any;\n selectedCourseName:any;\n selectedSession:any;\n\n\n constructor(\n private router: Router,\n private route: ActivatedRoute,\n public ApiServiceCall: ApiService\n ) { \n this.groupList = [];\n this.groupMemberList = [];\n this.departmentsList = [];\n this.usersList = [];\n this.courseList = [];\n this.sessionList = [];\n this.facultyList = [];\n this.studentList = [];\n this.selectedFile;\n this.selectedGroup = [];\n this.takenByList = [];\n this.selectedID = [];\n this.dropdownSettings = [];\n this.takenBy;\n this.takenByName;\n this.session;\n this.course;\n this.selectedCourseName;\n this.selectedSession;\n\n \n }\n\n getDropDownTextForGroupMember(webinarAttendee, object){\n const groupMemberObj = _.filter(object, function (o) {\n return (_.includes(webinarAttendee,o.webinarAttendee));\n });\n return groupMemberObj;\n }\n getDropDownTextForEmp(webinarAttendee, object){\n const EmpObj = _.filter(object, function (o) {\n return (_.includes(webinarAttendee,o.webinarAttendee));\n });\n return EmpObj;\n }\n \n getDropDownTextForCourse(id, object){\n const courseObj = _.filter(object, function (o) {\n return (_.includes(id,o.id));\n });\n return courseObj;\n }\n getDropDownTextForSession(id, object){\n const sessionObj = _.filter(object, function (o) {\n return (_.includes(id,o.id));\n });\n return sessionObj;\n }\n getDropDownTextForFaculty(id, object){\n const facultyObj = _.filter(object, function (o) {\n return (_.includes(id,o.id));\n });\n return facultyObj;\n }\n \n\n ngOnInit(): void {\n this.getAllGroupList();\n this.getAllDepartmentList();\n this.getAllCourseList();\n this.getAllSessionList();\n // this.getAllFacultyList();\n this.randomIDs = this.makeid(9);\n this.randomPasswords = this.makepassword(6);\n this.userId = localStorage.getItem('userID');\n this.groupDropdownSettings = {\n singleSelection: false,\n idField: 'groupId',\n textField: 'groupName',\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n limitSelection:'3',\n allowSearchFilter: true\n };\n this.dropdownSettings = {\n singleSelection: false,\n idField: 'id',\n textField: 'deptName',\n selectAllText: 'Select All',\n unSelectAllText: 'UnSelect All',\n allowSearchFilter: true\n};\n }\n\n\n\n deleteMemeber(index)\n {\n this.stuinfonew.splice(index,1);\n this.stuinfonewName.splice(index,1);\n }\n \n takenByGroupMember(gList:any){\n \n this.takenByName = this.getDropDownTextForGroupMember(this.takenBy, gList)[0].webinarAttendeeName;\n console.log('Vishnu'+ this.takenByName);\n }\n \n takenByEmp(empList:any){\n this.takenByName = this.getDropDownTextForEmp(this.takenBy, empList)[0].webinarAttendeeName;\n console.log('Vishnu'+ this.takenByName);\n }\n getCourseName(courseList:any){\n this.selectedCourseName = this.getDropDownTextForCourse(this.course, courseList)[0].name;\n }\n getSessionName(sessionList:any){\n this.selectedSession = this.getDropDownTextForSession(this.session, sessionList)[0].session;\n this.getAllFacultyList();\n }\n takenByFaculty(getFacultyList:any){\n this.takenByName = this.getDropDownTextForFaculty(this.takenBy, getFacultyList)[0].name;\n }\n\n onGroupSelect(gValue:any){\n console.log(\"Vishnu\"+gValue);\n this.selectedGroup.push(gValue);\n this.getGroupMemberListfor();\n \n // let item2 = this.selectedGroup.filter(i => i.groupId > 0 )[0].groupName;\n // this.selectedGroupName = item2;\n \n // console.log('Kumar.........'+this.selectedGroupName);\n \n }\n onGroupDeSelect(gValue:any){\n this.selectedGroup.splice(this.selectedGroup.indexOf(gValue),1);\n this.getGroupMemberListfor();\n // this.selectedGroupName = [];\n // this.takenByName = [];\n }\n \n getGroupMemberListfor(){\n this.takenByList = [];\n this.stuinfonew = [];\n this.stuinfonewName = []; \n for(var i=0; i {\n // $(\".loading-overlay\").removeClass(\"is-active\");\n console.log(data);\n this.groupMemberList = data.responseValue; \n\n for(let i=0; i {\n // $(\".loading-overlay\").removeClass(\"is-active\");\n console.log(data['emp']);\n this.usersList = data['emp'];\n\n \n for(let ii=0; ii {\n this.groupList = data.responseValue;\n console.log(data.responseValue);\n });\n }\n \n getAllGroupMemberList(group) {\n //console.log('sandeep'+this.getDropDownText(this.group, objList)[0].groupName);\n // this.selectValue = this.getDropDownTextForGroup(this.group, objList)[0].groupName;\n var obj = {groupId: group };\n \n this.ApiServiceCall.showGroupList(obj).subscribe((data) => {\n \n console.log(data);\n this.groupMemberList = data.responseValue;\n console.log(\"Vishnu\" + JSON.stringify(this.groupMemberList));\n \n this.stuinfonew = [];\n this.stuinfonewName = [];\n \n for(let i=0; i {\n this.departmentsList = data['dept'];\n // this.departmentsList = data['id'];\n // console.log('departmentsList' + JSON.stringify(this.departmentsList));\n \n });\n \n \n }\n getAllUsersList(department) {\n var obj = { deptID: department };\n this.ApiServiceCall.getemployData(obj).subscribe((data) => {\n \n console.log(\"Visnhu\"+data['emp']);\n this.usersList = data['emp'];\n this.stuinfonew = [];\n for(let i=0; i {\n console.log(data.responseValue.courseMaster);\n this.courseList = data.responseValue.courseMaster;\n\n });\n }\n getAllSessionList() {\n var obj = { userId: '11' };\n this.ApiServiceCall.getsesData(obj).subscribe((data) => {\n console.log(data.responseValue.sessionMaster);\n this.sessionList = data.responseValue.sessionMaster;\n });\n\n }\n getAllStudentList(session) {\n // this.selectedSession = this.getDropDownTextForSession(this.session, getSessionList)[0].session;\n // var obj = { userId: '11', courseId: this.course, sessionId: this.session };\n var obj = {userId: '11', courseId: this.course, sessionId: session };\n this.ApiServiceCall.getstuData(obj).subscribe((data) => {\n console.log(data);\n this.studentList = data.responseValue.studentList;\n this.stuinfonew = [];\n this.stuinfonewName = [];\n for(let i=0; i {\n console.log(data.responseValue.teacherMaster);\n this.facultyList = data.responseValue.teacherMaster;\n for(let i=0; i {\n // $(\".loading-overlay\").removeClass(\"is-active\");\n console.log('responsefromfile'+data.responsedata);\n var filePath = JSON.parse(data.responsedata);\n \n finalVideoPath = filePath[0].filePath;\n console.log(filePath);\n // if(finalVideoPath != '')\n // {\n var obj = {\n eventName : this.model.eventTitlePW,\n roomName: 'PreLoaded Webinar',\n // startDateTime : this.startDateTime,\n // endDateTime : this.endDateTime,\n startDateTime: this.model.startDatePW+ ' ' + this.model.startTimePW + ':00',\n endDateTime: this.model.endDatePW + ' ' + this.model.endTimePW + ':00',\n note : this.model.notePW,\n takenBy : this.takenBy,\n webinarAttendeeList : JSON.stringify(this.stuinfonew),\n userId : this.userId,\n videoPath: finalVideoPath,\n isLive: 0\n };\n\nconsole.log(obj);\n$(\".loading-overlay\").addClass(\"is-active\");\nthis.ApiServiceCall.createWebinar(obj).subscribe((data) => {\n $(\".loading-overlay\").removeClass(\"is-active\");\n console.log(data.responseMessage);\n console.log('Vishnu');\n alert('success');\n \n});\n \n});\n}\nelse{\n alert('please select file for upload');\n}\n}\n\n\n // onSubmit(){\n // alert(JSON.stringify(this.model));\n // }\n \n showGroup(){\n this.isShowGroup = true;\n this.isShowOrganization = false;\n this.from = 'Group';\n }\n showOrganization(){\n this.isShowOrganization = true;\n this.isShowGroup = false;\n this.isShowErp = false;\n this.isShowSms = false;\n this.from = 'Organization';\n }\n showErp(){\n this.isShowErp = true;\n this.isShowSms = false;\n this.module = 'ERP'\n \n }\n \n showSms(){\n this.isShowSms = true;\n this.isShowErp = false;\n this.module = 'SMS'\n \n }\n makeid(length) {\n var result = '';\n var characters = '0123456789';\n var charactersLength = characters.length;\n for (var i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n }\n\n makepassword(length) {\n var result = '';\n var characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\n var charactersLength = characters.length;\n for (var i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n }\n\n}\n","\n
\n
\n
\n
\n \n Offline Webinar Preview\n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Meeting Id {{randomIDs}}
Meeting Password{{randomPasswords}}
Event Title Name{{model.eventTitlePW}}
From{{from}}
Group Name

{{grpName.groupName}} ,

Module{{module}}
Department Name

{{dept.deptName}} ,

Taken By{{takenByName}}
Course Name{{selectedCourseName}}
Session {{selectedSession}}
Member's Name\n \n
\n \n \n \n \n \n \n
\n {{memeber.webinarAttendeeName}}\n \n \n \n
\n \n
\n \n
Start Date{{model.startDatePW}}
End Date{{model.endDatePW}}
Start Time{{model.startTimePW}}
End Time{{model.endTimePW}}
Note{{model.notePW}}
\n \n \n \n
\n\n\n\n
\n
\n
\n Create Offline Webinar\n
\n
\n \n
\n
\n
\n \n
\n
Event Title is required
\n
\n
\n
\n \n \n
\n
\n \n Group \n   \n Organization \n \n \n
\n
\n
\n
\n

{{grpName.groupName}} ,

\n \n     \n \n \n
\n
\n \n \n     \n \n \n\n
\n
\n
\n \n \n \n \n   \n ERP  \n    \n \n \n \n   \n SMS  \n \n \n \n
\n
\n
\n
\n

{{dept.deptName}} ,

\n \n \n    \n \n\n\n \n
\n
\n \n \n     \n\n \n\n \n \n
\n\n
\n \n    \n \n \n \n \n
\n
\n \n    \n \n \n \n \n
\n
\n \n    \n \n\n \n \n \n
\n
\n\n
\n\n
\n\n
\n\n
\n
\n
\n \n
\n
Start Date is required
\n
\n
\n\n
\n
\n \n
\n \n
\n
End Date is required
\n
\n
\n\n
\n
\n\n
\n
\n
\n \n
\n
Start Time is required
\n
\n \n
\n\n
\n
\n
\n\n \n
\n
Start Time is required
\n
\n\n \n
\n\n
\n
\n \n\n
\n \n \n
\n
Note is required
\n
\n
\n \n \n
\n \n
\n
\n
\n \n\n
\n
\n
\n
\n
Group Name
\n \n \n
\n \n
\n \n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Department Name
\n \n \n
\n \n
\n \n \n \n
\n
\n
\n
\n
\n
\n\n
\n\n \n
\n \n
\n\n \n
\n\n\n\n","import { Component, OnInit } from '@angular/core';\nimport {ApiService} from '../services/api.service';\nimport { NgbModal } from \"@ng-bootstrap/ng-bootstrap\";\nimport * as $ from \"jquery\";\n\n@Component({\n selector: 'app-profile',\n templateUrl: './profile.component.html',\n styleUrls: ['./profile.component.css']\n})\nexport class ProfileComponent implements OnInit {\n getUserProleList: any;\n userName: any;\n update:any;\n userId:any;\n showUserName: any;\n // userName:any;\n\n constructor(\n public ApiServiceCall: ApiService,\n private modalService: NgbModal\n ) { \n this.getUserProleList = [];\n this.update = {};\n this.userId;\n }\n\n ngOnInit(): void {\n\n // this.userName = localStorage.getItem('userName');\n\n this.userProfileList();\n this.userId = localStorage.getItem(\"userID\")\n this.userName = localStorage.getItem(\"userName\");\n this.showUserName = this.userName.replace(/^\"|\"$/g, '');\n }\n userProfileList(){\n this.userName = localStorage.getItem('userName');\n var obj = {\n userId:localStorage.getItem(\"userID\")\n }\n console.log(\"userProfile\"+ JSON.stringify(obj));\n $('.loading-overlay').addClass('is-active');\n this.ApiServiceCall.userProfile(obj).subscribe(data => {\n $('.loading-overlay').removeClass('is-active');\n this.getUserProleList = data.responseValue;\n // this.userName = data['name'];\n \n console.log(\"Sandeep Sir CT//----\"+ JSON.stringify(this.getUserProleList));\n // console.log(this.userName);\n \n });\n }\n onUpdate(content2) {\n var obj = {\n userId:localStorage.getItem(\"userID\")\n }\n $('.loading-overlay').addClass('is-active');\n this.ApiServiceCall.userProfile(obj).subscribe(data => {\n $('.loading-overlay').removeClass('is-active');\n this.update = data.responseValue[0];\n console.log(\"Vishnu CT//----\"+ JSON.stringify(this.update));\n });\n \n this.modalService.open(content2);\n \n }\n\n onUpdateProfile(){\n var obj = {\n userId:this.userId,\n name:this.update.name,\n mobileNo:this.update.mobileNo,\n address:this.update.address,\n }\n console.log(\"multipleFile\",obj);\n $('.loading-overlay').addClass('is-active');\n this.ApiServiceCall.updateProfile(obj).subscribe((data) =>{\n $('.loading-overlay').removeClass('is-active');\n alert(data.responseMessage);\n });\n this.modalService.dismissAll();\n this.userProfileList();\n }\n\n}\n","\n
\n\n
\n
\n
\n
\n \n
\n
\n \n \"User

\n {{showUserName}}

\n \n \n
\n\n \n
\n \n
\n
\n
\n User Profile\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
User Name{{item.userName}}
Name{{item.name}}
Email{{item.email}}
MobileNo{{item.mobileNo}}
Address{{item.address}}
\n \n
\n \n\n\n \n
\n
\n
\n
\n
Update Profile
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n \n
\n\n
\n
\n \n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n \n \n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n \n
\n\n\n
\n\n \n
\n\n
\n
\n\n\n","import { Component, OnInit } from '@angular/core';\nimport { ApiService } from \"../services/api.service\";\n\n\n@Component({\n selector: 'app-schedule',\n templateUrl: './schedule.component.html',\n styleUrls: ['./schedule.component.css']\n})\nexport class ScheduleComponent implements OnInit {\n departmentsList = [];\n usersList = [];\n groupList = [];\n courseList = [];\n sessionList = [];\n facultyList = [];\n studentList = [];\n groupMemberList = [];\n eventTitle: any;\n Room: any;\n department: any;\n course: any;\n session: any;\n startDateTime: any;\n endDateTime: any;\n note: any;\n stuinfonew = [];\n userId: any;\n isSchedule: '1';\n group: any;\n randomIDs: any;\n randomPasswords: any;\n eventType: any;\n isShownMeetingDetails: boolean;\n isShownERPDetails: boolean;\n isShownSMSDetails: boolean;\n isShownGroupDetails: boolean;\n isShownModuleDetails: boolean;\n startDate: any;\n startTime: any;\n endDate: any;\n endTime: any;\n takenById:any;\n takenBy:any;\n dUser:any;\n isShownRecordedDetails:any;\n selectedFile:any;\n constructor(\n\n public ApiServiceCall: ApiService,\n\n ) {\n this.eventTitle;\n this.Room;\n this.startDateTime;\n this.endDateTime;\n this.note;\n // this.meetingAttendeeList,\n this.userId;\n this.isSchedule;\n this.randomIDs;\n this.randomPasswords;\n this.eventType;\n this.departmentsList;\n this.usersList;\n this.courseList;\n this.sessionList;\n this.facultyList;\n this.studentList;\n this.startDate;\n this.startTime;\n this.endDate;\n this.endTime;\n this.groupList;\n this.groupMemberList;\n this.department;\n this.course;\n this.group;\n this.session;\n this.isShownMeetingDetails = false;\n this.isShownERPDetails = false;\n this.isShownSMSDetails = false;\n this.isShownGroupDetails = false;\n this.isShownModuleDetails = false;\n this.takenById;\n this.takenBy;\n this.dUser;\n this.isShownRecordedDetails;\n this.selectedFile;\n }\n\n\n\n\n ngOnInit(): void {\n this.randomIDs = this.makeid(9);\n this.randomPasswords = this.makepassword(6);\n this.eventTitle = 'sandeep';\n this.getAllFacultyList();\n this.getAllCourseList();\n this.getAllSessionList();\n this.getAllDepartmentList();\n this.getAllGroupList();\n this.userId = localStorage.getItem('userID');\n }\n setTakebyID(value)\n {\n this.takenById = value;\n alert(this.takenById);\n }\n getAllDepartmentList() {\n var obj = {};\n this.ApiServiceCall.getdeptData(obj).subscribe((data) => {\n\n console.log(data['dept']);\n this.departmentsList = data['dept'];\n\n });\n\n\n }\n getAllUsersList() {\n var obj = { deptID: this.department };\n this.ApiServiceCall.getemployData(obj).subscribe((data) => {\n\n console.log(data['emp']);\n this.usersList = data['emp'];\n this.stuinfonew = [];\n for(let i=0; i {\n\n console.log(data.responseValue.courseMaster);\n this.courseList = data.responseValue.courseMaster;\n\n });\n\n\n }\n\n getAllSessionList() {\n var obj = { userId: '11' };\n this.ApiServiceCall.getsesData(obj).subscribe((data) => {\n\n console.log(data.responseValue.sessionMaster);\n this.sessionList = data.responseValue.sessionMaster;\n\n });\n\n\n }\n getAllFacultyList() {\n var obj = { userId: '11' };\n this.ApiServiceCall.getfacData(obj).subscribe((data) => {\n\n console.log(data.responseValue.teacherMaster);\n this.facultyList = data.responseValue.teacherMaster;\n\n });\n\n\n }\n getAllStudentList() {\n\n console.log('sandeep' + this.course);\n console.log('sandeep' + this.session);\n var obj = { userId: '11', courseId: this.course, sessionId: this.session };\n this.ApiServiceCall.getstuData(obj).subscribe((data) => {\n\n console.log(data);\n this.studentList = data.responseValue.studentList;\n\n this.stuinfonew = [];\n for(let i=0; i {\n\n console.log(data);\n this.groupList = data.responseValue;\n\n });\n\n\n }\n\n getAllGroupMemberList() {\n\n var obj = { groupId: this.group };\n this.ApiServiceCall.showGroupList(obj).subscribe((data) => {\n\n console.log(data);\n this.groupMemberList = data.responseValue;\n\n\n for(let i=0; i {\n\n\n if(data.responseCode == '1')\n {\n console.log(data.responseMessage);\n alert('success');\n }\n else\n {\n alert(data.responseMessage);\n }\n \n \n });\n\n }\n\n async createWebinar() {\nvar isLive;\nvar finalVideoPath = '';\nif(this.isShownRecordedDetails == true)\n{\n \n const fb = new FormData();\n fb.append('video', this.selectedFile);\n await this.ApiServiceCall.saveMultipleFile(fb).subscribe((data) => {\n console.log('responsefromfile'+data.responsedata);\n var filePath = JSON.parse(data.responsedata);\n \n finalVideoPath = filePath[0].filePath;\n if(finalVideoPath != '')\n {\n var obj = {\n eventName : this.eventTitle,\n roomName: this.Room,\n startDateTime : this.startDateTime,\n endDateTime : this.endDateTime,\n note : '',\n takenBy : this.takenById,\n webinarAttendeeList : JSON.stringify(this.stuinfonew),\n userId : this.userId,\n videoPath: finalVideoPath,\n isLive: 0\n};\nconsole.log(obj);\nthis.ApiServiceCall.createWebinar(obj).subscribe((data) => {\n\n console.log(data.responseMessage);\n alert('success');\n \n});\n }\n });\n isLive = '0';\n}\nelse\n{\n isLive = '1';\n this.selectedFile = '';\n var obj = {\n eventName : this.eventTitle,\n roomName: this.Room,\n startDateTime : this.startDateTime,\n endDateTime : this.endDateTime,\n note : '',\n takenBy : this.takenById,\n webinarAttendeeList : JSON.stringify(this.stuinfonew),\n userId : this.userId,\n videoPath: '',\n isLive: 1\n};\nconsole.log(obj);\nthis.ApiServiceCall.createWebinar(obj).subscribe((data) => {\n\nconsole.log(data.responseMessage);\nalert('success');\n\n});\n}\n\n \n \n }\n createEvent() {\nthis.startDateTime = this.startDate+ ' ' + this.startTime + ':00';\nthis.endDateTime = this.endDate + ' ' + this.endTime + ':00';\nalert(this.startDateTime );\n if (this.isShownMeetingDetails == true) {\n\n\n if (this.isEmptyValue(this.eventTitle) || this.isEmptyValue(this.startDateTime) || this.isEmptyValue(this.endDateTime) || this.stuinfonew.length == 0) {\n alert('pls fill all fields');\n }\n else {\n\n this.Room = 'Meeting-' + this.makeid(6);\n this.createMeeting();\n }\n }\n else {\n\n if (this.isEmptyValue(this.eventTitle) || this.isEmptyValue(this.startDateTime) || this.isEmptyValue(this.endDateTime) || this.stuinfonew.length == 0 || this.isEmptyValue(this.takenById)) {\n alert('pls fill all fields');\n }\n else {\n this.Room = 'Webinar-' + this.makeid(6);\n \n this.createWebinar();\n }\n }\n\n }\n\n onEventTypeChange(value) {\n if (value == 'isMeeting') {\n this.isShownMeetingDetails = true;\n }\n else {\n this.isShownMeetingDetails = false;\n }\n }\n\n onWebinarTypeChange(value) {\n if (value == 'isRecorded') {\n this.isShownRecordedDetails = true;\n }\n else {\n this.isShownRecordedDetails = false;\n }\n }\n onFileSelected(event){\n this.selectedFile = event.target.files[0];\n\n }\n onModuleTypeChange(value) {\n if (value == 'isERP') {\n this.isShownERPDetails = true;\n this.isShownSMSDetails = false;\n }\n else if (value == 'isSMS') {\n this.isShownERPDetails = false;\n this.isShownSMSDetails = true;\n }\n }\n onUserTypeChange(value) {\n if (value == 'isGroup') {\n this.isShownGroupDetails = true;\n this.isShownModuleDetails = false;\n }\n else if (value == 'isOrganization') {\n this.isShownGroupDetails = false;\n this.isShownModuleDetails = true;\n }\n }\n\n\n makeid(length) {\n var result = '';\n var characters = '0123456789';\n var charactersLength = characters.length;\n for (var i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n }\n\n makepassword(length) {\n var result = '';\n var characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\n var charactersLength = characters.length;\n for (var i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n }\n\n\n\n isEmptyValue(value) {\n if (\n value === \"0\" ||\n value === \"\" ||\n value === 0 ||\n value === undefined ||\n value === null\n ) {\n return true;\n } else {\n return false;\n }\n }\n\n\n}\n","\n\n\n\n\t\n\t\n\n\n\n\n\t
\n\t\t

Schedule

\n\t
\n\n\t
\n\t\t
\n\t\t\t\n\t\t\t\n\n\t\t
\n\n\t\t
\n\t\t\t\n\t\t\t\n\t\t
\n\n\t
\n\n\t
\n\t\t
\n\t\t\t\n\t\t\t\n\n\t\t
\n\n\t\t
\n\t\t\t\n\t\t\t\n\t\t
\n\n\t
\n\n\t
\n\t\t
\n\t\t\t\n\n\t\t
\n\n\t\t\n\n\t
\n\n\t
\n\t\t
\n\t\t\t\n\t\t\t\n\t\t
\n\n\n\t
\n\t
\n\n\t\t
\n\t\t\t
\n\t\t\t\tYour Meetings Details:\n\t\t\t\t
\n\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t\n\t\t\t
\n\t\t\t\tSelect Module:\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\n\t\t
\n\t
\n\n\n\t
\n\t\t
\n\t\t\t\n\t\t\t
\n\t\t\t\tSelect Group:\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\n\t\t\t\t\t\t\t\n\n\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\n\t\t\t\t\t\t\t\n\n\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\n\t\t
\n\t
\n\n\n\n\n\t
\n\t\t
\n\t\t\tSelect Users:\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t
\n\t
\n\n\t\t
\n\t\t\tSelect Users:\n\n\n\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t
\n\n\t\t\t
\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t
\n\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t
\n\n\t
\n\n\n\n","import { Injectable, Output, EventEmitter } from '@angular/core';\nimport { HttpClient, HttpHeaders,HttpEvent,HttpEventType,HttpErrorResponse} from \"@angular/common/http\";\nimport { AddVideoModel } from '../_models/addVideo';\nimport { environment } from \"../../environments/environment\";\nimport { RouterModule, Routes, Router } from \"@angular/router\";\nimport {User} from \"../_models/user\"\n\n\n\n\ninterface dataObj {\n responseCode: any;\n responseMessage: string;\n responsedata: any;\n responseValue: any;\n results: any;\n}\n\n\n@Injectable({\n providedIn: 'root'\n\n})\nexport class ApiService {\n baseUrl = environment.apiBaseUrl;\n token:any;\n\n constructor(private httpClient: HttpClient, private router :Router) {\n this.token = -1;\n }\n\n isEmpty(value) {\n if (value === \"\" || value === undefined) {\n return true;\n } else {\n return false;\n }\n }\n\n isValidToken() {\n if (\n this.token < 0 ||\n this.token === false ||\n this.token !== localStorage.getItem(\"accessToken\")\n ) {\n this.token = localStorage.getItem(\"accessToken\")\n ? localStorage.getItem(\"accessToken\")\n : -1;\n }\n\n if (!this.isEmpty(this.token) && this.token != -1) {\n return true;\n } else {\n this.router.navigate([\"/\"]);\n return false;\n }\n }\n\n setHeaders() {\n let httpHeaders = new HttpHeaders()\n .set(\"Content-Type\", \"application/json\")\n .set(\"token\", this.token);\n // .set(\"async\",\"false\");\n\n\n\n let options = {\n headers: httpHeaders,\n };\n return options;\n }\n\n isEmptyValue(value) {\n if (\n value === \"0\" ||\n value === \"\" ||\n value === 0 ||\n value === undefined ||\n value === null\n ) {\n return true;\n } else {\n return false;\n }\n }\n\n\n checkLogin(data) {\n return this.httpClient.post(this.baseUrl + `Login`, data);\n }\n signUp(data) {\n return this.httpClient.post(this.baseUrl + `Register`,data);\n }\n sendOtp(data) {\n return this.httpClient.post(this.baseUrl + `sendOTP`,data );\n }\n createMeeting(data) {\n return this.httpClient.post(this.baseUrl + `createMeeting`, data,{headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n startMeeting(data) {\n return this.httpClient.post(this.baseUrl + `createMeeting`, data,{headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n joinMeeting(data) {\n return this.httpClient.post(this.baseUrl + `joinMeeting`, data,{headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n logout(data) {\n if (this.isValidToken()) {\n let headers = this.setHeaders();\n return this.httpClient.post(this.baseUrl + `logout`, data,headers);\n }\n }\n\n saveVideo(saveVideo: AddVideoModel) {\n // if (this.isValidToken()) {\n // let headers = this.setHeaders();\n return this.httpClient.post(this.baseUrl+`saveVideo`, saveVideo);\n // }\n }\n uploadVideo(image) {\n return this.httpClient.post(this.baseUrl+`saveMultipleFile`, image);\n }\n\n saveMultipleFile(data) {\n return this.httpClient.post(this.baseUrl + `saveMultipleFile`, data);\n }\n\n getCategoryList(data) {\n return this.httpClient.post(this.baseUrl + \"getCategoryList\", data);\n }\n getSubCategoryList(data) {\n\n return this.httpClient.post(this.baseUrl + \"getSubCategoryList\", data);\n }\n getAllHostedList(data) {\n\n return this.httpClient.post(this.baseUrl + \"getHostedWebinar\", data, {headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n getAllAttendList(data) {\n\n return this.httpClient.post(this.baseUrl + \"webinarAttendee\", data, {headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n getGroupList(data) {\n\n return this.httpClient.post(this.baseUrl + \"getGroup\", data, {headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n\n showGroupList(data) {\n\n return this.httpClient.post(this.baseUrl + \"getGroupById\", data, {headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n\n getdeptData(data) {\n\n return this.httpClient.post('http://182.156.200.178:121/Api/Employee/GetDepartment', data, {headers: {'accessToken':'7D10A49B394846E695D95483DC5363EB-1'}});\n }\n getemployData(data) {\n\n return this.httpClient.post('http://182.156.200.178:121/Api/Employee/SearchEmployee', data, {headers: {'accessToken':'7D10A49B394846E695D95483DC5363EB-1'}});\n }\n getcouData(data) {\n\n return this.httpClient.post('http://182.156.200.179:711/API/CourseMaster/GetAllCourse', data, {headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n getsesData(data) {\n\n return this.httpClient.post('http://182.156.200.179:711/API/SessionMaster/GetAllSession', data, {headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n getstuData(data) {\n\n return this.httpClient.post('http://182.156.200.179:711/API/StudentAdmissionMaster/GetAllStudentList', data, {headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n getfacData(data) {\n\n return this.httpClient.post('http://182.156.200.179:711/API/TeacherMaster/GetAllTeacher', data, {headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n createWebinar(data) {\n\n return this.httpClient.post(this.baseUrl + \"createWebinar\", data, {headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n\n // \n\n\n forgetpassword(data) {\n return this.httpClient.post(this.baseUrl + `forgetpassword`,data);\n }\n\n userProfile(data) {\n if (this.isValidToken()) {\n //alert(this.isValidToken);\n let headers = this.setHeaders();\n return this.httpClient.post(this.baseUrl + `getUserById`, data,headers);\n }\n }\n sendFeedback(data) {\n\n return this.httpClient.post(this.baseUrl + `saveFeedback`, data, {headers: {'token':localStorage.getItem(\"accessToken\")}});\n }\n contactSave(data) {\n return this.httpClient.post(this.baseUrl + `savecontactUs`,data );\n }\n\n\n getMemberOfWebinarList(data) {\n // return this.httpClient.post(this.baseUrl + `getUserListByWebinarID`,data );\n if (this.isValidToken()) {\n //alert(this.isValidToken);\n let headers = this.setHeaders();\n return this.httpClient.post(this.baseUrl + `getUserListByWebinarID`, data,headers);\n }\n }\n deleteWebinar(data) {\n if (this.isValidToken()) {\n //alert(this.isValidToken);\n let headers = this.setHeaders();\n console.log(data);\n return this.httpClient.post(this.baseUrl + `deleteWebinar`, data,headers);\n }\n }\n getMemberOfMeetingList(data) {\n return this.httpClient.post(this.baseUrl + `getUserListByMeetingID`,data );\n }\n updateWebinar(data) {\n if (this.isValidToken()) {\n //alert(this.isValidToken);\n let headers = this.setHeaders();\n console.log(data);\n return this.httpClient.post(this.baseUrl + `updateWebinar`, data,headers);\n }\n }\n updateProfile(data) {\n if (this.isValidToken()) {\n //alert(this.isValidToken);\n let headers = this.setHeaders();\n console.log(data);\n return this.httpClient.post(this.baseUrl + `updateProfile`, data,headers);\n }\n }\n insertUserTransactionLog(data)\n {\n if (this.isValidToken()) {\n //alert(this.isValidToken);\n let headers = this.setHeaders();\n console.log(data);\n return this.httpClient.post(this.baseUrl + `insertUserTransactionLog`, data,headers);\n }\n }\n getQuestion(data)\n {\n if (this.isValidToken()) {\n //alert(this.isValidToken);\n let headers = this.setHeaders();\n console.log(data);\n return this.httpClient.post(this.baseUrl + `getQuestion`, data,headers);\n }\n }\n}\n","import { Component, ElementRef, Input, OnInit, ViewChild, HostListener, OnDestroy,Output,EventEmitter } from '@angular/core';\nimport { ChatService } from '../../services/chat/chat.service';\nimport { ChatMessage } from '../../types/chat-type';\nimport { Subscription } from 'rxjs/internal/Subscription';\n\n@Component({\n\tselector: 'chat-component',\n\ttemplateUrl: './chat.component.html',\n\tstyleUrls: ['./chat.component.css']\n})\nexport class ChatComponent implements OnInit, OnDestroy {\n\t@ViewChild('chatScroll') chatScroll: ElementRef;\n\t@ViewChild('chatInput') chatInput: ElementRef;\n\n\t@Input() lightTheme: boolean;\n\t@Output() outPutToParent = new EventEmitter();\n\tmessage: string;\n\n\tmessageList: ChatMessage[] = [];\n\tchatOpened: boolean;\n\n\tprivate chatMessageSubscription: Subscription;\n\tprivate chatToggleSubscription: Subscription;\n\n\tconstructor(private chatService: ChatService) {}\n\n\t@HostListener('document:keydown.escape', ['$event'])\n\tonKeydownHandler(event: KeyboardEvent) {\n\t\tconsole.log(event);\n\t\tif (this.chatOpened) {\n\t\t\tthis.close();\n\t\t}\n\t}\n\n\tngOnInit() {\n\t\tthis.subscribeToMessages();\n\t\tthis.subscribeToToggleChat();\n\t\t//this.subscribeToRaiseHands();\n\t}\n\n\tngOnDestroy(): void {\n\t\tif (this.chatMessageSubscription) {\n\t\t\tthis.chatMessageSubscription.unsubscribe();\n\t\t}\n\t\tif (this.chatToggleSubscription) {\n\t\t\tthis.chatToggleSubscription.unsubscribe();\n\t\t}\n\t}\n\n\teventKeyPress(event) {\n\t\t// Pressed 'Enter' key\n\t\tif (event && event.keyCode === 13) {\n\t\t\tthis.sendMessage();\n\t\t}\n\t}\n\n\tsendMessage(): void {\n\t\tthis.chatService.sendMessage(this.message);\n\t\tthis.message = '';\n\t}\n\n\tscrollToBottom(): void {\n\t\tsetTimeout(() => {\n\t\t\ttry {\n\t\t\t\tthis.chatScroll.nativeElement.scrollTop = this.chatScroll.nativeElement.scrollHeight;\n\t\t\t} catch (err) {}\n\t\t}, 20);\n\t}\n\n\tclose() {\n\t\tthis.chatService.toggleChat();\n\t}\n\n\tprivate subscribeToMessages() {\n\t\tthis.chatMessageSubscription = this.chatService.messagesObs.subscribe((messages: ChatMessage[]) => {\n\t\t\tthis.messageList = messages;\n\t\t\tthis.scrollToBottom();\n\t\t});\n\t}\n\t// private subscribeToRaiseHands() {\n\t// \t this.chatService.raiseHandID.subscribe((raiseHandID: string) => {\n\t// \t\tthis.outPutToParent.emit(raiseHandID);\n\t\t\t\n\t\t\t\n\t// \t});\n\t// }\n\tprivate subscribeToToggleChat() {\n\t\tthis.chatToggleSubscription = this.chatService.toggleChatObs.subscribe((opened) => {\n\t\t\tthis.chatOpened = opened;\n\t\t\tif (this.chatOpened) {\n\t\t\t\tthis.scrollToBottom();\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.chatInput.nativeElement.focus();\n\t\t\t\t});\n\n\t\t\t\tthis.outPutToParent.emit(false);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.outPutToParent.emit(true);\n\t\t\t}\n\t\t});\n\t}\n}\n","
\n\t
\n\t\t
\n\t\t\t CHAT\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t

{{ data.nickname }}

\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t

\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\n\t\t
\n\t\t\t\n\t\t\t\n\t\t
\n\t
\n
\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\n\n@Component({\n\tselector: 'app-dialog-error',\n\ttemplateUrl: './dialog-error.component.html',\n\tstyleUrls: ['./dialog-error.component.css']\n})\nexport class DialogErrorComponent implements OnInit {\n\tconstructor(public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data: any) {}\n\n\tngOnInit() {}\n}\n","\n
\n\t

{{ data.header }}

\n\t {{ data.message }} \n
\n","import { Component, Input } from '@angular/core';\nimport { UserName } from '../../types/username-type';\nimport { VideoType } from '../../types/video-type';\n\n@Component({\n\tselector: 'app-footer',\n\ttemplateUrl: './footer.component.html',\n\tstyleUrls: ['./footer.component.css']\n})\nexport class FooterComponent{\n\t@Input() lightTheme: boolean;\n\n\tparticipantsNames: string[] = [];\n\n\tconstructor() {}\n\n\t@Input()\n\tset participants(participants: UserName[]) {\n\t\tthis.participantsNames = [];\n\t\tparticipants.forEach((names) => {\n\t\t\tif (!names.nickname.includes(VideoType.SCREEN)) {\n\t\t\t\tthis.participantsNames.push(names.nickname);\n\t\t\t}\n\t\t});\n\t\tthis.participantsNames = [...this.participantsNames];\n\t}\n}\n","\n\t
\n\t\t\n\t
\n\t
\n\t\t{{ participantsNames | tooltipList }}\n\t
\n\n","import { Component, OnInit,Input,EventEmitter,Output } from '@angular/core';\nimport { RemoteUsersService } from '../../services/remote-users/remote-users.service';\nimport { Subscription } from 'rxjs';\nimport { UserModel } from '../../models/user-model';\nimport { remoteUserConnection } from '../../../_models/addVideo';\nimport { OpenViduWebrtcService } from '../../services/openvidu-webrtc/openvidu-webrtc.service';\nimport { ChatService } from '../../services/chat/chat.service';\n@Component({\n selector: 'app-right-menu',\n templateUrl: './right-menu.component.html',\n styleUrls: ['./right-menu.component.css']\n})\nexport class RightMenuComponent implements OnInit {\n @Input() lightTheme: boolean;\n @Input() reciveFromParent: any;\n @Output() outPutToParent = new EventEmitter();\n private remoteUsersSubscription: Subscription;\n remoteUsersForPart: UserModel[] = [];\n remoteUsers: UserModel[] = [];\n remoteUserConnectionID: remoteUserConnection;\n changeText:boolean=false;\n\n isView:any = [];\n\n isShowRemoteControls:any=[];\n \n isMute:any = [];\n priviousVideoViewingID:any=String;\n cureentVideoViewingID:any=String;\n raiseHandUserList = [];\n constructor(\n private remoteUsersService: RemoteUsersService,\n private openViduWebRTCService: OpenViduWebrtcService,\n private chatService: ChatService,\n \n ) { \n this.isView = {};\n this.isMute = {};\n this.isShowRemoteControls = {};\n \n\n }\n\n ngOnInit(): void {\n \n this.subscribeToRaiseHands();\n this.remoteUsersSubscription = this.remoteUsersService.remoteUsers.subscribe((users: UserModel[]) => {\n this.remoteUsers = [];\n this.remoteUsers = [...users];\n this.remoteUsersForPart = [];\n console.log(this.remoteUsers.length);\n for(let i=0;i {\n console.log('raiseHandID');\n console.log(raiseHandID);\n \n this.raiseHandUserList.push(raiseHandID);\n });\n}\nremoveRaiseHand(conID)\n{\n const index: number = this.raiseHandUserList.indexOf(conID);\n if (index !== -1) {\n this.raiseHandUserList.splice(index, 1);\n} \n}\n\n\ntoggleChat() {\n this.chatService.toggleChat();\n}\n\n}\n","
\n\t\n\t
\n\t\t\n\t\t\n\t\t
\n\t\t\t
\n\t\t\t\t\"Card\n\t\t\t\t
\n\t\t\t\t\t

Raise Hand

\n\t\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\"Card\n\t\t\t\t
\n\t\t\t\t\t

Like

\n\t\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\"Card\n\t\t\t\t
\n\t\t\t\t\t

Chat

\n\t\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\t
\n\t\t\t
\n\t\t\t\t\"Card\n\t\t\t\t
\n\t\t\t\t\t

Leave

\n\t\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\n\t
\n\t\n\t
\n\t\t\n\t\t\n\t\t
\n\t\t\t
-1)}\" >\n\t\t\t\t\"Card\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t

{{user.nickname}}

\n\t\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t\t
\n\t\n\t\n\n\t
\n
\n","import { Component, OnInit, Output, EventEmitter, Input, HostListener, OnDestroy, ViewChild, ElementRef } from '@angular/core';\nimport { FormControl, Validators } from '@angular/forms';\nimport { UserModel } from '../../models/user-model';\nimport { NicknameMatcher } from '../../forms-matchers/nickname';\nimport { UtilsService } from '../../services/utils/utils.service';\nimport { Publisher } from 'openvidu-browser';\nimport { ActivatedRoute, Params } from '@angular/router';\nimport { IDevice, CameraType } from '../../types/device-type';\nimport { DevicesService } from '../../services/devices/devices.service';\nimport { Subscription } from 'rxjs';\nimport { AvatarType } from '../../types/chat-type';\nimport { LoggerService } from '../../services/logger/logger.service';\nimport { ILogger } from '../../types/logger-type';\nimport { ScreenType } from '../../types/video-type';\nimport { ExternalConfigModel } from '../../models/external-config';\nimport { OvSettingsModel } from '../../models/ovSettings';\nimport { StorageService } from '../../services/storage/storage.service';\nimport { Storage } from '../../types/storage-type';\nimport { OpenViduErrorName } from 'openvidu-browser/lib/OpenViduInternal/Enums/OpenViduError';\nimport { OpenViduWebrtcService } from '../../services/openvidu-webrtc/openvidu-webrtc.service';\nimport { LocalUsersService } from '../../services/local-users/local-users.service';\nimport { TokenService } from '../../services/token/token.service';\n\n@Component({\n\tselector: 'app-room-config',\n\ttemplateUrl: './room-config.component.html',\n\tstyleUrls: ['./room-config.component.css']\n})\nexport class RoomConfigComponent implements OnInit, OnDestroy {\n\t@ViewChild('bodyCard') bodyCard: ElementRef;\n\n\t@Input() externalConfig: ExternalConfigModel;\n\t@Input() ovSettings: OvSettingsModel;\n\t@Output() join = new EventEmitter();\n\t@Output() leaveSession = new EventEmitter();\n\n\t// Webcomponent event\n\t@Output() publisherCreated = new EventEmitter();\n\n\tmySessionId: string;\n\n\tcameras: IDevice[];\n\tmicrophones: IDevice[];\n\tcamSelected: IDevice;\n\tmicSelected: IDevice;\n\tisVideoActive = true;\n\tisAudioActive = true;\n\t// volumeValue = 100;\n\tscreenShareEnabled: boolean;\n\tlocalUsers: UserModel[] = [];\n\trandomAvatar: string;\n\tvideoAvatar: string;\n\tavatarSelected: AvatarType;\n\tcolumns: number;\n\n\tnicknameFormControl = new FormControl('', [Validators.maxLength(25), Validators.required]);\n\tmatcher = new NicknameMatcher();\n\thasVideoDevices: boolean;\n\thasAudioDevices: boolean;\n\tshowConfigCard: boolean;\n\tprivate log: ILogger;\n\n\tprivate oVUsersSubscription: Subscription;\n\tprivate screenShareStateSubscription: Subscription;\n\n\tconstructor(\n\t\tprivate route: ActivatedRoute,\n\t\tprivate utilsSrv: UtilsService,\n\t\tprivate openViduWebRTCService: OpenViduWebrtcService,\n\t\tprivate localUsersService: LocalUsersService,\n\t\tprivate tokenService: TokenService,\n\t\tprivate oVDevicesService: DevicesService,\n\t\tprivate loggerSrv: LoggerService,\n\t\tprivate storageSrv: StorageService\n\t) {\n\t\tthis.log = this.loggerSrv.get('RoomConfigComponent');\n\t}\n\n\t@HostListener('window:beforeunload')\n\tbeforeunloadHandler() {\n\t\tthis.close();\n\t}\n\n\tasync ngOnInit() {\n\n\t\tthis.subscribeToLocalUsersEvents();\n\t\tthis.initNicknameAndSubscribeToChanges();\n\t\tthis.setRandomAvatar();\n\t\tthis.columns = window.innerWidth > 900 ? 2 : 1;\n\t\tthis.setSessionName();\n\t\tawait this.oVDevicesService.initDevices();\n\t\tthis.setDevicesInfo();\n\t\tif (this.hasAudioDevices || this.hasVideoDevices) {\n\t\t\tthis.initwebcamPublisher();\n\t\t} else {\n\t\t\t// Emit publisher to webcomponent and angular-library\n\t\t\tthis.emitPublisher(null);\n\t\t\tthis.showConfigCard = true;\n\t\t}\n\n\t\t// publisher.on('streamAudioVolumeChange', (event: any) => {\n\t\t// this.volumeValue = Math.round(Math.abs(event.value.newValue));\n\t\t// });\n\t}\n\n\tngOnDestroy() {\n\t\tif (this.oVUsersSubscription) {\n\t\t\tthis.oVUsersSubscription.unsubscribe();\n\t\t}\n\n\t\tif (this.screenShareStateSubscription) {\n\t\t\tthis.screenShareStateSubscription.unsubscribe();\n\t\t}\n\t\tthis.oVDevicesService.clear();\n\t}\n\n\tasync onCameraSelected(event: any) {\n\t\tconst videoSource = event?.value;\n\t\tif (!!videoSource) {\n\t\t\t// Is New deviceId different from the old one?\n\t\t\tif (this.oVDevicesService.needUpdateVideoTrack(videoSource)) {\n\t\t\t\tconst mirror = this.oVDevicesService.cameraNeedsMirror(videoSource);\n\t\t\t\tawait this.openViduWebRTCService.replaceTrack(videoSource, null, mirror);\n\t\t\t\tthis.oVDevicesService.setCamSelected(videoSource);\n\t\t\t\tthis.camSelected = this.oVDevicesService.getCamSelected();\n\t\t\t}\n\t\t\t// Publish Webcam\n\t\t\tthis.openViduWebRTCService.publishWebcamVideo(true);\n\t\t\tthis.isVideoActive = true;\n\t\t\treturn;\n\t\t}\n\t\t// Unpublish webcam\n\t\tthis.openViduWebRTCService.publishWebcamVideo(false);\n\t\tthis.isVideoActive = false;\n\t}\n\n\tasync onMicrophoneSelected(event: any) {\n\t\tconst audioSource = event?.value;\n\n\t\tif (!!audioSource) {\n\t\t\t// Is New deviceId different than older?\n\t\t\tif (this.oVDevicesService.needUpdateAudioTrack(audioSource)) {\n\t\t\t\tconsole.log(this.camSelected);\n\t\t\t\tconst mirror = this.oVDevicesService.cameraNeedsMirror(this.camSelected.device);\n\t\t\t\tawait this.openViduWebRTCService.replaceTrack(null, audioSource, mirror);\n\t\t\t\tthis.oVDevicesService.setMicSelected(audioSource);\n\t\t\t\tthis.micSelected = this.oVDevicesService.getMicSelected();\n\t\t\t}\n\t\t\t// Publish microphone\n\t\t\tthis.publishAudio(true);\n\t\t\tthis.isAudioActive = true;\n\t\t\treturn;\n\t\t}\n\t\t// Unpublish microhpone\n\t\tthis.publishAudio(false);\n\t\tthis.isAudioActive = false;\n\t}\n\n\ttoggleCam() {\n\t\tthis.isVideoActive = !this.isVideoActive;\n\t\tthis.openViduWebRTCService.publishWebcamVideo(this.isVideoActive);\n\n\t\tif (this.localUsersService.areBothConnected()) {\n\t\t\tthis.localUsersService.disableWebcamUser();\n\t\t\tthis.openViduWebRTCService.publishScreenAudio(this.isAudioActive);\n\t\t\t// !this.subscribeToVolumeChange(this.localUsers[0].getStreamManager());\n\t\t} else if (this.localUsersService.isOnlyScreenConnected()) {\n\t\t\t// (this.localUsers[0].getStreamManager()).off('streamAudioVolumeChange');\n\t\t\tthis.localUsersService.enableWebcamUser();\n\t\t}\n\t}\n\n\ttoggleScreenShare() {\n\t\t// Disabling screenShare\n\t\tif (this.localUsersService.areBothConnected()) {\n\t\t\tthis.localUsersService.disableScreenUser();\n\t\t\treturn;\n\t\t}\n\n\t\t// Enabling screenShare\n\t\tif (this.localUsersService.isOnlyWebcamConnected()) {\n\t\t\tconst screenPublisher = this.initScreenPublisher();\n\n\t\t\tscreenPublisher.on('accessAllowed', (event) => {\n\t\t\t\tscreenPublisher.stream\n\t\t\t\t\t.getMediaStream()\n\t\t\t\t\t.getVideoTracks()[0]\n\t\t\t\t\t.addEventListener('ended', () => {\n\t\t\t\t\t\tthis.log.d('Clicked native stop button. Stopping screen sharing');\n\t\t\t\t\t\tthis.toggleScreenShare();\n\t\t\t\t\t});\n\t\t\t\tthis.localUsersService.enableScreenUser(screenPublisher);\n\t\t\t\tif (!this.localUsersService.hasWebcamVideoActive()) {\n\t\t\t\t\tthis.localUsersService.disableWebcamUser();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tscreenPublisher.on('accessDenied', (event) => {\n\t\t\t\tthis.log.w('ScreenShare: Access Denied');\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\n\t\t// Disabling screnShare and enabling webcam\n\t\tthis.localUsersService.enableWebcamUser();\n\t\tthis.localUsersService.disableScreenUser();\n\t}\n\n\ttoggleMic() {\n\t\tthis.isAudioActive = !this.isAudioActive;\n\t\tthis.publishAudio(this.isAudioActive);\n\t}\n\n\ttakePhoto() {\n\t\tthis.localUsersService.setWebcamAvatar();\n\t\tthis.videoAvatar = this.localUsersService.getWebcamAvatar();\n\t\tthis.localUsersService.setAvatar(AvatarType.VIDEO);\n\t}\n\n\tinitNicknameAndSubscribeToChanges() {\n\t\tif (this.externalConfig) {\n\t\t\tthis.nicknameFormControl.setValue(this.externalConfig.getNickname());\n\t\t\tthis.localUsersService.updateUsersNickname(this.externalConfig.getNickname());\n\t\t\treturn;\n\t\t}\n\t\tconst nickname = localStorage.getItem('userID') + '_' + localStorage.getItem('userName');//this.storageSrv.get(Storage.USER_NICKNAME) || this.utilsSrv.generateNickname();\n\t\tthis.nicknameFormControl.setValue(nickname);\n\t\tthis.localUsersService.updateUsersNickname(nickname);\n\n\t\tthis.nicknameFormControl.valueChanges.subscribe((value) => {\n\t\t\tthis.localUsersService.updateUsersNickname(value);\n\t\t\tthis.storageSrv.set(Storage.USER_NICKNAME, value);\n\t\t});\n\t}\n\n\teventKeyPress(event) {\n\t\tif (event && event.keyCode === 13 && this.nicknameFormControl.valid) {\n\t\t\tthis.joinSession();\n\t\t}\n\t}\n\n\tonResize(event) {\n\t\tthis.columns = event.target.innerWidth > 900 ? 2 : 1;\n\t}\n\n\t// updateVolumeColor(): string {\n\t// \t// max = 0 / min = 100\n\t// \tif (this.volumeValue <= 20) {\n\t// \t\treturn 'warn';\n\t// \t} else if (this.volumeValue > 20 && this.volumeValue <= 35) {\n\t// \t\treturn 'accent';\n\t// \t} else if (this.volumeValue > 35) {\n\t// \t\treturn 'primary';\n\t// \t}\n\t// }\n\n\tjoinSession() {\n\t\tif (this.nicknameFormControl.valid) {\n\t\t\t// this.localUsers.forEach(user => {\n\t\t\t// \tuser.getStreamManager().off('streamAudioVolumeChange');\n\t\t\t// });\n\t\t\t// if (this.avatarSelected === AVATAR_TYPE.RANDOM) {\n\t\t\t// \tthis.localUsers[0].removeVideoAvatar();\n\t\t\t// }\n\t\t\t// if (this.localUsers[1]) {\n\t\t\t// \tthis.localUsers[1].setUserAvatar(this.localUsers[0].getAvatar());\n\t\t\t// }\n\t\t\treturn this.join.emit();\n\t\t}\n\t\tthis.scrollToBottom();\n\t}\n\n\tclose() {\n\t\tthis.leaveSession.emit();\n\t\tthis.showConfigCard = false;\n\t}\n\n\tsetAvatar(avatar: string) {\n\t\t// !! REFACTOR\n\t\tconst avatarType = avatar === AvatarType.VIDEO ? AvatarType.VIDEO : AvatarType.RANDOM;\n\t\tif ((avatarType === AvatarType.RANDOM && this.randomAvatar) || (avatarType === AvatarType.VIDEO && this.videoAvatar)) {\n\t\t\tthis.avatarSelected = avatarType;\n\t\t\t// if (avatarType === AVATAR_TYPE.RANDOM) {\n\t\t\t// this.localUsers[0].setUserAvatar(this.randomAvatar);\n\t\t\t// }\n\t\t}\n\t}\n\n\tprivate setDevicesInfo() {\n\t\tthis.hasVideoDevices = this.oVDevicesService.hasVideoDeviceAvailable();\n\t\tthis.hasAudioDevices = this.oVDevicesService.hasAudioDeviceAvailable();\n\t\tthis.microphones = this.oVDevicesService.getMicrophones();\n\t\tthis.cameras = this.oVDevicesService.getCameras();\n\t\tthis.camSelected = this.oVDevicesService.getCamSelected();\n\t\tthis.micSelected = this.oVDevicesService.getMicSelected();\n\t}\n\n\tprivate setSessionName() {\n\t\tthis.route.params.subscribe((params: Params) => {\n\t\t\tthis.mySessionId = this.externalConfig ? this.externalConfig.getSessionName() : params.roomName;\n\t\t\tthis.tokenService.setSessionId(this.mySessionId);\n\t\t});\n\t}\n\n\tprivate setRandomAvatar() {\n\t\tthis.randomAvatar = this.utilsSrv.getOpenViduAvatar();\n\t\tthis.localUsersService.setAvatar(AvatarType.RANDOM, this.randomAvatar);\n\t\tthis.avatarSelected = AvatarType.RANDOM;\n\t}\n\n\tprivate scrollToBottom(): void {\n\t\ttry {\n\t\t\tthis.bodyCard.nativeElement.scrollTop = this.bodyCard.nativeElement.scrollHeight;\n\t\t} catch (err) {}\n\t}\n\n\tprivate initScreenPublisher(): Publisher {\n\t\tconst videoSource = ScreenType.SCREEN;\n\t\tconst audioSource = this.hasAudioDevices ? undefined : null;\n\t\tconst willThereBeWebcam = this.localUsersService.isWebCamEnabled() && this.localUsersService.hasWebcamVideoActive();\n\t\tconst hasAudio = willThereBeWebcam ? false : this.hasAudioDevices && this.isAudioActive;\n\t\tconst properties = this.openViduWebRTCService.createPublisherProperties(videoSource, audioSource, true, hasAudio, false);\n\n\t\ttry {\n\t\t\treturn this.openViduWebRTCService.initScreenPublisher(undefined, properties);\n\t\t} catch (error) {\n\t\t\tthis.log.e(error);\n\t\t\tthis.utilsSrv.handlerScreenShareError(error);\n\t\t}\n\t}\n\n\tprivate publishAudio(audio: boolean) {\n\t\tthis.localUsersService.isWebCamEnabled()\n\t\t\t? this.openViduWebRTCService.publishWebcamAudio(audio)\n\t\t\t: this.openViduWebRTCService.publishScreenAudio(audio);\n\t}\n\n\tprivate subscribeToLocalUsersEvents() {\n\t\tthis.oVUsersSubscription = this.localUsersService.OVUsers.subscribe((users) => {\n\t\t\tthis.localUsers = users;\n\t\t});\n\t\tthis.screenShareStateSubscription = this.localUsersService.screenShareState.subscribe((enabled) => {\n\t\t\tthis.screenShareEnabled = enabled;\n\t\t});\n\t}\n\n\tprivate initwebcamPublisher() {\n\t\tconst micStorageDevice = this.micSelected?.device || undefined;\n\t\tconst camStorageDevice = this.camSelected?.device || undefined;\n\n\t\tconst videoSource = this.hasVideoDevices ? camStorageDevice : false;\n\t\tconst audioSource = this.hasAudioDevices ? micStorageDevice : false;\n\t\tconst publishAudio = this.hasAudioDevices ? this.isAudioActive : false;\n\t\tconst publishVideo = this.hasVideoDevices ? this.isVideoActive : false;\n\t\tconst mirror = this.camSelected && this.camSelected.type === CameraType.FRONT;\n\t\tconst properties = this.openViduWebRTCService.createPublisherProperties(\n\t\t\tvideoSource,\n\t\t\taudioSource,\n\t\t\tpublishVideo,\n\t\t\tpublishAudio,\n\t\t\tmirror\n\t\t);\n\t\tconst publisher = this.openViduWebRTCService.initWebcamPublisher(undefined, properties);\n\t\tthis.handlePublisherSuccess(publisher);\n\t\tthis.handlePublisherError(publisher);\n\t}\n\n\tprivate emitPublisher(publisher) {\n\t\tthis.publisherCreated.emit(publisher);\n\t}\n\n\tprivate handlePublisherSuccess(publisher: Publisher) {\n\t\tpublisher.once('accessAllowed', async () => {\n\t\t\tif (this.oVDevicesService.areEmptyLabels()) {\n\t\t\t\tawait this.oVDevicesService.initDevices();\n\t\t\t\tif (this.hasAudioDevices) {\n\t\t\t\t\tconst audioLabel = publisher?.stream?.getMediaStream()?.getAudioTracks()[0]?.label;\n\t\t\t\t\tthis.oVDevicesService.setMicSelected(audioLabel);\n\t\t\t\t}\n\n\t\t\t\tif (this.hasVideoDevices) {\n\t\t\t\t\tconst videoLabel = publisher?.stream?.getMediaStream()?.getVideoTracks()[0]?.label;\n\t\t\t\t\tthis.oVDevicesService.setCamSelected(videoLabel);\n\t\t\t\t}\n\t\t\t\tthis.setDevicesInfo();\n\t\t\t}\n\t\t\t// Emit publisher to webcomponent and angular-library\n\t\t\tthis.emitPublisher(publisher);\n\n\t\t\tif (this.ovSettings.isAutoPublish()) {\n\t\t\t\tthis.joinSession();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.showConfigCard = true;\n\t\t});\n\t}\n\n\tprivate handlePublisherError(publisher: Publisher) {\n\t\tpublisher.once('accessDenied', (e: any) => {\n\t\t\tlet message: string;\n\t\t\tif (e.name === OpenViduErrorName.DEVICE_ALREADY_IN_USE) {\n\t\t\t\tthis.log.w('Video device already in use. Disabling video device...');\n\t\t\t\t// Allow access to the room with only mic if camera device is already in use\n\t\t\t\tthis.hasVideoDevices = false;\n\t\t\t\tthis.oVDevicesService.disableVideoDevices();\n\t\t\t\treturn this.initwebcamPublisher();\n\t\t\t}\n\t\t\tif (e.name === OpenViduErrorName.DEVICE_ACCESS_DENIED) {\n\t\t\t\tmessage = 'Access to media devices was not allowed.';\n\t\t\t} else if (e.name === OpenViduErrorName.NO_INPUT_SOURCE_SET) {\n\t\t\t\tmessage = 'No video or audio devices have been found. Please, connect at least one.';\n\t\t\t}\n\t\t\tthis.utilsSrv.showErrorMessage(e.name.replace(/_/g, ' '), message, true);\n\t\t\tthis.log.e(e.message);\n\t\t});\n\t}\n}\n","
\n\n
\n
\n
\n\n \n
\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t\t

{{ mySessionId }}

\n\n\t\t\t\n
\n\n \n
\n\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\n\t\t\t\t\n\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t 1 && i === 0 ? 'ovVideoSmall' : ''\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\tOops! Camera and microphone are not available\n\t\t\t\t\t\t\tOops! Camera is not available\n\t\t\t\t\t\t\tOops! Microphone is not available\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

Avatar

\n\n\t\t\t\t
\n\n\n\t\t\t\t
\n\n\t\t\t\t\t
\n\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\tPress Avatar Button\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\n\t\t\t\t
\n\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tNickname is required\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tNickname is too long!\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{{ microphone.label }}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{{ camera.label }}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\n
\n\n \n
\n\t\t\t\n\n
\n\n
\n
\n \n\n\n","import { Component, Input, ViewChild, ElementRef, AfterViewInit, Output, EventEmitter } from '@angular/core';\nimport { StreamManager } from 'openvidu-browser';\nimport { VideoType } from '../../types/video-type';\n\n@Component({\n\tselector: 'ov-video',\n\ttemplate: `\n\t\t\"OpenVidu\n\t\t\n\t`,\n\tstyleUrls: ['./stream.component.css']\n})\nexport class OpenViduVideoComponent implements AfterViewInit {\n\n\t@Input() mutedSound: boolean;\n\n\t@Output() toggleVideoSizeEvent = new EventEmitter();\n\n\t_streamManager: StreamManager;\n\n\t_videoElement: ElementRef;\n\n\tngAfterViewInit() {\n\t\tsetTimeout(() => {\n\t\t\tif (this._streamManager && this._videoElement) {\n\t\t\t\tthis._streamManager.addVideoElement(this._videoElement.nativeElement);\n\t\t\t}\n\t\t});\n\t}\n\n\t@ViewChild('videoElement')\n\tset videoElement(element: ElementRef) {\n\t\tthis._videoElement = element;\n\t}\n\n\t@Input()\n\tset streamManager(streamManager: StreamManager) {\n\t\tsetTimeout(() => {\n\t\t\tthis._streamManager = streamManager;\n\t\t\tif (!!this._videoElement && this._streamManager) {\n\t\t\t\tif (this._streamManager.stream.typeOfVideo === VideoType.SCREEN) {\n\t\t\t\t\tthis._videoElement.nativeElement.style.objectFit = 'contain';\n\t\t\t\t\tthis._videoElement.nativeElement.style.background = '#272727';\n\t\t\t\t\tthis.enableVideoSizeBig();\n\t\t\t\t} else {\n\t\t\t\t\tthis._videoElement.nativeElement.style.objectFit = 'cover';\n\t\t\t\t}\n\t\t\t\tthis._streamManager.addVideoElement(this._videoElement.nativeElement);\n\t\t\t}\n\t\t});\n\t}\n\n\tenableVideoSizeBig() {\n\t\t// Doing video size bigger.\n\t\t// Timeout because of connectionId is null and icon does not change\n\t\tsetTimeout(() => {\n\t\t\tthis.toggleVideoSizeEvent.emit(true);\n\t\t}, 590);\n\t}\n}\n","import { Component, Input, OnInit, HostListener, ElementRef, ViewChild, Output, EventEmitter, ViewContainerRef, OnDestroy } from '@angular/core';\nimport { UserModel } from '../../models/user-model';\nimport { FormControl, Validators } from '@angular/forms';\nimport { NicknameMatcher } from '../../forms-matchers/nickname';\nimport { UtilsService } from '../../services/utils/utils.service';\nimport { LayoutType } from '../../types/layout-type';\nimport { VideoSizeIcon, VideoFullscreenIcon } from '../../types/icon-type';\nimport { MatMenuTrigger, MatMenuPanel } from '@angular/material/menu';\nimport { CdkOverlayService } from '../../services/cdk-overlay/cdk-overlay.service';\n\n@Component({\n\tselector: 'stream-component',\n\tstyleUrls: ['./stream.component.css'],\n\ttemplateUrl: './stream.component.html'\n})\nexport class StreamComponent implements OnInit, OnDestroy {\n\tvideoSizeIconEnum = VideoSizeIcon;\n\tVideoFullscreenIconEnum = VideoFullscreenIcon;\n\tvideoSizeIcon: VideoSizeIcon = VideoSizeIcon.BIG;\n\tfullscreenIcon: VideoFullscreenIcon = VideoFullscreenIcon.BIG;\n\tmutedSound: boolean;\n\ttoggleNickname: boolean;\n\tisFullscreen: boolean;\n\n\tnicknameFormControl: FormControl;\n\tmatcher: NicknameMatcher;\n\n\t_user: UserModel;\n\t@Output() nicknameClicked = new EventEmitter();\n\t@Output() replaceScreenTrackClicked = new EventEmitter();\n\t@Output() toggleVideoSizeClicked = new EventEmitter();\n\n\t@ViewChild('streamComponent', { read: ViewContainerRef }) streamComponent: ViewContainerRef;\n\t@ViewChild(MatMenuTrigger) public menuTrigger: MatMenuTrigger;\n\t@ViewChild('menu') menu: MatMenuPanel;\n\n\tconstructor(private utilsSrv: UtilsService, private cdkSrv: CdkOverlayService) {}\n\n\t@HostListener('window:resize', ['$event'])\n\tsizeChange(event) {\n\t\tconst maxHeight = window.screen.height;\n\t\tconst maxWidth = window.screen.width;\n\t\tconst curHeight = window.innerHeight;\n\t\tconst curWidth = window.innerWidth;\n\t\tif (maxWidth !== curWidth && maxHeight !== curHeight) {\n\t\t\tthis.isFullscreen = false;\n\t\t\tthis.videoSizeIcon = VideoSizeIcon.BIG;\n\t\t}\n\t}\n\n\t// Has been mandatory fullscreen Input because of Input user did not fire changing\n\t// the fullscreen user property in publisherStartSpeaking event in VideoRoom Component\n\t@Input()\n\tset videoSizeBig(videoSizeBig: boolean) {\n\t\tthis.checkVideoSizeBigIcon(videoSizeBig);\n\t}\n\n\t@Input()\n\tset user(user: UserModel) {\n\t\tthis._user = user;\n\t\tthis.nicknameFormControl = new FormControl(this._user.getNickname(), [Validators.maxLength(25), Validators.required]);\n\t}\n\n\t@ViewChild('nicknameInput')\n\tset nicknameInputElement(element: ElementRef) {\n\t\tsetTimeout(() => {\n\t\t\telement?.nativeElement.focus();\n\t\t});\n\t}\n\n\tngOnInit() {\n\t\tthis.matcher = new NicknameMatcher();\n\t}\n\n\tngOnDestroy() {\n\t\tthis.cdkSrv.setSelector('.sidenav-main');\n\t}\n\n\ttoggleVideoSize(resetAll?) {\n\t\tconst element = this.utilsSrv.getHTMLElementByClassName(this.streamComponent.element.nativeElement, LayoutType.ROOT_CLASS);\n\t\tthis.toggleVideoSizeClicked.emit({ element, connectionId: this._user.getConnectionId(), resetAll });\n\t}\n\n\ttoggleFullscreen() {\n\t\tthis.utilsSrv.toggleFullscreen('container-' + this._user.getStreamManager().stream.streamId);\n\t\tthis.toggleFullscreenIcon();\n\t}\n\n\ttoggleVideoMenu(event) {\n\t\tif (this.menuTrigger.menuOpen) {\n\t\t\tthis.menuTrigger.closeMenu();\n\t\t\treturn;\n\t\t}\n\t\tthis.cdkSrv.setSelector('#container-' + this._user.streamManager?.stream?.streamId);\n\t\tthis.menuTrigger.openMenu();\n\n\t}\n\n\ttoggleSound() {\n\t\tthis.mutedSound = !this.mutedSound;\n\t}\n\n\ttoggleNicknameForm() {\n\t\tif (this._user.isLocal()) {\n\t\t\tthis.toggleNickname = !this.toggleNickname;\n\t\t}\n\t}\n\n\teventKeyPress(event) {\n\t\tif (event && event.keyCode === 13 && this.nicknameFormControl.valid) {\n\t\t\tthis.nicknameClicked.emit(this.nicknameFormControl.value);\n\t\t\tthis.toggleNicknameForm();\n\t\t}\n\t}\n\n\treplaceScreenTrack() {\n\t\tthis.replaceScreenTrackClicked.emit();\n\t}\n\n\tprivate checkVideoSizeBigIcon(videoSizeBig: boolean) {\n\t\tthis.videoSizeIcon = videoSizeBig ? VideoSizeIcon.NORMAL : VideoSizeIcon.BIG;\n\t}\n\n\tprivate toggleFullscreenIcon() {\n\t\tthis.fullscreenIcon = this.fullscreenIcon === VideoFullscreenIcon.BIG ? VideoFullscreenIcon.NORMAL : VideoFullscreenIcon.BIG;\n\t}\n}\n","\n\t
\n\t\t
\n\t\t\t{{ this._user.nickname }}\n\t\t\t (edit)\n\t\t
\n\t\t
\n\t\t\t\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t Nickname is required \n\t\t\t\t\t Nickname is too long! \n\t\t\t\t\n\t\t\t
\n\t\t
\n\t
\n\n\t\n\t
\n\t\t
\n\t\t\tmic_off\n\t\t
\n\t
\n\n\t
\n\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\tpicture_in_picture\n\t\t\t\tReplace screen\n\t\t\t\n\t\t\n\t
\n\n","import { Component, Input } from '@angular/core';\n\n@Component({\n\tselector: 'app-toolbar-logo',\n\ttemplate: `\n\t\t
\n\t\t\t\n\t\t\t\t\"OpenVidu\n\t\t\t\n\t\t\t
\n\t\t\t\t{{ sessionId }}\n\t\t\t
\n\t\t
\n\t`,\n\tstyleUrls: ['./toolbar.component.css']\n})\nexport class ToolbarLogoComponent {\n\t@Input() lightTheme: boolean;\n\t@Input() compact: boolean;\n\t@Input() sessionId: string;\n\t@Input() logoUrl: string;\n\n\tconstructor() {}\n}\n","import { Component, OnInit, Input, EventEmitter, Output, HostListener, OnDestroy } from '@angular/core';\nimport { UtilsService } from '../../services/utils/utils.service';\nimport { VideoFullscreenIcon } from '../../types/icon-type';\nimport { OvSettingsModel } from '../../models/ovSettings';\nimport { ChatService } from '../../services/chat/chat.service';\nimport { Subscription } from 'rxjs/internal/Subscription';\nimport { TokenService } from '../../services/token/token.service';\nimport { LocalUsersService } from '../../services/local-users/local-users.service';\n\n@Component({\n\tselector: 'app-toolbar',\n\ttemplateUrl: './toolbar.component.html',\n\tstyleUrls: ['./toolbar.component.css']\n})\nexport class ToolbarComponent implements OnInit, OnDestroy {\n\t@Input() lightTheme: boolean;\n\t@Input() compact: boolean;\n\t@Input() showNotification: boolean;\n\t@Input() ovSettings: OvSettingsModel;\n\n\t@Input() isWebcamAudioEnabled: boolean;\n\t// @Input() isScreenEnabled: boolean;\n\t@Input() isAutoLayout: boolean;\n\t@Input() isConnectionLost: boolean;\n\t@Input() hasVideoDevices: boolean;\n\t@Input() hasAudioDevices: boolean;\n\t@Output() micButtonClicked = new EventEmitter();\n\t@Output() camButtonClicked = new EventEmitter();\n\t@Output() screenShareClicked = new EventEmitter();\n\t@Output() layoutButtonClicked = new EventEmitter();\n\t@Output() leaveSessionButtonClicked = new EventEmitter();\n\n\tmySessionId: string;\n\n\tnewMessagesNum: number;\n\tisScreenShareEnabled: boolean;\n\tisWebcamVideoEnabled: boolean;\n\n\tfullscreenIcon = VideoFullscreenIcon.BIG;\n\tlogoUrl = 'https://corncall.com/images/';\n\n\tparticipantsNames: string[] = [];\n\n\tprivate chatServiceSubscription: Subscription;\n\tprivate screenShareStateSubscription: Subscription;\n\tprivate webcamVideoStateSubscription: Subscription;\n\n\tconstructor(\n\t\tprivate utilsSrv: UtilsService,\n\t\tprivate chatService: ChatService,\n\t\tprivate tokenService: TokenService,\n\t\tprivate localUsersService: LocalUsersService\n\t) {}\n\n\tngOnDestroy(): void {\n\t\tif (this.chatServiceSubscription) {\n\t\t\tthis.chatServiceSubscription.unsubscribe();\n\t\t}\n\t\tif (this.screenShareStateSubscription) {\n\t\t\tthis.screenShareStateSubscription.unsubscribe();\n\t\t}\n\t\tif (this.webcamVideoStateSubscription) {\n\t\t\tthis.webcamVideoStateSubscription.unsubscribe();\n\t\t}\n\t}\n\n\t@HostListener('window:resize', ['$event'])\n\tsizeChange(event) {\n\t\tconst maxHeight = window.screen.height;\n\t\tconst maxWidth = window.screen.width;\n\t\tconst curHeight = window.innerHeight;\n\t\tconst curWidth = window.innerWidth;\n\t\tif (maxWidth !== curWidth && maxHeight !== curHeight) {\n\t\t\tthis.fullscreenIcon = VideoFullscreenIcon.BIG;\n\t\t}\n\t}\n\n\tngOnInit() {\n\t\tif (this.lightTheme) {\n\t\t\tthis.logoUrl += 'CornCall.png';\n\t\t\treturn;\n\t\t}\n\t\tthis.logoUrl += 'CornCall.png';\n\t\tthis.mySessionId = this.tokenService.getSessionId();\n\n\t\tthis.chatServiceSubscription = this.chatService.messagesUnreadObs.subscribe((num) => {\n\t\t\tthis.newMessagesNum = num;\n\t\t});\n\n\t\tthis.screenShareStateSubscription = this.localUsersService.screenShareState.subscribe((enabled) => {\n\t\t\tthis.isScreenShareEnabled = enabled;\n\t\t});\n\n\t\tthis.webcamVideoStateSubscription = this.localUsersService.webcamVideoActive.subscribe((enabled) => {\n\t\t\tthis.isWebcamVideoEnabled = enabled;\n\t\t});\n\t}\n\n\ttoggleMicrophone() {\n\t\tthis.micButtonClicked.emit();\n\t}\n\n\ttoggleCamera() {\n\t\tthis.camButtonClicked.emit();\n\t}\n\n\ttoggleScreenShare() {\n\t\tthis.screenShareClicked.emit();\n\t}\n\n\ttoggleSpeakerLayout() {\n\t\tthis.layoutButtonClicked.emit();\n\t}\n\n\tleaveSession() {\n\t\tthis.leaveSessionButtonClicked.emit();\n\t}\n\n\ttoggleChat() {\n\t\tthis.chatService.toggleChat();\n\t}\n\n\ttoggleFullscreen() {\n\t\tthis.utilsSrv.toggleFullscreen('videoRoomNavBar');\n\t\tthis.fullscreenIcon = this.fullscreenIcon === VideoFullscreenIcon.BIG ? VideoFullscreenIcon.NORMAL : VideoFullscreenIcon.BIG;\n\t}\n}\n","\n\t\n\t
\n\t\t
\n\t\t\t\n\t\t\t\tmic\n\t\t\t\tmic_off\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\t\t\tvideocam\n\t\t\t\tvideocam_off\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\t\t\tstop_screen_share\n\t\t\t\tscreen_share\n\t\t\t\n\n\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\t\t\tvoice_over_off\n\t\t\t\trecord_voice_over\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\t
\n\t
\n\t
\n\t\t\n\t
\n\n","import { OverlayContainer } from '@angular/cdk/overlay';\nimport { Injectable } from '@angular/core';\n\n@Injectable()\nexport class CdkOverlayContainer extends OverlayContainer {\n\tcontainerSelector = '.sidenav-main';\n\tcustomClass = 'cdk-overlay-container';\n\n\tprotected _createContainer(): void {\n\t\tconst container = document.createElement('div');\n\t\tcontainer.classList.add(this.customClass);\n\t\tlet element = this.getElement(this.containerSelector);\n\t\tif (!element) {\n\t\t\telement = this.getElement('body');\n\t\t}\n\t\tthis._containerElement = element.appendChild(container);\n\t}\n\n\tsetSelector(selector: string) {\n\t\tconst overlayElement = this.getElement('.' + this.customClass);\n\n\t\tif (overlayElement && this.containerSelector !== selector) {\n\t\t\tconst newContainerOverlayContainer = this.getElement(selector);\n\t\t\tthis.containerSelector = selector;\n\t\t\tnewContainerOverlayContainer?.appendChild(overlayElement);\n\t\t}\n\t}\n\tprivate getElement(selector: string): Element {\n\t\treturn document.querySelector(selector);\n\t}\n}\n","import { FormControl, FormGroupDirective, NgForm } from '@angular/forms';\nimport { ErrorStateMatcher } from '@angular/material/core';\n\n/** Error when invalid control is dirty, touched, or submitted. */\nexport class NicknameMatcher implements ErrorStateMatcher {\n\tisErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\n\t\tconst isSubmitted = form && form.submitted;\n\t\treturn !!(control && control.invalid && (control.dirty || control.touched || isSubmitted));\n\t}\n}\n","/**\n * @hidden\n */\ndeclare var $: any;\n\nexport interface OpenViduLayoutOptions {\n\t/**\n\t * The narrowest ratio that will be used (*2x3* by default)\n\t */\n\tmaxRatio: number;\n\n\t/**\n\t * The widest ratio that will be used (*16x9* by default)\n\t */\n\tminRatio: number;\n\n\t/**\n\t * If this is true then the aspect ratio of the video is maintained and minRatio and maxRatio are ignored (*false* by default)\n\t */\n\tfixedRatio: boolean;\n\t/**\n\t * Whether you want to animate the transitions\n\t */\n\tanimate: any;\n\t/**\n\t * The class to add to elements that should be sized bigger\n\t */\n\tbigClass: string;\n\n\t/**\n\t * The class to add to elements that should be sized smaller\n\t */\n\tsmallClass: string;\n\n\t/**\n\t * The maximum percentage of space the big ones should take up\n\t */\n\tbigPercentage: any;\n\n\t/**\n\t * FixedRatio for the big ones\n\t */\n\tbigFixedRatio: any;\n\n\t/**\n\t * The narrowest ratio to use for the big elements (*2x3* by default)\n\t */\n\tbigMaxRatio: any;\n\n\t/**\n\t * The widest ratio to use for the big elements (*16x9* by default)\n\t */\n\tbigMinRatio: any;\n\n\t/**\n\t * Whether to place the big one in the top left `true` or bottom right\n\t */\n\tbigFirst: any;\n}\n\nexport class OpenViduLayout {\n\t/**\n\t * @hidden\n\t */\n\tprivate layoutContainer: HTMLElement;\n\n\t/**\n\t * @hidden\n\t */\n\tprivate opts: OpenViduLayoutOptions;\n\n\t/**\n\t * Update the layout container\n\t */\n\tupdateLayout() {\n\t\tsetTimeout(() => {\n\t\t\tif (this.layoutContainer.style.display === 'none') {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tlet id = this.layoutContainer.id;\n\t\t\tif (!id) {\n\t\t\t\tid = 'OT_' + this.cheapUUID();\n\t\t\t\tthis.layoutContainer.id = id;\n\t\t\t}\n\t\t\tconst smallOnes: HTMLVideoElement[] = Array.prototype.filter.call(\n\t\t\t\tthis.layoutContainer.querySelectorAll('#' + id + '>.' + this.opts.smallClass),\n\t\t\t\tthis.filterDisplayNone\n\t\t\t);\n\t\t\tconst bigOnes: HTMLVideoElement[] = Array.prototype.filter.call(\n\t\t\t\tthis.layoutContainer.querySelectorAll('#' + id + '>.' + this.opts.bigClass),\n\t\t\t\tthis.filterDisplayNone\n\t\t\t).filter(x => !smallOnes.includes(x));\n\n\t\t\tconst normalOnes: HTMLVideoElement[] = Array.prototype.filter.call(\n\t\t\t\tthis.layoutContainer.querySelectorAll('#' + id + '>*:not(.' + this.opts.bigClass + ')'),\n\t\t\t\tthis.filterDisplayNone\n\t\t\t).filter(x => !smallOnes.includes(x));\n\n\t\t\tthis.attachElements(bigOnes, normalOnes, smallOnes);\n\t\t}, 50);\n\t}\n\n\t/**\n\t * Initialize the layout inside of the container with the options required\n\t * @param container\n\t * @param opts\n\t */\n\tinitLayoutContainer(container: HTMLElement, opts: OpenViduLayoutOptions) {\n\t\tthis.opts = {\n\t\t\tmaxRatio: opts.maxRatio != null ? opts.maxRatio : 3 / 2,\n\t\t\tminRatio: opts.minRatio != null ? opts.minRatio : 9 / 16,\n\t\t\tfixedRatio: opts.fixedRatio != null ? opts.fixedRatio : false,\n\t\t\tanimate: opts.animate != null ? opts.animate : false,\n\t\t\tbigClass: opts.bigClass != null ? opts.bigClass : 'OT_big',\n\t\t\tsmallClass: opts.smallClass != null ? opts.smallClass : 'OT_small',\n\t\t\tbigPercentage: opts.bigPercentage != null ? opts.bigPercentage : 0.8,\n\t\t\tbigFixedRatio: opts.bigFixedRatio != null ? opts.bigFixedRatio : false,\n\t\t\tbigMaxRatio: opts.bigMaxRatio != null ? opts.bigMaxRatio : 3 / 2,\n\t\t\tbigMinRatio: opts.bigMinRatio != null ? opts.bigMinRatio : 9 / 16,\n\t\t\tbigFirst: opts.bigFirst != null ? opts.bigFirst : true\n\t\t};\n\t\tthis.layoutContainer = typeof container === 'string' ? $(container) : container;\n\t}\n\n\t/**\n\t * Set the layout configuration\n\t * @param options\n\t */\n\tsetLayoutOptions(options: OpenViduLayoutOptions) {\n\t\tthis.opts = options;\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate fixAspectRatio(elem: HTMLVideoElement, width: number) {\n\t\tconst sub: HTMLVideoElement = elem.querySelector('.OT_root');\n\t\tif (sub) {\n\t\t\t// If this is the parent of a subscriber or publisher then we need\n\t\t\t// to force the mutation observer on the publisher or subscriber to\n\t\t\t// trigger to get it to fix it's layout\n\t\t\tconst oldWidth = sub.style.width;\n\t\t\tsub.style.width = width + 'px';\n\t\t\t// sub.style.height = height + 'px';\n\t\t\tsub.style.width = oldWidth || '';\n\t\t}\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate positionElement(elem: HTMLVideoElement, x: number, y: number, width: number, height: number, animate: any) {\n\t\tconst targetPosition = {\n\t\t\tleft: x + 'px',\n\t\t\ttop: y + 'px',\n\t\t\twidth: width + 'px',\n\t\t\theight: height + 'px'\n\t\t};\n\n\t\tthis.fixAspectRatio(elem, width);\n\n\t\tif (animate && $) {\n\t\t\t$(elem).stop();\n\t\t\t$(elem).animate(targetPosition, animate.duration || 200, animate.easing || 'swing', () => {\n\t\t\t\tthis.fixAspectRatio(elem, width);\n\t\t\t\tif (animate.complete) {\n\t\t\t\t\tanimate.complete.call(this);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\t$(elem).css(targetPosition);\n\t\t}\n\t\tthis.fixAspectRatio(elem, width);\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate getVideoRatio(elem: HTMLVideoElement) {\n\t\tif (!elem) {\n\t\t\treturn 3 / 4;\n\t\t}\n\t\tconst video: HTMLVideoElement = elem.querySelector('video');\n\t\tif (video && video.videoHeight && video.videoWidth) {\n\t\t\treturn video.videoHeight / video.videoWidth;\n\t\t} else if (elem.videoHeight && elem.videoWidth) {\n\t\t\treturn elem.videoHeight / elem.videoWidth;\n\t\t}\n\t\treturn 3 / 4;\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate getCSSNumber(elem: HTMLElement, prop: string) {\n\t\tconst cssStr = $(elem).css(prop);\n\t\treturn cssStr ? parseInt(cssStr, 10) : 0;\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\t// Really cheap UUID function\n\tprivate cheapUUID() {\n\t\treturn (Math.random() * 100000000).toFixed(0);\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate getHeight(elem: HTMLElement) {\n\t\tconst heightStr = $(elem).css('height');\n\t\treturn heightStr ? parseInt(heightStr, 10) : 0;\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate getWidth(elem: HTMLElement) {\n\t\tconst widthStr = $(elem).css('width');\n\t\treturn widthStr ? parseInt(widthStr, 10) : 0;\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate getBestDimensions(minR: number, maxR: number, count: number, WIDTH: number, HEIGHT: number, targetHeight: number) {\n\t\tlet maxArea, targetCols, targetRows, targetWidth, tWidth, tHeight, tRatio;\n\n\t\t// Iterate through every possible combination of rows and columns\n\t\t// and see which one has the least amount of whitespace\n\t\tfor (let i = 1; i <= count; i++) {\n\t\t\tconst colsAux = i;\n\t\t\tconst rowsAux = Math.ceil(count / colsAux);\n\n\t\t\t// Try taking up the whole height and width\n\t\t\ttHeight = Math.floor(HEIGHT / rowsAux);\n\t\t\ttWidth = Math.floor(WIDTH / colsAux);\n\n\t\t\ttRatio = tHeight / tWidth;\n\t\t\tif (tRatio > maxR) {\n\t\t\t\t// We went over decrease the height\n\t\t\t\ttRatio = maxR;\n\t\t\t\ttHeight = tWidth * tRatio;\n\t\t\t} else if (tRatio < minR) {\n\t\t\t\t// We went under decrease the width\n\t\t\t\ttRatio = minR;\n\t\t\t\ttWidth = tHeight / tRatio;\n\t\t\t}\n\n\t\t\tconst area = tWidth * tHeight * count;\n\n\t\t\t// If this width and height takes up the most space then we're going with that\n\t\t\tif (maxArea === undefined || area > maxArea) {\n\t\t\t\tmaxArea = area;\n\t\t\t\ttargetHeight = tHeight;\n\t\t\t\ttargetWidth = tWidth;\n\t\t\t\ttargetCols = colsAux;\n\t\t\t\ttargetRows = rowsAux;\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\tmaxArea: maxArea,\n\t\t\ttargetCols: targetCols,\n\t\t\ttargetRows: targetRows,\n\t\t\ttargetHeight: targetHeight,\n\t\t\ttargetWidth: targetWidth,\n\t\t\tratio: targetHeight / targetWidth\n\t\t};\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate arrange(\n\t\tchildren: HTMLVideoElement[],\n\t\tWIDTH: number,\n\t\tHEIGHT: number,\n\t\toffsetLeft: number,\n\t\toffsetTop: number,\n\t\tfixedRatio: boolean,\n\t\tminRatio: number,\n\t\tmaxRatio: number,\n\t\tanimate: any\n\t) {\n\t\tlet targetHeight;\n\n\t\tconst count = children.length;\n\t\tlet dimensions;\n\n\t\tif (!fixedRatio) {\n\t\t\tdimensions = this.getBestDimensions(minRatio, maxRatio, count, WIDTH, HEIGHT, targetHeight);\n\t\t} else {\n\t\t\t// Use the ratio of the first video element we find to approximate\n\t\t\tconst ratio = this.getVideoRatio(children.length > 0 ? children[0] : null);\n\t\t\tdimensions = this.getBestDimensions(ratio, ratio, count, WIDTH, HEIGHT, targetHeight);\n\t\t}\n\n\t\t// Loop through each stream in the container and place it inside\n\t\tlet x = 0,\n\t\t\ty = 0;\n\t\tconst rows = [];\n\t\tlet row;\n\t\t// Iterate through the children and create an array with a new item for each row\n\t\t// and calculate the width of each row so that we know if we go over the size and need\n\t\t// to adjust\n\t\tfor (let i = 0; i < children.length; i++) {\n\t\t\tif (i % dimensions.targetCols === 0) {\n\t\t\t\t// This is a new row\n\t\t\t\trow = {\n\t\t\t\t\tchildren: [],\n\t\t\t\t\twidth: 0,\n\t\t\t\t\theight: 0\n\t\t\t\t};\n\t\t\t\trows.push(row);\n\t\t\t}\n\t\t\tconst elem: HTMLVideoElement = children[i];\n\t\t\trow.children.push(elem);\n\t\t\tlet targetWidth = dimensions.targetWidth;\n\t\t\ttargetHeight = dimensions.targetHeight;\n\t\t\t// If we're using a fixedRatio then we need to set the correct ratio for this element\n\t\t\tif (fixedRatio) {\n\t\t\t\ttargetWidth = targetHeight / this.getVideoRatio(elem);\n\t\t\t}\n\t\t\trow.width += targetWidth;\n\t\t\trow.height = targetHeight;\n\t\t}\n\t\t// Calculate total row height adjusting if we go too wide\n\t\tlet totalRowHeight = 0;\n\t\tlet remainingShortRows = 0;\n\t\tfor (let i = 0; i < rows.length; i++) {\n\t\t\trow = rows[i];\n\t\t\tif (row.width > WIDTH) {\n\t\t\t\t// Went over on the width, need to adjust the height proportionally\n\t\t\t\trow.height = Math.floor(row.height * (WIDTH / row.width));\n\t\t\t\trow.width = WIDTH;\n\t\t\t} else if (row.width < WIDTH) {\n\t\t\t\tremainingShortRows += 1;\n\t\t\t}\n\t\t\ttotalRowHeight += row.height;\n\t\t}\n\t\tif (totalRowHeight < HEIGHT && remainingShortRows > 0) {\n\t\t\t// We can grow some of the rows, we're not taking up the whole height\n\t\t\tlet remainingHeightDiff = HEIGHT - totalRowHeight;\n\t\t\ttotalRowHeight = 0;\n\t\t\tfor (let i = 0; i < rows.length; i++) {\n\t\t\t\trow = rows[i];\n\t\t\t\tif (row.width < WIDTH) {\n\t\t\t\t\t// Evenly distribute the extra height between the short rows\n\t\t\t\t\tlet extraHeight = remainingHeightDiff / remainingShortRows;\n\t\t\t\t\tif (extraHeight / row.height > (WIDTH - row.width) / row.width) {\n\t\t\t\t\t\t// We can't go that big or we'll go too wide\n\t\t\t\t\t\textraHeight = Math.floor(((WIDTH - row.width) / row.width) * row.height);\n\t\t\t\t\t}\n\t\t\t\t\trow.width += Math.floor((extraHeight / row.height) * row.width);\n\t\t\t\t\trow.height += extraHeight;\n\t\t\t\t\tremainingHeightDiff -= extraHeight;\n\t\t\t\t\tremainingShortRows -= 1;\n\t\t\t\t}\n\t\t\t\ttotalRowHeight += row.height;\n\t\t\t}\n\t\t}\n\t\t// vertical centering\n\t\ty = (HEIGHT - totalRowHeight) / 2;\n\t\t// Iterate through each row and place each child\n\t\tfor (let i = 0; i < rows.length; i++) {\n\t\t\trow = rows[i];\n\t\t\t// center the row\n\t\t\tconst rowMarginLeft = (WIDTH - row.width) / 2;\n\t\t\tx = rowMarginLeft;\n\t\t\tfor (let j = 0; j < row.children.length; j++) {\n\t\t\t\tconst elem: HTMLVideoElement = row.children[j];\n\n\t\t\t\tlet targetWidth = dimensions.targetWidth;\n\t\t\t\ttargetHeight = row.height;\n\t\t\t\t// If we're using a fixedRatio then we need to set the correct ratio for this element\n\t\t\t\tif (fixedRatio) {\n\t\t\t\t\ttargetWidth = Math.floor(targetHeight / this.getVideoRatio(elem));\n\t\t\t\t}\n\t\t\t\telem.style.position = 'absolute';\n\t\t\t\t// $(elem).css('position', 'absolute');\n\t\t\t\tconst actualWidth =\n\t\t\t\t\ttargetWidth -\n\t\t\t\t\tthis.getCSSNumber(elem, 'paddingLeft') -\n\t\t\t\t\tthis.getCSSNumber(elem, 'paddingRight') -\n\t\t\t\t\tthis.getCSSNumber(elem, 'marginLeft') -\n\t\t\t\t\tthis.getCSSNumber(elem, 'marginRight') -\n\t\t\t\t\tthis.getCSSNumber(elem, 'borderLeft') -\n\t\t\t\t\tthis.getCSSNumber(elem, 'borderRight');\n\n\t\t\t\tconst actualHeight =\n\t\t\t\t\ttargetHeight -\n\t\t\t\t\tthis.getCSSNumber(elem, 'paddingTop') -\n\t\t\t\t\tthis.getCSSNumber(elem, 'paddingBottom') -\n\t\t\t\t\tthis.getCSSNumber(elem, 'marginTop') -\n\t\t\t\t\tthis.getCSSNumber(elem, 'marginBottom') -\n\t\t\t\t\tthis.getCSSNumber(elem, 'borderTop') -\n\t\t\t\t\tthis.getCSSNumber(elem, 'borderBottom');\n\n\t\t\t\tthis.positionElement(elem, x + offsetLeft, y + offsetTop, actualWidth, actualHeight, animate);\n\t\t\t\tx += targetWidth;\n\t\t\t}\n\t\t\ty += targetHeight;\n\t\t}\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate\tattachElements(bigOnes: HTMLVideoElement[], normalOnes: HTMLVideoElement[], smallOnes: HTMLVideoElement[]) {\n\t\tconst HEIGHT =\n\t\t\t\tthis.getHeight(this.layoutContainer) -\n\t\t\t\tthis.getCSSNumber(this.layoutContainer, 'borderTop') -\n\t\t\t\tthis.getCSSNumber(this.layoutContainer, 'borderBottom');\n\t\tconst WIDTH =\n\t\t\t\tthis.getWidth(this.layoutContainer) -\n\t\t\t\tthis.getCSSNumber(this.layoutContainer, 'borderLeft') -\n\t\t\t\tthis.getCSSNumber(this.layoutContainer, 'borderRight');\n\t\tconst offsetLeft = 0;\n\t\tconst offsetTop = 0;\n\n\n\n\t\tif (this.existBigAndNormalOnes(bigOnes, normalOnes, smallOnes)) {\n\n\t\t\tconst smallOnesAux = smallOnes.length > 0 ? smallOnes : normalOnes;\n\t\t\tconst bigOnesAux = bigOnes.length > 0 ? bigOnes : normalOnes;\n\t\t\tthis.arrangeBigAndSmallOnes(bigOnesAux, smallOnesAux);\n\n\t\t} else if (this.onlyExistBigOnes(bigOnes, normalOnes, smallOnes)) {\n\t\t\t// We only have one bigOne just center it\n\t\t\tthis.arrange(\n\t\t\t\t\tbigOnes,\n\t\t\t\t\tWIDTH,\n\t\t\t\t\tHEIGHT,\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\tthis.opts.bigFixedRatio,\n\t\t\t\t\tthis.opts.bigMinRatio,\n\t\t\t\t\tthis.opts.bigMaxRatio,\n\t\t\t\t\tthis.opts.animate\n\t\t\t\t);\n\t\t} else if (this.existBigAndNormalAndSmallOnes(bigOnes, normalOnes, smallOnes)) {\n\t\t\tthis.arrangeBigAndSmallOnes(bigOnes, normalOnes.concat(smallOnes));\n\t\t} else {\n\t\t\tconst normalOnesAux = normalOnes.concat(smallOnes);\n\t\t\tthis.arrange(\n\t\t\t\tnormalOnesAux,\n\t\t\t\tWIDTH - offsetLeft,\n\t\t\t\tHEIGHT - offsetTop,\n\t\t\t\toffsetLeft,\n\t\t\t\toffsetTop,\n\t\t\t\tthis.opts.fixedRatio,\n\t\t\t\tthis.opts.minRatio,\n\t\t\t\tthis.opts.maxRatio,\n\t\t\t\tthis.opts.animate\n\t\t\t);\n\t\t}\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate arrangeBigAndSmallOnes(bigOnesAux: HTMLVideoElement[], smallOnesAux: HTMLVideoElement[]) {\n\n\t\tconst HEIGHT =\n\t\t\t\tthis.getHeight(this.layoutContainer) -\n\t\t\t\tthis.getCSSNumber(this.layoutContainer, 'borderTop') -\n\t\t\t\tthis.getCSSNumber(this.layoutContainer, 'borderBottom');\n\t\tconst WIDTH =\n\t\t\t\tthis.getWidth(this.layoutContainer) -\n\t\t\t\tthis.getCSSNumber(this.layoutContainer, 'borderLeft') -\n\t\t\t\tthis.getCSSNumber(this.layoutContainer, 'borderRight');\n\t\tconst availableRatio = HEIGHT / WIDTH;\n\n\t\tlet offsetLeft = 0;\n\t\tlet offsetTop = 0;\n\t\tlet bigOffsetTop = 0;\n\t\tlet bigOffsetLeft = 0;\n\t\tlet bigWidth, bigHeight;\n\n\n\t\tif (availableRatio > this.getVideoRatio(bigOnesAux[0])) {\n\t\t\t// We are tall, going to take up the whole width and arrange small\n\t\t\t// guys at the bottom\n\t\t\tbigWidth = WIDTH;\n\t\t\tbigHeight = Math.floor(HEIGHT * this.opts.bigPercentage);\n\t\t\toffsetTop = bigHeight;\n\t\t\tbigOffsetTop = HEIGHT - offsetTop;\n\t\t} else {\n\t\t\t// We are wide, going to take up the whole height and arrange the small\n\t\t\t// guys on the right\n\t\t\tbigHeight = HEIGHT;\n\t\t\tbigWidth = Math.floor(WIDTH * this.opts.bigPercentage);\n\t\t\toffsetLeft = bigWidth;\n\t\t\tbigOffsetLeft = WIDTH - offsetLeft;\n\t\t}\n\t\tif (this.opts.bigFirst) {\n\t\t\tthis.arrange(\n\t\t\t\tbigOnesAux,\n\t\t\t\tbigWidth,\n\t\t\t\tbigHeight,\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\tthis.opts.bigFixedRatio,\n\t\t\t\tthis.opts.bigMinRatio,\n\t\t\t\tthis.opts.bigMaxRatio,\n\t\t\t\tthis.opts.animate\n\t\t\t);\n\t\t\tthis.arrange(\n\t\t\t\tsmallOnesAux,\n\t\t\t\tWIDTH - offsetLeft,\n\t\t\t\tHEIGHT - offsetTop,\n\t\t\t\toffsetLeft,\n\t\t\t\toffsetTop,\n\t\t\t\tthis.opts.fixedRatio,\n\t\t\t\tthis.opts.minRatio,\n\t\t\t\tthis.opts.maxRatio,\n\t\t\t\tthis.opts.animate\n\t\t\t);\n\n\t\t} else {\n\t\t\tthis.arrange(\n\t\t\t\tsmallOnesAux,\n\t\t\t\tWIDTH - offsetLeft,\n\t\t\t\tHEIGHT - offsetTop,\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\tthis.opts.fixedRatio,\n\t\t\t\tthis.opts.minRatio,\n\t\t\t\tthis.opts.maxRatio,\n\t\t\t\tthis.opts.animate\n\t\t\t);\n\t\t\tthis.arrange(\n\t\t\t\tbigOnesAux,\n\t\t\t\tbigWidth,\n\t\t\t\tbigHeight,\n\t\t\t\tbigOffsetLeft,\n\t\t\t\tbigOffsetTop,\n\t\t\t\tthis.opts.bigFixedRatio,\n\t\t\t\tthis.opts.bigMinRatio,\n\t\t\t\tthis.opts.bigMaxRatio,\n\t\t\t\tthis.opts.animate\n\t\t\t);\n\t\t}\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate existBigAndNormalOnes(bigOnes: HTMLVideoElement[], normalOnes: HTMLVideoElement[], smallOnes: HTMLVideoElement[]) {\n\t\treturn (\n\t\t\t(bigOnes.length > 0 && normalOnes.length > 0 && smallOnes.length === 0) ||\n\t\t\t(bigOnes.length > 0 && normalOnes.length === 0 && smallOnes.length > 0) ||\n\t\t\t(bigOnes.length === 0 && normalOnes.length > 0 && smallOnes.length > 0)\n\t\t);\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate onlyExistBigOnes(bigOnes: HTMLVideoElement[], normalOnes: HTMLVideoElement[], smallOnes: HTMLVideoElement[]): boolean {\n\t\treturn bigOnes.length > 0 && normalOnes.length === 0 && smallOnes.length === 0;\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate existBigAndNormalAndSmallOnes(bigOnes: HTMLVideoElement[], normalOnes: HTMLVideoElement[], smallOnes: HTMLVideoElement[]): boolean {\n\t\treturn bigOnes.length > 0 && normalOnes.length > 0 && smallOnes.length > 0;\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate filterDisplayNone(element: HTMLElement) {\n\t\treturn element.style.display !== 'none';\n\t}\n}\n","import { Theme } from '../types/webcomponent-config';\nimport { OvSettings } from '../types/ov-settings';\nimport { OvSettingsModel } from './ovSettings';\n\nexport class ExternalConfigModel {\n\tprotected ovSettings: OvSettingsModel;\n\tprotected sessionName: string;\n\tprotected ovServerUrl: string;\n\tprotected ovSecret: string;\n\tprotected theme = Theme.DARK;\n\tprotected nickname: string;\n\tprotected tokens: string[];\n\n\tconstructor() {\n\t\tthis.ovSettings = new OvSettingsModel();\n\t}\n\n\tpublic getComponentName() {}\n\n\tpublic getOvSettings(): OvSettingsModel {\n\t\treturn this.ovSettings;\n\t}\n\tpublic getSessionName(): string {\n\t\treturn this.sessionName;\n\t}\n\tpublic getOvServerUrl(): string {\n\t\treturn this.ovServerUrl;\n\t}\n\tpublic getOvSecret(): string {\n\t\treturn this.ovSecret;\n\t}\n\tpublic getTheme(): Theme {\n\t\treturn this.theme;\n\t}\n\tpublic getNickname(): string {\n\t\treturn this.nickname;\n\t}\n\tpublic getTokens(): string[] {\n\t\treturn this.tokens;\n\t}\n\n\tpublic getScreenToken(): string {\n\t\treturn this.tokens[1];\n\t}\n\tpublic getWebcamToken(): string {\n\t\treturn this.tokens[0];\n\t}\n\n\tpublic setOvSettings(ovSettings: OvSettings) {\n\t\tif (!!ovSettings) {\n\t\t\tthis.ovSettings.set(ovSettings);\n\t\t}\n\t}\n\tpublic setSessionName(sessionName: string) {\n\t\tthis.sessionName = sessionName;\n\t}\n\tpublic setOvServerUrl(url: string) {\n\t\tthis.ovServerUrl = url;\n\t}\n\tpublic setOvSecret(secret: string) {\n\t\tthis.ovSecret = secret;\n\t}\n\tpublic setTheme(theme: string) {\n\t\tif ((Object).values(Theme).includes(theme)) {\n\t\t\tthis.theme = theme === Theme.DARK ? Theme.DARK : Theme.LIGHT;\n\t\t}\n\t}\n\tpublic setNickname(nickname: string) {\n\t\tthis.nickname = nickname;\n\t}\n\tpublic setTokens(tokens: string[]) {\n\t\tthis.tokens = tokens;\n\t}\n\n\tpublic canJoinToSession(): boolean {\n\t\treturn this.canOVCallGenerateToken() || this.hasReceivedToken();\n\t}\n\n\tpublic hasTokens(): boolean {\n\t\treturn this.tokens?.length > 0;\n\t}\n\n\tprivate canOVCallGenerateToken(): boolean {\n\t\treturn !!this.sessionName && !!this.ovServerUrl && !!this.ovSecret && !!this.nickname;\n\t}\n\tprivate hasReceivedToken(): boolean {\n\t\treturn !!this.tokens && this.tokens.length > 0 && !!this.nickname;\n\t}\n\n}\n","import { OvSettings } from '../types/ov-settings';\n\nexport class OvSettingsModel {\n\tprivate ovSettings: OvSettings;\n\n\tconstructor() {\n\t\tthis.ovSettings = {\n\t\t\tchat: true,\n\t\t\tautopublish: false,\n\t\t\ttoolbarButtons: {\n\t\t\t\tvideo: true,\n\t\t\t\taudio: true,\n\t\t\t\tfullscreen: true,\n\t\t\t\tscreenShare: true,\n\t\t\t\tlayoutSpeaking: true,\n\t\t\t\texit: true\n\t\t\t}\n\t\t};\n\t}\n\n\tpublic set(ovSettings: OvSettings) {\n\t\tthis.ovSettings = ovSettings;\n\t}\n\n\tpublic isAutoPublish(): boolean {\n\t\treturn this.ovSettings.autopublish;\n\t}\n\n\tpublic hasVideo(): boolean {\n\t\treturn this.ovSettings.toolbarButtons.video;\n\t}\n\n\tpublic hasScreenSharing(): boolean {\n\t\treturn this.ovSettings.toolbarButtons.screenShare;\n\t}\n\n\tpublic hasLayoutSpeaking(): boolean {\n\t\treturn this.ovSettings.toolbarButtons.layoutSpeaking;\n\t}\n\n\tpublic hasFullscreen(): boolean {\n\t\treturn this.ovSettings.toolbarButtons.fullscreen;\n\t}\n\n\tpublic hasAudio(): boolean {\n\t\treturn this.ovSettings.toolbarButtons.audio;\n\t}\n\n\tpublic hasChat(): boolean {\n\t\treturn this.ovSettings.chat;\n\t}\n\tpublic hasExit(): boolean {\n\t\treturn this.ovSettings.toolbarButtons.exit;\n\t}\n\n\tpublic setScreenSharing(screenShare: boolean) {\n\t\tthis.ovSettings.toolbarButtons.screenShare = screenShare;\n\t}\n}\n","import { StreamManager, Publisher } from 'openvidu-browser';\nimport { VideoType } from '../types/video-type';\n\n/**\n * Packs all the information about the user\n */\nexport class UserModel {\n\t/**\n\t * The Connection ID that is publishing the stream\n\t */\n\tconnectionId: string;\n\n\t/**\n\t * The user nickname\n\t */\n\tnickname: string;\n\n\t/**\n\t * StreamManager object ([[Publisher]] or [[Subscriber]])\n\t */\n\tstreamManager: StreamManager;\n\n\t/**\n\t * @hidden\n\t */\n\tvideoAvatar: HTMLCanvasElement;\n\n\t/**\n\t * @hidden\n\t */\n\tlocal: boolean;\n\n\t/**\n\t * @hidden\n\t */\n\tprivate randomAvatar: string;\n\n\t/**\n\t * @hidden\n\t */\n\tprivate videoSizeBig: boolean;\n\n\t/**\n\t * @hidden\n\t */\n\tconstructor(connectionId?: string, streamManager?: StreamManager, nickname?: string) {\n\t\tthis.connectionId = connectionId || '';\n\t\tthis.nickname = nickname || 'OpenVidu';\n\t\tthis.streamManager = streamManager || null;\n\t}\n\n\t/**\n\t * Return `true` if audio track is active and `false` if audio track is muted\n\t */\n\tpublic isAudioActive(): boolean {\n\t\t// console.log(\"isAudioActive\");\n\t\treturn (this.streamManager)?.stream?.audioActive;\n\t}\n\n\t/**\n\t * Return `true` if video track is active and `false` if video track is muted\n\t */\n\tpublic isVideoActive(): boolean {\n\t\t// console.log(\"isVideoActive\");\n\t\treturn (this.streamManager)?.stream?.videoActive;\n\t}\n\n\t/**\n\t * Return the connection ID\n\t */\n\tpublic getConnectionId(): string {\n\t\treturn this.streamManager?.stream?.connection?.connectionId || this.connectionId;\n\t}\n\n\t/**\n\t * Return the user nickname\n\t */\n\tpublic getNickname(): string {\n\t\treturn this.nickname;\n\t}\n\n\t/**\n\t * Return the [[streamManger]] object\n\t */\n\tpublic getStreamManager(): StreamManager {\n\t\treturn this.streamManager;\n\t}\n\n\t/**\n\t * Return the user avatar\n\t */\n\tpublic getAvatar(): string {\n\t\treturn this.videoAvatar ? this.videoAvatar.toDataURL() : this.randomAvatar;\n\t}\n\n\t/**\n\t * Return `true` if user has a local role and `false` if not\n\t */\n\tpublic isLocal(): boolean {\n\t\treturn this.local;\n\t}\n\n\t/**\n\t * Return `true` if user has a remote role and `false` if not\n\t */\n\tpublic isRemote(): boolean {\n\t\treturn (this.streamManager)?.remote;\n\t}\n\n\t/**\n\t * Return `true` if user has a screen role and `false` if not\n\t */\n\tpublic isScreen(): boolean {\n\t\t// console.log(\"isScreen\");\n\t\treturn (this.streamManager)?.stream?.typeOfVideo === VideoType.SCREEN;\n\t}\n\n\t/**\n\t * Return `true` if user has a camera role and `false` if not\n\t */\n\tpublic isCamera(): boolean {\n\t\t// console.log(\"CCC\");\n\t\treturn (this.streamManager)?.stream?.typeOfVideo === VideoType.CAMERA || (this.isLocal() && !this.isScreen());\n\t}\n\n\t/**\n\t * Set the streamManager value object\n\t * @param streamManager value of streamManager\n\t */\n\tpublic setStreamManager(streamManager: StreamManager) {\n\t\tthis.streamManager = streamManager;\n\t}\n\n\t/**\n\t * Set the user nickname value\n\t * @param nickname value of user nickname\n\t */\n\tpublic setNickname(nickname: string) {\n\t\tthis.nickname = nickname;\n\t}\n\n\tpublic isVideoSizeBig(): boolean {\n\t\treturn this.videoSizeBig;\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tpublic setVideoSizeBig(big: boolean) {\n\t\tthis.videoSizeBig = big;\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\t// Used when the streamManager is null (users without devices)\n\tpublic setLocal(local: boolean) {\n\t\tthis.local = local;\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tpublic setUserAvatar(img?: string): Promise {\n\t\treturn new Promise((resolve) => {\n\t\t\tif (!img) {\n\t\t\t\tthis.createVideoAvatar();\n\t\t\t\tconst streamId = this.getStreamManager()?.stream?.streamId;\n\t\t\t\tconst video = document.getElementById('video-' + streamId);\n\t\t\t\tif (!!streamId && !!video) {\n\t\t\t\t\tconst avatar = this.videoAvatar.getContext('2d');\n\t\t\t\t\tavatar.drawImage(video, 200, 120, 285, 285, 0, 0, 100, 100);\n\t\t\t\t}\n\t\t\t\tresolve();\n\t\t\t} else {\n\t\t\t\tthis.randomAvatar = img;\n\t\t\t\tresolve();\n\t\t\t}\n\t\t});\n\t}\n\n\tpublic removeVideoAvatar() {\n\t\tthis.videoAvatar = null;\n\t}\n\n\t/**\n\t * @hidden\n\t */\n\tprivate createVideoAvatar() {\n\t\tthis.videoAvatar = document.createElement('canvas');\n\t\tthis.videoAvatar.className = 'user-img';\n\t\tthis.videoAvatar.width = 100;\n\t\tthis.videoAvatar.height = 100;\n\t}\n}\n","import { ISessionConfig } from '../types/webcomponent-config';\nimport { ExternalConfigModel } from './external-config';\n\nexport class WebComponentModel extends ExternalConfigModel {\n\tprivate readonly NAME = 'WebComponent';\n\tprivate sessionConfig: ISessionConfig;\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tsetSessionConfig(config: any) {\n\n\t\tthis.sessionConfig = config;\n\n\t\tif (!!this.sessionConfig) {\n\t\t\tthis.sessionName = this.sessionConfig.sessionName;\n\t\t\tthis.nickname = this.sessionConfig.user;\n\t\t\tthis.tokens = this.sessionConfig.tokens;\n\t\t\tif (this.sessionConfig.ovSettings && this.isOvSettingsType(this.sessionConfig.ovSettings)) {\n\t\t\t\tthis.ovSettings.set(this.sessionConfig.ovSettings);\n\t\t\t}\n\t\t\t// Allow screen sharing only if two tokens are received\n\t\t\tthis.ovSettings.setScreenSharing(this.ovSettings.hasScreenSharing() && this.tokens?.length > 1);\n\t\t\tif (!this.ovSettings.hasScreenSharing()) {\n\t\t\t\tconsole.warn('ScreenSharing has been disabled. OpenVidu Angular has received only one token.');\n\t\t\t}\n\t\t}\n\t}\n\tpublic getComponentName() {\n\t\treturn this.NAME;\n\t}\n\n\tprivate isOvSettingsType(obj) {\n\t\treturn (\n\t\t\t'chat' in obj &&\n\t\t\ttypeof obj['chat'] === 'boolean' &&\n\t\t\t'autopublish' in obj &&\n\t\t\ttypeof obj['autopublish'] === 'boolean' &&\n\t\t\t'toolbarButtons' in obj &&\n\t\t\ttypeof obj['toolbarButtons'] === 'object' &&\n\t\t\t'audio' in obj.toolbarButtons &&\n\t\t\ttypeof obj.toolbarButtons['audio'] === 'boolean' &&\n\t\t\t'audio' in obj.toolbarButtons &&\n\t\t\ttypeof obj.toolbarButtons['audio'] === 'boolean' &&\n\t\t\t'video' in obj.toolbarButtons &&\n\t\t\ttypeof obj.toolbarButtons['video'] === 'boolean' &&\n\t\t\t'screenShare' in obj.toolbarButtons &&\n\t\t\ttypeof obj.toolbarButtons['screenShare'] === 'boolean' &&\n\t\t\t'fullscreen' in obj.toolbarButtons &&\n\t\t\ttypeof obj.toolbarButtons['fullscreen'] === 'boolean' &&\n\t\t\t'layoutSpeaking' in obj.toolbarButtons &&\n\t\t\ttypeof obj.toolbarButtons['layoutSpeaking'] === 'boolean' &&\n\t\t\t'exit' in obj.toolbarButtons &&\n\t\t\ttypeof obj.toolbarButtons['exit'] === 'boolean'\n\t\t);\n\t}\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { UtilsService } from '../services/utils/utils.service';\n\n@Pipe({ name: 'linkify' })\nexport class LinkifyPipe implements PipeTransform {\n\tconstructor(public utilsSrv: UtilsService) {}\n\ttransform(str: string): string {\n\t\treturn str ? this.utilsSrv.linkify(str) : str;\n\t}\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { OvSettingsModel } from '../models/ovSettings';\n\n\n@Pipe({ name: 'hasChat', pure: true })\nexport class HasChatPipe implements PipeTransform {\n\tconstructor() {}\n\ttransform(ovSettings: OvSettingsModel): boolean {\n\t\treturn !ovSettings || ovSettings.hasChat();\n\t}\n}\n\n@Pipe({ name: 'hasAudio', pure: true })\nexport class HasAudioPipe implements PipeTransform {\n\tconstructor() {}\n\ttransform(ovSettings: OvSettingsModel): boolean {\n\t\treturn !ovSettings || ovSettings.hasAudio();\n\t}\n}\n\n@Pipe({ name: 'hasVideo', pure: true })\nexport class HasVideoPipe implements PipeTransform {\n\tconstructor() {}\n\ttransform(ovSettings: OvSettingsModel): boolean {\n\t\treturn !ovSettings || ovSettings.hasVideo();\n\t}\n}\n\n@Pipe({ name: 'isAutoPublish', pure: true })\nexport class IsAutoPublishPipe implements PipeTransform {\n\tconstructor() {}\n\ttransform(ovSettings: OvSettingsModel): boolean {\n\t\treturn !ovSettings || ovSettings.isAutoPublish();\n\t}\n}\n\n@Pipe({ name: 'hasScreenSharing', pure: true })\nexport class HasScreenSharingPipe implements PipeTransform {\n\tconstructor() {}\n\ttransform(ovSettings: OvSettingsModel): boolean {\n\t\treturn !ovSettings || ovSettings.hasScreenSharing();\n\t}\n}\n\n@Pipe({ name: 'hasFullscreen', pure: true })\nexport class HasFullscreenPipe implements PipeTransform {\n\tconstructor() {}\n\ttransform(ovSettings: OvSettingsModel): boolean {\n\t\treturn !ovSettings || ovSettings.hasFullscreen();\n\t}\n}\n\n@Pipe({ name: 'hasLayoutSpeaking', pure: true })\nexport class HasLayoutSpeakingPipe implements PipeTransform {\n\tconstructor() {}\n\ttransform(ovSettings: OvSettingsModel): boolean {\n\t\treturn !ovSettings || ovSettings.hasLayoutSpeaking();\n\t}\n}\n\n@Pipe({ name: 'hasExit', pure: true })\nexport class HasExitPipe implements PipeTransform {\n\tconstructor() {}\n\ttransform(ovSettings: OvSettingsModel): boolean {\n\t\treturn !ovSettings || ovSettings.hasExit();\n\t}\n}\n@Pipe({ name: 'filter', pure: true })\nexport class FilterPipe implements PipeTransform {\n\tconstructor() {}\n\ttransform(value: any,searchTerm:any): any {\n\t\treturn value.filter(function(search)\n\t\t{\nreturn search.connectionId.indexOf(searchTerm) > -1\n\t\t});\n\t}\n}","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'tooltipList', pure: true })\nexport class TooltipListPipe implements PipeTransform {\n\ttransform(lines: string[]): string {\n\t\tlet list = '';\n\t\tlines.forEach((line) => {\n\t\t\tlist += '• ' + line + '\\n';\n\t\t});\n\n\t\treturn list;\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { CdkOverlayContainer } from '../../config/custom-cdk-overlay-container';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class CdkOverlayService {\n\n\tconstructor(private cdkOverlayModel: CdkOverlayContainer) {}\n\n\tsetSelector(selector: string) {\n\t\tthis.cdkOverlayModel.setSelector(selector);\n\t}\n}\n","import { Injectable,Output,EventEmitter } from '@angular/core';\nimport { Observable, BehaviorSubject } from 'rxjs';\nimport { ChatMessage } from '../../types/chat-type';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { RemoteUsersService } from '../remote-users/remote-users.service';\nimport { LoggerService } from '../logger/logger.service';\nimport { ILogger } from '../../types/logger-type';\nimport { NotificationService } from '../notifications/notification.service';\nimport { OpenViduWebrtcService } from '../openvidu-webrtc/openvidu-webrtc.service';\nimport { LocalUsersService } from '../local-users/local-users.service';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class ChatService {\n\n\t@Output() outPutToParentNew = new EventEmitter();\n\t\tmessagesObs: Observable;\n\tmessagesUnreadObs: Observable;\n\traiseHandID: Observable;\n\ttoggleChatObs: Observable;\n\n\tprivate chatComponent: MatSidenav;\n\n\tprivate _messageList = >new BehaviorSubject([]);\n\tprivate _toggleChat = >new BehaviorSubject(false);\n\n\tprivate messageList: ChatMessage[] = [];\n\tprivate chatOpened: boolean;\n\tprivate messagesUnread = 0;\n\tprivate log: ILogger;\n\n\tprivate _messagesUnread = >new BehaviorSubject(0);\n\tprivate _raiseHandNewID = >new BehaviorSubject('');\n\n\tconstructor(\n\t\tprivate loggerSrv: LoggerService,\n\t\tprivate openViduWebRTCService: OpenViduWebrtcService,\n\t\tprivate localUsersService: LocalUsersService,\n\t\tprivate remoteUsersService: RemoteUsersService,\n\t\tprivate notificationService: NotificationService\n\t) {\n\t\tthis.log = this.loggerSrv.get('ChatService');\n\t\tthis.messagesObs = this._messageList.asObservable();\n\t\tthis.toggleChatObs = this._toggleChat.asObservable();\n\t\tthis.messagesUnreadObs = this._messagesUnread.asObservable();\n\n\t\tthis.raiseHandID = this._raiseHandNewID.asObservable();\n\t}\n\n\tsetChatComponent(chatSidenav: MatSidenav) {\n\t\tthis.chatComponent = chatSidenav;\n\t}\n\n\tsubscribeToChat() {\n\t\tconst session = this.openViduWebRTCService.getWebcamSession();\n\t\tsession.on('signal:myChat', (event: any) => {\n\t\t\tconst connectionId = event.from.connectionId;\n\t\t\tconst data = JSON.parse(event.data);\n\t\t\tconst isMyOwnConnection = this.openViduWebRTCService.isMyOwnConnection(connectionId);\n\t\t\tthis.messageList.push({\n\t\t\t\tisLocal: isMyOwnConnection,\n\t\t\t\tnickname: data.nickname,\n\t\t\t\tmessage: data.message,\n\t\t\t\tuserAvatar: isMyOwnConnection\n\t\t\t\t\t? this.localUsersService.getWebcamAvatar()\n\t\t\t\t\t: this.remoteUsersService.getUserAvatar(connectionId)\n\t\t\t});\n\t\t\tif (!this.isChatOpened()) {\n\t\t\t\tthis.addMessageUnread();\n\t\t\t\tthis.notificationService.newMessage(data.nickname.toUpperCase(), this.toggleChat.bind(this));\n\t\t\t}\n\t\t\tthis._messageList.next(this.messageList);\n\t\t});\n\t\tsession.on('signal:raiseHand', (event: any) => {\n\t\t\tconst connectionId = event.from.connectionId;\n\t\t\tconst data = JSON.parse(event.data);\n\t\t\t\n\t\t\tthis._raiseHandNewID.next(connectionId);\n\t\t\tthis.notificationService.newRaiseHandMessage(connectionId, this.log);\n\t\t\n\t\t});\n\n\n\t\tsession.on('signal:muteUser', (event: any) => {\n\t\t\tconst connectionId = event.from.connectionId;\n\t\t\tconst data = JSON.parse(event.data);\n\t\t\t\n\t\t\tthis._raiseHandNewID.next(data);\n\t\t\tthis.notificationService.newRaiseHandMessage(data, this.log);\n\t\t\n\t\t});\n\t}\n\n\tsendMessage(message: string) {\n\t\tmessage = message.replace(/ +(?= )/g, '');\n\t\tif (message !== '' && message !== ' ') {\n\t\t\tconst data = {\n\t\t\t\tmessage: message,\n\t\t\t\tnickname: this.localUsersService.getWebcamUserName()\n\t\t\t};\n\t\t\tconst sessionAvailable = this.openViduWebRTCService.getSessionOfUserConnected();\n\t\t\tsessionAvailable.signal({\n\t\t\t\tdata: JSON.stringify(data),\n\t\t\t\ttype: 'signal:myChat'\n\t\t\t});\n\t\t}\n\t}\n\n\ttoggleChat() {\n\t\tthis.log.d('Toggling chat');\n\t\tthis.chatComponent.toggle().then(() => {\n\t\t\tthis.chatOpened = this.chatComponent.opened;\n\t\t\tthis._toggleChat.next(this.chatOpened);\n\t\t\tif (this.chatOpened) {\n\t\t\t\tthis.messagesUnread = 0;\n\t\t\t\tthis._messagesUnread.next(this.messagesUnread);\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate isChatOpened(): boolean {\n\t\treturn this.chatOpened;\n\t}\n\n\tprivate addMessageUnread() {\n\t\tthis.messagesUnread++;\n\t\tthis._messagesUnread.next(this.messagesUnread);\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { OpenVidu, Device } from 'openvidu-browser';\nimport { IDevice, CameraType } from '../../types/device-type';\nimport { ILogger } from '../../types/logger-type';\nimport { LoggerService } from '../logger/logger.service';\nimport { UtilsService } from '../utils/utils.service';\nimport { StorageService } from '../storage/storage.service';\nimport { Storage } from '../../types/storage-type';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class DevicesService {\n\n\tprivate OV: OpenVidu = null;\n\tprivate devices: Device[];\n\tprivate cameras: IDevice[] = [];\n\tprivate microphones: IDevice[] = [];\n\tprivate camSelected: IDevice;\n\tprivate micSelected: IDevice;\n\tprivate log: ILogger;\n\tprivate videoDevicesDisabled: boolean;\n\n\tconstructor(private loggerSrv: LoggerService, private utilSrv: UtilsService, private storageSrv: StorageService) {\n\t\tthis.log = this.loggerSrv.get('DevicesService');\n\t\tthis.OV = new OpenVidu();\n\t}\n\n\tasync initDevices() {\n\t\tawait this.initOpenViduDevices();\n\t\tthis.devices.length > 0 ? this.log.d('Devices found: ', this.devices) : this.log.w('No devices found!');\n\t\tthis.resetDevicesArray();\n\t\tif (this.hasAudioDeviceAvailable()) {\n\t\t\tthis.initAudioDevices();\n\t\t\tthis.micSelected = this.getMicSelected();\n\t\t}\n\t\tif (this.hasVideoDeviceAvailable()) {\n\t\t\tthis.initVideoDevices();\n\t\t\tthis.camSelected = this.cameras.find((device) => device.type === CameraType.FRONT);\n\t\t}\n\t}\n\tprivate async initOpenViduDevices() {\n\t\tthis.devices = await this.OV.getDevices();\n\t}\n\n\tprivate initAudioDevices() {\n\t\tconst audioDevices = this.devices.filter((device) => device.kind === 'audioinput');\n\t\taudioDevices.forEach((device: Device) => {\n\t\t\tthis.microphones.push({ label: device.label, device: device.deviceId });\n\t\t});\n\t}\n\n\tprivate initVideoDevices() {\n\t\tconst FIRST_POSITION = 0;\n\t\tconst videoDevices = this.devices.filter((device) => device.kind === 'videoinput');\n\t\tvideoDevices.forEach((device: Device, index: number) => {\n\t\t\tconst myDevice: IDevice = {\n\t\t\t\tlabel: device.label,\n\t\t\t\tdevice: device.deviceId,\n\t\t\t\ttype: CameraType.BACK\n\t\t\t};\n\t\t\tif (this.utilSrv.isMobile()) {\n\t\t\t\t// We assume front video device has 'front' in its label in Mobile devices\n\t\t\t\tif (myDevice.label.toLowerCase().includes(CameraType.FRONT.toLowerCase())) {\n\t\t\t\t\tmyDevice.type = CameraType.FRONT;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// We assume first device is web camera in Browser Desktop\n\t\t\t\tif (index === FIRST_POSITION) {\n\t\t\t\t\tmyDevice.type = CameraType.FRONT;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.cameras.push(myDevice);\n\t\t});\n\t\tthis.log.d('Camera selected', this.camSelected);\n\t}\n\n\tgetCamSelected(): IDevice {\n\t\tif (this.cameras.length === 0) {\n\t\t\tthis.log.e('No video devices found!');\n\t\t\treturn;\n\t\t}\n\t\tconst storageDevice = this.getCamFromStorage();\n\t\tif (storageDevice) {\n\t\t\treturn storageDevice;\n\t\t}\n\t\treturn this.camSelected || this.cameras[0];\n\t}\n\n\tprivate getCamFromStorage() {\n\t\tlet storageDevice = this.storageSrv.get(Storage.VIDEO_DEVICE);\n\t\tstorageDevice = this.getCameraByDeviceField(storageDevice?.device);\n\t\tif (storageDevice) {\n\t\t\treturn storageDevice;\n\t\t}\n\t}\n\n\tgetMicSelected(): IDevice {\n\t\tif (this.microphones.length === 0) {\n\t\t\tthis.log.e('No audio devices found!');\n\t\t\treturn;\n\t\t}\n\t\tconst storageDevice = this.getMicFromStogare();\n\t\tif (storageDevice) {\n\t\t\treturn storageDevice;\n\t\t}\n\t\treturn this.micSelected || this.microphones[0];\n\t}\n\n\tprivate getMicFromStogare(): IDevice {\n\t\tlet storageDevice = this.storageSrv.get(Storage.AUDIO_DEVICE);\n\t\tstorageDevice = this.getMicrophoneByDeviceField(storageDevice?.device);\n\t\tif (storageDevice) {\n\t\t\treturn storageDevice;\n\t\t}\n\t}\n\n\tsetCamSelected(deviceField: any) {\n\t\tthis.camSelected = this.getCameraByDeviceField(deviceField);\n\t\tthis.saveCamToStorage(this.camSelected);\n\t}\n\n\tprivate saveCamToStorage(cam: IDevice) {\n\t\tthis.storageSrv.set(Storage.VIDEO_DEVICE, cam);\n\t}\n\n\tsetMicSelected(deviceField: any) {\n\t\tthis.micSelected = this.getMicrophoneByDeviceField(deviceField);\n\t\tthis.saveMicToStorage(this.micSelected);\n\n\t}\n\tprivate saveMicToStorage(mic: IDevice) {\n\t\tthis.storageSrv.set(Storage.AUDIO_DEVICE, mic);\n\t}\n\n\tneedUpdateVideoTrack(newVideoSource: string): boolean {\n\t\treturn this.getCamSelected().device !== newVideoSource;\n\t}\n\n\tneedUpdateAudioTrack(newAudioSource: string): boolean {\n\t\treturn this.getMicSelected().device !== newAudioSource;\n\t}\n\n\tgetCameras(): IDevice[] {\n\t\treturn this.cameras;\n\t}\n\n\tgetMicrophones(): IDevice[] {\n\t\treturn this.microphones;\n\t}\n\n\thasVideoDeviceAvailable(): boolean {\n\t\treturn !this.videoDevicesDisabled && !!this.devices?.find((device) => device.kind === 'videoinput');\n\t}\n\n\thasAudioDeviceAvailable(): boolean {\n\t\treturn !!this.devices?.find((device) => device.kind === 'audioinput');\n\t}\n\n\tcameraNeedsMirror(deviceField: string): boolean {\n\t\treturn this.getCameraByDeviceField(deviceField)?.type === CameraType.FRONT;\n\t}\n\n\tareEmptyLabels(): boolean {\n\t\treturn !!this.cameras.find((device) => device.label === '') || !!this.microphones.find((device) => device.label === '');\n\t}\n\n\tdisableVideoDevices() {\n\t\tthis.videoDevicesDisabled = true;\n\t}\n\n\tclear() {\n\t\tthis.OV = new OpenVidu();\n\t\tthis.devices = [];\n\t\tthis.cameras = [];\n\t\tthis.microphones = [];\n\t\tthis.camSelected = null;\n\t\tthis.micSelected = null;\n\t\tthis.videoDevicesDisabled = false;\n\t}\n\n\tprivate getCameraByDeviceField(deviceField: any): IDevice {\n\t\treturn this.cameras.find((opt: IDevice) => opt.device === deviceField || opt.label === deviceField);\n\t}\n\n\tprivate getMicrophoneByDeviceField(deviceField: any): IDevice {\n\t\treturn this.microphones.find((opt: IDevice) => opt.device === deviceField || opt.label === deviceField);\n\t}\n\n\tprivate resetDevicesArray() {\n\t\tthis.cameras = [{ label: 'None', device: null, type: null }];\n\t\tthis.microphones = [{ label: 'None', device: null, type: null }];\n\t}\n\n\n}\n","import { Injectable } from '@angular/core';\nimport { OpenViduLayoutOptions, OpenViduLayout } from '../../layout/openvidu-layout';\nimport { LayoutClass } from '../../types/layout-type';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class OpenViduLayoutService {\n\tprivate openviduLayout: OpenViduLayout;\n\tprivate openviduLayoutOptions: OpenViduLayoutOptions;\n\n\tconstructor() {}\n\n\tinitialize() {\n\t\tthis.openviduLayout = new OpenViduLayout();\n\t\tthis.openviduLayoutOptions = this.getOptions();\n\t\tthis.openviduLayout.initLayoutContainer(document.getElementById('layout'), this.openviduLayoutOptions);\n\t}\n\n\tgetOptions(): OpenViduLayoutOptions {\n\t\tconst options = {\n\t\t\tmaxRatio: 3 / 2, // The narrowest ratio that will be used (default 2x3)\n\t\t\tminRatio: 9 / 15, // The widest ratio that will be used (default 16x9)\n\t\t\tfixedRatio: false /* If this is true then the aspect ratio of the video is maintained\n and minRatio and maxRatio are ignored (default false) */,\n\t\t\tbigClass: LayoutClass.BIG_ELEMENT, // The class to add to elements that should be sized bigger\n\t\t\tsmallClass: LayoutClass.SMALL_ELEMENT,\n\t\t\tbigPercentage: 0.85, // The maximum percentage of space the big ones should take up\n\t\t\tbigFixedRatio: false, // fixedRatio for the big ones\n\t\t\tbigMaxRatio: 3 / 2, // The narrowest ratio to use for the big elements (default 2x3)\n\t\t\tbigMinRatio: 9 / 16, // The widest ratio to use for the big elements (default 16x9)\n\t\t\tbigFirst: true, // Whether to place the big one in the top left (true) or bottom right\n\t\t\tanimate: true // Whether you want to animate the transitions\n\t\t};\n\t\treturn options;\n\t}\n\n\tupdate(timeout?: number) {\n\t\tif (!!this.openviduLayout) {\n\t\t\tif (!timeout) {\n\t\t\t\tthis.openviduLayout.updateLayout();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.openviduLayout.updateLayout();\n\t\t\t}, timeout);\n\t\t}\n\t}\n\n\tgetLayout() {\n\t\treturn this.openviduLayout;\n\t}\n\n\tclear() {\n\t\tthis.openviduLayout = null;\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { UserModel } from '../../models/user-model';\nimport { Publisher } from 'openvidu-browser';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { AvatarType } from '../../types/chat-type';\nimport { LoggerService } from '../logger/logger.service';\nimport { ILogger } from '../../types/logger-type';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class LocalUsersService {\n\tOVUsers: Observable;\n\tscreenShareState: Observable;\n\twebcamVideoActive: Observable;\n\tprivate _OVUsers = >new BehaviorSubject([]);\n\tprivate _screenShareState = >new BehaviorSubject(false);\n private _webcamVideoActive = >new BehaviorSubject(true);\n\tprivate webcamUser: UserModel = null;\n\tprivate screenUser: UserModel = null;\n\tprivate log: ILogger;\n\n\tconstructor(private loggerSrv: LoggerService) {\n\t\tthis.log = this.loggerSrv.get('LocalUsersService');\n\t}\n\n\tinitialize() {\n\n\t\tthis.OVUsers = this._OVUsers.asObservable();\n\t\tthis.screenShareState = this._screenShareState.asObservable();\n\t\tthis.webcamVideoActive = this._webcamVideoActive.asObservable();\n\t\tthis.webcamUser = new UserModel();\n\t\t// Used when the streamManager is null (users without devices)\n\t\tthis.webcamUser.setLocal(true);\n\t\tthis._OVUsers.next([this.webcamUser]);\n\t}\n\n\tgetWebcamPublisher(): Publisher {\n\t\treturn this.webcamUser.getStreamManager();\n\t}\n\n\tsetWebcamPublisher(publisher: Publisher) {\n\t\tthis.webcamUser.setStreamManager(publisher);\n\t}\n\n\tgetScreenPublisher(): Publisher {\n\t\treturn this.screenUser.getStreamManager();\n\t}\n\n\tsetScreenPublisher(publisher: Publisher) {\n\t\tthis.screenUser.setStreamManager(publisher);\n\t}\n\n\tenableWebcamUser() {\n\t\tthis._OVUsers.next([this.webcamUser, this.screenUser]);\n\t}\n\n\tdisableWebcamUser() {\n\t\t// this.destryowebcamUser();\n\t\tthis._OVUsers.next([this.screenUser]);\n\t}\n\n\tenableScreenUser(screenPublisher: Publisher) {\n\t\tthis.log.d('Enabling screen publisher');\n\n\t\tconst connectionId = screenPublisher?.session?.connection?.connectionId;\n\n\t\tthis.screenUser = new UserModel(connectionId, screenPublisher, this.getScreenUserName());\n\t\tthis.screenUser.setUserAvatar(this.webcamUser.getAvatar());\n\t\tthis._screenShareState.next(true);\n\n\t\tif (this.isWebCamEnabled()) {\n\t\t\tthis._OVUsers.next([this.webcamUser, this.screenUser]);\n\t\t\treturn;\n\t\t}\n\t\tthis._OVUsers.next([this.screenUser]);\n\t}\n\n\tdisableScreenUser() {\n\t\t// this.destryoScreenUser();\n\t\tthis._OVUsers.next([this.webcamUser]);\n\t\tthis._screenShareState.next(false);\n\t}\n\n\tupdateUsersStatus() {\n\t\tthis._webcamVideoActive.next(this.webcamUser.isVideoActive());\n\t}\n\n\tclear() {\n\t\tthis.screenUser = null;\n\t\tthis.webcamUser = new UserModel();\n\t\tthis._OVUsers.next([this.webcamUser]);\n\t}\n\n\tisWebCamEnabled(): boolean {\n\t\treturn this._OVUsers.getValue()[0].isCamera();\n\t}\n\n\tisOnlyScreenConnected(): boolean {\n\t\treturn this._OVUsers.getValue()[0].isScreen();\n\t}\n\n\thasWebcamVideoActive(): boolean {\n\t\treturn this.webcamUser.isVideoActive();\n\t}\n\n\thasWebcamAudioActive(): boolean {\n\t\treturn this.webcamUser?.isAudioActive();\n\t}\n\n\thasScreenAudioActive(): boolean {\n\t\treturn this.screenUser?.isAudioActive();\n\t}\n\n\tareBothConnected(): boolean {\n\t\treturn this._OVUsers.getValue().length === 2;\n\t}\n\n\tisOnlyWebcamConnected(): boolean {\n\t\treturn this.isWebCamEnabled() && !this.areBothConnected();\n\t}\n\n\tisScreenShareEnabled(): boolean {\n\t\treturn this.areBothConnected() || this.isOnlyScreenConnected();\n\t}\n\n\tsetWebcamAvatar() {\n\t\tthis.webcamUser.setUserAvatar();\n\t}\n\n\tsetAvatar(option: AvatarType, avatar?: string): void {\n\t\tif ((option === AvatarType.RANDOM && avatar) || (AvatarType.VIDEO && avatar)) {\n\t\t\tif (option === AvatarType.RANDOM) {\n\t\t\t\tthis.webcamUser.setUserAvatar(avatar);\n\t\t\t}\n\t\t}\n\t}\n\n\tupdateUsersNickname(nickname: string) {\n\t\tthis.webcamUser.setNickname(nickname);\n\t\tthis.screenUser?.setNickname(this.getScreenUserName());\n\t}\n\n\tgetWebcamAvatar(): string {\n\t\treturn this.webcamUser.getAvatar();\n\t}\n\n\tgetWebcamUserName(): string {\n\t\treturn this.webcamUser.getNickname();\n\t}\n\n\tgetScreenUserName() {\n\t\treturn this.getWebcamUserName() + '_SCREEN';\n\t}\n\n\tresetUsersZoom() {\n\t\tthis.webcamUser?.setVideoSizeBig(false);\n\t\tthis.screenUser?.setVideoSizeBig(false);\n\t}\n\n\ttoggleZoom(connectionId: string) {\n\t\tif (this.webcamUser.getConnectionId() === connectionId) {\n\t\t\tthis.webcamUser.setVideoSizeBig(!this.webcamUser.isVideoSizeBig());\n\t\t\treturn;\n\t\t}\n\t\tthis.screenUser.setVideoSizeBig(!this.screenUser.isVideoSizeBig());\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { ILogService } from '../../types/logger-type';\nimport { environment } from '../../../../environments/environment';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class LoggerService implements ILogService {\n\tpublic log = window.console;\n\tpublic LOG_FNS = [];\n\tpublic MSG_PREFIXES = [\n\t\t['[', ']'],\n\t\t['[', '] WARN: '],\n\t\t['[', '] ERROR: ']\n\t];\n\n\tconstructor() {\n\t\tthis.LOG_FNS = [this.log.log, this.log.warn, this.log.error];\n\t}\n\n\tpublic get(prefix: string) {\n\t\tconst prodMode = environment.production;\n\t\tconst loggerFns = this.LOG_FNS.map((logTemplFn, i) => {\n\t\t\treturn logTemplFn.bind(this.log, this.MSG_PREFIXES[i][0] + prefix + this.MSG_PREFIXES[i][1]);\n\t\t});\n\t\treturn {\n\t\t\td: function(...args: any[]) {\n\t\t\t\tif (!prodMode) {\n\t\t\t\t\tloggerFns[0].apply(this.log, arguments);\n\t\t\t\t}\n\t\t\t},\n\t\t\tw: function(...args: any[]) {\n\t\t\t\tloggerFns[1].apply(this.log, arguments);\n\n\t\t\t},\n\t\t\te: function(...args: any[]) {\n\t\t\t\tloggerFns[2].apply(this.log, arguments);\n\t\t\t}\n\t\t};\n\t}\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { throwError as observableThrowError } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\nimport { LoggerService } from '../logger/logger.service';\nimport { ILogger } from '../../types/logger-type';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class NetworkService {\n\n\tprivate log: ILogger;\n\tprivate baseHref: string;\n\n\tconstructor(private http: HttpClient, private loggerSrv: LoggerService) {\n\t\tthis.log = this.loggerSrv.get('NetworkService');\n\t\tthis.baseHref = '/' + (!!window.location.pathname.split('/')[1] ? window.location.pathname.split('/')[1] + '/' : '');\n\t//\tthis.baseHref = 'https://corncall.com:2096/';\n\t}\n\n\tasync getToken(sessionId: string, openviduServerUrl: string, openviduSecret: string): Promise {\n\t\topenviduServerUrl='https://teammeet.online:443';\n\t\topenviduSecret = 'mark42';\n\t\tif (!!openviduServerUrl && !!openviduSecret) {\n\t\t\tconst _sessionId = await this.createSession(sessionId, openviduServerUrl, openviduSecret);\n\t\t\treturn await this.createToken(_sessionId, openviduServerUrl, openviduSecret);\n\t\t}\n\t\ttry {\n\t\t\tthis.log.d('Getting token from backend');\n\t\t\treturn await this.createToken(sessionId, openviduServerUrl, openviduSecret);\n\t\t} catch (error) {\n\t\t\tif (error.status === 404) {\n\t\t\t\tthrow {status: error.status, message: 'Cannot connect with backend. ' + error.url + ' not found'};\n\t\t\t}\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\tcreateSession(sessionId: string, openviduServerUrl: string, openviduSecret: string): Promise {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tconst body = JSON.stringify({ customSessionId: sessionId });\n\t\t\tconst options = {\n\t\t\t\theaders: new HttpHeaders({\n\t\t\t\t\tAuthorization: 'Basic ' + btoa('OPENVIDUAPP:' + openviduSecret),\n\t\t\t\t\t'Content-Type': 'application/json'\n\t\t\t\t})\n\t\t\t};\n\t\t\treturn this.http\n\t\t\t\t.post(openviduServerUrl + '/api/sessions', body, options)\n\t\t\t\t.pipe(\n\t\t\t\t\tcatchError(error => {\n\t\t\t\t\t\tif (error.status === 409) {\n\t\t\t\t\t\t\tresolve(sessionId);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (error.statusText === 'Unknown Error') {\n\t\t\t\t\t\t\treject({status: 401, message: 'ERR_CERT_AUTHORITY_INVALID'});\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn observableThrowError(error);\n\t\t\t\t\t})\n\t\t\t\t)\n\t\t\t\t.subscribe(response => {\n\t\t\t\t\tresolve(response.id);\n\t\t\t\t});\n\t\t});\n\t}\n\n\tcreateToken(sessionId: string, openviduServerUrl: string, openviduSecret: string): Promise {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tconst body = JSON.stringify({ session: sessionId });\n\t\t\tconst options = {\n\t\t\t\theaders: new HttpHeaders({\n\t\t\t\t\tAuthorization: 'Basic ' + btoa('OPENVIDUAPP:' + openviduSecret),\n\t\t\t\t\t'Content-Type': 'application/json'\n\t\t\t\t})\n\t\t\t};\n\t\t\treturn this.http\n\t\t\t\t.post(openviduServerUrl + '/api/tokens', body, options)\n\t\t\t\t.pipe(\n\t\t\t\t\tcatchError(error => {\n\t\t\t\t\t\treject(error);\n\t\t\t\t\t\treturn observableThrowError(error);\n\t\t\t\t\t})\n\t\t\t\t)\n\t\t\t\t.subscribe(response => {\n\t\t\t\t\tthis.log.d(response);\n\t\t\t\t\tresolve(response.token);\n\t\t\t\t});\n\t\t});\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { MatSnackBar, MatSnackBarRef, SimpleSnackBar } from '@angular/material/snack-bar';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class NotificationService {\n\tconstructor(private snackBar: MatSnackBar) {}\n\n\tnewMessage(nickname: string, callback) {\n\t\tconst alert = this.launchNotification(nickname + ' sent a message', 'OPEN', 'messageSnackbar', 3000);\n\t\talert.onAction().subscribe(() => {\n\t\t\tcallback();\n\t\t });\n\t}\n\tnewRaiseHandMessage(nickname: string, callback) {\n\t\tconst alert = this.launchNotification(nickname + ' Raise HAnd', '', 'messageSnackbar', 3000);\n\t\talert.onAction().subscribe(() => {\n\t\t\tcallback();\n\t\t });\n\t}\n\tprivate launchNotification(message: string, action: string, className: string, durationTimeMs: number): MatSnackBarRef {\n\t\treturn this.snackBar.open(message, action, {\n\t\t\tduration: durationTimeMs,\n\t\t\tverticalPosition: 'top',\n\t\t\thorizontalPosition: 'start',\n\t\t\tpanelClass: className\n\t\t});\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { IOpenViduWebRTC } from './openvidu-webrtc.interface';\nimport { PublisherProperties, Publisher, Connection, OpenVidu, Session, SignalOptions } from 'openvidu-browser';\nimport { Signal } from '../../types/singal-type';\nimport { LoggerService } from '../logger/logger.service';\nimport { ILogger } from '../../types/logger-type';\nimport { LocalUsersService } from '../local-users/local-users.service';\nimport { ScreenType } from '../../types/video-type';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class OpenViduWebrtcService implements IOpenViduWebRTC {\n\tprivate OV: OpenVidu = null;\n\tprivate OVScreen: OpenVidu = null;\n\n\tprivate webcamSession: Session = null;\n\tprivate screenSession: Session = null;\n\n\tprivate videoSource = undefined;\n\tprivate audioSource = undefined;\n\n\tprivate screenMediaStream: MediaStream = null;\n\tprivate webcamMediaStream: MediaStream = null;\n\n\tprivate log: ILogger;\n\n\tconstructor(private loggerSrv: LoggerService, private localUsersSrv: LocalUsersService) {\n\t\tthis.log = this.loggerSrv.get('OpenViduWebRTCService');\n\t}\n\n\tinitialize() {\n\t\tthis.OV = new OpenVidu();\n\t\tthis.OVScreen = new OpenVidu();\n\t}\n\n\tinitSessions() {\n\t\tthis.initializeWebcamSession();\n\t\tthis.initializeScreenSession();\n\t}\n\n\tgetWebcamSession(): Session {\n\t\treturn this.webcamSession;\n\t}\n\n\tisWebcamSessionConnected(): boolean {\n\t\treturn !!this.webcamSession.capabilities;\n\t}\n\n\tinitializeWebcamSession(): void {\n\t\tthis.webcamSession = this.OV.initSession();\n\t}\n\n\tinitializeScreenSession(): void {\n\t\tthis.screenSession = this.OVScreen.initSession();\n\t}\n\n\tgetScreenSession(): Session {\n\t\treturn this.screenSession;\n\t}\n\n\tisScreenSessionConnected(): boolean {\n\t\treturn !!this.screenSession.capabilities;\n\t}\n\n\tasync connectWebcamSession(token: string): Promise {\n\t\tif (!!token) {\n\t\t\tthis.log.d('Connecting webcam session');\n\t\t\tconst webcamUsername = this.localUsersSrv.getWebcamUserName();\n\t\t\tconst webcamAvatar = this.localUsersSrv.getWebcamAvatar();\n\t\t\tawait this.webcamSession.connect(token, { clientData: webcamUsername, avatar: webcamAvatar });\n\t\t}\n\t}\n\tdisconnectWebcamSession(): void {\n\t\tif (this.webcamSession) {\n\t\t\tthis.log.d('Disconnecting webcam session');\n\t\t\tthis.webcamSession.disconnect();\n\t\t\tthis.webcamSession = null;\n\t\t}\n\t}\n\n\tasync connectScreenSession(token: string): Promise {\n\t\tif (!!token) {\n\t\t\tthis.log.d('Connecting screen session');\n\t\t\tconst screenUsername = this.localUsersSrv.getScreenUserName();\n\t\t\tconst webcamAvatar = this.localUsersSrv.getWebcamAvatar();\n\t\t\tawait this.screenSession.connect(token, { clientData: screenUsername, avatar: webcamAvatar });\n\t\t}\n\t}\n\tdisconnectScreenSession(): void {\n\t\tif (this.screenSession) {\n\t\t\tthis.log.d('Disconnecting screen session');\n\t\t\tthis.screenSession.disconnect();\n\t\t\tthis.screenSession = null;\n\t\t}\n\t}\n\n\tdisconnect() {\n\t\tthis.disconnectWebcamSession();\n\t\tsetTimeout(() => {\n\t\t\t// ! Timeout neccessary to avoid race conditin error:\n\t\t\t// ! OpenVidu Error Remote connection unknown when 'onParticipantLeft'. Existing remote connections: []\n\t\t\tthis.disconnectScreenSession();\n\t\t}, 100);\n\t\tthis.videoSource = undefined;\n\t\tthis.audioSource = undefined;\n\t}\n\n\tinitWebcamPublisher(targetElement: string | HTMLElement, properties: PublisherProperties): Publisher {\n\t\tconst publisher = this.OV.initPublisher(targetElement, properties);\n\t\tthis.localUsersSrv.setWebcamPublisher(publisher);\n\t\tpublisher.once('streamPlaying', () => {\n\t\t\t(publisher.videos[0].video).parentElement.classList.remove('custom-class');\n\t\t});\n\t\treturn publisher;\n\t}\n\n\tdestroyWebcamPublisher(): void {\n\t\tconst publisher = this.localUsersSrv.getWebcamPublisher();\n\t\tif (!!publisher) {\n\t\t\t// publisher.off('streamAudioVolumeChange');\n\t\t\tpublisher.stream.disposeWebRtcPeer();\n\t\t\tpublisher.stream.disposeMediaStream();\n\t\t\tthis.localUsersSrv.setWebcamPublisher(publisher);\n\t\t}\n\t}\n\n\tinitScreenPublisher(targetElement: string | HTMLElement, properties: PublisherProperties): Publisher {\n\t\tthis.log.d('Initializing screen publisher with properties: ', properties);\n\t\tconst publisher = this.OV.initPublisher(targetElement, properties);\n\t\tpublisher.once('streamPlaying', () => {\n\t\t\t(publisher.videos[0].video).parentElement.classList.remove('custom-class');\n\t\t});\n\t\treturn publisher;\n\t}\n\n\tdestroyScreenPublisher(): void {\n\t\tconst publisher = this.localUsersSrv.getScreenPublisher();\n\n\t\tif (!!publisher) {\n\t\t\t// publisher.off('streamAudioVolumeChange');\n\t\t\tpublisher.stream.disposeWebRtcPeer();\n\t\t\tpublisher.stream.disposeMediaStream();\n\t\t\tthis.localUsersSrv.setScreenPublisher(publisher);\n\t\t}\n\t}\n\n\tasync publishWebcamPublisher(): Promise {\n\t\tif (this.webcamSession?.capabilities?.publish) {\n\t\t\tconst publisher = this.localUsersSrv.getWebcamPublisher();\n\t\t\tif (!!publisher) {\n\t\t\t\treturn await this.webcamSession.publish(publisher);\n\t\t\t}\n\t\t}\n\t\tthis.log.e('Webcam publisher cannot be published');\n\t}\n\tunpublishWebcamPublisher(): void {\n\t\tconst publisher = this.localUsersSrv.getWebcamPublisher();\n\t\tif (!!publisher) {\n\t\t\tthis.publishScreenAudio(this.localUsersSrv.hasWebcamAudioActive());\n\t\t\tthis.webcamSession.unpublish(publisher);\n\t\t}\n\t}\n\tasync publishScreenPublisher(): Promise {\n\t\tif (this.screenSession?.capabilities?.publish) {\n\t\t\tconst publisher = this.localUsersSrv.getScreenPublisher();\n\t\t\tif (!!publisher) {\n\t\t\t\treturn await this.screenSession.publish(publisher);\n\t\t\t}\n\t\t}\n\t\tthis.log.e('Screen publisher cannot be published');\n\t}\n\n\tunpublishScreenPublisher(): void {\n\t\tconst publisher = this.localUsersSrv.getScreenPublisher();\n\t\tif (!!publisher) {\n\t\t\tthis.screenSession.unpublish(publisher);\n\t\t}\n\t}\n\tpublishWebcamVideo(active: boolean): void {\n\t\tthis.localUsersSrv.getWebcamPublisher().publishVideo(active);\n\t\t// Send event to subscribers because of video has changed and view must update\n\t\tthis.localUsersSrv.updateUsersStatus();\n\t}\n\tpublishWebcamAudio(active: boolean): void {\n\t\tconst publisher = this.localUsersSrv.getWebcamPublisher();\n\t\tif (!!publisher) {\n\t\t\tpublisher.publishAudio(active);\n\t\t}\n\t}\n\tpublishScreenAudio(active: boolean): void {\n\t\tconst publisher = this.localUsersSrv.getScreenPublisher();\n\t\tif (!!publisher) {\n\t\t\tpublisher.publishAudio(active);\n\t\t}\n\t}\n\treplaceTrack(videoSource: string, audioSource: string, mirror: boolean = true): Promise {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tif (!!videoSource) {\n\t\t\t\tthis.log.d('Replacing video track ' + videoSource);\n\t\t\t\tthis.videoSource = videoSource;\n\t\t\t\t// this.stopVideoTracks(this.webcamUser.getStreamManager().stream.getMediaStream());\n\t\t\t}\n\t\t\tif (!!audioSource) {\n\t\t\t\tthis.log.d('Replacing audio track ' + audioSource);\n\t\t\t\tthis.audioSource = audioSource;\n\t\t\t\t// this.stopAudioTracks(this.webcamUser.getStreamManager().stream.getMediaStream());\n\t\t\t}\n\t\t\tthis.destroyWebcamPublisher();\n\t\t\tconst properties = this.createPublisherProperties(\n\t\t\t\tthis.videoSource,\n\t\t\t\tthis.audioSource,\n\t\t\t\tthis.localUsersSrv.hasWebcamVideoActive(),\n\t\t\t\tthis.localUsersSrv.hasWebcamAudioActive(),\n\t\t\t\tmirror\n\t\t\t);\n\n\t\t\tconst publisher = this.initWebcamPublisher(undefined, properties);\n\n\t\t\tpublisher.once('streamPlaying', () => {\n\t\t\t\tthis.localUsersSrv.setWebcamPublisher(publisher);\n\t\t\t\tresolve();\n\t\t\t});\n\n\t\t\tpublisher.once('accessDenied', () => {\n\t\t\t\treject();\n\t\t\t});\n\n\t\t\t// Reeplace track method\n\t\t\t// this.webcamMediaStream = await this.OV.getUserMedia(properties);\n\t\t\t// const track: MediaStreamTrack = !!videoSource\n\t\t\t// \t? this.webcamMediaStream.getVideoTracks()[0]\n\t\t\t// \t: this.webcamMediaStream.getAudioTracks()[0];\n\n\t\t\t// try {\n\t\t\t// \tawait (this.webcamUser.getStreamManager()).replaceTrack(track);\n\t\t\t// } catch (error) {\n\t\t\t// \tthis.log.e('Error replacing track ', error);\n\t\t\t// }\n\t\t});\n\t}\n\n\tsendSignal(type: Signal, connection?: Connection, data?: any): void {\n\t\tconst signalOptions: SignalOptions = {\n\t\t\tdata: JSON.stringify(data),\n\t\t\ttype: type,\n\t\t\tto: connection ? [connection] : undefined\n\t\t};\n\t\tthis.webcamSession.signal(signalOptions);\n\t\t// signalOptions.data = JSON.stringify({nickname: this.getScreenUserName()});\n\t\t// this.getScreenSession()?.signal(signalOptions);\n\t}\n\n\t// TODO: replace function by sendSignal\n\tsendNicknameSignal(connection?: Connection) {\n\t\tif (this.needSendNicknameSignal()) {\n\t\t\tconst signalOptions: SignalOptions = {\n\t\t\t\tdata: JSON.stringify({ clientData: this.localUsersSrv.getWebcamUserName() }),\n\t\t\t\ttype: 'nicknameChanged',\n\t\t\t\tto: connection ? [connection] : undefined\n\t\t\t};\n\t\t\tthis.getWebcamSession()?.signal(signalOptions);\n\t\t\tsignalOptions.data = JSON.stringify({ clientData: this.localUsersSrv.getScreenUserName() });\n\t\t\tthis.getScreenSession()?.signal(signalOptions);\n\t\t}\n\t}\n\n\tcreatePublisherProperties(\n\t\tvideoSource: string | MediaStreamTrack | boolean,\n\t\taudioSource: string | MediaStreamTrack | boolean,\n\t\tpublishVideo: boolean,\n\t\tpublishAudio: boolean,\n\t\tmirror: boolean\n\t): PublisherProperties {\n\t\treturn {\n\t\t\tvideoSource,\n\t\t\taudioSource,\n\t\t\tpublishVideo,\n\t\t\tpublishAudio,\n\t\t\tmirror\n\t\t};\n\t}\n\n\tasync replaceScreenTrack() {\n\t\tconst videoSource = ScreenType.SCREEN;\n\t\tconst hasAudio = !this.localUsersSrv.isWebCamEnabled();\n\t\tconst properties = this.createPublisherProperties(videoSource, undefined, true, hasAudio, false);\n\n\t\tthis.stopScreenTracks();\n\t\tthis.screenMediaStream = await this.OVScreen.getUserMedia(properties);\n\t\tawait this.localUsersSrv.getScreenPublisher().replaceTrack(this.screenMediaStream.getVideoTracks()[0]);\n\t}\n\n\tstopAudioTracks(mediaStream: MediaStream) {\n\t\tmediaStream?.getAudioTracks().forEach((track) => {\n\t\t\ttrack.stop();\n\n\t\t\ttrack.enabled = false;\n\t\t});\n\t\tthis.webcamMediaStream?.getAudioTracks().forEach((track) => {\n\t\t\ttrack.stop();\n\t\t});\n\t}\n\n\tstopVideoTracks(mediaStream: MediaStream) {\n\t\tmediaStream?.getVideoTracks().forEach((track) => {\n\t\t\ttrack.stop();\n\t\t});\n\t}\n\n\tneedSendNicknameSignal(): boolean {\n\t\tconst oldNickname: string = JSON.parse(this.webcamSession.connection.data).clientData;\n\t\treturn oldNickname !== this.localUsersSrv.getWebcamUserName();\n\t}\n\n\tisMyOwnConnection(connectionId: string): boolean {\n\t\treturn (\n\t\t\tthis.webcamSession?.connection?.connectionId === connectionId || this.screenSession?.connection?.connectionId === connectionId\n\t\t);\n\t}\n\n\tgetSessionOfUserConnected(): Session {\n\t\treturn this.localUsersSrv.isWebCamEnabled() ? this.webcamSession : this.screenSession;\n\t}\n\n\tprivate stopScreenTracks() {\n\t\tif (this.screenMediaStream) {\n\t\t\tthis.stopAudioTracks(this.screenMediaStream);\n\t\t\tthis.stopVideoTracks(this.screenMediaStream);\n\t\t}\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable, BehaviorSubject } from 'rxjs';\nimport { UserModel } from '../../models/user-model';\nimport { StreamEvent, Subscriber, ConnectionEvent } from 'openvidu-browser';\nimport { LoggerService } from '../logger/logger.service';\nimport { ILogger } from '../../types/logger-type';\nimport { UtilsService } from '../utils/utils.service';\nimport { UserName } from '../../types/username-type';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class RemoteUsersService {\n\n\tremoteUsers: Observable;\n\tremoteUserNameList: Observable;\n\tprivate _remoteUsers = >new BehaviorSubject([]);\n\tprivate _remoteUserNameList = >new BehaviorSubject([]);\n\n\tprivate users: UserModel[] = [];\n\n\tprivate log: ILogger;\n\n\tconstructor(private loggerSrv: LoggerService, private utilsSrv: UtilsService) {\n\t\tthis.log = this.loggerSrv.get('RemoteService');\n\t\tthis.remoteUsers = this._remoteUsers.asObservable();\n\t\tthis.remoteUserNameList = this._remoteUserNameList.asObservable();\n\t}\n\n\tupdateUsers() {\n\t\tthis._remoteUsers.next(this.users);\n\t}\n\n\tadd(event: StreamEvent | ConnectionEvent, subscriber: Subscriber) {\n\t\tlet nickname = '';\n\t\tlet avatar = '';\n\t\tconst connectionId = (event)?.stream?.connection?.connectionId || (event)?.connection?.connectionId;\n\t\tconst data = (event)?.stream?.connection?.data || (event)?.connection?.data;\n\t\tnickname = this.utilsSrv.getNicknameFromConnectionData(data);\n\t\tavatar = this.utilsSrv.getAvatarFromConnectionData(data);\n\t\tconst newUser = new UserModel(connectionId, subscriber, nickname);\n\t\tnewUser.setUserAvatar(avatar);\n\t\t// Add new user (connectionCreated Event) or assign the streamManager to old user when the connnectionId exists (streamCreated Event)\n\t\tthis.addUser(newUser);\n\t\tthis.updateUsers();\n\t}\n\n\tremoveUserByConnectionId(connectionId: string) {\n\t\tthis.log.w('Deleting user: ', connectionId);\n\t\tconst user = this.getRemoteUserByConnectionId(connectionId);\n\t\tconst index = this.users.indexOf(user, 0);\n\t\tif (index > -1) {\n\t\t\tthis.users.splice(index, 1);\n\t\t\tthis.updateUsers();\n\t\t}\n\t}\n\n\tsomeoneIsSharingScreen(): boolean {\n\t\treturn this.users.some(user => user.isScreen());\n\t}\n\n\ttoggleUserZoom(connectionId: string) {\n\t\tconst user = this.getRemoteUserByConnectionId(connectionId);\n\t\tuser.setVideoSizeBig(!user.isVideoSizeBig());\n\t}\n\n\tresetUsersZoom() {\n\t\tthis.users.forEach(u => u.setVideoSizeBig(false));\n\t}\n\n\tsetUserZoom(connectionId: string, zoom: boolean) {\n\t\tthis.getRemoteUserByConnectionId(connectionId)?.setVideoSizeBig(zoom);\n\t}\n\n\tgetRemoteUserByConnectionId(connectionId: string): UserModel {\n\t\treturn this.users.find(u => u.getConnectionId() === connectionId);\n\t}\n\n\tupdateNickname(connectionId: any, nickname: any) {\n\t\tconst user = this.getRemoteUserByConnectionId(connectionId);\n\t\tuser?.setNickname(nickname);\n\t\tthis._remoteUsers.next(this.users);\n\n\t\t// Update nickname in remote nickname list\n\t\tconst remoteUserNameList = this._remoteUserNameList.getValue();\n\t\tremoteUserNameList.forEach(element => {\n\t\t\tif (element.connectionId === connectionId) {\n\t\t\t\telement.nickname = nickname;\n\t\t\t\treturn;\n\t\t\t}\n\t\t});\n\t\tthis._remoteUserNameList.next(remoteUserNameList);\n\t}\n\n\n\tclear() {\n\t\tthis._remoteUsers = >new BehaviorSubject([]);\n\t\tthis.remoteUsers = this._remoteUsers.asObservable();\n\t\tthis._remoteUserNameList = >new BehaviorSubject([]);\n\t\tthis.remoteUserNameList = this._remoteUserNameList.asObservable();\n\t\tthis.users = [];\n\t}\n\n\tgetUserAvatar(connectionId: string): string {\n\t\treturn this.getRemoteUserByConnectionId(connectionId)?.getAvatar() || this.utilsSrv.getOpenViduAvatar();\n\t}\n\n\taddUserName(event: ConnectionEvent) {\n\n\t\tconst nickname = this.utilsSrv.getNicknameFromConnectionData(event.connection.data);\n\t\tconst connectionId = event.connection.connectionId;\n\t\tconst newUserNameList = this._remoteUserNameList.getValue();\n\n\t\tnewUserNameList.push({nickname, connectionId});\n\t\tthis._remoteUserNameList.next(newUserNameList);\n\t}\n\n\tdeleteUserName(event: ConnectionEvent) {\n\t\tconst oldUserNameList: UserName[] = this._remoteUserNameList.getValue();\n\t\tconst newUserNameList: UserName[] = oldUserNameList.filter(element => element.connectionId !== event.connection.connectionId);\n\n\t\tthis._remoteUserNameList.next(newUserNameList);\n\t}\n\n\tprivate addUser(user: UserModel) {\n\t\tconst oldUser = this.getRemoteUserByConnectionId(user.connectionId);\n\n\t\t// Assign streamManager if user exists due to connectionCreated Event\n\t\tif (!!oldUser) {\n\t\t\toldUser.setStreamManager(user.getStreamManager());\n\t\t\treturn;\n\t\t}\n\n\t\tthis.users.push(user);\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { ILogger } from '../../types/logger-type';\nimport { LoggerService } from '../logger/logger.service';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class StorageService {\n\tpublic storage = window.localStorage;\n\tpublic log: ILogger;\n\n\tconstructor(private loggerSrv: LoggerService) {\n\t\tthis.log = this.loggerSrv.get('StorageService');\n\t}\n\n\tpublic set(key: string, item: any) {\n\t\tconst value = JSON.stringify({ item: item });\n\t\t// this.log.d('Storing on localStorage \"' + key + '\" with value \"' + value + '\"');\n\t\tthis.storage.setItem(key, value);\n\t}\n\tpublic get(key: string): any {\n\t\tconst value = JSON.parse(this.storage.getItem(key));\n\t\treturn value?.item ? value.item : null;\n\t}\n\tpublic clear() {\n\t\tthis.log.d('Clearing localStorage');\n\t\tthis.storage.clear();\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { ILogger } from '../../types/logger-type';\nimport { LoggerService } from '../logger/logger.service';\nimport { NetworkService } from '../network/network.service';\nimport { ExternalConfigModel } from '../../models/external-config';\nimport { OvSettingsModel } from '../../models/ovSettings';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class TokenService {\n\tprivate webcamToken = '';\n\tprivate screenToken = '';\n\tprivate sessionId = '';\n\tprivate ovSettings: OvSettingsModel;\n\tprivate log: ILogger;\n\n\tconstructor(private loggerSrv: LoggerService, private networkSrv: NetworkService) {\n\t\tthis.log = this.loggerSrv.get('TokenService');\n\t}\n\n\tinitialize(ovSettings: OvSettingsModel) {\n\t\tthis.ovSettings = ovSettings;\n\t}\n\n\tsetSessionId(sessionId: string) {\n\t\tthis.sessionId = sessionId;\n\t}\n\n\tgetSessionId(): string {\n\t\treturn this.sessionId;\n\t}\n\n\tasync initTokens(externalConfig: ExternalConfigModel) {\n\t\t// WebComponent or Angular library\n\t\tif (!!externalConfig && externalConfig.hasTokens()) {\n\t\t\tthis.log.d('Received external tokens from ' + externalConfig.getComponentName());\n\t\t\tthis.webcamToken = externalConfig.getWebcamToken();\n\t\t\t// Only connect screen if screen sharing feature is available\n\t\t\tthis.screenToken = this.ovSettings?.hasScreenSharing() ? externalConfig.getScreenToken() : undefined;\n\t\t\treturn;\n\t\t}\n\t\tthis.log.d('No external tokens received. Generating token...');\n\t\tawait this.generateWebcamToken(this.sessionId, externalConfig?.getOvServerUrl(), externalConfig?.getOvSecret());\n\t\t// TODO: create screenToken only when user initialize the screen\n\t\tif (this.ovSettings?.hasScreenSharing()) {\n\t\t\tawait this.generateScreenToken(this.sessionId, externalConfig?.getOvServerUrl(), externalConfig?.getOvSecret());\n\t\t}\n\t}\n\n\tgetWebcamToken(): string {\n\t\treturn this.webcamToken;\n\t}\n\n\tgetScreenToken(): string {\n\t\treturn this.screenToken;\n\t}\n\n\tprivate async generateWebcamToken(sessionId: string, ovUrl: string, ovSecret: string) {\n\t\tthis.log.d('Generating webcam token...');\n\t\tthis.webcamToken = await this.networkSrv.getToken(sessionId, ovUrl, ovSecret);\n\t}\n\n\tprivate async generateScreenToken(sessionId: string, ovUrl: string, ovSecret: string) {\n\t\tthis.log.d('Generating screen token...');\n\t\tthis.screenToken = await this.networkSrv.getToken(sessionId, ovUrl, ovSecret);\n\t}\n}\n","import { Injectable } from '@angular/core';\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\nimport { DialogErrorComponent } from '../../components/dialog-error/dialog-error.component';\nimport { LayoutClass } from '../../types/layout-type';\n\nimport linkifyStr from 'linkifyjs/string';\nimport { NgxLinkifyOptions } from '../../types/linkify-type';\n\n@Injectable({\n\tprovidedIn: 'root'\n})\nexport class UtilsService {\n\tprivate dialogRef: MatDialogRef;\n\n\tconstructor(public dialog: MatDialog) {}\n\n\ttoggleFullscreen(elementId: string) {\n\t\tconst document: any = window.document;\n\t\tconst fs = document.getElementById(elementId);\n\t\tif (\n\t\t\t!document.fullscreenElement &&\n\t\t\t!document.mozFullScreenElement &&\n\t\t\t!document.webkitFullscreenElement &&\n\t\t\t!document.msFullscreenElement\n\t\t) {\n\t\t\tif (fs.requestFullscreen) {\n\t\t\t\tfs.requestFullscreen();\n\t\t\t} else if (fs.msRequestFullscreen) {\n\t\t\t\tfs.msRequestFullscreen();\n\t\t\t} else if (fs.mozRequestFullScreen) {\n\t\t\t\tfs.mozRequestFullScreen();\n\t\t\t} else if (fs.webkitRequestFullscreen) {\n\t\t\t\tfs.webkitRequestFullscreen();\n\t\t\t}\n\t\t} else {\n\t\t\tif (document.exitFullscreen) {\n\t\t\t\tdocument.exitFullscreen();\n\t\t\t} else if (document.msExitFullscreen) {\n\t\t\t\tdocument.msExitFullscreen();\n\t\t\t} else if (document.mozCancelFullScreen) {\n\t\t\t\tdocument.mozCancelFullScreen();\n\t\t\t} else if (document.webkitExitFullscreen) {\n\t\t\t\tdocument.webkitExitFullscreen();\n\t\t\t}\n\t\t}\n\t}\n\n\tgetOpenViduAvatar(): string {\n\t\treturn 'assets/images/TMlogo.png';\n\t}\n\n\thandlerScreenShareError(error: any) {\n\t\tif (error && error.name === 'SCREEN_SHARING_NOT_SUPPORTED') {\n\t\t\talert('Your browser does not support screen sharing');\n\t\t} else if (error && error.name === 'SCREEN_EXTENSION_DISABLED') {\n\t\t\talert('You need to enable screen sharing extension');\n\t\t} else if (error && error.name === 'SCREEN_CAPTURE_DENIED') {\n\t\t\t// alert('You need to choose a window or application to share');\n\t\t}\n\t}\n\n\n\tgenerateNickname(): string {\n\t\treturn 'OpenVidu_User' + Math.floor(Math.random() * 100);\n\t}\n\n\tisFirefox(): boolean {\n\t\treturn /Firefox[\\/\\s](\\d+\\.\\d+)/.test(navigator.userAgent);\n\t}\n\n\tisMobile(): boolean {\n\t\treturn this.isAndroid() || this.isIos();\n\t}\n\n\tshowErrorMessage(header: string, message: string, disableClose: boolean = false) {\n\t\tthis.dialogRef = this.dialog.open(DialogErrorComponent, {\n\t\t\tdata: { header: header, message: message },\n\t\t\tdisableClose\n\t\t});\n\t}\n\n\tcloseDialog() {\n\t\tthis.dialogRef?.close();\n\t}\n\n\tgetHTMLElementByClassName(element: HTMLElement, className: string): HTMLElement {\n\t\twhile (!!element && element !== document.body) {\n\t\t\tif (element.className.includes(className)) {\n\t\t\t\treturn element;\n\t\t\t}\n\t\t\telement = element.parentElement;\n\t\t}\n\t\treturn null;\n\t}\n\n\ttoggleBigElementClass(element: HTMLElement | Element) {\n\t\tif (element?.className.includes(LayoutClass.BIG_ELEMENT)) {\n\t\t\tthis.removeBigElementClass(element);\n\t\t} else {\n\t\t\telement.classList.add(LayoutClass.BIG_ELEMENT);\n\t\t}\n\t}\n\n\tremoveBigElementClass(element: HTMLElement | Element) {\n\t\telement?.classList.remove(LayoutClass.BIG_ELEMENT);\n\t}\n\n\tremoveAllBigElementClass() {\n\t\tconst elements: HTMLCollectionOf = document.getElementsByClassName(LayoutClass.BIG_ELEMENT);\n\t\twhile (elements.length > 0) {\n\t\t\tthis.removeBigElementClass(elements[0]);\n\t\t}\n\t}\n\n\tisSmallElement(element: HTMLElement | Element): boolean {\n\t\treturn element?.className.includes(LayoutClass.SMALL_ELEMENT);\n\t}\n\n\tgetNicknameFromConnectionData(data: string): string {\n\t\tlet nickname: string;\n\t\ttry {\n\t\t\tnickname = JSON.parse(data).clientData;\n\t\t} catch (error) {\n\t\t\tnickname = 'Unknown';\n\t\t}\n\t\treturn nickname;\n\t}\n\n\tgetAvatarFromConnectionData(data: string): string {\n\t\tlet avatar: string;\n\t\ttry {\n\t\t\tavatar = JSON.parse(data).avatar;\n\t\t} catch (error) {\n\t\t\tavatar = this.getOpenViduAvatar();\n\t\t}\n\t\treturn avatar;\n\t}\n\n\tlinkify(text: string, options?: NgxLinkifyOptions): string {\n\t\treturn linkifyStr(text, options);\n\t }\n\n\n\tprivate isAndroid(): boolean {\n\t\treturn /\\b(\\w*Android\\w*)\\b/.test(navigator.userAgent) && /\\b(\\w*Mobile\\w*)\\b/.test(navigator.userAgent);\n\t}\n\n\tprivate isIos(): boolean {\n\t\treturn this.isIPhoneOrIPad(navigator?.userAgent) && this.isIOSWithSafari(navigator?.userAgent);\n\t}\n\n\tprivate isIPhoneOrIPad(userAgent): boolean {\n\t\tconst isIPad = /\\b(\\w*Macintosh\\w*)\\b/.test(userAgent);\n\t\tconst isIPhone = /\\b(\\w*iPhone\\w*)\\b/.test(userAgent) && /\\b(\\w*Mobile\\w*)\\b/.test(userAgent);\n\t\t// && /\\b(\\w*iPhone\\w*)\\b/.test(navigator.platform);\n\t\tconst isTouchable = 'ontouchend' in document;\n\n\t\treturn (isIPad || isIPhone) && isTouchable;\n\t}\n\n\tprivate isIOSWithSafari(userAgent): boolean {\n\t\treturn /\\b(\\w*Apple\\w*)\\b/.test(navigator.vendor) && /\\b(\\w*Safari\\w*)\\b/.test(userAgent)\n\t\t\t&& !/\\b(\\w*CriOS\\w*)\\b/.test(userAgent) && !/\\b(\\w*FxiOS\\w*)\\b/.test(userAgent);\n\t}\n}\n","export enum AvatarType {\n\tRANDOM = 'random',\n\tVIDEO = 'video'\n}\n\nexport interface ChatMessage {\n\tisLocal: boolean;\n\tnickname: string;\n\tmessage: string;\n\tuserAvatar: string;\n}\n","export interface IDevice {\n\tlabel: string;\n\tdevice: string;\n\ttype?: CameraType;\n}\n\nexport enum CameraType {\n\tFRONT = 'FRONT',\n\tBACK = 'BACK'\n}\n","export enum VideoSizeIcon {\n\tBIG = 'zoom_in',\n\tNORMAL = 'zoom_out'\n}\n\nexport enum VideoFullscreenIcon {\n\tBIG = 'fullscreen',\n\tNORMAL = 'fullscreen_exit'\n}\n","export enum LayoutType {\n\tROOT_CLASS = 'OT_root',\n}\n\nexport enum LayoutClass {\n\tBIG_ELEMENT = 'OV_big',\n\tSMALL_ELEMENT = 'OV_small',\n}\n","export enum Storage{\n\tUSER_NICKNAME = 'openviduCallNickname',\n\tVIDEO_DEVICE = 'openviduCallVideoDevice',\n\tAUDIO_DEVICE = 'openviduCallAudioDevice'\n}","export enum VideoType {\n\tCAMERA = 'CAMERA',\n\tSCREEN = 'SCREEN',\n\tCUSTOM = 'CUSTOM'\n}\n\nexport enum ScreenType {\n\tWINDOW = 'window',\n\tSCREEN = 'screen'\n}\n","import { OvSettings } from '../types/ov-settings';\n\nexport interface ISessionConfig {\n\tsessionName: string;\n\tuser: string;\n\ttokens: string[];\n\tovSettings: OvSettings;\n}\n\nexport enum Theme {\n\tDARK = 'dark',\n\tLIGHT = 'light'\n}\n","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute, ParamMap } from \"@angular/router\";\nimport { ApiService } from \"../services/api.service\";\n\n@Component({\n selector: 'app-start-meeting',\n templateUrl: './start-meeting.component.html',\n styleUrls: ['./start-meeting.component.css']\n})\nexport class StartMeetingComponent implements OnInit {\n\n \n meetingID:any;\n password:any;\n constructor(\n private route: ActivatedRoute,\n private router: Router,\n public ApiServiceCall: ApiService,\n\n ) {\nthis.meetingID;\nthis.password;\n\n }\n\n ngOnInit(): void {\n \n this.meetingID = this.makeid(9);\n this.password = this.makepassword(6);\n }\n onStartMeeting() {\n var obj = {\n meetingId: this.meetingID,\n password: this.password,\n isAudioEnabled: 1,\n isVideoEnabled: 1\n };\n this.ApiServiceCall.startMeeting(obj).subscribe((data) => {\n \n this.router.navigate(['meeting/'+this.meetingID]);\n \n });\n }\n makeid(length) {\n var result = '';\n var characters = '0123456789';\n var charactersLength = characters.length;\n for ( var i = 0; i < length; i++ ) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n }\n\n makepassword(length) {\n var result = '';\n var characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\n var charactersLength = characters.length;\n for ( var i = 0; i < length; i++ ) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n}\n\n}\n","\n
\n
\n
\n
\n
\n \n
Start Meeting
\n
\n
\n \n \n \n \n \n \n \n \n
\n \n
\n \n
\n
\n
\n \n \n
\n\n
","import { Component, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute, ParamMap } from \"@angular/router\";\nimport { ApiService } from \"../services/api.service\";\nimport * as $ from \"jquery\";\n\n@Component({\n selector: 'app-startmeeting',\n templateUrl: './startmeeting.component.html',\n styleUrls: ['./startmeeting.component.css']\n})\nexport class StartmeetingComponent implements OnInit {\n randomIDs: any;\n randomPasswords: any;\n model:any;\n constructor(\n private route: ActivatedRoute,\n private router: Router,\n public ApiServiceCall: ApiService,\n ) {\n this.model = {};\n }\n\n ngOnInit(): void {\n this.randomIDs = this.makeid(9);\n this.randomPasswords = this.makepassword(6);\n this.model.ID=this.randomIDs;\n this.model.password = this.randomPasswords;\n\n\n }\n\n\n startMeeting() {\n var obj = {\n meetingId: this.model.ID,\n password: this.model.password,\n userId:localStorage.getItem(\"userID\"),\n isAudioEnabled: 1,\n isVideoEnabled: 1\n };\n $('.loading-overlay').addClass('is-active');\n this.ApiServiceCall.startMeeting(obj).subscribe((data) => {\n $('.loading-overlay').removeClass('is-active');\n localStorage.setItem('meetingId',this.model.ID);\n // alert(\"Join Meeting:-\\n\\n\" + JSON.stringify(this.model));\n // alert(data.responseMessage);\n this.router.navigate(['videoroommeeting/'+this.model.ID]);\n\n });\n }\n\n\n\n makeid(length) {\n var result = '';\n var characters = '0123456789';\n var charactersLength = characters.length;\n for (var i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n }\n\n makepassword(length) {\n var result = '';\n var characters = '0123456789';\n var charactersLength = characters.length;\n for (var i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n }\n onGenerate(){\n\n this.randomIDs = this.makeid(9);\n this.randomPasswords = this.makepassword(6);\n\n this.model.ID=this.randomIDs;\n this.model.password = this.randomPasswords;\n\n }\n\n\n\n}\n","\n\n\n
\n\t
\n\t\t
\n\t\t\t\n\n\t\t
\n\t\t
\n\t\t\tStart Meeting\n\t\t\t
\n\t\t\t
\n\t\t\t

Meeting ID and Password are generated Automatically

\n\n
\n\t
\n\t
\n\t\t Meeting ID \n\t\t \n\t
\n\t\n\t
\n\t
\n\t
\n\t \n\t
\n\t
\n\t
\n\t \n\t
\n
\n
\n
\n
\n\t Password\n\t \n
\n \n
\n
\n
\n \n
\n
\n
\n \n
\n
\n
\n
\n\t \n
\n
\n
\n \n
\n\t \n\t\t \n\t\t    \n\t Enable Video\n\t    \n\t \n\n
\n \n
\n
\n \n
\n\t \n\t\t \n\t\t        \n\t Enable Audio\n\t     \n\t \n\n
\n \n
\n
\n
\n\t \n\t\t
\n
\n
\n\t
\n\t\t \n\t\t \n\t\t Share Link\n\t\t\t
\n\t
\n\t\t
\n\t
\n\n\t
\n\n\t\t\n\t
\n\n
\n\n","import { Component, EventEmitter, HostListener, Input, OnDestroy, OnInit, Output, ViewChild } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { Router } from '@angular/router';\nimport {\n\tPublisher,\n\tSubscriber,\n\tSession,\n\tStreamEvent,\n\tStreamPropertyChangedEvent,\n\tSessionDisconnectedEvent,\n\tPublisherSpeakingEvent,\n\tConnectionEvent\n} from 'openvidu-browser';\nimport { UserModel } from '../shared/models/user-model';\nimport { ChatComponent } from '../shared/components/chat/chat.component';\nimport { RightMenuComponent } from '../shared/components/right-menu/right-menu.component';\nimport { OvSettingsModel } from '../shared/models/ovSettings';\nimport { ScreenType, VideoType } from '../shared/types/video-type';\nimport { ILogger } from '../shared/types/logger-type';\nimport { LayoutType } from '../shared/types/layout-type';\nimport { Theme } from '../shared/types/webcomponent-config';\nimport { ExternalConfigModel } from '../shared/models/external-config';\nimport { Storage } from '../shared/types/storage-type';\nimport {TakenByModel} from \"../_models/takenBy\";\n\n// Services\nimport { DevicesService } from '../shared/services/devices/devices.service';\nimport { LoggerService } from '../shared/services/logger/logger.service';\nimport { RemoteUsersService } from '../shared/services/remote-users/remote-users.service';\nimport { UtilsService } from '../shared/services/utils/utils.service';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport { ChatService } from '../shared/services/chat/chat.service';\nimport { UserName } from '../shared/types/username-type';\nimport { StorageService } from '../shared/services/storage/storage.service';\nimport { OpenViduLayoutService } from '../shared/services/layout/layout.service';\nimport { TokenService } from '../shared/services/token/token.service';\nimport { LocalUsersService } from '../shared/services/local-users/local-users.service';\nimport { OpenViduWebrtcService } from '../shared/services/openvidu-webrtc/openvidu-webrtc.service';\nimport { remoteUserConnection } from '../_models/addVideo'\n@Component({\n\tselector: 'app-video-room',\n\ttemplateUrl: './video-room.component.html',\n\tstyleUrls: ['./video-room.component.css']\n})\nexport class VideoRoomComponent implements OnInit, OnDestroy {\n\t// Config from webcomponent or angular-library\n\t@Input() externalConfig: ExternalConfigModel;\n\t@Output() _session = new EventEmitter();\n\t@Output() _publisher = new EventEmitter();\n\t@Output() _error = new EventEmitter();\n\n\t// !Deprecated\n\t@Output() _joinSession = new EventEmitter();\n\t// !Deprecated\n\t@Output() _leaveSession = new EventEmitter();\n\n\t@ViewChild('chatComponent') chatComponent: ChatComponent;\n\t@ViewChild('RightMenuComponent') RightMenuComponent: RightMenuComponent;\n\t@ViewChild('sidenav') chatSidenav: MatSidenav;\n\n\tovSettings: OvSettingsModel;\n\tcompact = false;\n\tsidenavMode: 'side' | 'over' = 'side';\n\tlightTheme: boolean;\n\tshowConfigRoomCard = true;\n\tsession: Session;\n\tsessionScreen: Session;\n\tlocalUsers: UserModel[] = [];\n\tremoteUsers: UserModel[] = [];\n\tremoteUsersForPart: UserModel[] = [];\n\tparticipantsNameList: UserName[] = [];\n\tisConnectionLost: boolean;\n\tisAutoLayout = false;\n\thasVideoDevices: boolean;\n\thasAudioDevices: boolean;\n\tprivate log: ILogger;\n\treciveFromParent : any;\n\thasSam:boolean;\n\tprivate oVUsersSubscription: Subscription;\n\tprivate remoteUsersSubscription: Subscription;\n\tprivate chatSubscription: Subscription;\n\tprivate remoteUserNameSubscription: Subscription;\n\tremoteUserConnectionID: remoteUserConnection;\n\tsearchText : any;\n\tconstructor(\n\t\tprivate router: Router,\n\t\tprivate utilsSrv: UtilsService,\n\t\t//private takenBy : TakenByModel,\n\t\tprivate remoteUsersService: RemoteUsersService,\n\t\tprivate openViduWebRTCService: OpenViduWebrtcService,\n\t\tprivate localUsersService: LocalUsersService,\n\t\tprivate oVDevicesService: DevicesService,\n\t\tprivate loggerSrv: LoggerService,\n\t\tprivate chatService: ChatService,\n\t\tprivate storageSrv: StorageService,\n\t\tprivate oVLayout: OpenViduLayoutService,\n\t\tprivate tokenService: TokenService\n\t) {\n\t\tthis.log = this.loggerSrv.get('VideoRoomComponent');\n\t}\n\n\t@HostListener('window:beforeunload')\n\tbeforeunloadHandler() {\n\t\tthis.leaveSession();\n\t}\n\n\t@HostListener('window:resize')\n\tsizeChange() {\n\t\tthis.oVLayout.update();\n\t\tthis.checkSizeComponent();\n\t}\n\n\tasync ngOnInit() {\n\t\tthis.localUsersService.initialize();\n\t\tthis.openViduWebRTCService.initialize();\n\n\t\tthis.lightTheme = this.externalConfig?.getTheme() === Theme.LIGHT;\n\t\tthis.ovSettings = !!this.externalConfig ? this.externalConfig.getOvSettings() : new OvSettingsModel();\n\t\tthis.ovSettings.setScreenSharing(this.ovSettings.hasScreenSharing() && !this.utilsSrv.isMobile());\n\t\tthis.hasSam=true;\n\t\tconsole.log(this.remoteUserConnectionID);\n\t}\n\n\tngOnDestroy() {\n\t\t// Reconnecting session is received in Firefox\n\t\t// To avoid 'Connection lost' message uses session.off()\n\t\tthis.session?.off('reconnecting');\n\t\tthis.remoteUsersService.clear();\n\t\tthis.oVLayout.clear();\n\t\tthis.localUsersService.clear();\n\t\tthis.session = null;\n\t\tthis.sessionScreen = null;\n\t\tthis.localUsers = [];\n\t\tthis.remoteUsers = [];\n\t\tthis.remoteUsersForPart = [];\n\t\tif (this.oVUsersSubscription) {\n\t\t\tthis.oVUsersSubscription.unsubscribe();\n\t\t}\n\t\tif (this.remoteUsersSubscription) {\n\t\t\tthis.remoteUsersSubscription.unsubscribe();\n\t\t}\n\t\tif (this.chatSubscription) {\n\t\t\tthis.chatSubscription.unsubscribe();\n\t\t}\n\t\tif (this.remoteUserNameSubscription) {\n\t\t\tthis.remoteUserNameSubscription.unsubscribe();\n\t\t}\n\t}\n\n\tonConfigRoomJoin() {\n\t\tthis.hasVideoDevices = this.oVDevicesService.hasVideoDeviceAvailable();\n\t\tthis.hasAudioDevices = this.oVDevicesService.hasAudioDeviceAvailable();\n\t\tthis.showConfigRoomCard = false;\n\t\tthis.subscribeToLocalUsers();\n\t\tthis.subscribeToRemoteUsers();\n\t\tthis.tokenService.initialize(this.ovSettings);\n\n\t\tsetTimeout(() => {\n\t\t\tthis.oVLayout.initialize();\n\t\t\tthis.checkSizeComponent();\n\t\t\tthis.joinToSession();\n\t\t}, 50);\n\t}\n\n\tasync joinToSession() {\n\t\tthis.openViduWebRTCService.initSessions();\n\t\tthis.session = this.openViduWebRTCService.getWebcamSession();\n\t\tthis._session.emit(this.session);\n\t\tthis.sessionScreen = this.openViduWebRTCService.getScreenSession();\n\t\tthis.subscribeToConnectionCreatedAndDestroyed();\n\t\tthis.subscribeToStreamCreated();\n\t\tthis.subscribeToStreamDestroyed();\n\t\tthis.subscribeToStreamPropertyChange();\n\t\tthis.subscribeToNicknameChanged();\n\t\tthis.subscribeToNewUserJoined();\n\t\tthis.chatService.setChatComponent(this.chatSidenav);\n\t\tthis.chatService.subscribeToChat();\n\t\tthis.subscribeToChatComponent();\n\t\tthis.subscribeToReconnection();\n\t\tawait this.connectToSession();\n\t\t// Workaround, firefox does not have audio when publisher join with muted camera\n\t\tif (this.utilsSrv.isFirefox() && !this.localUsersService.hasWebcamVideoActive()) {\n\t\t\tthis.openViduWebRTCService.publishWebcamVideo(true);\n\t\t\tthis.openViduWebRTCService.publishWebcamVideo(false);\n\t\t}\n\t}\n\n\tleaveSession() {\n\t\tthis.log.d('Leaving session...');\n\t\tthis.openViduWebRTCService.disconnect();\n\t\tthis.router.navigate(['']);\n\t\tthis._leaveSession.emit();\n\t}\n\n\tonNicknameUpdate(nickname: string) {\n\t\tthis.localUsersService.updateUsersNickname(nickname);\n\t\tthis.storageSrv.set(Storage.USER_NICKNAME, nickname);\n\t\tthis.openViduWebRTCService.sendNicknameSignal();\n\t}\n\n\ttoggleMic() {\n\t\tif (this.localUsersService.isWebCamEnabled()) {\n\t\t\tthis.openViduWebRTCService.publishWebcamAudio(!this.localUsersService.hasWebcamAudioActive());\n\t\t\treturn;\n\t\t}\n\t\tthis.openViduWebRTCService.publishScreenAudio(!this.localUsersService.hasScreenAudioActive());\n\t}\n\n\tasync toggleCam() {\n\t\tconst publishVideo = !this.localUsersService.hasWebcamVideoActive();\n\n\t\t// Disabling webcam\n\t\tif (this.localUsersService.areBothConnected()) {\n\t\t\tthis.openViduWebRTCService.publishWebcamVideo(publishVideo);\n\t\t\tthis.localUsersService.disableWebcamUser();\n\t\t\tthis.openViduWebRTCService.unpublishWebcamPublisher();\n\t\t\treturn;\n\t\t}\n\t\t// Enabling webcam\n\t\tif (this.localUsersService.isOnlyScreenConnected()) {\n\t\t\tconst hasAudio = this.localUsersService.hasScreenAudioActive();\n\n\t\t\tif (!this.openViduWebRTCService.isWebcamSessionConnected()) {\n\t\t\t\tawait this.connectWebcamSession();\n\t\t\t}\n\t\t\tawait this.openViduWebRTCService.publishWebcamPublisher();\n\t\t\tthis.openViduWebRTCService.publishScreenAudio(false);\n\t\t\tthis.openViduWebRTCService.publishWebcamAudio(hasAudio);\n\t\t\tthis.localUsersService.enableWebcamUser();\n\t\t}\n\t\t// Muting/unmuting webcam\n\t\tthis.openViduWebRTCService.publishWebcamVideo(publishVideo);\n\t}\n\n\tasync toggleScreenShare() {\n\t\t// Disabling screenShare\n\t\tif (this.localUsersService.areBothConnected()) {\n\t\t\tthis.removeScreen();\n\t\t\treturn;\n\t\t}\n\n\t\t// Enabling screenShare\n\t\tif (this.localUsersService.isOnlyWebcamConnected()) {\n\t\t\tconst screenPublisher = this.initScreenPublisher();\n\n\t\t\tscreenPublisher.once('accessAllowed', async (event) => {\n\t\t\t\t// Listen to event fired when native stop button is clicked\n\t\t\t\tscreenPublisher.stream\n\t\t\t\t\t.getMediaStream()\n\t\t\t\t\t.getVideoTracks()[0]\n\t\t\t\t\t.addEventListener('ended', () => {\n\t\t\t\t\t\tthis.log.d('Clicked native stop button. Stopping screen sharing');\n\t\t\t\t\t\tthis.toggleScreenShare();\n\t\t\t\t\t});\n\t\t\t\tthis.log.d('ACCESS ALOWED screenPublisher');\n\t\t\t\tthis.localUsersService.enableScreenUser(screenPublisher);\n\n\t\t\t\tif (!this.openViduWebRTCService.isScreenSessionConnected()) {\n\t\t\t\t\tawait this.connectScreenSession();\n\t\t\t\t}\n\t\t\t\tawait this.openViduWebRTCService.publishScreenPublisher();\n\t\t\t\tthis.openViduWebRTCService.sendNicknameSignal();\n\t\t\t\tif (!this.localUsersService.hasWebcamVideoActive()) {\n\t\t\t\t\t// Disabling webcam\n\t\t\t\t\tthis.localUsersService.disableWebcamUser();\n\t\t\t\t\tthis.openViduWebRTCService.unpublishWebcamPublisher();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tscreenPublisher.once('accessDenied', (event) => {\n\t\t\t\tthis.log.w('ScreenShare: Access Denied');\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\n\t\t// Disabling screnShare and enabling webcam\n\t\tconst hasAudio = this.localUsersService.hasScreenAudioActive();\n\t\tawait this.openViduWebRTCService.publishWebcamPublisher();\n\t\tthis.openViduWebRTCService.publishScreenAudio(false);\n\t\tthis.openViduWebRTCService.publishWebcamAudio(hasAudio);\n\t\tthis.localUsersService.enableWebcamUser();\n\t\tthis.removeScreen();\n\t}\n\n\ttoggleSpeakerLayout() {\n\t\tif (!this.localUsersService.isScreenShareEnabled()) {\n\t\t\tthis.isAutoLayout = !this.isAutoLayout;\n\n\t\t\tthis.log.d('Automatic Layout ', this.isAutoLayout ? 'Disabled' : 'Enabled');\n\t\t\tif (this.isAutoLayout) {\n\t\t\t\tthis.subscribeToSpeechDetection();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.log.d('Unsubscribe to speech detection');\n\t\t\tthis.session.off('publisherStartSpeaking');\n\t\t\tthis.resetAllBigElements();\n\t\t\tthis.oVLayout.update();\n\t\t\treturn;\n\t\t}\n\t\tthis.log.w('Screen is enabled. Speech detection has been rejected');\n\t}\n\n\tonReplaceScreenTrack(event) {\n\t\tthis.openViduWebRTCService.replaceScreenTrack();\n\t}\n\n\tcheckSizeComponent() {\n\t\tthis.compact = document.getElementById('room-container')?.offsetWidth <= 790;\n\t\tthis.sidenavMode = this.compact ? 'over' : 'side';\n\t}\n\n\tonToggleVideoSize(event: { element: HTMLElement; connectionId?: string; resetAll?: boolean }) {\n\t\tconst element = event.element;\n\t\tif (!!event.resetAll) {\n\t\t\tthis.resetAllBigElements();\n\t\t}\n\n\t\tthis.utilsSrv.toggleBigElementClass(element);\n\n\t\t// Has been mandatory change the user zoom property here because of\n\t\t// zoom icons and cannot handle publisherStartSpeaking event in other component\n\t\tif (!!event?.connectionId) {\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(event.connectionId)) {\n\t\t\t\tthis.localUsersService.toggleZoom(event.connectionId);\n\t\t\t} else {\n\t\t\t\tthis.remoteUsersService.toggleUserZoom(event.connectionId);\n\t\t\t}\n\t\t}\n\t\tthis.oVLayout.update();\n\t}\n\n\ttoolbarMicIconEnabled(): boolean {\n\t\tif (this.localUsersService.isWebCamEnabled()) {\n\t\t\treturn this.localUsersService.hasWebcamAudioActive();\n\t\t}\n\t\treturn this.localUsersService.hasScreenAudioActive();\n\t}\n\n\tprivate async connectToSession(): Promise {\n\t\ttry {\n\t\t\t// Initialize tokens from externalConfig or create new ones\n\t\t\tawait this.tokenService.initTokens(this.externalConfig);\n\t\t} catch (error) {\n\t\t\tthis.log.e('There was an error initializing the token:', error.status, error.message);\n\t\t\tthis._error.emit({ error: error.error, messgae: error.message, code: error.code, status: error.status });\n\t\t\tthis.utilsSrv.showErrorMessage('There was an error initializing the token:', error.error || error.message);\n\t\t}\n\n\t\tif (this.localUsersService.areBothConnected()) {\n\t\t\tawait this.connectWebcamSession();\n\t\t\tawait this.connectScreenSession();\n\t\t\tawait this.openViduWebRTCService.publishWebcamPublisher();\n\t\t\tawait this.openViduWebRTCService.publishScreenPublisher();\n\t\t} else if (this.localUsersService.isOnlyScreenConnected()) {\n\t\t\tawait this.connectScreenSession();\n\t\t\tawait this.openViduWebRTCService.publishScreenPublisher();\n\t\t} else {\n\t\t\tawait this.connectWebcamSession();\n\t\t\tawait this.openViduWebRTCService.publishWebcamPublisher();\n\t\t}\n\t\t// !Deprecated\n\t\tthis._joinSession.emit();\n\n\t\tthis.oVLayout.update();\n\t}\n\n\tprivate async connectScreenSession() {\n\t\ttry {\n\t\t\tawait this.openViduWebRTCService.connectScreenSession(this.tokenService.getScreenToken());\n\t\t} catch (error) {\n\t\t\tthis._error.emit({ error: error.error, messgae: error.message, code: error.code, status: error.status });\n\t\t\tthis.log.e('There was an error connecting to the session:', error.code, error.message);\n\t\t\tthis.utilsSrv.showErrorMessage('There was an error connecting to the session:', error?.error || error?.message);\n\t\t}\n\t}\n\n\tprivate async connectWebcamSession() {\n\t\ttry {\n\t\t\tawait this.openViduWebRTCService.connectWebcamSession(this.tokenService.getWebcamToken());\n\t\t} catch (error) {\n\t\t\tthis._error.emit({ error: error.error, messgae: error.message, code: error.code, status: error.status });\n\t\t\tthis.log.e('There was an error connecting to the session:', error.code, error.message);\n\t\t\tthis.utilsSrv.showErrorMessage('There was an error connecting to the session:', error?.error || error?.message);\n\t\t}\n\t}\n\n\tprivate subscribeToConnectionCreatedAndDestroyed() {\n\t\tthis.session.on('connectionCreated', (event: ConnectionEvent) => {\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(event.connection.connectionId)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst nickname: string = this.utilsSrv.getNicknameFromConnectionData(event.connection.data);\n\t\t\tthis.remoteUsersService.addUserName(event);\n\n\t\t\t// Adding participant when connection is created\n\t\t\tif (!nickname?.includes('_' + VideoType.SCREEN)) {\n\t\t\t\tthis.remoteUsersService.add(event, null);\n\t\t\t\tthis.openViduWebRTCService.sendNicknameSignal(event.connection);\n\t\t\t}\n\t\t});\n\n\t\tthis.session.on('connectionDestroyed', (event: ConnectionEvent) => {\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(event.connection.connectionId)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.remoteUsersService.deleteUserName(event);\n\t\t\tconst nickname: string = this.utilsSrv.getNicknameFromConnectionData(event.connection.data);\n\t\t\t// Deleting participant when connection is destroyed\n\t\t\tif (!nickname?.includes('_' + VideoType.SCREEN)) {\n\t\t\t\tthis.remoteUsersService.removeUserByConnectionId(event.connection.connectionId);\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate subscribeToStreamCreated() {\n\t\tthis.session.on('streamCreated', (event: StreamEvent) => {\n\t\t\tconst connectionId = event.stream.connection.connectionId;\n\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(connectionId)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst subscriber: Subscriber = this.session.subscribe(event.stream, undefined);\n\t\t\tthis.remoteUsersService.add(event, subscriber);\n\t\t\t// this.oVSessionService.sendNicknameSignal(event.stream.connection);\n\t\t});\n\t}\n\n\tprivate subscribeToStreamDestroyed() {\n\t\tthis.session.on('streamDestroyed', (event: StreamEvent) => {\n\t\t\tconst connectionId = event.stream.connection.connectionId;\n\t\t\tthis.remoteUsersService.removeUserByConnectionId(connectionId);\n\t\t\t// event.preventDefault();\n\t\t});\n\t}\n\n\t// Emit publisher to webcomponent\n\temitPublisher(publisher: Publisher) {\n\t\tthis._publisher.emit(publisher);\n\t}\n\n\tprivate subscribeToNewUserJoined() {\n\t\tthis.session.on('signal:reconnect', (event: any) => {\n\t\t\tconst connectionId = event.from.connectionId;\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(connectionId)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.joinToSession();\n\t\t});\n\t}\n\n\tprivate subscribeToStreamPropertyChange() {\n\t\tthis.session.on('streamPropertyChanged', (event: StreamPropertyChangedEvent) => {\n\t\t\tconst connectionId = event.stream.connection.connectionId;\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(connectionId)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (event.changedProperty === 'videoActive') {\n\t\t\t\tthis.remoteUsersService.updateUsers();\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate subscribeToNicknameChanged() {\n\t\tthis.session.on('signal:nicknameChanged', (event: any) => {\n\t\t\tconst connectionId = event.from.connectionId;\n\t\t\tif (this.openViduWebRTCService.isMyOwnConnection(connectionId)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst nickname = this.utilsSrv.getNicknameFromConnectionData(event.data);\n\t\t\tthis.remoteUsersService.updateNickname(connectionId, nickname);\n\t\t});\n\t}\n\n\tprivate subscribeToSpeechDetection() {\n\t\tthis.log.d('Subscribe to speech detection', this.session);\n\t\t// Has been mandatory change the user zoom property here because of\n\t\t// zoom icons and cannot handle publisherStartSpeaking event in other component\n\t\tthis.session.on('publisherStartSpeaking', (event: PublisherSpeakingEvent) => {\n\t\t\tconst someoneIsSharingScreen = this.remoteUsersService.someoneIsSharingScreen();\n\t\t\tif (!this.localUsersService.isScreenShareEnabled() && !someoneIsSharingScreen) {\n\t\t\t\tconst elem = event.connection.stream.streamManager.videos[0].video;\n\t\t\t\tconst element = this.utilsSrv.getHTMLElementByClassName(elem, LayoutType.ROOT_CLASS);\n\t\t\t\tthis.resetAllBigElements();\n\t\t\t\tthis.remoteUsersService.setUserZoom(event.connection.connectionId, true);\n\t\t\t\tthis.onToggleVideoSize({ element });\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate removeScreen() {\n\t\tthis.localUsersService.disableScreenUser();\n\t\tthis.openViduWebRTCService.unpublishScreenPublisher();\n\t}\n\n\tprivate subscribeToChatComponent() {\n\t\tthis.chatSubscription = this.chatService.toggleChatObs.subscribe((opened) => {\n\t\t\tconst timeout = this.externalConfig ? 300 : 0;\n\t\t\tthis.oVLayout.update(timeout);\n\t\t});\n\t}\n\n\tprivate subscribeToReconnection() {\n\t\tthis.session.on('reconnecting', () => {\n\t\t\tthis.log.w('Connection lost: Reconnecting');\n\t\t\tthis.isConnectionLost = true;\n\t\t\tthis.utilsSrv.showErrorMessage('Connection Problem', 'Oops! Trying to reconnect to the session ...', true);\n\t\t});\n\t\tthis.session.on('reconnected', () => {\n\t\t\tthis.log.w('Connection lost: Reconnected');\n\t\t\tthis.isConnectionLost = false;\n\t\t\tthis.utilsSrv.closeDialog();\n\t\t});\n\t\tthis.session.on('sessionDisconnected', (event: SessionDisconnectedEvent) => {\n\t\t\tif (event.reason === 'networkDisconnect') {\n\t\t\t\tthis.utilsSrv.closeDialog();\n\t\t\t\tthis.leaveSession();\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate initScreenPublisher(): Publisher {\n\t\tconst videoSource = ScreenType.SCREEN;\n\t\tconst audioSource = this.hasAudioDevices ? undefined : null;\n\t\tconst willThereBeWebcam = this.localUsersService.isWebCamEnabled() && this.localUsersService.hasWebcamVideoActive();\n\t\tconst hasAudio = willThereBeWebcam ? false : this.hasAudioDevices && this.localUsersService.hasWebcamAudioActive();\n\t\tconst properties = this.openViduWebRTCService.createPublisherProperties(videoSource, audioSource, true, hasAudio, false);\n\n\t\ttry {\n\t\t\treturn this.openViduWebRTCService.initScreenPublisher(undefined, properties);\n\t\t} catch (error) {\n\t\t\tthis.log.e(error);\n\t\t\tthis.utilsSrv.handlerScreenShareError(error);\n\t\t}\n\t}\n\n\tprivate resetAllBigElements() {\n\t\tthis.utilsSrv.removeAllBigElementClass();\n\t\tthis.remoteUsersService.resetUsersZoom();\n\t\tthis.localUsersService.resetUsersZoom();\n\t}\n\n\tprivate subscribeToLocalUsers() {\n\t\tthis.oVUsersSubscription = this.localUsersService.OVUsers.subscribe((users: UserModel[]) => {\n\t\t\tthis.localUsers = users;\n\t\t\tthis.oVLayout.update();\n\t\t});\n\t}\n\n\tprivate subscribeToRemoteUsers() {\n\t\t// for (let i = 0; i < UserModel.length; i++) {\n\t\t\t\n\t\t// }\n\n\t\t\n\t\tthis.remoteUsersSubscription = this.remoteUsersService.remoteUsers.subscribe((users: UserModel[]) => {\n\t\n\t\t\t\n\t\t\t//var obj = new TakenByModel();\n\t\t//\tvar takenByID =\tlocalStorage.getItem('takenBy')\n\t// \t_________ _____ _______ ________ ________________________________ \n\t// \t/ _____/ / _ \\ \\ \\ \\______ \\ \\_ _____/\\_ _____/\\______ \\\n\t// \t\\_____ \\ / /_\\ \\ / | \\ | | \\ | __)_ | __)_ | ___/\n\t// \t/ \\/ | \\/ | \\| ` \\| \\ | \\ | | \n\t// /_______ /\\____|__ /\\____|__ /_______ /_______ //_______ / |____| \n\t// \t\t \\/ \\/ \\/ \\/ \\/ \\/ \n\t// \t\t\n\tconsole.log('sandeep-userID'+localStorage.getItem('userID').toString());\n\tconsole.log('sandeep-takenBy'+localStorage.getItem('takenBy').toString());\n\t\t\tthis.remoteUsers = [...users];\n\t\t\tif(localStorage.getItem('userID').toString() == localStorage.getItem('takenBy').toString())\n\t\t\t{\n\t\t\t\tthis.remoteUsersForPart = [...users];\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\tfor(let i=0;i {\n\t\t\tthis.participantsNameList = [...names];\n\t\t\t\n\t\t});\n\t}\n\trecieve(selected)\n\t{\n\t\tif(this.searchText == selected)\n\t\t{\n\t\t\tthis.searchText = 'name';\n\t\t\tconsole.log('New Seach'+this.searchText);\nthis.oVLayout.update();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.searchText = selected;\n\t\t\tconsole.log('New Seach'+this.searchText);\nthis.oVLayout.update();\n\t\t}\n\n\n\t}\n\trecieveFromChat(selected)\n\t{\n\t\t\n\t\tconsole.log('vishnu');\n\t\tconsole.log(selected);\nthis.hasSam=selected;\n\t}\n}\n","\n
\n \n\n
0\">\n
\n \n\n \n \n \n \n \n \n \n \n \n\n \n\n\n\n \n \n\n \n\n \n \n
\n \n \n \n
\n\n \n \n
\n
\n \n \n \n \n \n \n\n","\nimport * as $ from 'jquery'\nimport { Component, OnInit} from '@angular/core';\nimport { Router, ActivatedRoute, ParamMap } from \"@angular/router\";\n//\n\n\n\n\n//declare const hello: any;\n@Component({\n selector: 'app-livewebinar',\n templateUrl: './videoorom.component.html',\n styleUrls: ['./videoorom.component.css']\n})\nexport class VideooromComponent implements OnInit {\n private router: Router\n\tngOnInit() {\n this.loadScripts();\n if(localStorage.getItem('userID') !='' || localStorage.getItem('userID') !=undefined)\n {\n // this.router.navigate(['/']);\n }\n //hello();\n /*\n\t\t$('button').click(function() {\n\t\t\talert('GeeksForGeeks');\n\t\t});\n */\n\n\n\n\n\t}\n loadScripts()\n {\n const dynamicScripts = [\n 'assets/js/janus.js',\n //'assets/js/videorromMeeting.js',\n 'assets/js/videoroomtest.js',\n\n ];\n for (let i = 0; i < dynamicScripts.length; i++) {\n const node = document.createElement('script');\n node.src = dynamicScripts[i];\n node.type = 'text/javascript';\n node.async = false;\n document.getElementsByTagName('head')[0].appendChild(node);\n }\n }\n}\n","\n\n\n \n \n Corncall Video\n \n \n\n \n\n\n\n\n\n \n\t\n\t\n\t\n\t -->\n\n\t\n\t\n\n\n\n\n\n\n
\n\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n\n
\n

Scheduled Webinar List

\n
\n\n
\n
\n\n
\n
\n\n
\n
\n
\n \n
\n
\n\n
\n\n
\n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n
\n\t\t\t\t
\n \n \n \n\t\t\t\t\t

\n
\n
\n
\n\n
\n\n
\n
\n\t\t\t \n
    \n\n
\n
\n
\n\n
\n\n
\n \n
\n

Group Chat

\n\n
\n
\n\n
\n
\n\n\n\n
\n
\n\n\n
\n
\n
\n \n
\n
\n
\n\n
\n
\n\n
\n\n
\n

Individual Chat

\n
\n
\n\n
\n
\n\n\n\n
\n
\n\n\n
\n
\n
\n \n
\n
\n
\n\n
\n
\n\n\n\n
\n\n
\n\n
\n\n
\n
\n\n\n
\n
\n
\n\n\n
\n
\n\n
\n
\n
\n
\n
\n

\n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n \n
\n
\n
\n
\n
\n
\n\n

No Question

\n\n
\n
\n\n
\n
\n\n
\n\n
\n\n\n
\n\n \n
\n
\n

Please select your Question Type:

\n \n \n \n
\n \n
\n

Enter Your Question:

\n \n\n
\n
\n
\n

Enter Your Options:

\n \n \n \n \n \n \n \n \n
\n\n
\n

Correct Options:

\n \n \n \n \n \n \n \n \n
\n
\n
\n\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n\n
\n\n\n
\n\n\n\n\n\n\n\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router'\n@Component({\n selector: 'app-videoroommeeting',\n templateUrl: './videoroommeeting.component.html',\n styleUrls: ['./videoroommeeting.component.css']\n})\nexport class VideoroommeetingComponent implements OnInit {\n id: string\n constructor(private route: ActivatedRoute) { }\n\n ngOnInit(): void {\n this.id = this.route.snapshot.paramMap.get('id')\n this.loadScripts();\n }\n loadScripts()\n {\n const dynamicScripts = [\n 'assets/js/janus.js',\n //'assets/js/videorromMeeting.js',\n 'assets/js/videoroommeetingnew.js',\n\n ];\n for (let i = 0; i < dynamicScripts.length; i++) {\n const node = document.createElement('script');\n node.src = dynamicScripts[i];\n node.type = 'text/javascript';\n node.async = false;\n document.getElementsByTagName('head')[0].appendChild(node);\n }\n }\n}\n","\n\n\n \n \n Corncall Video\n \n \n\n \n\n\n\n\n\n \n\t\n\t\n\t\n\t -->\n\n\t\n\t\n\n\n\n\n\n\n
\n\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n\n
\n

Meeting Id:

\n
\n\n
\n
\n\n
\n
\n\n
\n
\n
\n \n
\n
\n\n
\n\n
\n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n
\n\t\t\t\t \n \n \n\t\t\t\t\t\n
\n
\n
\n\n
\n\n
\n
\n\t\t\t \n
    \n\n
\n
\n
\n\n
\n\n
\n \n
\n

Group Chat

\n\n
\n
\n\n
\n
\n\n\n\n
\n
\n\n\n
\n
\n
\n \n
\n
\n
\n\n
\n
\n\n
\n\n
\n

Individual Chat

\n
\n
\n\n
\n
\n\n\n\n
\n
\n\n\n
\n
\n
\n \n
\n
\n
\n\n
\n
\n\n\n\n
\n\n
\n\n
\n\n
\n\n\n
\n
\n
\n\n\n
\n
\n\n
\n
\n
\n
\n
\n

\n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n \n
\n
\n
\n
\n
\n
\n\n

No Question

\n\n
\n
\n\n
\n
\n\n
\n\n
\n\n\n
\n\n \n
\n
\n

Please select your Question Type:

\n \n \n \n
\n \n
\n

Enter Your Question:

\n \n\n
\n
\n
\n

Enter Your Options:

\n \n \n \n \n \n \n \n \n
\n\n
\n

Correct Options:

\n \n \n \n \n \n \n \n \n
\n
\n
\n\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n\n
\n\n\n
\n
\n
\n
\n\n\n \n\n
\n
\n\n\n
\n\n\n\n\n\n\n","import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';\nimport { VideoRoomComponent } from '../video-room/video-room.component';\nimport { OvSettings } from '../shared/types/ov-settings';\nimport { WebComponentModel } from '../shared/models/webcomponent-model';\nimport { LoggerService } from '../shared/services/logger/logger.service';\nimport { ILogger } from '../shared/types/logger-type';\nimport { ConnectionEvent, Publisher } from 'openvidu-browser';\nimport { ISessionConfig } from '../shared/types/webcomponent-config';\n\n\n@Component({\n\tselector: 'app-web-component',\n\ttemplate: `\n\t\t\n\t\t\n\t`,\n\tstyleUrls: ['./web-component.component.css']\n})\nexport class WebComponentComponent {\n\n\t@Input() ovSettings: OvSettings;\n\t@Output() sessionCreated = new EventEmitter();\n\t@Output() publisherCreated = new EventEmitter();\n\t@Output() error = new EventEmitter();\n\n\t// !Deprecated\n\t@Output() joinSession = new EventEmitter();\n\t// !Deprecated\n\t@Output() leaveSession = new EventEmitter();\n\t@ViewChild('videoRoom') videoRoom: VideoRoomComponent;\n\n\tdisplay = false;\n\n\twebComponent: WebComponentModel = new WebComponentModel();\n\n\tprivate log: ILogger;\n\n\tconstructor(private loggerSrv: LoggerService) {\n\t\tthis.log = this.loggerSrv.get('WebComponentComponent');\n\t}\n\n\t@Input('sessionConfig')\n\tset sessionConfig(config: string | ISessionConfig | Object) {\n\t\tthis.log.d('Webcomponent sessionConfig: ', config);\n\t\tsetTimeout(() => {\n\t\t\tif (typeof config === 'string') {\n\t\t\t\ttry {\n\t\t\t\t\tconfig = JSON.parse(config);\n\t\t\t\t} catch (error) {\n\t\t\t\t\tthis.log.e('Unexpected JSON', error);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Leave session when sessionConfig is an empty Object\n\t\t\tif (this.isEmpty(config)) {\n\t\t\t\tthis.log.w('Parameters received are incorrect.', config);\n\t\t\t\tthis.log.w('Exit session');\n\t\t\t\tthis.videoRoom?.leaveSession();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.webComponent.setSessionConfig(config);\n\t\t\tthis.display = this.webComponent.canJoinToSession();\n\n\t\t}, 200);\n\t}\n\n\t@Input()\n\tset theme(theme: string) {\n\t\tthis.webComponent.setTheme(theme);\n\t}\n\n\t@Input()\n\tset openviduServerUrl(url: string) {\n\t\tthis.webComponent.setOvServerUrl(url);\n\t}\n\n\t@Input()\n\tset openviduSecret(secret: string) {\n\t\tthis.webComponent.setOvSecret(secret);\n\t}\n\n\temitErrorEvent(event) {\n\t\tsetTimeout(() => this.error.emit(event), 20);\n\t}\n\n\temitSession(session: any) {\n\t\tsession.on('sessionDisconnected', (e) => this.display = false);\n\t\tsession.on('connectionCreated', (e: ConnectionEvent) => {\n\t\t\tthis.videoRoom.checkSizeComponent();\n\t\t});\n\t\tthis.sessionCreated.emit(session);\n\t}\n\n\temitPublisher(publisher: Publisher) {\n\t\tthis.publisherCreated.emit(publisher);\n\t}\n\n\t// !Deprecated\n\temitJoinSessionEvent(event): void {\n\t\t// Do not work. Observers always are 1 in webcomponent.\n\t\t// if (this.joinSession.observers.length > 0) {\n\t\t// \tthis.log.w('joinSession event is DEPRECATED. Please consider to use sessionCreated event');\n\t\t// }\n\t\tthis.joinSession.emit(event);\n\t }\n\n\t // !Deprecated\n\t emitLeaveSessionEvent(event): void {\n\t\t// Do not work. Observers always are 1 in webcomponent.\n\t\t// if (this.leaveSession.observers.length > 0) {\n\t\t// \tthis.log.w('leaveSession event is DEPRECATED. Please consider to use sessionCreated event');\n\t\t// }\n\t\tthis.leaveSession.emit(event);\n\t }\n\n\tprivate isEmpty(obj: any): boolean {\n\t\treturn Object.keys(obj).length === 0;\n\t}\n}\n","import { Component, OnInit } from '@angular/core';\nimport { NgbModal } from \"@ng-bootstrap/ng-bootstrap\";\nimport {ApiService} from '../services/api.service';\nimport { Router, ActivatedRoute, ParamMap } from \"@angular/router\";\n\n@Component({\n selector: 'app-webinar',\n templateUrl: './webinar.component.html',\n styleUrls: ['./webinar.component.css']\n})\nexport class WebinarComponent implements OnInit {\n webnarHostInfoList: any;\n userId: any;\n userName: any;\n webnarAttendList: any;\n webinarMembersList:any;\n getWebinarID: any;\n update:any;\n webinarIdforUpdate: any;\n\n constructor(\n private router: Router,\n private modalService: NgbModal,\n public ApiServiceCall: ApiService\n ) {\n // this.accessToken = localStorage.getItem('accessToken');\n this.userId = localStorage.getItem('userID');\n this.userName = localStorage.getItem('userName');\n // this.hostInfo = [];\n // this.attendInfo = [];\n this.webnarHostInfoList=[];\n this.webnarAttendList=[];\n this.webinarMembersList = [];\n this.getWebinarID;\n this.update = {};\n // this.meetingMembersList=[];\n // this.webinarMembersList=[];\n }\n\n ngOnInit(): void {\n this.getAllWebinarHostList();\n this.getAllWebnarAttendList();\n }\n\ngetAllWebinarHostList(){\n var obj = {userId:this.userId};\n this.ApiServiceCall.getAllHostedList(obj).subscribe((data) => {\n\n console.log(data.responseValue);\n let myWebnarList = data.responseValue;\n for (let i=0;i {\n\n console.log(data.responseValue);\n let myWebnarAttendData = data.responseValue;\n for (let i=0;i {\n // $('.loading-overlay').removeClass('is-active');\n console.log(\"Vishnu\");\n console.log(data.responseValue);\n this.webinarMembersList = data.responseValue;\n console.log(this.webinarMembersList);\n\n });\n }\n\n delete(component,item) {\n this.getWebinarID=item;\n console.log('DeleteWebinar', this.getWebinarID);\n this.modalService.open(component);\n }\n\n onDeleteWebinar(){\n var obj ={\n isWebinar:1,\n id: this.getWebinarID.webinarId,\n userId:localStorage.getItem(\"userID\")\n }\n console.log(\"DeleteWebinar\"+ JSON.stringify(obj));\n this.ApiServiceCall.deleteWebinar(obj).subscribe((data) => {\n // this.webnarAttendList.slice(this.webnarAttendList.indexOf(this.getWebinarID),1);\n this.webnarHostInfoList.slice(this.webnarHostInfoList.indexOf(this.getWebinarID.webinarId),1);\n this.modalService.dismissAll();\n console.log(data.responseMessage);\n // alert('success');\n });\n\n\n }\n toOfflineWebinar(){\n this.router.navigate(['/offlinewebinar']);\n // [routerLink]=\"['/offlinewebinar']\"\n\n }\n\n startWebinar(roomId,takeBy,takenByName,roomName,refId){\n\n\n var isAdmins = 0;\n\n if(takeBy == JSON.parse(localStorage.getItem('userID')))\n {\n isAdmins = 1;\n }\n else\n {\n isAdmins = 0;\n }\n var obj = {userId:this.userId,\n referenceId : refId,\n 'isWebinar' : '1',\n 'isStarted' : '1',\n 'accessTokenId' : '',\n 'logDateTime' : new Date()\n\n };\n console.log(obj);\n // $('.loading-overlay').addClass('is-active');\n this.ApiServiceCall.insertUserTransactionLog(obj).subscribe((data) => {\n // $('.loading-overlay').removeClass('is-active');\n //alert(data);\n if(data.responseCode == '1')\n {\n localStorage.setItem('roomId',JSON.stringify(roomId));\n localStorage.setItem('isAdmin',JSON.stringify(isAdmins));\n localStorage.setItem('takeBy',JSON.stringify(takeBy));\n localStorage.setItem('takenByName',JSON.stringify(takenByName));\n localStorage.setItem('roomName',JSON.stringify(roomName));\n localStorage.setItem('refId',JSON.stringify(refId));\n window.open(\"/corncallweb/#/videoorom\", '_blank');\n }\nelse{\n alert('Saving Log Failed');\n\n}\n });\n\n\n\n //window.open('/videoorom', '_blank')\n // this.router.navigate(['/videoorom']);\n // [routerLink]=\"['/offlinewebinar']\"\n\n }\n toLiveWebinar(){\n this.router.navigate(['/livewebinar']);\n // [routerLink]=\"['/livewebinar']\"\n }\n onUpdate(content2,item) {\n this.webinarIdforUpdate = item.webinarId\n this.modalService.open(content2);\n this.update = item;\n console.log(\"Vishnu\",this.update);\n }\n onUpdateWebinar(){\n var obj = {\n isWebinar:1,\n id:this.webinarIdforUpdate,\n eventName:this.update.eventName,\n startDateTime:this.update.startDate+ ' ' + this.update.startTime + ':00',\n endDateTime:this.update.endDate + ' ' + this.update.endTime + ':00',\n }\n\n this.ApiServiceCall.updateWebinar(obj).subscribe((data) => {\n\n alert(data.responseMessage);\n this.modalService.dismissAll();\n\n\n\n\n });\n\n }\n\n\n\n\n}\n","\n\n
\n
\n
\n
\n

Scheduled Webinar List

\n
\n
\n \n\n \n\n
\n\n
\n\n \n\n
\n\n \n
\n
\n \n
\n
\n
\n
\n Topic\n

\n {{list.eventName}}\n
\n {{list.startTime}}\n
\n\n
\n \n \n Call \n |\n \n \n \n {{list.webinarAttendeesCount}} Members \n\n\n
\n
\n
\n \n \n
\n
\n
\n
\n\n
\n \n
\n
\n \n {{list.startDate}}-{{list.dayName}} |\n \n \n \n 0\">\n \n \n \n 00.00.00\n \n \n\n\n
\n
\n    \n\n \n\n \n \n \n 0\">\n \n \n \n \n \n\n
\n
\n
\n\n\n\n
\n\n
\n\n\n\n
\n \n\n \n\n
\n
\n \n
\n
\n
\n
\n Topic\n

\n {{list.eventName}}\n
\n {{list.startTime}}\n
\n\n
\n \n \n Call \n |\n \n \n \n {{list.webinarAttendeesCount}} Members \n \n \n \n
\n
\n\n\n\n
\n \n
\n
\n \n {{list.startDate}}-{{list.dayName}} |\n \n \n \n 0\">\n \n \n \n 00.00.00\n \n\n
\n
\n    \n \n \n \n \n 0\">\n \n \n \n \n \n
\n
\n
\n
\n\n\n
\n
\n \n
\n
\n\n\n \n\n
\n
\n
\n
\n
Members Name
\n \n
\n
\n
\n \n

\"Avatar\"\n {{list.name}}

\n \n \n\n\n
\n\n \n\n
\n
\n \n \n
\n
\n
\n
\n\n \n\n \n\n
\n

Alert Messages!!

\n
\n
\n

Do you want to delete this Webinar?…

\n
\n
\n \n \n
\n
\n\n\n\n\n \n \n\n \n
\n
\n
\n
\n
Update Webinar
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n\n
\n\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n\n
\n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n\n\n
\n
\n
\n
\n
\n\n \n\n \n
\n
\n\n\n
\n
\n
\n
\n
\n
\n\n
\n\n\n\n\n\n
\n \n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: true,\n openvidu_url: 'teammeet.online:443',\n openvidu_secret: 'mark42',\n apiBaseUrl: 'https://corncall.com:2087/',\n};\n\n/*\n * In development mode, to ignore zone related error stack frames such as\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\n * import the following file, but please comment it out in production mode\n * because it will have performance impact when throw error\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.log(err));\n"],"sourceRoot":"webpack:///"}