UNPKG

@4players/odin

Version:

A cross-platform SDK enabling developers to integrate real-time VoIP chat technology into their projects

40 lines (39 loc) 1.55 kB
import { OdinEvent, OdinEventTarget } from '../../utils/odin-event-target'; /** * Class describing a single peer inside an `OdinRoom`. */ export class Peer extends OdinEventTarget { /** * Creates an instance of the class with the provided peer data, room, and remote status. * * @param {PeerData} _peerData - The peer data object containing information about the peer. * @param {Room} room - The room instance associated with the peer. */ constructor(_peerData, room) { super(); this._peerData = _peerData; this.room = room; /** * This method is for SDK internal usage and might get removed. * @deprecated * @param {OdinEvent<AudioActivityPayload>} event - The audio event containing the payload * with RMS power level information. */ this.rmsDBFSHandler = (event) => { this.dispatchEvent(new OdinEvent('AudioPowerLevel', event.payload)); this.onPowerLevel?.(event.payload); }; /** * This method is for SDK internal usage and might get removed. * * @deprecated * @param {OdinEvent<AudioActivityPayload>} event - The audio activity event containing relevant payload data. */ this.audioActivityHandler = (event) => { this.dispatchEvent(new OdinEvent('AudioActivity', event.payload)); this.onAudioActivity?.(event.payload); }; this.id = _peerData.id; this.userId = _peerData.user_id; } }