UNPKG

@observertc/client-monitor-js

Version:

ObserveRTC Client Integration Javascript Library

1 lines 546 B
export class IceTupleChangeDetector{pcMonitor;name="ice-tuple-change-detector";constructor(t){this.pcMonitor=t}tuples=new Set;update(){if(this.pcMonitor.closed)return;const t=0===this.tuples.size;let e=!1;const o=new Set;for(const t of this.pcMonitor.selectedIceCandidatePairs){const s=t.tuple;o.add(s),this.tuples.has(s)||(e=!0,this.tuples.add(s))}for(const t of this.tuples)o.has(t)||(e=!0,this.tuples.delete(t));!t&&e&&this.pcMonitor.parent.emit("ice-tuple-changed",{clientMonitor:this.pcMonitor.parent,peerConnectionMonitor:this.pcMonitor})}}