UNPKG

@observertc/samples-encoder

Version:

ObserveRTC Library for Encoding Samples

80 lines (79 loc) 4.38 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.IceTransportEncoder = void 0; const utils_1 = require("./utils"); const utils_2 = require("./utils"); const OutputSamples_1 = require("./OutputSamples"); class IceTransportEncoder { constructor(attachmentsEncoder) { this._visited = false; this._timestampEncoder = new utils_2.NumberToNumberEncoder(); this._packetsSentEncoder = new utils_2.NumberToNumberEncoder(); this._packetsReceivedEncoder = new utils_2.NumberToNumberEncoder(); this._bytesSentEncoder = new utils_1.NumberToBigIntEncoder(); this._bytesReceivedEncoder = new utils_1.NumberToBigIntEncoder(); this._iceRoleEncoder = new utils_2.StringToStringEncoder(); this._iceLocalUsernameFragmentEncoder = new utils_2.StringToStringEncoder(); this._dtlsStateEncoder = new utils_2.StringToStringEncoder(); this._iceStateEncoder = new utils_2.StringToStringEncoder(); this._selectedCandidatePairIdEncoder = new utils_2.StringToStringEncoder(); this._localCertificateIdEncoder = new utils_2.StringToStringEncoder(); this._remoteCertificateIdEncoder = new utils_2.StringToStringEncoder(); this._tlsVersionEncoder = new utils_2.StringToStringEncoder(); this._dtlsCipherEncoder = new utils_2.StringToStringEncoder(); this._dtlsRoleEncoder = new utils_2.StringToStringEncoder(); this._srtpCipherEncoder = new utils_2.StringToStringEncoder(); this._selectedCandidatePairChangesEncoder = new utils_2.NumberToNumberEncoder(); this._attachmentsEncoder = attachmentsEncoder; } get visited() { const result = this._visited; this._visited = false; return result; } reset() { this._timestampEncoder.reset(); this._packetsSentEncoder.reset(); this._packetsReceivedEncoder.reset(); this._bytesSentEncoder.reset(); this._bytesReceivedEncoder.reset(); this._iceRoleEncoder.reset(); this._iceLocalUsernameFragmentEncoder.reset(); this._dtlsStateEncoder.reset(); this._iceStateEncoder.reset(); this._selectedCandidatePairIdEncoder.reset(); this._localCertificateIdEncoder.reset(); this._remoteCertificateIdEncoder.reset(); this._tlsVersionEncoder.reset(); this._dtlsCipherEncoder.reset(); this._dtlsRoleEncoder.reset(); this._srtpCipherEncoder.reset(); this._selectedCandidatePairChangesEncoder.reset(); this._attachmentsEncoder.reset(); } encode(sample) { this._visited = true; return new OutputSamples_1.ClientSample_PeerConnectionSample_IceTransportStats({ timestamp: this._timestampEncoder.encode(sample.timestamp), id: sample.id, packetsSent: this._packetsSentEncoder.encode(sample.packetsSent), packetsReceived: this._packetsReceivedEncoder.encode(sample.packetsReceived), bytesSent: this._bytesSentEncoder.encode(sample.bytesSent), bytesReceived: this._bytesReceivedEncoder.encode(sample.bytesReceived), iceRole: this._iceRoleEncoder.encode(sample.iceRole), iceLocalUsernameFragment: this._iceLocalUsernameFragmentEncoder.encode(sample.iceLocalUsernameFragment), dtlsState: this._dtlsStateEncoder.encode(sample.dtlsState), iceState: this._iceStateEncoder.encode(sample.iceState), selectedCandidatePairId: this._selectedCandidatePairIdEncoder.encode(sample.selectedCandidatePairId), localCertificateId: this._localCertificateIdEncoder.encode(sample.localCertificateId), remoteCertificateId: this._remoteCertificateIdEncoder.encode(sample.remoteCertificateId), tlsVersion: this._tlsVersionEncoder.encode(sample.tlsVersion), dtlsCipher: this._dtlsCipherEncoder.encode(sample.dtlsCipher), dtlsRole: this._dtlsRoleEncoder.encode(sample.dtlsRole), srtpCipher: this._srtpCipherEncoder.encode(sample.srtpCipher), selectedCandidatePairChanges: this._selectedCandidatePairChangesEncoder.encode(sample.selectedCandidatePairChanges), attachments: this._attachmentsEncoder.encode(sample.attachments), }); } } exports.IceTransportEncoder = IceTransportEncoder;