trtc-cloud-js-sdk 2.0.0 → 2.1.0

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 (143) hide show
  1. package/package.json +7 -57
  2. package/trtc-cloud-js-sdk.js +1 -0
  3. package/.eslintrc.js +0 -88
  4. package/.prettierrc +0 -5
  5. package/CHANGELOG.md +0 -58
  6. package/build/jsdoc/clean-doc.js +0 -12
  7. package/build/jsdoc/fix-doc.js +0 -141
  8. package/build/jsdoc/jsdoc.json +0 -42
  9. package/build/package-bundle.js +0 -29
  10. package/build/rollup.config.dev.js +0 -88
  11. package/build/rollup.config.prod.js +0 -93
  12. package/build/rollup.js +0 -359
  13. package/build/template/npm-package/package.json +0 -24
  14. package/coverage/Chrome 103.0.5060 (Mac OS X 10.15.7)/base.css +0 -213
  15. package/coverage/Chrome 103.0.5060 (Mac OS X 10.15.7)/index.html +0 -80
  16. package/coverage/Chrome 103.0.5060 (Mac OS X 10.15.7)/prettify.css +0 -1
  17. package/coverage/Chrome 103.0.5060 (Mac OS X 10.15.7)/prettify.js +0 -1
  18. package/coverage/Chrome 103.0.5060 (Mac OS X 10.15.7)/sort-arrow-sprite.png +0 -0
  19. package/coverage/Chrome 103.0.5060 (Mac OS X 10.15.7)/sorter.js +0 -158
  20. package/examples/apiExample/.env +0 -2
  21. package/examples/apiExample/README.md +0 -70
  22. package/examples/apiExample/package-lock.json +0 -30915
  23. package/examples/apiExample/package.json +0 -51
  24. package/examples/apiExample/public/audio.js +0 -195
  25. package/examples/apiExample/public/audio.js.map +0 -7
  26. package/examples/apiExample/public/av_processing.js +0 -1
  27. package/examples/apiExample/public/basic/av_processing.wasm +0 -0
  28. package/examples/apiExample/public/basic/worker.js +0 -10434
  29. package/examples/apiExample/public/favicon.ico +0 -0
  30. package/examples/apiExample/public/index.html +0 -47
  31. package/examples/apiExample/public/logo192.png +0 -0
  32. package/examples/apiExample/public/logo512.png +0 -0
  33. package/examples/apiExample/public/manifest.json +0 -25
  34. package/examples/apiExample/public/robots.txt +0 -3
  35. package/examples/apiExample/src/App.css +0 -37
  36. package/examples/apiExample/src/App.js +0 -25
  37. package/examples/apiExample/src/api/http.js +0 -127
  38. package/examples/apiExample/src/api/nav.js +0 -44
  39. package/examples/apiExample/src/components/BasicInfoComponent.css +0 -16
  40. package/examples/apiExample/src/components/BasicInfoComponent.js +0 -27
  41. package/examples/apiExample/src/config/gen-test-user-sig.js +0 -64
  42. package/examples/apiExample/src/config/lib-generate-test-usersig.min.js +0 -7052
  43. package/examples/apiExample/src/config/nav.js +0 -136
  44. package/examples/apiExample/src/home.js +0 -16
  45. package/examples/apiExample/src/index.css +0 -21
  46. package/examples/apiExample/src/index.js +0 -12
  47. package/examples/apiExample/src/logo.svg +0 -1
  48. package/examples/apiExample/src/page/basic/screen-share/index.css +0 -52
  49. package/examples/apiExample/src/page/basic/screen-share/index.js +0 -223
  50. package/examples/apiExample/src/page/basic/setDevice/index.js +0 -262
  51. package/examples/apiExample/src/page/basic/setDevice/index.scss +0 -93
  52. package/examples/apiExample/src/page/basic/video-call/index.js +0 -521
  53. package/examples/apiExample/src/page/basic/video-call/index.scss +0 -93
  54. package/examples/apiExample/src/page/basic/video-call-init/index.js +0 -382
  55. package/examples/apiExample/src/page/basic/video-call-init/index.scss +0 -93
  56. package/examples/apiExample/src/page/basic/video-live/index.css +0 -37
  57. package/examples/apiExample/src/page/basic/video-live/index.js +0 -188
  58. package/examples/apiExample/src/page/layout.js +0 -22
  59. package/examples/apiExample/src/page/layout.scss +0 -76
  60. package/examples/apiExample/src/utils/utils.js +0 -35
  61. package/examples/jsExample/assets/css/bootstrap-material-design.css +0 -12169
  62. package/examples/jsExample/assets/css/bootstrap-material-design.min.css +0 -8
  63. package/examples/jsExample/assets/css/common.css +0 -48
  64. package/examples/jsExample/assets/icon/iconfont.js +0 -1
  65. package/examples/jsExample/assets/js/bootstrap-material-design.js +0 -6939
  66. package/examples/jsExample/assets/js/bootstrap-material-design.js.map +0 -1
  67. package/examples/jsExample/assets/js/bootstrap-material-design.min.js +0 -1
  68. package/examples/jsExample/assets/js/graph.js +0 -695
  69. package/examples/jsExample/assets/js/jquery-3.2.1.min.js +0 -4
  70. package/examples/jsExample/assets/js/jquery-3.2.1.slim.min.js +0 -4
  71. package/examples/jsExample/assets/js/lib-generate-test-usersig.min.js +0 -2
  72. package/examples/jsExample/assets/js/popper.js +0 -2442
  73. package/examples/jsExample/index.html +0 -57
  74. package/examples/jsExample/rtc/css/common.css +0 -82
  75. package/examples/jsExample/rtc/index.html +0 -107
  76. package/examples/jsExample/rtc/js/index.js +0 -142
  77. package/examples/vueDemo/LICENSE +0 -21
  78. package/examples/vueDemo/README.md +0 -144
  79. package/examples/vueDemo/README_EN.md +0 -136
  80. package/examples/vueDemo/av_processing.wasm +0 -0
  81. package/examples/vueDemo/index.html +0 -23
  82. package/examples/vueDemo/package-lock.json +0 -1375
  83. package/examples/vueDemo/package.json +0 -36
  84. package/examples/vueDemo/src/App.vue +0 -12
  85. package/examples/vueDemo/src/api/index.js +0 -59
  86. package/examples/vueDemo/src/assets/css/color-dark.css +0 -28
  87. package/examples/vueDemo/src/assets/css/icon.css +0 -4
  88. package/examples/vueDemo/src/assets/css/main.css +0 -177
  89. package/examples/vueDemo/src/assets/img/img.jpg +0 -0
  90. package/examples/vueDemo/src/assets/img/login-bg.jpg +0 -0
  91. package/examples/vueDemo/src/components/Header.vue +0 -172
  92. package/examples/vueDemo/src/components/Sidebar.vue +0 -117
  93. package/examples/vueDemo/src/components/Tags.vue +0 -174
  94. package/examples/vueDemo/src/components/tendency.vue +0 -206
  95. package/examples/vueDemo/src/components/trtc/main-menu.vue +0 -50
  96. package/examples/vueDemo/src/components/trtc/nav-bar.vue +0 -53
  97. package/examples/vueDemo/src/components/trtc/show-screen-capture.vue +0 -118
  98. package/examples/vueDemo/src/components/trtc/trtc-state-check.vue +0 -117
  99. package/examples/vueDemo/src/config/gen-test-user-sig.js +0 -67
  100. package/examples/vueDemo/src/config/lib-generate-test-usersig.min.js +0 -7052
  101. package/examples/vueDemo/src/main.js +0 -11
  102. package/examples/vueDemo/src/plugins/element.js +0 -17
  103. package/examples/vueDemo/src/router/index.js +0 -73
  104. package/examples/vueDemo/src/store/sidebar.js +0 -17
  105. package/examples/vueDemo/src/store/tags.js +0 -48
  106. package/examples/vueDemo/src/utils/i18n.js +0 -24
  107. package/examples/vueDemo/src/utils/request.js +0 -34
  108. package/examples/vueDemo/src/utils/utils.js +0 -35
  109. package/examples/vueDemo/src/views/Home.vue +0 -46
  110. package/examples/vueDemo/src/views/I18n.vue +0 -40
  111. package/examples/vueDemo/src/views/Icon.vue +0 -229
  112. package/examples/vueDemo/src/views/basic/trtc.vue +0 -194
  113. package/examples/vueDemo/src/views/feature/index.vue +0 -259
  114. package/examples/vueDemo/src/views/github/index.vue +0 -243
  115. package/examples/vueDemo/src/views/improve/live-index.vue +0 -256
  116. package/examples/vueDemo/src/views/improve/live-room-anchor.vue +0 -689
  117. package/examples/vueDemo/src/views/improve/live-room-audience.vue +0 -383
  118. package/examples/vueDemo/src/views/sdkAppId/index.vue +0 -284
  119. package/examples/vueDemo/vite.config.js +0 -18
  120. package/examples/vueDemo/worker.js +0 -22
  121. package/karma.conf.js +0 -99
  122. package/scripts/publish.js +0 -86
  123. package/src/Camera.ts +0 -80
  124. package/src/Mic.ts +0 -145
  125. package/src/common/IError.ts +0 -6
  126. package/src/common/ITRTCCloud.ts +0 -68
  127. package/src/common/constants.ts +0 -116
  128. package/src/common/trtc-code.ts +0 -43
  129. package/src/common/trtc-define.ts +0 -1007
  130. package/src/common/trtc-event.ts +0 -29
  131. package/src/index.ts +0 -1672
  132. package/src/utils/environment.js +0 -297
  133. package/src/utils/raf.js +0 -131
  134. package/src/utils/time.js +0 -22
  135. package/src/utils/utils.ts +0 -71
  136. package/src/utils/uuid.js +0 -12
  137. package/test/unit/env.test.js +0 -25
  138. package/test/unit/get-user-media.test.js +0 -40
  139. package/test/unit/ice-parser.test.js +0 -23
  140. package/test/unit/sdp.test.js +0 -45
  141. package/test/unit/signal.test.js +0 -78
  142. package/tsconfig.json +0 -32
  143. /package/{build/template/npm-package/README.md → README.md} +0 -0
