@4players/odin
Version:
A cross-platform SDK enabling developers to integrate real-time VoIP chat technology into their projects
44 lines (43 loc) • 1.72 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Peer = void 0;
const odin_event_target_1 = require("../../utils/odin-event-target");
/**
* Class describing a single peer inside an `OdinRoom`.
*/
class Peer extends odin_event_target_1.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 odin_event_target_1.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 odin_event_target_1.OdinEvent('AudioActivity', event.payload));
this.onAudioActivity?.(event.payload);
};
this.id = _peerData.id;
this.userId = _peerData.user_id;
}
}
exports.Peer = Peer;