@webex/plugin-meetings 3.0.0-beta.13 → 3.0.0-beta.15

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 (252) hide show
  1. package/UPGRADING.md +9 -9
  2. package/browsers.js +19 -24
  3. package/dist/common/browser-detection.js +1 -0
  4. package/dist/common/browser-detection.js.map +1 -1
  5. package/dist/common/collection.js.map +1 -1
  6. package/dist/common/errors/captcha-error.js +5 -5
  7. package/dist/common/errors/captcha-error.js.map +1 -1
  8. package/dist/common/errors/intent-to-join.js +5 -5
  9. package/dist/common/errors/intent-to-join.js.map +1 -1
  10. package/dist/common/errors/join-meeting.js +6 -6
  11. package/dist/common/errors/join-meeting.js.map +1 -1
  12. package/dist/common/errors/media.js +5 -5
  13. package/dist/common/errors/media.js.map +1 -1
  14. package/dist/common/errors/parameter.js +5 -5
  15. package/dist/common/errors/parameter.js.map +1 -1
  16. package/dist/common/errors/password-error.js +5 -5
  17. package/dist/common/errors/password-error.js.map +1 -1
  18. package/dist/common/errors/permission.js +4 -4
  19. package/dist/common/errors/permission.js.map +1 -1
  20. package/dist/common/errors/reconnection.js +5 -5
  21. package/dist/common/errors/reconnection.js.map +1 -1
  22. package/dist/common/errors/stats.js +5 -5
  23. package/dist/common/errors/stats.js.map +1 -1
  24. package/dist/common/errors/webex-errors.js.map +1 -1
  25. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  26. package/dist/common/events/events-scope.js.map +1 -1
  27. package/dist/common/events/events.js.map +1 -1
  28. package/dist/common/events/trigger-proxy.js.map +1 -1
  29. package/dist/common/events/util.js.map +1 -1
  30. package/dist/common/logs/logger-proxy.js.map +1 -1
  31. package/dist/common/logs/request.js.map +1 -1
  32. package/dist/config.js.map +1 -1
  33. package/dist/constants.js.map +1 -1
  34. package/dist/index.js.map +1 -1
  35. package/dist/locus-info/controlsUtils.js.map +1 -1
  36. package/dist/locus-info/fullState.js.map +1 -1
  37. package/dist/locus-info/hostUtils.js.map +1 -1
  38. package/dist/locus-info/index.js +11 -8
  39. package/dist/locus-info/index.js.map +1 -1
  40. package/dist/locus-info/infoUtils.js.map +1 -1
  41. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  42. package/dist/locus-info/parser.js +2 -1
  43. package/dist/locus-info/parser.js.map +1 -1
  44. package/dist/locus-info/selfUtils.js +2 -1
  45. package/dist/locus-info/selfUtils.js.map +1 -1
  46. package/dist/media/index.js.map +1 -1
  47. package/dist/media/internal-media-core-wrapper.js.map +1 -1
  48. package/dist/media/properties.js.map +1 -1
  49. package/dist/media/util.js +1 -1
  50. package/dist/media/util.js.map +1 -1
  51. package/dist/mediaQualityMetrics/config.js.map +1 -1
  52. package/dist/meeting/effectsState.js +1 -1
  53. package/dist/meeting/effectsState.js.map +1 -1
  54. package/dist/meeting/in-meeting-actions.js.map +1 -1
  55. package/dist/meeting/index.js +118 -89
  56. package/dist/meeting/index.js.map +1 -1
  57. package/dist/meeting/muteState.js +1 -1
  58. package/dist/meeting/muteState.js.map +1 -1
  59. package/dist/meeting/request.js +25 -0
  60. package/dist/meeting/request.js.map +1 -1
  61. package/dist/meeting/request.type.js +8 -0
  62. package/dist/meeting/request.type.js.map +1 -0
  63. package/dist/meeting/state.js +5 -5
  64. package/dist/meeting/state.js.map +1 -1
  65. package/dist/meeting/util.js.map +1 -1
  66. package/dist/meeting-info/collection.js.map +1 -1
  67. package/dist/meeting-info/index.js +2 -2
  68. package/dist/meeting-info/index.js.map +1 -1
  69. package/dist/meeting-info/meeting-info-v2.js +48 -48
  70. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  71. package/dist/meeting-info/request.js.map +1 -1
  72. package/dist/meeting-info/util.js.map +1 -1
  73. package/dist/meeting-info/utilv2.js +1 -1
  74. package/dist/meeting-info/utilv2.js.map +1 -1
  75. package/dist/meetings/collection.js.map +1 -1
  76. package/dist/meetings/index.js +251 -250
  77. package/dist/meetings/index.js.map +1 -1
  78. package/dist/meetings/request.js +2 -2
  79. package/dist/meetings/request.js.map +1 -1
  80. package/dist/meetings/util.js +14 -14
  81. package/dist/meetings/util.js.map +1 -1
  82. package/dist/member/index.js +31 -31
  83. package/dist/member/index.js.map +1 -1
  84. package/dist/member/util.js.map +1 -1
  85. package/dist/members/collection.js.map +1 -1
  86. package/dist/members/index.js +43 -43
  87. package/dist/members/index.js.map +1 -1
  88. package/dist/members/request.js.map +1 -1
  89. package/dist/members/util.js.map +1 -1
  90. package/dist/metrics/config.js.map +1 -1
  91. package/dist/metrics/constants.js.map +1 -1
  92. package/dist/metrics/index.js +23 -20
  93. package/dist/metrics/index.js.map +1 -1
  94. package/dist/multistream/multistreamMedia.js +2 -1
  95. package/dist/multistream/multistreamMedia.js.map +1 -1
  96. package/dist/multistream/receiveSlot.js.map +1 -1
  97. package/dist/multistream/receiveSlotManager.js +2 -0
  98. package/dist/multistream/receiveSlotManager.js.map +1 -1
  99. package/dist/multistream/remoteMedia.js.map +1 -1
  100. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  101. package/dist/multistream/remoteMediaManager.js.map +1 -1
  102. package/dist/networkQualityMonitor/index.js +8 -8
  103. package/dist/networkQualityMonitor/index.js.map +1 -1
  104. package/dist/personal-meeting-room/index.js +7 -7
  105. package/dist/personal-meeting-room/index.js.map +1 -1
  106. package/dist/personal-meeting-room/request.js.map +1 -1
  107. package/dist/personal-meeting-room/util.js.map +1 -1
  108. package/dist/reachability/index.js.map +1 -1
  109. package/dist/reachability/request.js.map +1 -1
  110. package/dist/reactions/reactions.js.map +1 -1
  111. package/dist/reactions/reactions.type.js +3 -1
  112. package/dist/reactions/reactions.type.js.map +1 -1
  113. package/dist/reconnection-manager/index.js +4 -4
  114. package/dist/reconnection-manager/index.js.map +1 -1
  115. package/dist/roap/index.js +5 -5
  116. package/dist/roap/index.js.map +1 -1
  117. package/dist/roap/request.js.map +1 -1
  118. package/dist/roap/turnDiscovery.js.map +1 -1
  119. package/dist/statsAnalyzer/global.js.map +1 -1
  120. package/dist/statsAnalyzer/index.js.map +1 -1
  121. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  122. package/dist/transcription/index.js +4 -1
  123. package/dist/transcription/index.js.map +1 -1
  124. package/internal-README.md +7 -6
  125. package/package.json +18 -18
  126. package/src/common/browser-detection.ts +9 -6
  127. package/src/common/collection.ts +3 -1
  128. package/src/common/errors/captcha-error.ts +6 -6
  129. package/src/common/errors/intent-to-join.ts +6 -6
  130. package/src/common/errors/join-meeting.ts +12 -8
  131. package/src/common/errors/media.ts +6 -6
  132. package/src/common/errors/parameter.ts +9 -6
  133. package/src/common/errors/password-error.ts +6 -6
  134. package/src/common/errors/permission.ts +5 -5
  135. package/src/common/errors/reconnection.ts +6 -6
  136. package/src/common/errors/stats.ts +6 -6
  137. package/src/common/errors/webex-errors.ts +7 -5
  138. package/src/common/errors/webex-meetings-error.ts +1 -1
  139. package/src/common/events/events-scope.ts +5 -1
  140. package/src/common/events/events.ts +5 -1
  141. package/src/common/events/trigger-proxy.ts +8 -3
  142. package/src/common/events/util.ts +1 -2
  143. package/src/common/logs/logger-proxy.ts +21 -10
  144. package/src/common/logs/request.ts +11 -8
  145. package/src/config.ts +11 -11
  146. package/src/constants.ts +1 -1
  147. package/src/index.js +1 -1
  148. package/src/locus-info/controlsUtils.ts +34 -24
  149. package/src/locus-info/fullState.ts +15 -11
  150. package/src/locus-info/hostUtils.ts +4 -3
  151. package/src/locus-info/index.ts +25 -34
  152. package/src/locus-info/infoUtils.ts +12 -4
  153. package/src/locus-info/mediaSharesUtils.ts +4 -4
  154. package/src/locus-info/parser.ts +45 -68
  155. package/src/locus-info/selfUtils.ts +106 -57
  156. package/src/media/index.ts +123 -135
  157. package/src/media/internal-media-core-wrapper.ts +2 -2
  158. package/src/media/properties.ts +30 -20
  159. package/src/media/util.ts +1 -1
  160. package/src/mediaQualityMetrics/config.ts +46 -46
  161. package/src/meeting/effectsState.ts +35 -35
  162. package/src/meeting/in-meeting-actions.ts +7 -3
  163. package/src/meeting/index.ts +1576 -1291
  164. package/src/meeting/muteState.ts +62 -31
  165. package/src/meeting/request.ts +174 -113
  166. package/src/meeting/request.type.ts +11 -0
  167. package/src/meeting/state.ts +45 -30
  168. package/src/meeting/util.ts +101 -70
  169. package/src/meeting-info/collection.ts +2 -1
  170. package/src/meeting-info/index.ts +32 -30
  171. package/src/meeting-info/meeting-info-v2.ts +106 -108
  172. package/src/meeting-info/request.ts +9 -3
  173. package/src/meeting-info/util.ts +54 -46
  174. package/src/meeting-info/utilv2.ts +59 -53
  175. package/src/meetings/collection.ts +1 -1
  176. package/src/meetings/index.ts +512 -440
  177. package/src/meetings/request.ts +26 -24
  178. package/src/meetings/util.ts +29 -29
  179. package/src/member/index.ts +55 -49
  180. package/src/member/util.ts +26 -13
  181. package/src/members/collection.ts +0 -1
  182. package/src/members/index.ts +182 -126
  183. package/src/members/request.ts +46 -14
  184. package/src/members/util.ts +44 -42
  185. package/src/metrics/config.ts +254 -81
  186. package/src/metrics/constants.ts +0 -2
  187. package/src/metrics/index.ts +84 -71
  188. package/src/multistream/multistreamMedia.ts +1 -0
  189. package/src/multistream/receiveSlot.ts +1 -0
  190. package/src/multistream/receiveSlotManager.ts +1 -0
  191. package/src/multistream/remoteMedia.ts +1 -1
  192. package/src/multistream/remoteMediaGroup.ts +2 -1
  193. package/src/multistream/remoteMediaManager.ts +3 -0
  194. package/src/networkQualityMonitor/index.ts +20 -23
  195. package/src/personal-meeting-room/index.ts +12 -16
  196. package/src/personal-meeting-room/request.ts +10 -3
  197. package/src/personal-meeting-room/util.ts +3 -3
  198. package/src/reachability/index.ts +61 -59
  199. package/src/reachability/request.ts +36 -32
  200. package/src/reactions/reactions.ts +4 -4
  201. package/src/reactions/reactions.type.ts +4 -3
  202. package/src/reconnection-manager/index.ts +139 -84
  203. package/src/roap/index.ts +46 -38
  204. package/src/roap/request.ts +44 -31
  205. package/src/roap/turnDiscovery.ts +59 -30
  206. package/src/statsAnalyzer/global.ts +30 -33
  207. package/src/statsAnalyzer/index.ts +432 -175
  208. package/src/statsAnalyzer/mqaUtil.ts +178 -72
  209. package/src/transcription/index.ts +34 -32
  210. package/test/integration/spec/journey.js +663 -462
  211. package/test/integration/spec/space-meeting.js +318 -203
  212. package/test/integration/spec/transcription.js +6 -7
  213. package/test/unit/spec/common/browser-detection.js +9 -28
  214. package/test/unit/spec/fixture/locus.js +92 -90
  215. package/test/unit/spec/locus-info/controlsUtils.js +5 -5
  216. package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
  217. package/test/unit/spec/locus-info/index.js +1 -2
  218. package/test/unit/spec/locus-info/infoUtils.js +26 -33
  219. package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
  220. package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
  221. package/test/unit/spec/locus-info/parser.js +3 -9
  222. package/test/unit/spec/locus-info/selfConstant.js +72 -103
  223. package/test/unit/spec/locus-info/selfUtils.js +21 -12
  224. package/test/unit/spec/meeting/effectsState.js +36 -46
  225. package/test/unit/spec/meeting/in-meeting-actions.ts +2 -3
  226. package/test/unit/spec/meeting/index.js +1342 -684
  227. package/test/unit/spec/meeting/muteState.js +42 -33
  228. package/test/unit/spec/meeting/request.js +75 -45
  229. package/test/unit/spec/meeting/utils.js +78 -53
  230. package/test/unit/spec/meeting-info/meetinginfov2.js +100 -73
  231. package/test/unit/spec/meeting-info/request.js +7 -9
  232. package/test/unit/spec/meeting-info/util.js +11 -12
  233. package/test/unit/spec/meeting-info/utilv2.js +110 -74
  234. package/test/unit/spec/meetings/collection.js +1 -1
  235. package/test/unit/spec/meetings/index.js +438 -257
  236. package/test/unit/spec/meetings/utils.js +14 -12
  237. package/test/unit/spec/member/index.js +0 -1
  238. package/test/unit/spec/member/util.js +5 -6
  239. package/test/unit/spec/members/index.js +104 -54
  240. package/test/unit/spec/members/request.js +29 -20
  241. package/test/unit/spec/members/utils.js +8 -5
  242. package/test/unit/spec/metrics/index.js +16 -21
  243. package/test/unit/spec/networkQualityMonitor/index.js +21 -15
  244. package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
  245. package/test/unit/spec/reachability/index.ts +9 -11
  246. package/test/unit/spec/reconnection-manager/index.js +16 -18
  247. package/test/unit/spec/roap/turnDiscovery.ts +22 -19
  248. package/test/unit/spec/stats-analyzer/index.js +25 -20
  249. package/test/utils/cmr.js +44 -42
  250. package/test/utils/testUtils.js +83 -74
  251. package/test/utils/webex-config.js +18 -18
  252. package/test/utils/webex-test-users.js +53 -50