@@ -1,45 +0,0 @@
1
- import log from '../../src/utils/log/logger';
2
- import { parse, write } from '../../src/rtc/sdp';
3
-
4
- describe('sdp.js: ', () => {
5
- it('parse() test', () => {
6
- log.debug('sdp.parse() test');
7
- const sdp =
8
- 'v=0\r\no=- 7595655801978680453 2 IN IP4 112.90.139.105\r\ns=-\r\nt=0 0\r\na=ice-lite\r\na=group:BUNDLE 0 1 2\r\na=msid-semantic: WMS 5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:3b6b\r\na=ice-pwd:2883f90e44250b741b8df143\r\na=fingerprint:sha-256 50:F3:03:1E:21:24:39:10:00:DD:21:1E:56:DC:43:24:10:FF:79:2F:43:F8:48:5D:3E:E7:F6:4E:9C:EC:F9:AE\r\na=setup:actpass\r\na=mid:0\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=rtcp-fb:111 transport-cc\r\na=rtcp-fb:111 nack\r\na=fmtp:111 minptime=20\r\na=rtpmap:126 telephone-event/8000\r\na=ssrc:16842870 cname:YZcxBwerFFm6GH69\r\na=ssrc:16842870 msid:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV 128f4fa0-81dd-4c3a-bbcd-22e71e29d178\r\na=ssrc:16842870 mslabel:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\na=ssrc:16842870 label:128f4fa0-81dd-4c3a-bbcd-22e71e29d178\r\nm=video 9 UDP/TLS/RTP/SAVPF 100 102 125 127\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:3b6b\r\na=ice-pwd:2883f90e44250b741b8df143\r\na=fingerprint:sha-256 50:F3:03:1E:21:24:39:10:00:DD:21:1E:56:DC:43:24:10:FF:79:2F:43:F8:48:5D:3E:E7:F6:4E:9C:EC:F9:AE\r\na=setup:actpass\r\na=mid:1\r\na=extmap:2 urn:ietf:params:rtp-hdrext:toffset\r\na=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:4 urn:3gpp:video-orientation\r\na=extmap:5 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay\r\na=sendrecv\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:100 H264/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtcp-fb:100 transport-cc\r\na=fmtp:100 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001f\r\na=rtpmap:102 H264/90000\r\na=rtcp-fb:102 ccm fir\r\na=rtcp-fb:102 nack\r\na=rtcp-fb:102 nack pli\r\na=rtcp-fb:102 goog-remb\r\na=rtcp-fb:102 transport-cc\r\na=fmtp:102 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\r\na=rtpmap:125 H264/90000\r\na=rtcp-fb:125 ccm fir\r\na=rtcp-fb:125 nack\r\na=rtcp-fb:125 nack pli\r\na=rtcp-fb:125 goog-remb\r\na=rtcp-fb:125 transport-cc\r\na=fmtp:125 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=4d0032\r\na=rtpmap:127 H264/90000\r\na=rtcp-fb:127 ccm fir\r\na=rtcp-fb:127 nack\r\na=rtcp-fb:127 nack pli\r\na=rtcp-fb:127 goog-remb\r\na=rtcp-fb:127 transport-cc\r\na=fmtp:127 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=640032\r\na=ssrc-group:FID 33717679 50468816\r\na=ssrc:33717679 cname:ovaCctnHP9Asci9c\r\na=ssrc:33717679 msid:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV 1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc:33717679 mslabel:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\na=ssrc:33717679 label:1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc:50468816 cname:ovaCctnHP9Asci9c\r\na=ssrc:50468816 msid:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV 1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc:50468816 mslabel:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\na=ssrc:50468816 label:1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\nm=video 9 UDP/TLS/RTP/SAVPF 100 102 125 127\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:3b6b\r\na=ice-pwd:2883f90e44250b741b8df143\r\na=fingerprint:sha-256 50:F3:03:1E:21:24:39:10:00:DD:21:1E:56:DC:43:24:10:FF:79:2F:43:F8:48:5D:3E:E7:F6:4E:9C:EC:F9:AE\r\na=setup:actpass\r\na=mid:2\r\na=extmap:2 urn:ietf:params:rtp-hdrext:toffset\r\na=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:4 urn:3gpp:video-orientation\r\na=extmap:5 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay\r\na=sendrecv\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:100 H264/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtcp-fb:100 transport-cc\r\na=fmtp:100 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001f\r\na=rtpmap:102 H264/90000\r\na=rtcp-fb:102 ccm fir\r\na=rtcp-fb:102 nack\r\na=rtcp-fb:102 nack pli\r\na=rtcp-fb:102 goog-remb\r\na=rtcp-fb:102 transport-cc\r\na=fmtp:102 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\r\na=rtpmap:125 H264/90000\r\na=rtcp-fb:125 ccm fir\r\na=rtcp-fb:125 nack\r\na=rtcp-fb:125 nack pli\r\na=rtcp-fb:125 goog-remb\r\na=rtcp-fb:125 transport-cc\r\na=fmtp:125 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=4d0032\r\na=rtpmap:127 H264/90000\r\na=rtcp-fb:127 ccm fir\r\na=rtcp-fb:127 nack\r\na=rtcp-fb:127 nack pli\r\na=rtcp-fb:127 goog-remb\r\na=rtcp-fb:127 transport-cc\r\na=fmtp:127 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=640032\r\n';
9
- const parsed = parse(sdp);
10
-
11
- log.debug('parsed sdp: ' + JSON.stringify(parsed));
12
- parsed.media.forEach(item => {
13
- log.debug('media item: ' + JSON.stringify(item));
14
- });
15
- expect(true).toBe(true);
16
- });
17
- it('parse() for plan-b test', () => {
18
- log.debug('sdp.parse() plan-b test');
19
- const sdpVideo =
20
- 'v=0\r\no=- 7595655801978680453 2 IN IP4 112.90.139.105\r\ns=-\r\nt=0 0\r\na=ice-lite\r\na=group:BUNDLE audio video\r\na=msid-semantic: WMS 5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:b8c5\r\na=ice-pwd:114b2fc06e45e3f1019f2eb1\r\na=fingerprint:sha-256 50:F3:03:1E:21:24:39:10:00:DD:21:1E:56:DC:43:24:10:FF:79:2F:43:F8:48:5D:3E:E7:F6:4E:9C:EC:F9:AE\r\na=setup:actpass\r\na=mid:audio\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=rtcp-fb:111 transport-cc\r\na=rtcp-fb:111 nack\r\na=fmtp:111 minptime=20\r\na=rtpmap:126 telephone-event/8000\r\na=ssrc:16904195 cname:YZcxBwerFFm6GH69\r\na=ssrc:16904195 msid:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV 128f4fa0-81dd-4c3a-bbcd-22e71e29d178\r\na=ssrc:16904195 mslabel:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\na=ssrc:16904195 label:128f4fa0-81dd-4c3a-bbcd-22e71e29d178\r\nm=video 9 UDP/TLS/RTP/SAVPF 100 102 125 127\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:b8c5\r\na=ice-pwd:114b2fc06e45e3f1019f2eb1\r\na=fingerprint:sha-256 50:F3:03:1E:21:24:39:10:00:DD:21:1E:56:DC:43:24:10:FF:79:2F:43:F8:48:5D:3E:E7:F6:4E:9C:EC:F9:AE\r\na=setup:actpass\r\na=mid:video\r\na=extmap:2 urn:ietf:params:rtp-hdrext:toffset\r\na=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:4 urn:3gpp:video-orientation\r\na=extmap:5 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay\r\na=sendrecv\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:100 H264/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtcp-fb:100 transport-cc\r\na=fmtp:100 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001f\r\na=rtpmap:102 H264/90000\r\na=rtcp-fb:102 ccm fir\r\na=rtcp-fb:102 nack\r\na=rtcp-fb:102 nack pli\r\na=rtcp-fb:102 goog-remb\r\na=rtcp-fb:102 transport-cc\r\na=fmtp:102 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\r\na=rtpmap:125 H264/90000\r\na=rtcp-fb:125 ccm fir\r\na=rtcp-fb:125 nack\r\na=rtcp-fb:125 nack pli\r\na=rtcp-fb:125 goog-remb\r\na=rtcp-fb:125 transport-cc\r\na=fmtp:125 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=4d0032\r\na=rtpmap:127 H264/90000\r\na=rtcp-fb:127 ccm fir\r\na=rtcp-fb:127 nack\r\na=rtcp-fb:127 nack pli\r\na=rtcp-fb:127 goog-remb\r\na=rtcp-fb:127 transport-cc\r\na=fmtp:127 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=640032\r\na=ssrc-group:FID 33722901 50468438\r\na=ssrc:33722901 cname:ovaCctnHP9Asci9c\r\na=ssrc:33722901 msid:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV 1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc:33722901 mslabel:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\na=ssrc:33722901 label:1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc:50468438 cname:ovaCctnHP9Asci9c\r\na=ssrc:50468438 msid:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV 1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc:50468438 mslabel:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\na=ssrc:50468438 label:1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\n';
21
- const sdpScreen =
22
- 'v=0\r\no=- 7595655801978680453 2 IN IP4 112.90.139.105\r\ns=-\r\nt=0 0\r\na=ice-lite\r\na=group:BUNDLE audio video\r\na=msid-semantic: WMS 5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:b8c5\r\na=ice-pwd:114b2fc06e45e3f1019f2eb1\r\na=fingerprint:sha-256 50:F3:03:1E:21:24:39:10:00:DD:21:1E:56:DC:43:24:10:FF:79:2F:43:F8:48:5D:3E:E7:F6:4E:9C:EC:F9:AE\r\na=setup:actpass\r\na=mid:audio\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=rtcp-fb:111 transport-cc\r\na=rtcp-fb:111 nack\r\na=fmtp:111 minptime=20\r\na=rtpmap:126 telephone-event/8000\r\na=ssrc:16904195 cname:YZcxBwerFFm6GH69\r\na=ssrc:16904195 msid:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV 128f4fa0-81dd-4c3a-bbcd-22e71e29d178\r\na=ssrc:16904195 mslabel:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\na=ssrc:16904195 label:128f4fa0-81dd-4c3a-bbcd-22e71e29d178\r\nm=video 9 UDP/TLS/RTP/SAVPF 100 102 125 127\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:b8c5\r\na=ice-pwd:114b2fc06e45e3f1019f2eb1\r\na=fingerprint:sha-256 50:F3:03:1E:21:24:39:10:00:DD:21:1E:56:DC:43:24:10:FF:79:2F:43:F8:48:5D:3E:E7:F6:4E:9C:EC:F9:AE\r\na=setup:actpass\r\na=mid:video\r\na=extmap:2 urn:ietf:params:rtp-hdrext:toffset\r\na=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:4 urn:3gpp:video-orientation\r\na=extmap:5 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay\r\na=sendrecv\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:100 H264/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtcp-fb:100 transport-cc\r\na=fmtp:100 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001f\r\na=rtpmap:102 H264/90000\r\na=rtcp-fb:102 ccm fir\r\na=rtcp-fb:102 nack\r\na=rtcp-fb:102 nack pli\r\na=rtcp-fb:102 goog-remb\r\na=rtcp-fb:102 transport-cc\r\na=fmtp:102 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\r\na=rtpmap:125 H264/90000\r\na=rtcp-fb:125 ccm fir\r\na=rtcp-fb:125 nack\r\na=rtcp-fb:125 nack pli\r\na=rtcp-fb:125 goog-remb\r\na=rtcp-fb:125 transport-cc\r\na=fmtp:125 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=4d0032\r\na=rtpmap:127 H264/90000\r\na=rtcp-fb:127 ccm fir\r\na=rtcp-fb:127 nack\r\na=rtcp-fb:127 nack pli\r\na=rtcp-fb:127 goog-remb\r\na=rtcp-fb:127 transport-cc\r\na=fmtp:127 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=640032\r\na=ssrc-group:FID 33722901 50468438\r\na=ssrc:33722901 cname:ovaCctnHP9Asci9c\r\na=ssrc:33722901 msid:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV 1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc:33722901 mslabel:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\na=ssrc:33722901 label:1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc:50468438 cname:ovaCctnHP9Asci9c\r\na=ssrc:50468438 msid:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV 1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc:50468438 mslabel:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\na=ssrc:50468438 label:1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc-group:FID 67630609 84375839\r\na=ssrc:67630609 cname:4/5g1VtM+e0/crtq\r\na=ssrc:67630609 msid:224d130c-7b5c-415b-aaa2-79c2eb5a6df2 571320a6-58ff-4ccd-867a-7e9dd61220fd\r\na=ssrc:67630609 mslabel:224d130c-7b5c-415b-aaa2-79c2eb5a6df2\r\na=ssrc:67630609 label:571320a6-58ff-4ccd-867a-7e9dd61220fd\r\na=ssrc:84375839 cname:4/5g1VtM+e0/crtq\r\na=ssrc:84375839 msid:224d130c-7b5c-415b-aaa2-79c2eb5a6df2 571320a6-58ff-4ccd-867a-7e9dd61220fd\r\na=ssrc:84375839 mslabel:224d130c-7b5c-415b-aaa2-79c2eb5a6df2\r\na=ssrc:84375839 label:571320a6-58ff-4ccd-867a-7e9dd61220fd\r\n';
23
- const parsedVideo = parse(sdpVideo);
24
- const parsedScreen = parse(sdpScreen);
25
-
26
- log.debug('parsed sdpVideo: ' + JSON.stringify(parsedVideo));
27
- parsedVideo.media.forEach(item => {
28
- log.debug('media item: ' + JSON.stringify(item));
29
- });
30
- log.debug('parsed sdpScreen: ' + JSON.stringify(parsedScreen));
31
- parsedScreen.media.forEach(item => {
32
- log.debug('media item: ' + JSON.stringify(item));
33
- });
34
- expect(true).toBe(true);
35
- });
36
-
37
- it('write() test', () => {
38
- const sdp =
39
- 'v=0\r\no=- 7595655801978680453 2 IN IP4 112.90.139.105\r\ns=-\r\nt=0 0\r\na=ice-lite\r\na=group:BUNDLE 0 1 2\r\na=msid-semantic: WMS 5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:3b6b\r\na=ice-pwd:2883f90e44250b741b8df143\r\na=fingerprint:sha-256 50:F3:03:1E:21:24:39:10:00:DD:21:1E:56:DC:43:24:10:FF:79:2F:43:F8:48:5D:3E:E7:F6:4E:9C:EC:F9:AE\r\na=setup:actpass\r\na=mid:0\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=rtcp-fb:111 transport-cc\r\na=rtcp-fb:111 nack\r\na=fmtp:111 minptime=20\r\na=rtpmap:126 telephone-event/8000\r\na=ssrc:16842870 cname:YZcxBwerFFm6GH69\r\na=ssrc:16842870 msid:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV 128f4fa0-81dd-4c3a-bbcd-22e71e29d178\r\na=ssrc:16842870 mslabel:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\na=ssrc:16842870 label:128f4fa0-81dd-4c3a-bbcd-22e71e29d178\r\nm=video 9 UDP/TLS/RTP/SAVPF 100 102 125 127\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:3b6b\r\na=ice-pwd:2883f90e44250b741b8df143\r\na=fingerprint:sha-256 50:F3:03:1E:21:24:39:10:00:DD:21:1E:56:DC:43:24:10:FF:79:2F:43:F8:48:5D:3E:E7:F6:4E:9C:EC:F9:AE\r\na=setup:actpass\r\na=mid:1\r\na=extmap:2 urn:ietf:params:rtp-hdrext:toffset\r\na=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:4 urn:3gpp:video-orientation\r\na=extmap:5 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay\r\na=sendrecv\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:100 H264/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtcp-fb:100 transport-cc\r\na=fmtp:100 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001f\r\na=rtpmap:102 H264/90000\r\na=rtcp-fb:102 ccm fir\r\na=rtcp-fb:102 nack\r\na=rtcp-fb:102 nack pli\r\na=rtcp-fb:102 goog-remb\r\na=rtcp-fb:102 transport-cc\r\na=fmtp:102 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\r\na=rtpmap:125 H264/90000\r\na=rtcp-fb:125 ccm fir\r\na=rtcp-fb:125 nack\r\na=rtcp-fb:125 nack pli\r\na=rtcp-fb:125 goog-remb\r\na=rtcp-fb:125 transport-cc\r\na=fmtp:125 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=4d0032\r\na=rtpmap:127 H264/90000\r\na=rtcp-fb:127 ccm fir\r\na=rtcp-fb:127 nack\r\na=rtcp-fb:127 nack pli\r\na=rtcp-fb:127 goog-remb\r\na=rtcp-fb:127 transport-cc\r\na=fmtp:127 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=640032\r\na=ssrc-group:FID 33717679 50468816\r\na=ssrc:33717679 cname:ovaCctnHP9Asci9c\r\na=ssrc:33717679 msid:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV 1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc:33717679 mslabel:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\na=ssrc:33717679 label:1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc:50468816 cname:ovaCctnHP9Asci9c\r\na=ssrc:50468816 msid:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV 1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\na=ssrc:50468816 mslabel:5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV\r\na=ssrc:50468816 label:1d7fc300-9889-4f94-9f35-c0bcc77a260d\r\nm=video 9 UDP/TLS/RTP/SAVPF 100 102 125 127\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:3b6b\r\na=ice-pwd:2883f90e44250b741b8df143\r\na=fingerprint:sha-256 50:F3:03:1E:21:24:39:10:00:DD:21:1E:56:DC:43:24:10:FF:79:2F:43:F8:48:5D:3E:E7:F6:4E:9C:EC:F9:AE\r\na=setup:actpass\r\na=mid:2\r\na=extmap:2 urn:ietf:params:rtp-hdrext:toffset\r\na=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:4 urn:3gpp:video-orientation\r\na=extmap:5 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay\r\na=sendrecv\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:100 H264/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtcp-fb:100 transport-cc\r\na=fmtp:100 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001f\r\na=rtpmap:102 H264/90000\r\na=rtcp-fb:102 ccm fir\r\na=rtcp-fb:102 nack\r\na=rtcp-fb:102 nack pli\r\na=rtcp-fb:102 goog-remb\r\na=rtcp-fb:102 transport-cc\r\na=fmtp:102 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\r\na=rtpmap:125 H264/90000\r\na=rtcp-fb:125 ccm fir\r\na=rtcp-fb:125 nack\r\na=rtcp-fb:125 nack pli\r\na=rtcp-fb:125 goog-remb\r\na=rtcp-fb:125 transport-cc\r\na=fmtp:125 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=4d0032\r\na=rtpmap:127 H264/90000\r\na=rtcp-fb:127 ccm fir\r\na=rtcp-fb:127 nack\r\na=rtcp-fb:127 nack pli\r\na=rtcp-fb:127 goog-remb\r\na=rtcp-fb:127 transport-cc\r\na=fmtp:127 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=640032\r\n';
40
- const parsed = parse(sdp);
41
- const res = write(parsed);
42
- log.debug('res: ' + res);
43
- expect(true).toBe(true);
44
- });
45
- });
@@ -1,78 +0,0 @@
1
- import log from '../../src/utils/log/logger';
2
- import SignalChannel from '../../src/signal/signal-channel';
3
- import {
4
- SignalEvent,
5
- ChannelEvent,
6
- ConnectionState,
7
- SignalCommand
8
- } from '../../src/signal/signal-event';
9
-
10
- describe('signal-channel.js: ', () => {
11
- it('SignalChannel.connect works as expected.', done => {
12
- log.info('setup SignalChannel');
13
- let setupResult = false;
14
- let joinResult = false;
15
- const sdkAppId = 1400188366;
16
- const userId = 'signal';
17
- const userSig =
18
- 'eJxNjd1ugjAARt*lt1uWllJ*luyC4cxwLsKAqFekQCHNsDRtB*riu48Qzbw9J*f7fkG2Tp9oVfU-whTmJBl4BhA8zpjXTBjecKYmqHkraHc1VEpeF9QUWNV3ga6-i1lNDNkQIs-DjnOV7Ci5YgVtzLyHCCEWhLd0YErzXkzCgoggC0P4Lw0-sDlxkE187Hq3P95O*PMtD6Mk1E4og3Pcu68ZGuNx-75fncONvQ52ZT7EXr7VH7RLROqexqiNuuXyuAgoc4ZSt6t412yCNP0K46A6*EOUabzw-eRBlWR8AZc-pZ1YQQ__';
19
- const signalChannel = new SignalChannel({
20
- sdkAppId,
21
- userId,
22
- userSig,
23
- url: 'wss://qcloud.rtc.qq.com:8687',
24
- backupUrl: 'wss://bk.rtc.qq.com:8687'
25
- });
26
-
27
- signalChannel.on(ChannelEvent.CONNECTION_STATE_CHANGED, evt => {
28
- log.info(`ConnectionStateChanged state: ${evt.state}`);
29
- if (evt.state === ConnectionState.CONNECTED) {
30
- setupResult = true;
31
- }
32
- });
33
-
34
- signalChannel.on(SignalEvent.CHANNEL_SETUP_SUCCESS, evt => {
35
- log.info('channel-setup-success event fired');
36
- expect(setupResult).toBe(true);
37
- const signalInfo = evt.signalInfo;
38
- const data = {
39
- openid: signalInfo.openId,
40
- tinyid: signalInfo.tinyId,
41
- peerconnectionport: '',
42
- useStrRoomid: false,
43
- roomid: String(666),
44
- sdkAppID: String(sdkAppId),
45
- socketid: signalInfo.socketId,
46
- userSig: userSig,
47
- privMapEncrypt: '',
48
- privMap: '',
49
- relayip: signalInfo.relayInnerIp,
50
- dataport: signalInfo.dataPort,
51
- stunport: signalInfo.stunPort,
52
- checkSigSeq: signalInfo.checkSigSeq,
53
- pstnBizType: 0,
54
- pstnPhoneNumber: null,
55
- recordId: null,
56
- pureAudioPushMod: null,
57
- role: 'user',
58
- jsSdkVersion: String(1001),
59
- sdpSemantics: 'unified-plan',
60
- browserVersion: 'Chrome/74.0.3729.169',
61
- closeLocalMedia: true,
62
- trtcscene: 1,
63
- trtcrole: 20
64
- };
65
- signalChannel.send(SignalCommand.JOIN_ROOM, data);
66
- });
67
-
68
- signalChannel.once(SignalEvent.JOIN_ROOM_RESULT, evt => {
69
- log.info('join-room-result event fired');
70
- joinResult = true;
71
- expect(joinResult).toBe(true);
72
- done();
73
- });
74
-
75
- log.info('connect to signal server');
76
- signalChannel.connect();
77
- });
78
- });
package/tsconfig.json DELETED
@@ -1,32 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "es5", // 编译目标
4
- "module": "commonjs", // 项目模块类型
5
- "declaration": false, // 自动创建声明文件(.d.ts)
6
- "baseUrl": ".",
7
- // "declarationDir": "dist/types", // 声明文件目录
8
- "allowJs": true, // 是否允许 js 代码
9
- "checkJs": false, // 检查 js 代码错误
10
- "sourceMap": false, // 是否生成 sourcemap 文件
11
- // "rootDir": "./src", // 项目源码根目录,用来控制编译输出的目录结构
12
- "outDir": "./build/ts2js", // 编译输出目录
13
- "strict": true, // 启用严格模式
14
- // "allowJs": true
15
- "skipLibCheck": true,
16
- "esModuleInterop": true,
17
- "resolveJsonModule": true,
18
- "moduleResolution": "node",
19
- "noImplicitAny": false,
20
- },
21
- "files": [
22
- "src/index.ts",
23
- ],
24
- "files.exclude": {
25
- "**/**/node_modules": true
26
- },
27
- "exclude": [
28
- "node_modules",
29
- "**/node_modules",
30
- "dist"
31
- ]
32
- }