@100mslive/react-native-hms 0.9.2 → 0.9.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/android/.gradle/6.9/fileHashes/fileHashes.bin +0 -0
  2. package/android/.gradle/6.9/fileHashes/fileHashes.lock +0 -0
  3. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  4. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  5. package/android/.gradle/checksums/checksums.lock +0 -0
  6. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  7. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  8. package/android/src/main/java/com/reactnativehmssdk/HmsDecoder.kt +12 -0
  9. package/android/src/main/java/com/reactnativehmssdk/HmsHelper.kt +96 -0
  10. package/android/src/main/java/com/reactnativehmssdk/HmsSDK.kt +2 -72
  11. package/android/src/main/java/com/reactnativehmssdk/HmsView.kt +2 -26
  12. package/android/src/main/java/com/reactnativehmssdk/HmssdkViewManager.kt +0 -2
  13. package/ios/HmsDecoder.swift +12 -2
  14. package/ios/HmsSDK.swift +9 -4
  15. package/lib/commonjs/classes/HMSConfig.js +3 -0
  16. package/lib/commonjs/classes/HMSConfig.js.map +1 -1
  17. package/lib/commonjs/classes/HMSEncoder.js +16 -1
  18. package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
  19. package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
  20. package/lib/commonjs/classes/HMSNetworkQuality.js +20 -0
  21. package/lib/commonjs/classes/HMSNetworkQuality.js.map +1 -0
  22. package/lib/commonjs/classes/HMSPeer.js +3 -0
  23. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  24. package/lib/commonjs/classes/HMSPeerUpdate.js +1 -0
  25. package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
  26. package/lib/commonjs/classes/HMSRemotePeer.js.map +1 -1
  27. package/lib/commonjs/index.js +14 -0
  28. package/lib/commonjs/index.js.map +1 -1
  29. package/lib/module/classes/HMSConfig.js +3 -0
  30. package/lib/module/classes/HMSConfig.js.map +1 -1
  31. package/lib/module/classes/HMSEncoder.js +15 -1
  32. package/lib/module/classes/HMSEncoder.js.map +1 -1
  33. package/lib/module/classes/HMSLocalPeer.js.map +1 -1
  34. package/lib/module/classes/HMSNetworkQuality.js +11 -0
  35. package/lib/module/classes/HMSNetworkQuality.js.map +1 -0
  36. package/lib/module/classes/HMSPeer.js +3 -0
  37. package/lib/module/classes/HMSPeer.js.map +1 -1
  38. package/lib/module/classes/HMSPeerUpdate.js +1 -0
  39. package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
  40. package/lib/module/classes/HMSRemotePeer.js.map +1 -1
  41. package/lib/module/index.js +1 -0
  42. package/lib/module/index.js.map +1 -1
  43. package/lib/typescript/classes/HMSConfig.d.ts +2 -0
  44. package/lib/typescript/classes/HMSEncoder.d.ts +2 -0
  45. package/lib/typescript/classes/HMSLocalPeer.d.ts +2 -0
  46. package/lib/typescript/classes/HMSNetworkQuality.d.ts +6 -0
  47. package/lib/typescript/classes/HMSPeer.d.ts +3 -0
  48. package/lib/typescript/classes/HMSPeerUpdate.d.ts +2 -1
  49. package/lib/typescript/classes/HMSRemotePeer.d.ts +2 -0
  50. package/lib/typescript/index.d.ts +1 -0
  51. package/package.json +1 -1
  52. package/react-native-hms.podspec +1 -1
  53. package/src/classes/HMSConfig.ts +3 -0
  54. package/src/classes/HMSEncoder.ts +15 -1
  55. package/src/classes/HMSLocalPeer.ts +2 -0
  56. package/src/classes/HMSNetworkQuality.ts +7 -0
  57. package/src/classes/HMSPeer.ts +4 -2
  58. package/src/classes/HMSPeerUpdate.ts +1 -0
  59. package/src/classes/HMSRemotePeer.ts +2 -0
  60. package/src/index.ts +1 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["HMSLocalPeer.ts"],"names":["HMSPeer","HMSLocalAudioTrack","HMSLocalVideoTrack","HMSLocalPeer","constructor","params","localAudio","localVideo","isLocal","localAudioTrackData","localVideoTrackData"],"mappings":";;AACA,SAASA,OAAT,QAAwB,WAAxB;AAKA,SAASC,kBAAT,QAAmC,sBAAnC;AACA,SAASC,kBAAT,QAAmC,sBAAnC;AAIA,OAAO,MAAMC,YAAN,SAA2BH,OAA3B,CAAmC;AAWxCI,EAAAA,WAAW,CAACC,MAAD,EA6BR;AACD,UAAMA,MAAN;;AADC;;AAAA;;AAAA,6CApCe,MAAM;AACtB,aAAO,KAAKC,UAAZ;AACD,KAkCE;;AAAA,6CAjCe,MAAM;AACtB,aAAO,KAAKC,UAAZ;AACD,KA+BE;;AAED,SAAKC,OAAL,GAAe,IAAf;;AACA,QAAIH,MAAM,CAACI,mBAAX,EAAgC;AAC9B,WAAKH,UAAL,GAAkB,IAAIL,kBAAJ,CAAuBI,MAAM,CAACI,mBAA9B,CAAlB;AACD;;AACD,QAAIJ,MAAM,CAACK,mBAAX,EAAgC;AAC9B,WAAKH,UAAL,GAAkB,IAAIL,kBAAJ,CAAuBG,MAAM,CAACK,mBAA9B,CAAlB;AACD;AACF;;AAjDuC","sourcesContent":["import type { HMSAudioTrack } from './HMSAudioTrack';\nimport { HMSPeer } from './HMSPeer';\nimport type { HMSTrack } from './HMSTrack';\nimport type { HMSVideoTrack } from './HMSVideoTrack';\nimport type { HMSVideoTrackSettings } from './HMSVideoTrackSettings';\nimport type { HMSAudioTrackSettings } from './HMSAudioTrackSettings';\nimport { HMSLocalAudioTrack } from './HMSLocalAudioTrack';\nimport { HMSLocalVideoTrack } from './HMSLocalVideoTrack';\nimport type { HMSRole } from './HMSRole';\nimport type { HMSTrackType } from './HMSTrackType';\n\nexport class HMSLocalPeer extends HMSPeer {\n private localAudio?: HMSLocalAudioTrack;\n private localVideo?: HMSLocalVideoTrack;\n\n localAudioTrack = () => {\n return this.localAudio;\n };\n localVideoTrack = () => {\n return this.localVideo;\n };\n\n constructor(params: {\n peerID: string;\n name: string;\n isLocal?: boolean;\n customerUserID?: string;\n customerDescription?: string;\n metadata?: string;\n audioTrack?: HMSAudioTrack;\n videoTrack?: HMSVideoTrack;\n role?: HMSRole;\n auxiliaryTracks?: HMSTrack[];\n localAudioTrackData?: {\n id: string;\n trackId: string;\n source?: number | string;\n trackDescription?: string;\n isMute?: boolean;\n settings?: HMSAudioTrackSettings;\n type: HMSTrackType;\n };\n localVideoTrackData?: {\n id: string;\n trackId: string;\n source?: number | string;\n trackDescription?: string;\n isMute?: boolean;\n settings?: HMSVideoTrackSettings;\n type: HMSTrackType;\n };\n }) {\n super(params);\n this.isLocal = true;\n if (params.localAudioTrackData) {\n this.localAudio = new HMSLocalAudioTrack(params.localAudioTrackData);\n }\n if (params.localVideoTrackData) {\n this.localVideo = new HMSLocalVideoTrack(params.localVideoTrackData);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["HMSLocalPeer.ts"],"names":["HMSPeer","HMSLocalAudioTrack","HMSLocalVideoTrack","HMSLocalPeer","constructor","params","localAudio","localVideo","isLocal","localAudioTrackData","localVideoTrackData"],"mappings":";;AACA,SAASA,OAAT,QAAwB,WAAxB;AAKA,SAASC,kBAAT,QAAmC,sBAAnC;AACA,SAASC,kBAAT,QAAmC,sBAAnC;AAKA,OAAO,MAAMC,YAAN,SAA2BH,OAA3B,CAAmC;AAWxCI,EAAAA,WAAW,CAACC,MAAD,EA8BR;AACD,UAAMA,MAAN;;AADC;;AAAA;;AAAA,6CArCe,MAAM;AACtB,aAAO,KAAKC,UAAZ;AACD,KAmCE;;AAAA,6CAlCe,MAAM;AACtB,aAAO,KAAKC,UAAZ;AACD,KAgCE;;AAED,SAAKC,OAAL,GAAe,IAAf;;AACA,QAAIH,MAAM,CAACI,mBAAX,EAAgC;AAC9B,WAAKH,UAAL,GAAkB,IAAIL,kBAAJ,CAAuBI,MAAM,CAACI,mBAA9B,CAAlB;AACD;;AACD,QAAIJ,MAAM,CAACK,mBAAX,EAAgC;AAC9B,WAAKH,UAAL,GAAkB,IAAIL,kBAAJ,CAAuBG,MAAM,CAACK,mBAA9B,CAAlB;AACD;AACF;;AAlDuC","sourcesContent":["import type { HMSAudioTrack } from './HMSAudioTrack';\nimport { HMSPeer } from './HMSPeer';\nimport type { HMSTrack } from './HMSTrack';\nimport type { HMSVideoTrack } from './HMSVideoTrack';\nimport type { HMSVideoTrackSettings } from './HMSVideoTrackSettings';\nimport type { HMSAudioTrackSettings } from './HMSAudioTrackSettings';\nimport { HMSLocalAudioTrack } from './HMSLocalAudioTrack';\nimport { HMSLocalVideoTrack } from './HMSLocalVideoTrack';\nimport type { HMSRole } from './HMSRole';\nimport type { HMSTrackType } from './HMSTrackType';\nimport type { HMSNetworkQuality } from './HMSNetworkQuality';\n\nexport class HMSLocalPeer extends HMSPeer {\n private localAudio?: HMSLocalAudioTrack;\n private localVideo?: HMSLocalVideoTrack;\n\n localAudioTrack = () => {\n return this.localAudio;\n };\n localVideoTrack = () => {\n return this.localVideo;\n };\n\n constructor(params: {\n peerID: string;\n name: string;\n isLocal?: boolean;\n customerUserID?: string;\n customerDescription?: string;\n metadata?: string;\n audioTrack?: HMSAudioTrack;\n videoTrack?: HMSVideoTrack;\n networkQuality?: HMSNetworkQuality;\n role?: HMSRole;\n auxiliaryTracks?: HMSTrack[];\n localAudioTrackData?: {\n id: string;\n trackId: string;\n source?: number | string;\n trackDescription?: string;\n isMute?: boolean;\n settings?: HMSAudioTrackSettings;\n type: HMSTrackType;\n };\n localVideoTrackData?: {\n id: string;\n trackId: string;\n source?: number | string;\n trackDescription?: string;\n isMute?: boolean;\n settings?: HMSVideoTrackSettings;\n type: HMSTrackType;\n };\n }) {\n super(params);\n this.isLocal = true;\n if (params.localAudioTrackData) {\n this.localAudio = new HMSLocalAudioTrack(params.localAudioTrackData);\n }\n if (params.localVideoTrackData) {\n this.localVideo = new HMSLocalVideoTrack(params.localVideoTrackData);\n }\n }\n}\n"]}
@@ -0,0 +1,11 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
3
+ export class HMSNetworkQuality {
4
+ constructor(params) {
5
+ _defineProperty(this, "downlinkQuality", void 0);
6
+
7
+ this.downlinkQuality = params.downlinkQuality;
8
+ }
9
+
10
+ }
11
+ //# sourceMappingURL=HMSNetworkQuality.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["HMSNetworkQuality.ts"],"names":["HMSNetworkQuality","constructor","params","downlinkQuality"],"mappings":";;AAAA,OAAO,MAAMA,iBAAN,CAAwB;AAG7BC,EAAAA,WAAW,CAACC,MAAD,EAAsC;AAAA;;AAC/C,SAAKC,eAAL,GAAuBD,MAAM,CAACC,eAA9B;AACD;;AAL4B","sourcesContent":["export class HMSNetworkQuality {\n downlinkQuality: number;\n\n constructor(params: { downlinkQuality: number }) {\n this.downlinkQuality = params.downlinkQuality;\n }\n}\n"]}
@@ -16,6 +16,8 @@ export class HMSPeer {
16
16
 
17
17
  _defineProperty(this, "role", void 0);
18
18
 
19
+ _defineProperty(this, "networkQuality", void 0);
20
+
19
21
  _defineProperty(this, "audioTrack", void 0);
20
22
 
21
23
  _defineProperty(this, "videoTrack", void 0);
@@ -31,6 +33,7 @@ export class HMSPeer {
31
33
  this.videoTrack = params.videoTrack;
32
34
  this.auxiliaryTracks = params.auxiliaryTracks;
33
35
  this.role = params.role;
36
+ this.networkQuality = params.networkQuality;
34
37
  this.metadata = params.metadata;
35
38
  }
36
39
 
@@ -1 +1 @@
1
- {"version":3,"sources":["HMSPeer.ts"],"names":["HMSPeer","constructor","params","peerID","name","isLocal","customerUserID","customerDescription","audioTrack","videoTrack","auxiliaryTracks","role","metadata"],"mappings":";;AAKA,OAAO,MAAMA,OAAN,CAAc;AAcnBC,EAAAA,WAAW,CAACC,MAAD,EAWR;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AACD,SAAKC,MAAL,GAAcD,MAAM,CAACC,MAArB;AACA,SAAKC,IAAL,GAAYF,MAAM,CAACE,IAAnB;AACA,SAAKC,OAAL,GAAeH,MAAM,CAACG,OAAtB;AACA,SAAKC,cAAL,GAAsBJ,MAAM,CAACI,cAA7B;AACA,SAAKC,mBAAL,GAA2BL,MAAM,CAACK,mBAAlC;AACA,SAAKC,UAAL,GAAkBN,MAAM,CAACM,UAAzB;AACA,SAAKC,UAAL,GAAkBP,MAAM,CAACO,UAAzB;AACA,SAAKC,eAAL,GAAuBR,MAAM,CAACQ,eAA9B;AACA,SAAKC,IAAL,GAAYT,MAAM,CAACS,IAAnB;AACA,SAAKC,QAAL,GAAgBV,MAAM,CAACU,QAAvB;AACD;;AApCkB","sourcesContent":["import type { HMSAudioTrack } from './HMSAudioTrack';\nimport type { HMSRole } from './HMSRole';\nimport type { HMSTrack } from './HMSTrack';\nimport type { HMSVideoTrack } from './HMSVideoTrack';\n\nexport class HMSPeer {\n peerID: string;\n name: string;\n isLocal?: boolean;\n customerUserID?: string;\n customerDescription?: string;\n metadata?: string;\n role?: HMSRole;\n\n audioTrack?: HMSAudioTrack;\n videoTrack?: HMSVideoTrack;\n\n auxiliaryTracks?: HMSTrack[];\n\n constructor(params: {\n peerID: string;\n name: string;\n isLocal?: boolean;\n customerUserID?: string;\n customerDescription?: string;\n metadata?: string;\n role?: HMSRole;\n audioTrack?: HMSAudioTrack;\n videoTrack?: HMSVideoTrack;\n auxiliaryTracks?: HMSTrack[];\n }) {\n this.peerID = params.peerID;\n this.name = params.name;\n this.isLocal = params.isLocal;\n this.customerUserID = params.customerUserID;\n this.customerDescription = params.customerDescription;\n this.audioTrack = params.audioTrack;\n this.videoTrack = params.videoTrack;\n this.auxiliaryTracks = params.auxiliaryTracks;\n this.role = params.role;\n this.metadata = params.metadata;\n }\n}\n"]}
1
+ {"version":3,"sources":["HMSPeer.ts"],"names":["HMSPeer","constructor","params","peerID","name","isLocal","customerUserID","customerDescription","audioTrack","videoTrack","auxiliaryTracks","role","networkQuality","metadata"],"mappings":";;AAMA,OAAO,MAAMA,OAAN,CAAc;AAanBC,EAAAA,WAAW,CAACC,MAAD,EAYR;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AAAA;;AACD,SAAKC,MAAL,GAAcD,MAAM,CAACC,MAArB;AACA,SAAKC,IAAL,GAAYF,MAAM,CAACE,IAAnB;AACA,SAAKC,OAAL,GAAeH,MAAM,CAACG,OAAtB;AACA,SAAKC,cAAL,GAAsBJ,MAAM,CAACI,cAA7B;AACA,SAAKC,mBAAL,GAA2BL,MAAM,CAACK,mBAAlC;AACA,SAAKC,UAAL,GAAkBN,MAAM,CAACM,UAAzB;AACA,SAAKC,UAAL,GAAkBP,MAAM,CAACO,UAAzB;AACA,SAAKC,eAAL,GAAuBR,MAAM,CAACQ,eAA9B;AACA,SAAKC,IAAL,GAAYT,MAAM,CAACS,IAAnB;AACA,SAAKC,cAAL,GAAsBV,MAAM,CAACU,cAA7B;AACA,SAAKC,QAAL,GAAgBX,MAAM,CAACW,QAAvB;AACD;;AArCkB","sourcesContent":["import type { HMSAudioTrack } from './HMSAudioTrack';\nimport type { HMSNetworkQuality } from './HMSNetworkQuality';\nimport type { HMSRole } from './HMSRole';\nimport type { HMSTrack } from './HMSTrack';\nimport type { HMSVideoTrack } from './HMSVideoTrack';\n\nexport class HMSPeer {\n peerID: string;\n name: string;\n isLocal?: boolean;\n customerUserID?: string;\n customerDescription?: string;\n metadata?: string;\n role?: HMSRole;\n networkQuality?: HMSNetworkQuality;\n audioTrack?: HMSAudioTrack;\n videoTrack?: HMSVideoTrack;\n auxiliaryTracks?: HMSTrack[];\n\n constructor(params: {\n peerID: string;\n name: string;\n isLocal?: boolean;\n customerUserID?: string;\n customerDescription?: string;\n metadata?: string;\n role?: HMSRole;\n networkQuality?: HMSNetworkQuality;\n audioTrack?: HMSAudioTrack;\n videoTrack?: HMSVideoTrack;\n auxiliaryTracks?: HMSTrack[];\n }) {\n this.peerID = params.peerID;\n this.name = params.name;\n this.isLocal = params.isLocal;\n this.customerUserID = params.customerUserID;\n this.customerDescription = params.customerDescription;\n this.audioTrack = params.audioTrack;\n this.videoTrack = params.videoTrack;\n this.auxiliaryTracks = params.auxiliaryTracks;\n this.role = params.role;\n this.networkQuality = params.networkQuality;\n this.metadata = params.metadata;\n }\n}\n"]}
@@ -6,5 +6,6 @@ export let HMSPeerUpdate;
6
6
  HMSPeerUpdate["METADATA_CHANGED"] = "METADATA_CHANGED";
7
7
  HMSPeerUpdate["ROLE_CHANGED"] = "ROLE_CHANGED";
8
8
  HMSPeerUpdate["NAME_CHANGED"] = "NAME_CHANGED";
9
+ HMSPeerUpdate["NETWORK_QUALITY_UPDATED"] = "NETWORK_QUALITY_UPDATED";
9
10
  })(HMSPeerUpdate || (HMSPeerUpdate = {}));