@@ -48,7 +48,7 @@ Install tooling dependencies.
48
48
  npm install
49
49
  ```
50
50
 
51
- *Build issues?* See [BUILD-ISSUES.md](https://github.com/webex/webex-js-sdk/blob/master/BUILD-ISSUES.md) for help.
51
+ _Build issues?_ See [BUILD-ISSUES.md](https://github.com/webex/webex-js-sdk/blob/master/BUILD-ISSUES.md) for help.
52
52
 
53
53
  ## Contribute to the `plugin-meetings` branch
54
54
 
@@ -93,12 +93,14 @@ yarn run build
93
93
  ```
94
94
 
95
95
  > Individual packages containing samples can usually be run this way:
96
+ >
96
97
  > ```
97
98
  > yarn run serve:package --env.package @webex/plugin-meetings
99
+ > ```
98
100
 
99
101
  > ```
100
102
  > However, `webex` does not get compiled properly for `plugin-meetings` using this method, so do the following instead.
101
-
103
+ > ```
102
104
 
103
105
  ```bash
104
106
  # Run the "sample app" sample.
@@ -107,8 +109,8 @@ yarn run samples:meetings
107
109
  ```
108
110
 
109
111
  - Visit https://localhost:8000/
110
- - Copy/paste **Your Personal Access Token** from [Cisco Webex for Developers](https://developer.webex.com/docs/api/getting-started) and click *connect*.
111
- - Use the **Dialer** to *create* a Meeting object, *join* it, and *addMedia*, like video and audio.
112
+ - Copy/paste **Your Personal Access Token** from [Cisco Webex for Developers](https://developer.webex.com/docs/api/getting-started) and click _connect_.
113
+ - Use the **Dialer** to _create_ a Meeting object, _join_ it, and _addMedia_, like video and audio.
112
114
 
113
115
  > This sample does not join a meeting in one click on purpose. It is meant to demonstrate the different commands available, and their sequence, to developers. Other samples will be created in the future.
114
116
  >
@@ -124,7 +126,6 @@ yarn run samples:meetings
124
126
 
125
127
  Use `yarn run distsrc` to point each package's `main` entry at the raw src and let `babel` compile on the fly.
126
128
 
127
-
128
129
  ```bash
129
130
  # Point all package.json files to the src directory instead of the dist directory.
130
131
  yarn run distsrc
@@ -156,7 +157,7 @@ yarn run srcdist
156
157
 
157
158
  The SDK enforces relatively strict commit messages to version its packages and keep language similar.
158
159
 
159
- Here is an example committing a new feature. Notice the *package name* in parentheses.
160
+ Here is an example committing a new feature. Notice the _package name_ in parentheses.
160
161
 
161
162
  ```bash
162
163
  git commit -a -m 'feat(plugin-meetings): add ability to join a meeting'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webex/plugin-meetings",
3
- "version": "3.0.0-beta.13",
3
+ "version": "3.0.0-beta.15",
4
4
  "description": "",
5
5
  "license": "Cisco EULA (https://www.cisco.com/c/en/us/products/end-user-license-agreement.html)",
6
6
  "contributors": [
@@ -28,12 +28,12 @@
28
28
  ]
29
29
  },
30
30
  "devDependencies": {
31
- "@webex/plugin-meetings": "3.0.0-beta.13",
32
- "@webex/test-helper-chai": "3.0.0-beta.13",
33
- "@webex/test-helper-mocha": "3.0.0-beta.13",
34
- "@webex/test-helper-mock-webex": "3.0.0-beta.13",
35
- "@webex/test-helper-retry": "3.0.0-beta.13",
36
- "@webex/test-helper-test-users": "3.0.0-beta.13",
31
+ "@webex/plugin-meetings": "3.0.0-beta.15",
32
+ "@webex/test-helper-chai": "3.0.0-beta.15",
33
+ "@webex/test-helper-mocha": "3.0.0-beta.15",
34
+ "@webex/test-helper-mock-webex": "3.0.0-beta.15",
35
+ "@webex/test-helper-retry": "3.0.0-beta.15",
36
+ "@webex/test-helper-test-users": "3.0.0-beta.15",
37
37
  "chai": "^4.3.4",
38
38
  "chai-as-promised": "^7.1.1",
39
39
  "jsdom-global": "3.0.2",
@@ -41,18 +41,18 @@
41
41
  "typed-emitter": "^2.1.0"
42
42
  },
43
43
  "dependencies": {
44
- "@webex/common": "3.0.0-beta.13",
44
+ "@webex/common": "3.0.0-beta.15",
45
45
  "@webex/internal-media-core": "^0.0.17-beta",
46
- "@webex/internal-plugin-conversation": "3.0.0-beta.13",
47
- "@webex/internal-plugin-device": "3.0.0-beta.13",
48
- "@webex/internal-plugin-llm": "3.0.0-beta.13",
49
- "@webex/internal-plugin-mercury": "3.0.0-beta.13",
50
- "@webex/internal-plugin-metrics": "3.0.0-beta.13",
51
- "@webex/internal-plugin-support": "3.0.0-beta.13",
52
- "@webex/internal-plugin-user": "3.0.0-beta.13",
53
- "@webex/plugin-people": "3.0.0-beta.13",
54
- "@webex/plugin-rooms": "3.0.0-beta.13",
55
- "@webex/webex-core": "3.0.0-beta.13",
46
+ "@webex/internal-plugin-conversation": "3.0.0-beta.15",
47
+ "@webex/internal-plugin-device": "3.0.0-beta.15",
48
+ "@webex/internal-plugin-llm": "3.0.0-beta.15",
49
+ "@webex/internal-plugin-mercury": "3.0.0-beta.15",
50
+ "@webex/internal-plugin-metrics": "3.0.0-beta.15",
51
+ "@webex/internal-plugin-support": "3.0.0-beta.15",
52
+ "@webex/internal-plugin-user": "3.0.0-beta.15",
53
+ "@webex/plugin-people": "3.0.0-beta.15",
54
+ "@webex/plugin-rooms": "3.0.0-beta.15",
55
+ "@webex/webex-core": "3.0.0-beta.15",
56
56
  "bowser": "^2.11.0",
57
57
  "btoa": "^1.2.1",
58
58
  "dotenv": "^4.0.0",
@@ -1,3 +1,5 @@
1
+ /* eslint-disable @typescript-eslint/no-var-requires */
2
+
1
3
  import bowser from 'bowser';
2
4
  import {memoize} from 'lodash';
3
5
  import window from 'global/window';
@@ -9,7 +11,7 @@ const mockDetectionObject = {
9
11
  /* eslint-enable global-require */
10
12
  getBrowserName: () => '',
11
13
  getBrowserVersion: () => '',
12
- isBrowser: () => false
14
+ isBrowser: () => false,
13
15
  };
14
16
 
15
17
  const createDetectionObject = (results) => {
@@ -26,11 +28,12 @@ const createDetectionObject = (results) => {
26
28
  getOSVersion,
27
29
  getBrowserName,
28
30
  getBrowserVersion,
29
- isBrowser
31
+ isBrowser,
30
32
  };
31
33
  };
32
34
 
33
- export default memoize((agent?: any) => (agent || window.navigator?.userAgent ?
34
- createDetectionObject(bowser.getParser(agent || window.navigator.userAgent)) :
35
- mockDetectionObject
36
- ));
35
+ export default memoize((agent?: any) =>
36
+ agent || window.navigator?.userAgent
37
+ ? createDetectionObject(bowser.getParser(agent || window.navigator.userAgent))
38
+ : mockDetectionObject
39
+ );
@@ -42,7 +42,9 @@ export default class Collection {
42
42
  * @memberof Collection
43
43
  */
44
44
  public get(id: string) {
45
- return this[this.propertyName] && this[this.propertyName][id] ? this[this.propertyName][id] : null;
45
+ return this[this.propertyName] && this[this.propertyName][id]
46
+ ? this[this.propertyName][id]
47
+ : null;
46
48
  }
47
49
 
48
50
  /**
@@ -9,17 +9,17 @@ export default class CaptchaError extends Error {
9
9
  sdkMessage: any;
10
10
 
11
11
  /**
12
- *
13
- * @constructor
14
- * @param {String} [message]
15
- * @param {Object} [error]
16
- */
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
17
  constructor(message: string = ERROR_DICTIONARY.CAPTCHA.MESSAGE, error: any = null) {
18
18
  super(message);
19
19
  this.name = ERROR_DICTIONARY.CAPTCHA.NAME;
20
20
  this.sdkMessage = ERROR_DICTIONARY.CAPTCHA.MESSAGE;
21
21
  this.error = error;
22
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
23
23
  this.code = ERROR_DICTIONARY.CAPTCHA.CODE;
24
24
  }
25
25
  }
@@ -10,17 +10,17 @@ export default class IntentToJoinError extends Error {
10
10
  sdkMessage: any;
11
11
 
12
12
  /**
13
- *
14
- * @constructor
15
- * @param {String} [message]
16
- * @param {Object} [error]
17
- */
13
+ *
14
+ * @constructor
15
+ * @param {String} [message]
16
+ * @param {Object} [error]
17
+ */
18
18
  constructor(message: string = ERROR_DICTIONARY.INTENT_TO_JOIN.MESSAGE, error: any = null) {
19
19
  super(message);
20
20
  this.name = ERROR_DICTIONARY.INTENT_TO_JOIN.NAME;
21
21
  this.sdkMessage = ERROR_DICTIONARY.INTENT_TO_JOIN.MESSAGE;
22
22
  this.error = error;
23
- this.stack = error ? error.stack : (new Error()).stack;
23
+ this.stack = error ? error.stack : new Error().stack;
24
24
  this.joinIntentRequired = true;
25
25
  this.code = ERROR_DICTIONARY.INTENT_TO_JOIN.CODE;
26
26
  }
@@ -10,18 +10,22 @@ export default class JoinMeetingError extends Error {
10
10
  sdkMessage: any;
11
11
 
12
12
  /**
13
- *
14
- * @constructor
15
- * @param {Object} [options]
16
- * @param {String} [message]
17
- * @param {Object} [error]
18
- */
19
- constructor(options: object = {}, message: string = ERROR_DICTIONARY.JOIN_MEETING.MESSAGE, error: any = null) {
13
+ *
14
+ * @constructor
15
+ * @param {Object} [options]
16
+ * @param {String} [message]
17
+ * @param {Object} [error]
18
+ */
19
+ constructor(
20
+ options: object = {},
21
+ message: string = ERROR_DICTIONARY.JOIN_MEETING.MESSAGE,
22
+ error: any = null
23
+ ) {
20
24
  super(message);
21
25
  this.name = ERROR_DICTIONARY.JOIN_MEETING.NAME;
22
26
  this.sdkMessage = ERROR_DICTIONARY.JOIN_MEETING.MESSAGE;
23
27
  this.error = error;
24
- this.stack = error ? error.stack : (new Error()).stack;
28
+ this.stack = error ? error.stack : new Error().stack;
25
29
  this.joinOptions = options;
26
30
  this.code = ERROR_DICTIONARY.JOIN_MEETING.CODE;
27
31
  }
@@ -9,17 +9,17 @@ export default class MediaError extends Error {
9
9
  sdkMessage: any;
10
10
 
11
11
  /**
12
- *
13
- * @constructor
14
- * @param {String} [message]
15
- * @param {Object} [error]
16
- */
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
17
  constructor(message: string = ERROR_DICTIONARY.MEDIA.MESSAGE, error: any = null) {
18
18
  super(message);
19
19
  this.name = ERROR_DICTIONARY.RECONNECTION.NAME;
20
20
  this.sdkMessage = ERROR_DICTIONARY.MEDIA.MESSAGE;
21
21
  this.error = error;
22
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
23
23
  this.code = ERROR_DICTIONARY.RECONNECTION.CODE;
24
24
  }
25
25
  }
@@ -9,12 +9,15 @@ export default class ParameterError extends Error {
9
9
  code: number;
10
10
 
11
11
  /**
12
- *
13
- * @constructor
14
- * @param {String} [message]
15
- * @param {Object} [error]
16
- */
17
- constructor(message: string = MEETINGCONSTANTS.ERROR_DICTIONARY.PARAMETER.MESSAGE, error: any = null) {
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
+ constructor(
18
+ message: string = MEETINGCONSTANTS.ERROR_DICTIONARY.PARAMETER.MESSAGE,
19
+ error: any = null
20
+ ) {
18
21
  super(message);
19
22
 
20
23
  if (Error.captureStackTrace) {
@@ -9,17 +9,17 @@ export default class PasswordError extends Error {
9
9
  sdkMessage: any;
10
10
 
11
11
  /**
12
- *
13
- * @constructor
14
- * @param {String} [message]
15
- * @param {Object} [error]
16
- */
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
17
  constructor(message: string = ERROR_DICTIONARY.PASSWORD.MESSAGE, error: any = null) {
18
18
  super(message);
19
19
  this.name = ERROR_DICTIONARY.PASSWORD.NAME;
20
20
  this.sdkMessage = ERROR_DICTIONARY.PASSWORD.MESSAGE;
21
21
  this.error = error;
22
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
23
23
  this.code = ERROR_DICTIONARY.PASSWORD.CODE;
24
24
  }
25
25
  }
@@ -9,16 +9,16 @@ export default class PermissionError extends Error {
9
9
  sdkMessage: any;
10
10
 
11
11
  /**
12
- * @constructor
13
- * @param {String} [message]
14
- * @param {Object} [error]
15
- */
12
+ * @constructor
13
+ * @param {String} [message]
14
+ * @param {Object} [error]
15
+ */
16
16
  constructor(message: string = ERROR_DICTIONARY.PERMISSION.MESSAGE, error: any = null) {
17
17
  super(message);
18
18
  this.name = ERROR_DICTIONARY.PERMISSION.NAME;
19
19
  this.sdkMessage = ERROR_DICTIONARY.PERMISSION.MESSAGE;
20
20
  this.error = error;
21
- this.stack = error ? error.stack : (new Error()).stack;
21
+ this.stack = error ? error.stack : new Error().stack;
22
22
  this.code = ERROR_DICTIONARY.PERMISSION.CODE;
23
23
  }
24
24
  }
@@ -9,17 +9,17 @@ export default class ReconnectionError extends Error {
9
9
  sdkMessage: any;
10
10
 
11
11
  /**
12
- *
13
- * @constructor
14
- * @param {String} [message]
15
- * @param {Object} [error]
16
- */
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
17
  constructor(message: string = ERROR_DICTIONARY.RECONNECTION.MESSAGE, error: any = null) {
18
18
  super(message);
19
19
  this.name = ERROR_DICTIONARY.RECONNECTION.NAME;
20
20
  this.sdkMessage = ERROR_DICTIONARY.RECONNECTION.MESSAGE;
21
21
  this.error = error;
22
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
23
23
  this.code = ERROR_DICTIONARY.RECONNECTION.CODE;
24
24
  }
25
25
  }
@@ -9,17 +9,17 @@ export default class StatsError extends Error {
9
9
  sdkMessage: any;
10
10
 
11
11
  /**
12
- *
13
- * @constructor
14
- * @param {String} [message]
15
- * @param {Object} [error]
16
- */
12
+ *
13
+ * @constructor
14
+ * @param {String} [message]
15
+ * @param {Object} [error]
16
+ */
17
17
  constructor(message: string = ERROR_DICTIONARY.STATS.MESSAGE, error: any = null) {
18
18
  super(message);
19
19
  this.name = ERROR_DICTIONARY.STATS.NAME;
20
20
  this.sdkMessage = ERROR_DICTIONARY.STATS.MESSAGE;
21
21
  this.error = error;
22
- this.stack = error ? error.stack : (new Error()).stack;
22
+ this.stack = error ? error.stack : new Error().stack;
23
23
  this.code = ERROR_DICTIONARY.STATS.CODE;
24
24
  }
25
25
  }
@@ -23,7 +23,9 @@ export function createMeetingsError(code?: number, message?: string) {
23
23
  code = typeof code === 'number' ? code : 0;
24
24
  message = typeof message === 'string' && message ? message : 'Unknown error';
25
25
 
26
- return WebExMeetingsErrors[code] ? new WebExMeetingsErrors[code]() : new WebexMeetingsError(code, message);
26
+ return WebExMeetingsErrors[code]
27
+ ? new WebExMeetingsErrors[code]()
28
+ : new WebexMeetingsError(code, message);
27
29
  }
28
30
 
29
31
  /**
@@ -55,14 +57,16 @@ class UserNotJoinedError extends WebexMeetingsError {
55
57
  static CODE = 30102;
56
58
 
57
59
  constructor() {
58
- super(UserNotJoinedError.CODE, 'User currently not in meeting. Please join a meeting before adding media.');
60
+ super(
61
+ UserNotJoinedError.CODE,
62
+ 'User currently not in meeting. Please join a meeting before adding media.'
63
+ );
59
64
  }
60
65
  }
61
66
 
62
67
  export {UserNotJoinedError};
63
68
  WebExMeetingsErrors[UserNotJoinedError.CODE] = UserNotJoinedError;
64
69
 
65
-
66
70
  /**
67
71
  * @class NoMediaEstablishedYetError
68
72
  * @classdesc Raised whenever the user has not established media yet.
@@ -81,7 +85,6 @@ class NoMediaEstablishedYetError extends WebexMeetingsError {
81
85
  export {NoMediaEstablishedYetError};
82
86
  WebExMeetingsErrors[NoMediaEstablishedYetError.CODE] = NoMediaEstablishedYetError;
83
87
 
84
-
85
88
  /**
86
89
  * @class UserInLobbyError
87
90
  * @classdesc Raised whenever the user is in lobby and not joined yet.
@@ -100,7 +103,6 @@ class UserInLobbyError extends WebexMeetingsError {
100
103
  export {UserInLobbyError};
101
104
  WebExMeetingsErrors[UserInLobbyError.CODE] = UserInLobbyError;
102
105
 
103
-
104
106
  /**
105
107
  * @class IceGatheringFailed
106
108
  * @classdesc Raised whenever ice gathering fails.
@@ -19,7 +19,7 @@ export default class WebexMeetingsError extends Error {
19
19
 
20
20
  Object.defineProperty(this, 'code', {
21
21
  value: code,
22
- enumerable: true
22
+ enumerable: true,
23
23
  });
24
24
  }
25
25
 
@@ -19,7 +19,11 @@ export default class EventsScope extends ChildEmitter {
19
19
  * @returns {Function}
20
20
  */
21
21
  emit(scope: any, eventName: any, args: any) {
22
- LoggerProxy.logger.debug(`${EventsUtil.getScopeLog(scope)}event#${eventName}${LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(args)}` : ''}`);
22
+ LoggerProxy.logger.debug(
23
+ `${EventsUtil.getScopeLog(scope)}event#${eventName}${
24
+ LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(args)}` : ''
25
+ }`
26
+ );
23
27
 
24
28
  return super.emit(eventName, args);
25
29
  }
@@ -12,7 +12,11 @@ import EventsUtil from './util';
12
12
  */
13
13
  class Events extends EventEmitter {
14
14
  emit(scope, eventName, args) {
15
- LoggerProxy.logger.debug(`${EventsUtil.getScopeLog(scope)}event#${eventName}${LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(args)}` : ''}`);
15
+ LoggerProxy.logger.debug(
16
+ `${EventsUtil.getScopeLog(scope)}event#${eventName}${
17
+ LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(args)}` : ''
18
+ }`
19
+ );
16
20
 
17
21
  return super.emit(eventName, args);
18
22
  }
@@ -4,15 +4,20 @@ import ParameterError from '../errors/parameter';
4
4
 
5
5
  import EventsUtil from './util';
6
6
 
7
-
8
7
  const TriggerProxy: any = {};
9
8
 
10
9
  TriggerProxy.trigger = (instance, scope, trigger, payload) => {
11
10
  if (!instance || !instance.trigger) {
12
- throw new ParameterError('Instance to trigger from must be defined and have a trigger function.');
11
+ throw new ParameterError(
12
+ 'Instance to trigger from must be defined and have a trigger function.'
13
+ );
13
14
  }
14
15
 
15
- LoggerProxy.logger.debug(`${EventsUtil.getScopeLog(scope)}event#${trigger}${LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(payload)}` : ''}`);
16
+ LoggerProxy.logger.debug(
17
+ `${EventsUtil.getScopeLog(scope)}event#${trigger}${
18
+ LoggerConfig.verboseEvents ? ` -- ${EventsUtil.getEventLog(payload)}` : ''
19
+ }`
20
+ );
16
21
 
17
22
  return instance.trigger(trigger, payload);
18
23
  };
@@ -9,8 +9,7 @@ EventsUtil.getEventLog = (args) => {
9
9
 
10
10
  try {
11
11
  argString = inspect(args);
12
- }
13
- catch (e) {
12
+ } catch (e) {
14
13
  LoggerProxy.logger.warn(`Events:util#getEventLog --> ${e}`);
15
14
  }
16
15
 
@@ -3,13 +3,25 @@ import LoggerConfig from './logger-config';
3
3
 
4
4
  const LoggerProxy: any = {
5
5
  logger: {
6
- info: (args) => { console.error('LoggerProxy->info#NO LOGGER DEFINED'); },
7
- log: (args) => { console.error('LoggerProxy->log#NO LOGGER DEFINED'); },
8
- error: (args) => { console.error('LoggerProxy->error#NO LOGGER DEFINED'); },
9
- warn: (args) => { console.error('LoggerProxy->warn#NO LOGGER DEFINED'); },
10
- trace: (args) => { console.error('LoggerProxy->trace#NO LOGGER DEFINED'); },
11
- debug: (args) => { console.error('LoggerProxy->debug#NO LOGGER DEFINED'); }
12
- }
6
+ info: (args) => {
7
+ console.error('LoggerProxy->info#NO LOGGER DEFINED');
8
+ },
9
+ log: (args) => {
10
+ console.error('LoggerProxy->log#NO LOGGER DEFINED');
11
+ },
12
+ error: (args) => {
13
+ console.error('LoggerProxy->error#NO LOGGER DEFINED');
14
+ },
15
+ warn: (args) => {
16
+ console.error('LoggerProxy->warn#NO LOGGER DEFINED');
17
+ },
18
+ trace: (args) => {
19
+ console.error('LoggerProxy->trace#NO LOGGER DEFINED');
20
+ },
21
+ debug: (args) => {
22
+ console.error('LoggerProxy->debug#NO LOGGER DEFINED');
23
+ },
24
+ },
13
25
  };
14
26
 
15
27
  LoggerProxy.set = (logger) => {
@@ -20,10 +32,9 @@ LoggerProxy.set = (logger) => {
20
32
  error: () => {},
21
33
  warn: () => {},
22
34
  trace: () => {},
23
- debug: () => {}
35
+ debug: () => {},
24
36
  };
25
- }
26
- else {
37
+ } else {
27
38
  LoggerProxy.logger = logger;
28
39
  }
29
40
  };
@@ -14,7 +14,7 @@ export default class LogsRequest {
14
14
  * @param {Object} options.webex Webex SDK instance
15
15
  * @param {ClientMetrics} metrics
16
16
  */
17
- constructor(options: { webex: object }) {
17
+ constructor(options: {webex: object}) {
18
18
  this.webex = options.webex;
19
19
  }
20
20
 
@@ -40,18 +40,21 @@ export default class LogsRequest {
40
40
  } = {}
41
41
  ) {
42
42
  const id = options.feedbackId || uuid.v4();
43
- const {
44
- locusId, correlationId, meetingId, callStart
45
- } = options;
43
+ const {locusId, correlationId, meetingId, callStart} = options;
46
44
 
47
- LoggerProxy.logger.info(`Logs:request#uploadLogs --> uploading user logs for feedbackId: ${id}`);
45
+ LoggerProxy.logger.info(
46
+ `Logs:request#uploadLogs --> uploading user logs for feedbackId: ${id}`
47
+ );
48
48
 
49
49
  try {
50
50
  await this.webex.internal.support.submitLogs({
51
- feedbackId: id, locusId, correlationId, meetingId, callStart
51
+ feedbackId: id,
52
+ locusId,
53
+ correlationId,
54
+ meetingId,
55
+ callStart,
52
56
  });
53
- }
54
- catch (error) {
57
+ } catch (error) {
55
58
  LoggerProxy.logger.error('Logs:request#uploadLogs --> uploading user logs failed', error);
56
59
 
57
60
  return Promise.reject(error);
package/src/config.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  // @ts-ignore
3
- deviceType
3
+ deviceType,
4
4
  } from '@webex/common';
5
5
 
6
6
  export default {
@@ -16,7 +16,7 @@ export default {
16
16
  receiveVideo: true,
17
17
  pstn: false,
18
18
  sendShare: false,
19
- receiveShare: false
19
+ receiveShare: false,
20
20
  },
21
21
  reconnection: {
22
22
  enabled: false,
@@ -25,7 +25,7 @@ export default {
25
25
  // Timeout duration to wait for ICE to reconnect if a disconnect is received.
26
26
  iceReconnectionTimeout: 10000,
27
27
  // Amount of times attempting to rejoin a meeting during reconnect
28
- maxRejoinAttempts: 3
28
+ maxRejoinAttempts: 3,
29
29
  },
30
30
  stats: {
31
31
  // Enable the webrtc stats analyzer that emits quality degradation events
@@ -41,7 +41,7 @@ export default {
41
41
  // Once packet loss hits this ratio, the video will downgrade
42
42
  videoPacketLossRatioThreshold: 9, // comparison of packets lost / packets received
43
43
  rttThreshold: 500, // 500 ms noticeable quality lag begins based on bandwidth of user
44
- jitterThreshold: 500 // 500 ms noticeable quality lag begins based on bandwidth of user
44
+ jitterThreshold: 500, // 500 ms noticeable quality lag begins based on bandwidth of user
45
45
  },
46
46
  metrics: {
47
47
  // change to your client name else data will be muddled
@@ -55,30 +55,30 @@ export default {
55
55
  mqaMetricsInterval: 60000,
56
56
  // send to cisco internal MQA data automatically
57
57
  // we already send CA
58
- autoSendMQA: true
58
+ autoSendMQA: true,
59
59
  },
60
60
  logging: {
61
61
  enable: true,
62
- verboseEvents: true
62
+ verboseEvents: true,
63
63
  },
64
64
  resolution: {
65
65
  maxWidth: 1280,
66
66
  maxHeight: 720,
67
67
  idealWidth: 1280,
68
- idealHeight: 720
68
+ idealHeight: 720,
69
69
  },
70
70
  screenResolution: {
71
71
  maxWidth: 1920,
72
72
  maxHeight: 1080,
73
73
  idealWidth: 1920,
74
- idealHeight: 1080
74
+ idealHeight: 1080,
75
75
  },
76
76
  bandwidth: {
77
77
  // please note, these are the maximum bandwidth values
78
78
  // the server supports, minimums have to be tested
79
79
  audio: 64000,
80
80
  video: 4000000,
81
- startBitrate: 2000
81
+ startBitrate: 2000,
82
82
  },
83
83
  screenFrameRate: 10,
84
84
  videoShareFrameRate: 30,
@@ -94,6 +94,6 @@ export default {
94
94
  enableUnifiedMeetings: false,
95
95
  enableAdhocMeetings: false,
96
96
  enableTurnDiscovery: false,
97
- }
98
- }
97
+ },
98
+ },
99
99
  };