10
11
  //# sourceMappingURL=HMSPeerUpdate.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["HMSPeerUpdate.ts"],"names":["HMSPeerUpdate"],"mappings":"AAAA,WAAYA,aAAZ;;WAAYA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;GAAAA,a,KAAAA,a","sourcesContent":["export enum HMSPeerUpdate {\n PEER_JOINED = 'PEER_JOINED',\n PEER_LEFT = 'PEER_LEFT',\n METADATA_CHANGED = 'METADATA_CHANGED',\n ROLE_CHANGED = 'ROLE_CHANGED',\n NAME_CHANGED = 'NAME_CHANGED',\n}\n"]}
1
+ {"version":3,"sources":["HMSPeerUpdate.ts"],"names":["HMSPeerUpdate"],"mappings":"AAAA,WAAYA,aAAZ;;WAAYA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;AAAAA,EAAAA,a;GAAAA,a,KAAAA,a","sourcesContent":["export enum HMSPeerUpdate {\n PEER_JOINED = 'PEER_JOINED',\n PEER_LEFT = 'PEER_LEFT',\n METADATA_CHANGED = 'METADATA_CHANGED',\n ROLE_CHANGED = 'ROLE_CHANGED',\n NAME_CHANGED = 'NAME_CHANGED',\n NETWORK_QUALITY_UPDATED = 'NETWORK_QUALITY_UPDATED',\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["HMSRemotePeer.ts"],"names":["HMSPeer","HMSRemoteAudioTrack","HMSRemoteVideoTrack","HMSRemotePeer","constructor","params","remoteAudio","remoteVideo","isLocal","remoteAudioTrackData","remoteVideoTrackData"],"mappings":";;AACA,SAASA,OAAT,QAAwB,WAAxB;AACA,SAASC,mBAAT,QAAoC,uBAApC;AACA,SAASC,mBAAT,QAAoC,uBAApC;AAKA,OAAO,MAAMC,aAAN,SAA4BH,OAA5B,CAAoC;AAYzCI,EAAAA,WAAW,CAACC,MAAD,EA4BR;AACD,UAAMA,MAAN;;AADC;;AAAA;;AAAA,8CApCgB,MAAM;AACvB,aAAO,KAAKC,WAAZ;AACD,KAkCE;;AAAA,8CAhCgB,MAAM;AACvB,aAAO,KAAKC,WAAZ;AACD,KA8BE;;AAED,SAAKC,OAAL,GAAe,KAAf;;AAEA,QAAIH,MAAM,CAACI,oBAAX,EAAiC;AAC/B,WAAKH,WAAL,GAAmB,IAAIL,mBAAJ,CAAwBI,MAAM,CAACI,oBAA/B,CAAnB;AACD;;AAED,QAAIJ,MAAM,CAACK,oBAAX,EAAiC;AAC/B,WAAKH,WAAL,GAAmB,IAAIL,mBAAJ,CAAwBG,MAAM,CAACK,oBAA/B,CAAnB;AACD;AACF;;AAnDwC","sourcesContent":["import type { HMSAudioTrack } from './HMSAudioTrack';\nimport { HMSPeer } from './HMSPeer';\nimport { HMSRemoteAudioTrack } from './HMSRemoteAudioTrack';\nimport { HMSRemoteVideoTrack } from './HMSRemoteVideoTrack';\nimport type { HMSRole } from './HMSRole';\nimport type { HMSTrack } from './HMSTrack';\nimport type { HMSVideoTrack } from './HMSVideoTrack';\n\nexport class HMSRemotePeer extends HMSPeer {\n private remoteAudio?: HMSRemoteAudioTrack;\n private remoteVideo?: HMSRemoteVideoTrack;\n\n remoteAudioTrack = () => {\n return this.remoteAudio;\n };\n\n remoteVideoTrack = () => {\n return this.remoteVideo;\n };\n\n constructor(params: {\n peerID: string;\n name: string;\n isLocal?: boolean;\n customerUserID?: string;\n customerDescription?: string;\n metadata?: string;\n audioTrack?: HMSAudioTrack;\n videoTrack?: HMSVideoTrack;\n role?: HMSRole;\n auxiliaryTracks?: HMSTrack[];\n remoteAudioTrackData?: {\n trackId: string;\n source?: number | string;\n isMute?: boolean;\n trackDescription?: string;\n playbackAllowed?: boolean;\n id: string;\n };\n remoteVideoTrackData?: {\n trackId: string;\n source?: number | string;\n trackDescription?: string;\n isMute?: boolean;\n layer?: any;\n playbackAllowed?: boolean;\n id: string;\n };\n }) {\n super(params);\n this.isLocal = false;\n\n if (params.remoteAudioTrackData) {\n this.remoteAudio = new HMSRemoteAudioTrack(params.remoteAudioTrackData);\n }\n\n if (params.remoteVideoTrackData) {\n this.remoteVideo = new HMSRemoteVideoTrack(params.remoteVideoTrackData);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["HMSRemotePeer.ts"],"names":["HMSPeer","HMSRemoteAudioTrack","HMSRemoteVideoTrack","HMSRemotePeer","constructor","params","remoteAudio","remoteVideo","isLocal","remoteAudioTrackData","remoteVideoTrackData"],"mappings":";;AAEA,SAASA,OAAT,QAAwB,WAAxB;AACA,SAASC,mBAAT,QAAoC,uBAApC;AACA,SAASC,mBAAT,QAAoC,uBAApC;AAKA,OAAO,MAAMC,aAAN,SAA4BH,OAA5B,CAAoC;AAYzCI,EAAAA,WAAW,CAACC,MAAD,EA6BR;AACD,UAAMA,MAAN;;AADC;;AAAA;;AAAA,8CArCgB,MAAM;AACvB,aAAO,KAAKC,WAAZ;AACD,KAmCE;;AAAA,8CAjCgB,MAAM;AACvB,aAAO,KAAKC,WAAZ;AACD,KA+BE;;AAED,SAAKC,OAAL,GAAe,KAAf;;AAEA,QAAIH,MAAM,CAACI,oBAAX,EAAiC;AAC/B,WAAKH,WAAL,GAAmB,IAAIL,mBAAJ,CAAwBI,MAAM,CAACI,oBAA/B,CAAnB;AACD;;AAED,QAAIJ,MAAM,CAACK,oBAAX,EAAiC;AAC/B,WAAKH,WAAL,GAAmB,IAAIL,mBAAJ,CAAwBG,MAAM,CAACK,oBAA/B,CAAnB;AACD;AACF;;AApDwC","sourcesContent":["import type { HMSAudioTrack } from './HMSAudioTrack';\nimport type { HMSNetworkQuality } from './HMSNetworkQuality';\nimport { HMSPeer } from './HMSPeer';\nimport { HMSRemoteAudioTrack } from './HMSRemoteAudioTrack';\nimport { HMSRemoteVideoTrack } from './HMSRemoteVideoTrack';\nimport type { HMSRole } from './HMSRole';\nimport type { HMSTrack } from './HMSTrack';\nimport type { HMSVideoTrack } from './HMSVideoTrack';\n\nexport class HMSRemotePeer extends HMSPeer {\n private remoteAudio?: HMSRemoteAudioTrack;\n private remoteVideo?: HMSRemoteVideoTrack;\n\n remoteAudioTrack = () => {\n return this.remoteAudio;\n };\n\n remoteVideoTrack = () => {\n return this.remoteVideo;\n };\n\n constructor(params: {\n peerID: string;\n name: string;\n isLocal?: boolean;\n customerUserID?: string;\n customerDescription?: string;\n metadata?: string;\n audioTrack?: HMSAudioTrack;\n videoTrack?: HMSVideoTrack;\n role?: HMSRole;\n networkQuality?: HMSNetworkQuality;\n auxiliaryTracks?: HMSTrack[];\n remoteAudioTrackData?: {\n trackId: string;\n source?: number | string;\n isMute?: boolean;\n trackDescription?: string;\n playbackAllowed?: boolean;\n id: string;\n };\n remoteVideoTrackData?: {\n trackId: string;\n source?: number | string;\n trackDescription?: string;\n isMute?: boolean;\n layer?: any;\n playbackAllowed?: boolean;\n id: string;\n };\n }) {\n super(params);\n this.isLocal = false;\n\n if (params.remoteAudioTrackData) {\n this.remoteAudio = new HMSRemoteAudioTrack(params.remoteAudioTrackData);\n }\n\n if (params.remoteVideoTrackData) {\n this.remoteVideo = new HMSRemoteVideoTrack(params.remoteVideoTrackData);\n }\n }\n}\n"]}
@@ -61,6 +61,7 @@ export * from './classes/HMSHLSRecordingConfig';
61
61
  export * from './classes/HMSHLSRecordingState';
62
62
  export * from './classes/HMSMessageRecipient';
63
63
  export * from './classes/HMSMessageRecipientType';
64
+ export * from './classes/HMSNetworkQuality';
64
65
  import { HMSSDK as HmsManager } from './classes/HMSSDK';
65
66
  export default HmsManager;
66
67
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":["HMSSDK","HmsManager"],"mappings":"AAAA,cAAc,qBAAd;AACA,cAAc,oCAAd;AACA,cAAc,sBAAd;AACA,cAAc,mBAAd;AACA,cAAc,iCAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,oBAAd;AACA,cAAc,wBAAd;AACA,cAAc,gCAAd;AACA,cAAc,gCAAd;AACA,cAAc,qCAAd;AACA,cAAc,kBAAd;AACA,cAAc,mBAAd;AACA,cAAc,gCAAd;AACA,cAAc,mBAAd;AACA,cAAc,+BAAd;AACA,cAAc,yBAAd;AACA,cAAc,+BAAd;AACA,cAAc,8BAAd;AACA,cAAc,0BAAd;AACA,cAAc,mBAAd;AACA,cAAc,8BAAd;AACA,cAAc,wBAAd;AACA,cAAc,8BAAd;AACA,cAAc,qBAAd;AACA,cAAc,sBAAd;AACA,cAAc,iCAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,0BAAd;AACA,cAAc,qBAAd;AACA,cAAc,uBAAd;AACA,cAAc,4BAAd;AACA,cAAc,sCAAd;AACA,cAAc,sBAAd;AACA,cAAc,4BAAd;AACA,cAAc,2BAAd;AACA,cAAc,wBAAd;AACA,cAAc,iCAAd;AACA,cAAc,mCAAd;AACA,cAAc,oCAAd;AACA,cAAc,yBAAd;AACA,cAAc,wBAAd;AACA,cAAc,mCAAd;AACA,cAAc,yBAAd;AACA,cAAc,gCAAd;AACA,cAAc,8BAAd;AACA,cAAc,8BAAd;AACA,cAAc,8BAAd;AACA,cAAc,uBAAd;AACA,cAAc,6BAAd;AACA,cAAc,+BAAd;AACA,cAAc,+BAAd;AACA,cAAc,iCAAd;AACA,cAAc,gCAAd;AACA,cAAc,+BAAd;AACA,cAAc,mCAAd;AAEA,SAASA,MAAM,IAAIC,UAAnB,QAAqC,kBAArC;AACA,eAAeA,UAAf","sourcesContent":["export * from './classes/HMSConfig';\nexport * from './classes/HMSUpdateListenerActions';\nexport * from './classes/HMSMessage';\nexport * from './classes/HmsView';\nexport * from './classes/HMSVideoTrackSettings';\nexport * from './classes/HMSVideoTrack';\nexport * from './classes/HMSVideoSettings';\nexport * from './classes/HMSVideoCodec';\nexport * from './classes/HMSTrackSettings';\nexport * from './classes/HMSTrack';\nexport * from './classes/HMSTrackType';\nexport * from './classes/HMSSubscribeSettings';\nexport * from './classes/HMSSimulcastSettings';\nexport * from './classes/HMSSimulcastLayerSettings';\nexport * from './classes/HMSSDK';\nexport * from './classes/HMSRoom';\nexport * from './classes/HMSRoleChangeRequest';\nexport * from './classes/HMSRole';\nexport * from './classes/HMSRemoteVideoTrack';\nexport * from './classes/HMSRemotePeer';\nexport * from './classes/HMSRemoteAudioTrack';\nexport * from './classes/HMSPublishSettings';\nexport * from './classes/HMSPermissions';\nexport * from './classes/HMSPeer';\nexport * from './classes/HMSLocalVideoTrack';\nexport * from './classes/HMSLocalPeer';\nexport * from './classes/HMSLocalAudioTrack';\nexport * from './classes/HMSHelper';\nexport * from './classes/HMSEncoder';\nexport * from './classes/HMSAudioTrackSettings';\nexport * from './classes/HMSAudioTrack';\nexport * from './classes/HMSAudioSettings';\nexport * from './classes/HMSAudioCodec';\nexport * from './classes/HMSPeerUpdate';\nexport * from './classes/HMSRoomUpdate';\nexport * from './classes/HMSTrackUpdate';\nexport * from './classes/HMSLogger';\nexport * from './classes/HMSLogLevel';\nexport * from './classes/HMSVideoViewMode';\nexport * from './classes/HMSChangeTrackStateRequest';\nexport * from './classes/HMSSpeaker';\nexport * from './classes/HMSSpeakerUpdate';\nexport * from './classes/HMSCameraFacing';\nexport * from './classes/HMSException';\nexport * from './classes/HMSRtmpStreamingState';\nexport * from './classes/HMSServerRecordingState';\nexport * from './classes/HMSBrowserRecordingState';\nexport * from './classes/HMSRTMPConfig';\nexport * from './classes/HMSHLSConfig';\nexport * from './classes/HMSHLSMeetingURLVariant';\nexport * from './classes/HMSHLSVariant';\nexport * from './classes/HMSHLSStreamingState';\nexport * from './classes/HMSVideoResolution';\nexport * from './classes/HMSLocalAudioStats';\nexport * from './classes/HMSLocalVideoStats';\nexport * from './classes/HMSRTCStats';\nexport * from './classes/HMSRTCStatsReport';\nexport * from './classes/HMSRemoteAudioStats';\nexport * from './classes/HMSRemoteVideoStats';\nexport * from './classes/HMSHLSRecordingConfig';\nexport * from './classes/HMSHLSRecordingState';\nexport * from './classes/HMSMessageRecipient';\nexport * from './classes/HMSMessageRecipientType';\n\nimport { HMSSDK as HmsManager } from './classes/HMSSDK';\nexport default HmsManager;\n"]}
1
+ {"version":3,"sources":["index.ts"],"names":["HMSSDK","HmsManager"],"mappings":"AAAA,cAAc,qBAAd;AACA,cAAc,oCAAd;AACA,cAAc,sBAAd;AACA,cAAc,mBAAd;AACA,cAAc,iCAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,oBAAd;AACA,cAAc,wBAAd;AACA,cAAc,gCAAd;AACA,cAAc,gCAAd;AACA,cAAc,qCAAd;AACA,cAAc,kBAAd;AACA,cAAc,mBAAd;AACA,cAAc,gCAAd;AACA,cAAc,mBAAd;AACA,cAAc,+BAAd;AACA,cAAc,yBAAd;AACA,cAAc,+BAAd;AACA,cAAc,8BAAd;AACA,cAAc,0BAAd;AACA,cAAc,mBAAd;AACA,cAAc,8BAAd;AACA,cAAc,wBAAd;AACA,cAAc,8BAAd;AACA,cAAc,qBAAd;AACA,cAAc,sBAAd;AACA,cAAc,iCAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,0BAAd;AACA,cAAc,qBAAd;AACA,cAAc,uBAAd;AACA,cAAc,4BAAd;AACA,cAAc,sCAAd;AACA,cAAc,sBAAd;AACA,cAAc,4BAAd;AACA,cAAc,2BAAd;AACA,cAAc,wBAAd;AACA,cAAc,iCAAd;AACA,cAAc,mCAAd;AACA,cAAc,oCAAd;AACA,cAAc,yBAAd;AACA,cAAc,wBAAd;AACA,cAAc,mCAAd;AACA,cAAc,yBAAd;AACA,cAAc,gCAAd;AACA,cAAc,8BAAd;AACA,cAAc,8BAAd;AACA,cAAc,8BAAd;AACA,cAAc,uBAAd;AACA,cAAc,6BAAd;AACA,cAAc,+BAAd;AACA,cAAc,+BAAd;AACA,cAAc,iCAAd;AACA,cAAc,gCAAd;AACA,cAAc,+BAAd;AACA,cAAc,mCAAd;AACA,cAAc,6BAAd;AAEA,SAASA,MAAM,IAAIC,UAAnB,QAAqC,kBAArC;AACA,eAAeA,UAAf","sourcesContent":["export * from './classes/HMSConfig';\nexport * from './classes/HMSUpdateListenerActions';\nexport * from './classes/HMSMessage';\nexport * from './classes/HmsView';\nexport * from './classes/HMSVideoTrackSettings';\nexport * from './classes/HMSVideoTrack';\nexport * from './classes/HMSVideoSettings';\nexport * from './classes/HMSVideoCodec';\nexport * from './classes/HMSTrackSettings';\nexport * from './classes/HMSTrack';\nexport * from './classes/HMSTrackType';\nexport * from './classes/HMSSubscribeSettings';\nexport * from './classes/HMSSimulcastSettings';\nexport * from './classes/HMSSimulcastLayerSettings';\nexport * from './classes/HMSSDK';\nexport * from './classes/HMSRoom';\nexport * from './classes/HMSRoleChangeRequest';\nexport * from './classes/HMSRole';\nexport * from './classes/HMSRemoteVideoTrack';\nexport * from './classes/HMSRemotePeer';\nexport * from './classes/HMSRemoteAudioTrack';\nexport * from './classes/HMSPublishSettings';\nexport * from './classes/HMSPermissions';\nexport * from './classes/HMSPeer';\nexport * from './classes/HMSLocalVideoTrack';\nexport * from './classes/HMSLocalPeer';\nexport * from './classes/HMSLocalAudioTrack';\nexport * from './classes/HMSHelper';\nexport * from './classes/HMSEncoder';\nexport * from './classes/HMSAudioTrackSettings';\nexport * from './classes/HMSAudioTrack';\nexport * from './classes/HMSAudioSettings';\nexport * from './classes/HMSAudioCodec';\nexport * from './classes/HMSPeerUpdate';\nexport * from './classes/HMSRoomUpdate';\nexport * from './classes/HMSTrackUpdate';\nexport * from './classes/HMSLogger';\nexport * from './classes/HMSLogLevel';\nexport * from './classes/HMSVideoViewMode';\nexport * from './classes/HMSChangeTrackStateRequest';\nexport * from './classes/HMSSpeaker';\nexport * from './classes/HMSSpeakerUpdate';\nexport * from './classes/HMSCameraFacing';\nexport * from './classes/HMSException';\nexport * from './classes/HMSRtmpStreamingState';\nexport * from './classes/HMSServerRecordingState';\nexport * from './classes/HMSBrowserRecordingState';\nexport * from './classes/HMSRTMPConfig';\nexport * from './classes/HMSHLSConfig';\nexport * from './classes/HMSHLSMeetingURLVariant';\nexport * from './classes/HMSHLSVariant';\nexport * from './classes/HMSHLSStreamingState';\nexport * from './classes/HMSVideoResolution';\nexport * from './classes/HMSLocalAudioStats';\nexport * from './classes/HMSLocalVideoStats';\nexport * from './classes/HMSRTCStats';\nexport * from './classes/HMSRTCStatsReport';\nexport * from './classes/HMSRemoteAudioStats';\nexport * from './classes/HMSRemoteVideoStats';\nexport * from './classes/HMSHLSRecordingConfig';\nexport * from './classes/HMSHLSRecordingState';\nexport * from './classes/HMSMessageRecipient';\nexport * from './classes/HMSMessageRecipientType';\nexport * from './classes/HMSNetworkQuality';\n\nimport { HMSSDK as HmsManager } from './classes/HMSSDK';\nexport default HmsManager;\n"]}
@@ -3,10 +3,12 @@ export declare class HMSConfig {
3
3
  authToken: string;
4
4
  endpoint?: string;
5
5
  metadata?: string;
6
+ captureNetworkQualityInPreview?: boolean;
6
7
  constructor(params: {
7
8
  username: string;
8
9
  authToken: string;
9
10
  endpoint?: string;
10
11
  metadata?: string;
12
+ captureNetworkQualityInPreview?: boolean;
11
13
  });
12
14
  }
@@ -21,6 +21,7 @@ import { HMSSpeaker } from './HMSSpeaker';
21
21
  import { HMSSpeakerUpdate } from './HMSSpeakerUpdate';
22
22
  import { HMSBrowserRecordingState, HMSHLSStreamingState, HMSHLSVariant, HMSRtmpStreamingState, HMSServerRecordingState } from '..';
23
23
  import { HMSHLSRecordingState } from './HMSHLSRecordingState';
24
+ import { HMSNetworkQuality } from './HMSNetworkQuality';
24
25
  export declare class HMSEncoder {
25
26
  static encodeHmsRoom(room: HMSRoom, id: string): HMSRoom;
26
27
  static encodeHmsPeers(peers: any, id: string): HMSPeer[];
@@ -58,4 +59,5 @@ export declare class HMSEncoder {
58
59
  static encodeHLSStreamingState(data: any): HMSHLSStreamingState;
59
60
  static encodeHLSRecordingState(data: any): HMSHLSRecordingState | undefined;
60
61
  static encodeHLSVariants(data: any): HMSHLSVariant[];
62
+ static encodeHMSNetworkQuality(data: any): HMSNetworkQuality | undefined;
61
63
  }
@@ -8,6 +8,7 @@ import { HMSLocalAudioTrack } from './HMSLocalAudioTrack';
8
8
  import { HMSLocalVideoTrack } from './HMSLocalVideoTrack';
9
9
  import type { HMSRole } from './HMSRole';
10
10
  import type { HMSTrackType } from './HMSTrackType';
11
+ import type { HMSNetworkQuality } from './HMSNetworkQuality';
11
12
  export declare class HMSLocalPeer extends HMSPeer {
12
13
  private localAudio?;
13
14
  private localVideo?;
@@ -22,6 +23,7 @@ export declare class HMSLocalPeer extends HMSPeer {
22
23
  metadata?: string;
23
24
  audioTrack?: HMSAudioTrack;
24
25
  videoTrack?: HMSVideoTrack;
26
+ networkQuality?: HMSNetworkQuality;
25
27
  role?: HMSRole;
26
28
  auxiliaryTracks?: HMSTrack[];
27
29
  localAudioTrackData?: {
@@ -0,0 +1,6 @@
1
+ export declare class HMSNetworkQuality {
2
+ downlinkQuality: number;
3
+ constructor(params: {
4
+ downlinkQuality: number;
5
+ });
6
+ }
@@ -1,4 +1,5 @@
1
1
  import type { HMSAudioTrack } from './HMSAudioTrack';
2
+ import type { HMSNetworkQuality } from './HMSNetworkQuality';
2
3
  import type { HMSRole } from './HMSRole';
3
4
  import type { HMSTrack } from './HMSTrack';
4
5
  import type { HMSVideoTrack } from './HMSVideoTrack';
@@ -10,6 +11,7 @@ export declare class HMSPeer {
10
11
  customerDescription?: string;
11
12
  metadata?: string;
12
13
  role?: HMSRole;
14
+ networkQuality?: HMSNetworkQuality;
13
15
  audioTrack?: HMSAudioTrack;
14
16
  videoTrack?: HMSVideoTrack;
15
17
  auxiliaryTracks?: HMSTrack[];
@@ -21,6 +23,7 @@ export declare class HMSPeer {
21
23
  customerDescription?: string;
22
24
  metadata?: string;
23
25
  role?: HMSRole;
26
+ networkQuality?: HMSNetworkQuality;
24
27
  audioTrack?: HMSAudioTrack;
25
28
  videoTrack?: HMSVideoTrack;
26
29
  auxiliaryTracks?: HMSTrack[];
@@ -3,5 +3,6 @@ export declare enum HMSPeerUpdate {
3
3
  PEER_LEFT = "PEER_LEFT",
4
4
  METADATA_CHANGED = "METADATA_CHANGED",
5
5
  ROLE_CHANGED = "ROLE_CHANGED",
6
- NAME_CHANGED = "NAME_CHANGED"
6
+ NAME_CHANGED = "NAME_CHANGED",
7
+ NETWORK_QUALITY_UPDATED = "NETWORK_QUALITY_UPDATED"
7
8
  }
@@ -1,4 +1,5 @@
1
1
  import type { HMSAudioTrack } from './HMSAudioTrack';
2
+ import type { HMSNetworkQuality } from './HMSNetworkQuality';
2
3
  import { HMSPeer } from './HMSPeer';
3
4
  import { HMSRemoteAudioTrack } from './HMSRemoteAudioTrack';
4
5
  import { HMSRemoteVideoTrack } from './HMSRemoteVideoTrack';
@@ -20,6 +21,7 @@ export declare class HMSRemotePeer extends HMSPeer {
20
21
  audioTrack?: HMSAudioTrack;
21
22
  videoTrack?: HMSVideoTrack;
22
23
  role?: HMSRole;
24
+ networkQuality?: HMSNetworkQuality;
23
25
  auxiliaryTracks?: HMSTrack[];
24
26
  remoteAudioTrackData?: {
25
27
  trackId: string;
@@ -61,5 +61,6 @@ export * from './classes/HMSHLSRecordingConfig';
61
61
  export * from './classes/HMSHLSRecordingState';
62
62
  export * from './classes/HMSMessageRecipient';
63
63
  export * from './classes/HMSMessageRecipientType';
64
+ export * from './classes/HMSNetworkQuality';
64
65
  import { HMSSDK as HmsManager } from './classes/HMSSDK';
65
66
  export default HmsManager;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@100mslive/react-native-hms",
3
- "version": "0.9.2",
3
+ "version": "0.9.3",
4
4
  "description": "The React Native package for 100ms SDK",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -16,5 +16,5 @@ Pod::Spec.new do |s|
16
16
  s.source_files = "ios/**/*.{h,m,mm,swift}"
17
17
 
18
18
  s.dependency "React-Core"
19
- s.dependency "HMSSDK", "0.2.8"
19
+ s.dependency "HMSSDK", "0.2.9"
20
20
  end
@@ -3,16 +3,19 @@ export class HMSConfig {
3
3
  authToken: string;
4
4
  endpoint?: string;
5
5
  metadata?: string;
6
+ captureNetworkQualityInPreview?: boolean;
6
7
 
7
8
  constructor(params: {
8
9
  username: string;
9
10
  authToken: string;
10
11
  endpoint?: string;
11
12
  metadata?: string;
13
+ captureNetworkQualityInPreview?: boolean;
12
14
  }) {
13
15
  this.username = params.username;
14
16
  this.authToken = params.authToken;
15
17
  this.endpoint = params.endpoint;
16
18
  this.metadata = params.metadata;
19
+ this.captureNetworkQualityInPreview = params.captureNetworkQualityInPreview;
17
20
  }
18
21
  }
@@ -29,6 +29,7 @@ import {
29
29
  HMSServerRecordingState,
30
30
  } from '..';
31
31
  import { HMSHLSRecordingState } from './HMSHLSRecordingState';
32
+ import { HMSNetworkQuality } from './HMSNetworkQuality';
32
33
 
33
34
  export class HMSEncoder {
34
35
  static encodeHmsRoom(room: HMSRoom, id: string) {
@@ -72,10 +73,11 @@ export class HMSEncoder {
72
73
  peerID: peer?.peerID,
73
74
  name: peer?.name,
74
75
  isLocal: peer?.isLocal,
75
- role: HMSEncoder.encodeHmsRole(peer?.role),
76
76
  customerUserID: peer?.customerUserID,
77
77
  customerDescription: peer?.customerDescription,
78
78
  metadata: peer?.metadata,
79
+ role: HMSEncoder.encodeHmsRole(peer?.role),
80
+ networkQuality: HMSEncoder.encodeHMSNetworkQuality(peer?.networkQuality),
79
81
  audioTrack: HMSEncoder.encodeHmsAudioTrack(peer?.audioTrack, id),
80
82
  videoTrack: HMSEncoder.encodeHmsVideoTrack(peer?.videoTrack, id),
81
83
  auxiliaryTracks: HMSEncoder.encodeHmsAuxiliaryTracks(
@@ -144,6 +146,7 @@ export class HMSEncoder {
144
146
  customerDescription: peer.customerDescription,
145
147
  metadata: peer.metadata,
146
148
  role: HMSEncoder.encodeHmsRole(peer?.role),
149
+ networkQuality: HMSEncoder.encodeHMSNetworkQuality(peer?.networkQuality),
147
150
  audioTrack: HMSEncoder.encodeHmsAudioTrack(peer.audioTrack, id),
148
151
  videoTrack: HMSEncoder.encodeHmsVideoTrack(peer.videoTrack, id),
149
152
  auxiliaryTracks: HMSEncoder.encodeHmsAuxiliaryTracks(
@@ -258,6 +261,7 @@ export class HMSEncoder {
258
261
  customerDescription: peer.customerDescription,
259
262
  metadata: peer.metadata,
260
263
  role: HMSEncoder.encodeHmsRole(peer?.role),
264
+ networkQuality: HMSEncoder.encodeHMSNetworkQuality(peer?.networkQuality),
261
265
  audioTrack: HMSEncoder.encodeHmsAudioTrack(peer.audioTrack, id),
262
266
  videoTrack: HMSEncoder.encodeHmsVideoTrack(peer.videoTrack, id),
263
267
  auxiliaryTracks: HMSEncoder.encodeHmsAuxiliaryTracks(
@@ -471,4 +475,14 @@ export class HMSEncoder {
471
475
 
472
476
  return variants;
473
477
  }
478
+
479
+ static encodeHMSNetworkQuality(data: any) {
480
+ if (data) {
481
+ return new HMSNetworkQuality({
482
+ downlinkQuality: data?.downlinkQuality,
483
+ });
484
+ } else {
485
+ return undefined;
486
+ }
487
+ }
474
488
  }
@@ -8,6 +8,7 @@ import { HMSLocalAudioTrack } from './HMSLocalAudioTrack';
8
8
  import { HMSLocalVideoTrack } from './HMSLocalVideoTrack';
9
9
  import type { HMSRole } from './HMSRole';
10
10
  import type { HMSTrackType } from './HMSTrackType';
11
+ import type { HMSNetworkQuality } from './HMSNetworkQuality';
11
12
 
12
13
  export class HMSLocalPeer extends HMSPeer {
13
14
  private localAudio?: HMSLocalAudioTrack;
@@ -29,6 +30,7 @@ export class HMSLocalPeer extends HMSPeer {
29
30
  metadata?: string;
30
31
  audioTrack?: HMSAudioTrack;
31
32
  videoTrack?: HMSVideoTrack;
33
+ networkQuality?: HMSNetworkQuality;
32
34
  role?: HMSRole;
33
35
  auxiliaryTracks?: HMSTrack[];
34
36
  localAudioTrackData?: {
@@ -0,0 +1,7 @@
1
+ export class HMSNetworkQuality {
2
+ downlinkQuality: number;
3
+
4
+ constructor(params: { downlinkQuality: number }) {
5
+ this.downlinkQuality = params.downlinkQuality;
6
+ }
7
+ }
@@ -1,4 +1,5 @@
1
1
  import type { HMSAudioTrack } from './HMSAudioTrack';
2
+ import type { HMSNetworkQuality } from './HMSNetworkQuality';
2
3
  import type { HMSRole } from './HMSRole';
3
4
  import type { HMSTrack } from './HMSTrack';
4
5
  import type { HMSVideoTrack } from './HMSVideoTrack';
@@ -11,10 +12,9 @@ export class HMSPeer {
11
12
  customerDescription?: string;
12
13
  metadata?: string;
13
14
  role?: HMSRole;
14
-
15
+ networkQuality?: HMSNetworkQuality;
15
16
  audioTrack?: HMSAudioTrack;
16
17
  videoTrack?: HMSVideoTrack;
17
-
18
18
  auxiliaryTracks?: HMSTrack[];
19
19
 
20
20
  constructor(params: {
@@ -25,6 +25,7 @@ export class HMSPeer {
25
25
  customerDescription?: string;
26
26
  metadata?: string;
27
27
  role?: HMSRole;
28
+ networkQuality?: HMSNetworkQuality;
28
29
  audioTrack?: HMSAudioTrack;
29
30
  videoTrack?: HMSVideoTrack;
30
31
  auxiliaryTracks?: HMSTrack[];
@@ -38,6 +39,7 @@ export class HMSPeer {
38
39
  this.videoTrack = params.videoTrack;
39
40
  this.auxiliaryTracks = params.auxiliaryTracks;
40
41
  this.role = params.role;
42
+ this.networkQuality = params.networkQuality;
41
43
  this.metadata = params.metadata;
42
44
  }
43
45
  }
@@ -4,4 +4,5 @@ export enum HMSPeerUpdate {
4
4
  METADATA_CHANGED = 'METADATA_CHANGED',
5
5
  ROLE_CHANGED = 'ROLE_CHANGED',
6
6
  NAME_CHANGED = 'NAME_CHANGED',
7
+ NETWORK_QUALITY_UPDATED = 'NETWORK_QUALITY_UPDATED',
7
8
  }
@@ -1,4 +1,5 @@
1
1
  import type { HMSAudioTrack } from './HMSAudioTrack';
2
+ import type { HMSNetworkQuality } from './HMSNetworkQuality';
2
3
  import { HMSPeer } from './HMSPeer';
3
4
  import { HMSRemoteAudioTrack } from './HMSRemoteAudioTrack';
4
5
  import { HMSRemoteVideoTrack } from './HMSRemoteVideoTrack';
@@ -28,6 +29,7 @@ export class HMSRemotePeer extends HMSPeer {
28
29
  audioTrack?: HMSAudioTrack;
29
30
  videoTrack?: HMSVideoTrack;
30
31
  role?: HMSRole;
32
+ networkQuality?: HMSNetworkQuality;
31
33
  auxiliaryTracks?: HMSTrack[];
32
34
  remoteAudioTrackData?: {
33
35
  trackId: string;
package/src/index.ts CHANGED
@@ -61,6 +61,7 @@ export * from './classes/HMSHLSRecordingConfig';
61
61
  export * from './classes/HMSHLSRecordingState';
62
62
  export * from './classes/HMSMessageRecipient';
63
63
  export * from './classes/HMSMessageRecipientType';
64
+ export * from './classes/HMSNetworkQuality';
64
65
 
65
66
  import { HMSSDK as HmsManager } from './classes/HMSSDK';
66
67
  export default HmsManager;