@tencentcloud/sdk-mcp 1.3.8 → 1.4.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 (503) hide show
  1. package/index.js +1 -1
  2. package/index.js.map +1 -1
  3. package/package.json +2 -2
  4. package/resource/doc/{tuicallkit/android/faq.md → callkit/faq/android-faq.md} +75 -308
  5. package/resource/doc/{tuicallkit/faq/common/error_code.md → callkit/faq/common/error-code.md} +2 -2
  6. package/resource/doc/{tuicallkit/flutter/faq.md → callkit/faq/flutter-faq.md} +83 -315
  7. package/resource/doc/{tuicallkit/iOS/faq.md → callkit/faq/ios-faq.md} +76 -313
  8. package/resource/doc/{tuicallkit/react/faq.md → callkit/faq/web-faq.md} +78 -311
  9. package/resource/doc/callkit/preset/android/api.md +330 -0
  10. package/resource/doc/callkit/preset/android/integration.md +530 -0
  11. package/resource/doc/callkit/preset/flutter/api.md +401 -0
  12. package/resource/doc/{tuicallkit → callkit/preset}/flutter/integration.md +53 -273
  13. package/resource/doc/callkit/preset/ios/api.md +282 -0
  14. package/resource/doc/{tuicallkit/iOS → callkit/preset/ios}/integration.md +39 -120
  15. package/resource/doc/callkit/preset/react/api.md +600 -0
  16. package/resource/doc/{tuicallkit → callkit/preset}/react/integration.md +6 -6
  17. package/resource/doc/callkit/preset/vue/api.md +600 -0
  18. package/resource/doc/{tuicallkit → callkit/preset}/vue/integration.md +5 -5
  19. package/resource/doc/{chatuikit → chatkit}/android/faq.md +29 -37
  20. package/resource/doc/{chatuikit → chatkit}/android/features/theme.md +22 -166
  21. package/resource/doc/chatkit/android/integration.md +498 -0
  22. package/resource/doc/chatkit/faq/android_sdk/client-api.md +280 -0
  23. package/resource/doc/{chatuikit → chatkit}/faq/common/product.md +4 -17
  24. package/resource/doc/{chatuikit → chatkit}/faq/common/server.md +1 -2
  25. package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +183 -0
  26. package/resource/doc/{chatuikit → chatkit}/faq/flutter_sdk/faq.md +3 -3
  27. package/resource/doc/chatkit/faq/ios_sdk/client-api.md +279 -0
  28. package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/error_code.md +1 -1
  29. package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/faq.md +4 -4
  30. package/resource/doc/{chatuikit → chatkit}/flutter/features/theme.md +22 -166
  31. package/resource/doc/{chatuikit → chatkit}/flutter/integration.md +20 -95
  32. package/resource/doc/{chatuikit/iOS → chatkit/ios}/faq.md +29 -37
  33. package/resource/doc/{chatuikit/iOS → chatkit/ios}/features/theme.md +27 -176
  34. package/resource/doc/{chatuikit/iOS → chatkit/ios}/integration.md +78 -280
  35. package/resource/doc/{chatuikit/vue → chatkit/react}/components/avatar.md +0 -1
  36. package/resource/doc/{chatuikit → chatkit}/react/components/chat-header.md +7 -12
  37. package/resource/doc/{chatuikit → chatkit}/react/components/chat-setting.md +10 -17
  38. package/resource/doc/{chatuikit → chatkit}/react/components/chat.md +1 -1
  39. package/resource/doc/{chatuikit → chatkit}/react/components/component-list.md +0 -1
  40. package/resource/doc/{chatuikit → chatkit}/react/components/contact-list.md +122 -703
  41. package/resource/doc/chatkit/react/components/conversation-actions.md +174 -0
  42. package/resource/doc/chatkit/react/components/conversation-list.md +333 -0
  43. package/resource/doc/chatkit/react/components/conversation-preview.md +116 -0
  44. package/resource/doc/chatkit/react/components/conversation-search.md +57 -0
  45. package/resource/doc/{chatuikit → chatkit}/react/components/message-input.md +36 -186
  46. package/resource/doc/{chatuikit → chatkit}/react/components/message-list.md +21 -113
  47. package/resource/doc/chatkit/react/components/search.md +282 -0
  48. package/resource/doc/{chatuikit → chatkit}/react/components/tuikit.md +5 -26
  49. package/resource/doc/{chatuikit → chatkit}/react/integration.md +37 -104
  50. package/resource/doc/{chatuikit/react → chatkit/vue}/components/avatar.md +0 -1
  51. package/resource/doc/{chatuikit → chatkit}/vue/components/chat-header.md +7 -13
  52. package/resource/doc/{chatuikit → chatkit}/vue/components/chat-setting.md +13 -18
  53. package/resource/doc/{chatuikit → chatkit}/vue/components/chat.md +1 -2
  54. package/resource/doc/{chatuikit → chatkit}/vue/components/component-list.md +0 -1
  55. package/resource/doc/chatkit/vue/components/contact-list.md +271 -0
  56. package/resource/doc/chatkit/vue/components/conversation-actions.md +228 -0
  57. package/resource/doc/{chatuikit → chatkit}/vue/components/conversation-list.md +42 -316
  58. package/resource/doc/chatkit/vue/components/conversation-preview.md +213 -0
  59. package/resource/doc/chatkit/vue/components/conversation-search.md +50 -0
  60. package/resource/doc/{chatuikit → chatkit}/vue/components/message-input.md +1 -23
  61. package/resource/doc/{chatuikit → chatkit}/vue/components/message-list.md +23 -134
  62. package/resource/doc/{chatuikit → chatkit}/vue/components/search.md +73 -640
  63. package/resource/doc/chatkit/vue/components/tuikit.md +45 -0
  64. package/resource/doc/{chatuikit → chatkit}/vue/components/userpicker.md +4 -4
  65. package/resource/doc/{chatuikit → chatkit}/vue/faq.md +1 -1
  66. package/resource/doc/{chatuikit → chatkit}/vue/integration.md +53 -121
  67. package/resource/doc/livekit/core-sdk/live/android/api-reference/AudioEffectStore.md +283 -0
  68. package/resource/doc/livekit/core-sdk/live/android/api-reference/BarrageStore.md +148 -0
  69. package/resource/doc/livekit/core-sdk/live/android/api-reference/BattleStore.md +316 -0
  70. package/resource/doc/livekit/core-sdk/live/android/api-reference/CameraView.md +57 -0
  71. package/resource/doc/livekit/core-sdk/live/android/api-reference/CoGuestStore.md +419 -0
  72. package/resource/doc/livekit/core-sdk/live/android/api-reference/CoHostStore.md +325 -0
  73. package/resource/doc/livekit/core-sdk/live/android/api-reference/DeviceStore.md +436 -0
  74. package/resource/doc/livekit/core-sdk/live/android/api-reference/GiftStore.md +165 -0
  75. package/resource/doc/livekit/core-sdk/live/android/api-reference/LikeStore.md +49 -0
  76. package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveAudienceStore.md +239 -0
  77. package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveCoreView.md +74 -0
  78. package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveSeatStore.md +417 -0
  79. package/resource/doc/livekit/core-sdk/live/android/api-reference/LoginStore.md +207 -0
  80. package/resource/doc/livekit/{live → core-sdk/live}/android/live-audience-list.md +17 -88
  81. package/resource/doc/livekit/{live → core-sdk/live}/android/live-audio-effect.md +34 -192
  82. package/resource/doc/livekit/{live → core-sdk/live}/android/live-barrage.md +26 -139
  83. package/resource/doc/livekit/{live → core-sdk/live}/android/live-base-beauty.md +16 -99
  84. package/resource/doc/livekit/{live → core-sdk/live}/android/live-co-guest-interaction.md +54 -161
  85. package/resource/doc/livekit/{live → core-sdk/live}/android/live-gift.md +75 -455
  86. package/resource/doc/livekit/{live → core-sdk/live}/android/live-host-interaction.md +91 -338
  87. package/resource/doc/livekit/{live → core-sdk/live}/android/live-integration.md +108 -492
  88. package/resource/doc/livekit/{live → core-sdk/live}/android/live-live-list.md +27 -165
  89. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/AudioEffectStore.md +279 -0
  90. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BarrageStore.md +158 -0
  91. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BaseBeautyStore.md +155 -0
  92. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BattleStore.md +304 -0
  93. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoGuestStore.md +394 -0
  94. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoHostStore.md +303 -0
  95. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/DeviceStore.md +410 -0
  96. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/GiftStore.md +160 -0
  97. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LikeStore.md +51 -0
  98. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveAudienceStore.md +231 -0
  99. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveCoreView.md +143 -0
  100. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveSeatStore.md +375 -0
  101. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LoginStore.md +170 -0
  102. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audience-list.md +13 -91
  103. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audio-effect.md +34 -177
  104. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-barrage.md +18 -102
  105. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-base-beauty.md +24 -164
  106. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-co-guest-interaction.md +56 -161
  107. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-gift.md +66 -460
  108. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-host-interaction.md +117 -364
  109. package/resource/doc/livekit/core-sdk/live/flutter/live-integration.md +687 -0
  110. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-live-list.md +22 -161
  111. package/resource/doc/livekit/core-sdk/live/ios/api-reference/AudioEffectStore.md +287 -0
  112. package/resource/doc/livekit/core-sdk/live/ios/api-reference/BarrageStore.md +165 -0
  113. package/resource/doc/livekit/core-sdk/live/ios/api-reference/BaseBeautyStore.md +143 -0
  114. package/resource/doc/livekit/core-sdk/live/ios/api-reference/BattleStore.md +298 -0
  115. package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoGuestStore.md +349 -0
  116. package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoHostStore.md +297 -0
  117. package/resource/doc/livekit/core-sdk/live/ios/api-reference/DeviceStore.md +471 -0
  118. package/resource/doc/livekit/core-sdk/live/ios/api-reference/GiftStore.md +179 -0
  119. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LikeStore.md +49 -0
  120. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveAudienceStore.md +238 -0
  121. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveCoreView.md +74 -0
  122. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveSeatStore.md +412 -0
  123. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LoginStore.md +173 -0
  124. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audience-list.md +23 -96
  125. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audio-effect.md +33 -195
  126. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-barrage.md +35 -150
  127. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-base-beauty.md +20 -105
  128. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-co-guest-interaction.md +35 -140
  129. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-gift.md +77 -457
  130. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-host-interaction.md +70 -317
  131. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-integration.md +90 -473
  132. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-live-list.md +28 -163
  133. package/resource/doc/livekit/core-sdk/voice/android/voice-audience-list.md +264 -0
  134. package/resource/doc/livekit/core-sdk/voice/android/voice-audio-effect.md +226 -0
  135. package/resource/doc/livekit/core-sdk/voice/android/voice-barrage.md +456 -0
  136. package/resource/doc/livekit/core-sdk/voice/android/voice-co-guest-interaction.md +539 -0
  137. package/resource/doc/livekit/core-sdk/voice/android/voice-gift.md +453 -0
  138. package/resource/doc/livekit/core-sdk/voice/android/voice-host-interaction.md +516 -0
  139. package/resource/doc/livekit/core-sdk/voice/android/voice-integration.md +509 -0
  140. package/resource/doc/livekit/core-sdk/voice/android/voice-room-list.md +365 -0
  141. package/resource/doc/livekit/core-sdk/voice/flutter/voice-audience-list.md +259 -0
  142. package/resource/doc/livekit/core-sdk/voice/flutter/voice-audio-effect.md +596 -0
  143. package/resource/doc/livekit/core-sdk/voice/flutter/voice-barrage.md +494 -0
  144. package/resource/doc/livekit/core-sdk/voice/flutter/voice-co-guest-interaction.md +516 -0
  145. package/resource/doc/livekit/core-sdk/voice/flutter/voice-gift.md +418 -0
  146. package/resource/doc/livekit/core-sdk/voice/flutter/voice-integration.md +563 -0
  147. package/resource/doc/livekit/core-sdk/voice/flutter/voice-room-list.md +709 -0
  148. package/resource/doc/livekit/core-sdk/voice/ios/voice-audience-list.md +262 -0
  149. package/resource/doc/livekit/core-sdk/voice/ios/voice-audio-effect.md +211 -0
  150. package/resource/doc/livekit/core-sdk/voice/ios/voice-barrage.md +414 -0
  151. package/resource/doc/livekit/core-sdk/voice/ios/voice-co-guest-interaction.md +492 -0
  152. package/resource/doc/livekit/core-sdk/voice/ios/voice-gift.md +405 -0
  153. package/resource/doc/livekit/core-sdk/voice/ios/voice-host-interaction.md +611 -0
  154. package/resource/doc/livekit/core-sdk/voice/ios/voice-integration.md +478 -0
  155. package/resource/doc/livekit/core-sdk/voice/ios/voice-room-list.md +336 -0
  156. package/resource/doc/livekit/core-sdk/voice/uni-app/voice-audience-list.md +234 -0
  157. package/resource/doc/livekit/core-sdk/voice/uni-app/voice-audio-effect.md +218 -0
  158. package/resource/doc/livekit/core-sdk/voice/uni-app/voice-barrage.md +376 -0
  159. package/resource/doc/livekit/core-sdk/voice/uni-app/voice-co-guest-interaction.md +648 -0
  160. package/resource/doc/livekit/core-sdk/voice/uni-app/voice-gift.md +362 -0
  161. package/resource/doc/livekit/core-sdk/voice/uni-app/voice-integration.md +323 -0
  162. package/resource/doc/livekit/core-sdk/voice/uni-app/voice-room-list.md +470 -0
  163. package/resource/doc/livekit/faq/common/{error_code.md → error-code.md} +2 -3
  164. package/resource/doc/livekit/preset/live/vue/api-reference/index.md +780 -0
  165. package/resource/doc/livekit/preset/live/vue/components/barrage.md +291 -0
  166. package/resource/doc/livekit/{live → preset/live}/vue/components/co-guest-panel.md +9 -48
  167. package/resource/doc/livekit/{live → preset/live}/vue/components/live-audience-list.md +27 -145
  168. package/resource/doc/livekit/{live → preset/live}/vue/components/live-scene-panel.md +13 -76
  169. package/resource/doc/livekit/{live → preset/live}/vue/components/live-view.md +33 -224
  170. package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +211 -0
  171. package/resource/doc/livekit/preset/live/vue/faq.md +1 -0
  172. package/resource/doc/livekit/preset/live/vue/live-list-integration.md +244 -0
  173. package/resource/doc/livekit/preset/live/vue/live-player-desk-integration.md +301 -0
  174. package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +307 -0
  175. package/resource/doc/livekit/preset/live/vue/live-pusher-integration.md +754 -0
  176. package/resource/doc/roomkit/android/features/call-user-to-room.md +234 -0
  177. package/resource/doc/roomkit/android/features/room-participant-state.md +850 -0
  178. package/resource/doc/roomkit/android/features/room-state.md +358 -0
  179. package/resource/doc/roomkit/android/features/schedule-room.md +336 -0
  180. package/resource/doc/roomkit/android/integration.md +433 -0
  181. package/resource/doc/roomkit/{common/error_code.md → faq/common/error-code.md} +1 -1
  182. package/resource/doc/roomkit/flutter/features/call-user-to-room.md +228 -0
  183. package/resource/doc/roomkit/flutter/features/room-participant-state.md +796 -0
  184. package/resource/doc/roomkit/flutter/features/room-state.md +324 -0
  185. package/resource/doc/roomkit/flutter/features/schedule-room.md +324 -0
  186. package/resource/doc/roomkit/flutter/integration.md +405 -0
  187. package/resource/doc/roomkit/ios/features/call-user-to-room.md +226 -0
  188. package/resource/doc/roomkit/ios/features/room-participant-state.md +821 -0
  189. package/resource/doc/roomkit/ios/features/room-state.md +320 -0
  190. package/resource/doc/roomkit/ios/features/schedule-room.md +318 -0
  191. package/resource/doc/roomkit/ios/integration.md +384 -0
  192. package/resource/doc/roomkit/vue/faq.md +1 -0
  193. package/resource/doc/roomkit/vue/features/call-user-to-room.md +17 -53
  194. package/resource/doc/roomkit/vue/features/device-detection.md +30 -48
  195. package/resource/doc/roomkit/vue/features/device-state.md +24 -44
  196. package/resource/doc/roomkit/vue/features/free-beauty-panel.md +13 -36
  197. package/resource/doc/roomkit/vue/features/room-chat.md +31 -89
  198. package/resource/doc/roomkit/vue/features/room-participant-state.md +28 -50
  199. package/resource/doc/roomkit/vue/features/room-state.md +25 -36
  200. package/resource/doc/roomkit/vue/features/room-view.md +30 -127
  201. package/resource/doc/roomkit/vue/features/schedule-room.md +9 -40
  202. package/resource/doc/roomkit/vue/features/screen-share.md +22 -90
  203. package/resource/doc/roomkit/vue/features/virtual-background.md +13 -34
  204. package/resource/doc/roomkit/vue/integration.md +118 -282
  205. package/resource/doc/rtcengine/faq/common/userSig.md +17 -141
  206. package/resource/doc/rtcengine/faq/web/web.md +15 -22
  207. package/resource/doc/rtcengine/web/api.md +17 -21
  208. package/resource/doc/rtcengine/web/how_to_integrated_web_sdk.md +4 -10
  209. package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +4 -8
  210. package/resource/doc/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +3 -3
  211. package/resource/doc/rtcengine/web/plugin/21-advanced-auto-play-policy.md +2 -3
  212. package/resource/doc/rtcengine/web/plugin/22-advanced-audio-mixer.md +6 -6
  213. package/resource/doc/rtcengine/web/plugin/23-advanced-support-detection.md +2 -2
  214. package/resource/doc/rtcengine/web/plugin/24-advanced-network-quality.md +2 -4
  215. package/resource/doc/rtcengine/web/plugin/25-advanced-device-change.md +1 -2
  216. package/resource/doc/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +2 -6
  217. package/resource/doc/rtcengine/web/plugin/27-advanced-small-stream.md +13 -14
  218. package/resource/doc/rtcengine/web/plugin/28-advanced-beauty.md +10 -90
  219. package/resource/doc/rtcengine/web/plugin/31-advanced-plugins-overview.md +5 -8
  220. package/resource/doc/rtcengine/web/plugin/34-advanced-proxy.md +31 -35
  221. package/resource/doc/rtcengine/web/plugin/35-advanced-ai-denoiser.md +0 -2
  222. package/resource/doc/rtcengine/web/plugin/36-advanced-virtual-background.md +7 -49
  223. package/resource/doc/rtcengine/web/plugin/37-advanced-voice-changer.md +1 -1
  224. package/resource/doc/rtcengine/web/plugin/39-advanced-video-decoder.md +0 -3
  225. package/resource/doc/rtcengine/web/plugin/40-advanced-video-mixer.md +20 -20
  226. package/resource/doc/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +1 -1
  227. package/resource/doc/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +4 -4
  228. package/resource/doc/rtcengine/web/plugin/43-advanced-face-detection.md +3 -3
  229. package/resource/doc/trtc/C++/ITRTCCloud.md +718 -2847
  230. package/resource/doc/trtc/C++/ITRTCStatistics.md +53 -308
  231. package/resource/doc/trtc/C++/ITXAudioEffectManager.md +207 -1041
  232. package/resource/doc/trtc/C++/ITXDeviceManager.md +127 -768
  233. package/resource/doc/trtc/C++/TRTCCloudCallback.md +634 -2259
  234. package/resource/doc/trtc/C++/TRTCTypeDef.md +726 -3465
  235. package/resource/doc/trtc/C++/TXLiteAVCode.md +117 -916
  236. package/resource/doc/trtc/android/TRTCCloud.md +638 -2612
  237. package/resource/doc/trtc/android/TRTCCloudDef.md +769 -3697
  238. package/resource/doc/trtc/android/TRTCCloudListener.md +609 -2070
  239. package/resource/doc/trtc/android/TRTCStatistics.md +48 -278
  240. package/resource/doc/trtc/android/TXAudioEffectManager.md +207 -1049
  241. package/resource/doc/trtc/android/TXBeautyManager.md +127 -704
  242. package/resource/doc/trtc/android/TXDeviceManager.md +51 -318
  243. package/resource/doc/trtc/android/TXLiteAVCode.md +115 -900
  244. package/resource/doc/trtc/iOS/TRTCCloud.md +726 -2930
  245. package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +580 -2099
  246. package/resource/doc/trtc/iOS/TRTCStatistics.md +48 -278
  247. package/resource/doc/trtc/iOS/TXAudioEffectManager.md +179 -896
  248. package/resource/doc/trtc/iOS/TXBeautyManager.md +128 -710
  249. package/resource/doc/trtc/iOS/TXDeviceManager.md +129 -772
  250. package/resource/doc/trtc/iOS/TXLiteAVCode.md +117 -915
  251. package/resource/doc/trtc/iOS/TXLiveSDKTypeDef.md +747 -3559
  252. package/server.js +1 -5
  253. package/server.js.map +1 -1
  254. package/tools/call/get_callkit_api.js +32 -0
  255. package/tools/call/get_callkit_api.js.map +1 -0
  256. package/tools/call/get_native_call_uikit_integration.js +34 -0
  257. package/tools/call/get_native_call_uikit_integration.js.map +1 -0
  258. package/tools/call/{get-web-call-integration.js → get_web_call_uikit_integration.js} +13 -8
  259. package/tools/call/get_web_call_uikit_integration.js.map +1 -0
  260. package/tools/chat/get_native_chat_uikit_feature_detail.js +34 -0
  261. package/tools/chat/get_native_chat_uikit_feature_detail.js.map +1 -0
  262. package/tools/chat/get_native_chat_uikit_integration.js +45 -0
  263. package/tools/chat/get_native_chat_uikit_integration.js.map +1 -0
  264. package/tools/chat/get_web_chat_uikit_component_detail.js +34 -0
  265. package/tools/chat/get_web_chat_uikit_component_detail.js.map +1 -0
  266. package/tools/chat/get_web_chat_uikit_integration.js +45 -0
  267. package/tools/chat/get_web_chat_uikit_integration.js.map +1 -0
  268. package/tools/common/get_faq.js +265 -0
  269. package/tools/common/get_faq.js.map +1 -0
  270. package/tools/common/{get-usersig.js → get_usersig.js} +6 -3
  271. package/tools/common/get_usersig.js.map +1 -0
  272. package/tools/common/present_framework_choice.js +63 -0
  273. package/tools/common/present_framework_choice.js.map +1 -0
  274. package/tools/definitions/get_callkit_api_def.js +28 -0
  275. package/tools/definitions/get_callkit_api_def.js.map +1 -0
  276. package/tools/definitions/get_faq_def.js +18 -19
  277. package/tools/definitions/get_faq_def.js.map +1 -1
  278. package/tools/definitions/get_native_call_uikit_integration_def.js +15 -18
  279. package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
  280. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +31 -0
  281. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +1 -0
  282. package/tools/definitions/get_native_chat_uikit_integration_def.js +16 -19
  283. package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
  284. package/tools/definitions/get_native_livekit_core_features_def.js +33 -0
  285. package/tools/definitions/get_native_livekit_core_features_def.js.map +1 -0
  286. package/tools/definitions/get_native_livekit_core_integration_def.js +33 -0
  287. package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -0
  288. package/tools/definitions/get_native_trtc_sdk_docs_def.js +32 -0
  289. package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +1 -0
  290. package/tools/definitions/get_usersig_def.js +17 -24
  291. package/tools/definitions/get_usersig_def.js.map +1 -1
  292. package/tools/definitions/get_web_call_uikit_integration_def.js +15 -7
  293. package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
  294. package/tools/definitions/get_web_chat_uikit_component_detail_def.js +17 -49
  295. package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +1 -1
  296. package/tools/definitions/get_web_chat_uikit_integration_def.js +16 -19
  297. package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
  298. package/tools/definitions/get_web_live_uikit_integration_def.js +13 -18
  299. package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
  300. package/tools/definitions/get_web_livekit_api_def.js +27 -0
  301. package/tools/definitions/get_web_livekit_api_def.js.map +1 -0
  302. package/tools/definitions/get_web_livekit_component_detail_def.js +29 -0
  303. package/tools/definitions/get_web_livekit_component_detail_def.js.map +1 -0
  304. package/tools/definitions/get_web_room_uikit_integration_def.js +13 -30
  305. package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
  306. package/tools/definitions/get_web_roomkit_feature_detail_def.js +30 -0
  307. package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +1 -0
  308. package/tools/definitions/get_web_trtc_sdk_api_def.js +25 -0
  309. package/tools/definitions/get_web_trtc_sdk_api_def.js.map +1 -0
  310. package/tools/definitions/get_web_trtc_sdk_integration_def.js +25 -0
  311. package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +1 -0
  312. package/tools/definitions/get_web_trtc_sdk_plugin_def.js +25 -0
  313. package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +1 -0
  314. package/tools/definitions/present_framework_choice_def.js +23 -12
  315. package/tools/definitions/present_framework_choice_def.js.map +1 -1
  316. package/tools/index.js +47 -59
  317. package/tools/index.js.map +1 -1
  318. package/tools/live/get_native_livekit_core_features.js +65 -0
  319. package/tools/live/get_native_livekit_core_features.js.map +1 -0
  320. package/tools/live/get_native_livekit_core_integration.js +59 -0
  321. package/tools/live/get_native_livekit_core_integration.js.map +1 -0
  322. package/tools/live/get_web_live_uikit_integration.js +48 -0
  323. package/tools/live/get_web_live_uikit_integration.js.map +1 -0
  324. package/tools/live/get_web_livekit_api.js +32 -0
  325. package/tools/live/get_web_livekit_api.js.map +1 -0
  326. package/tools/live/get_web_livekit_component_detail.js +34 -0
  327. package/tools/live/get_web_livekit_component_detail.js.map +1 -0
  328. package/tools/room/{get-web-room-integration.js → get_web_room_uikit_integration.js} +13 -14
  329. package/tools/room/get_web_room_uikit_integration.js.map +1 -0
  330. package/tools/room/{get-web-room-feature-detail.js → get_web_roomkit_feature_detail.js} +30 -31
  331. package/tools/room/get_web_roomkit_feature_detail.js.map +1 -0
  332. package/tools/rtcengine/get_web_trtc_sdk_api.js +31 -0
  333. package/tools/rtcengine/get_web_trtc_sdk_api.js.map +1 -0
  334. package/tools/rtcengine/get_web_trtc_sdk_integration.js +31 -0
  335. package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +1 -0
  336. package/tools/rtcengine/get_web_trtc_sdk_plugin.js +31 -0
  337. package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +1 -0
  338. package/tools/trtc/get_native_trtc_sdk_docs.js +73 -0
  339. package/tools/trtc/get_native_trtc_sdk_docs.js.map +1 -0
  340. package/utils/generate-structured-result.js +61 -17
  341. package/utils/generate-structured-result.js.map +1 -1
  342. package/utils/report-cls-client.js +12 -1
  343. package/utils/report-cls-client.js.map +1 -1
  344. package/utils/report-es-client.js +1 -1
  345. package/resource/doc/chatuikit/android/integration.md +0 -612
  346. package/resource/doc/chatuikit/android/workflow.md +0 -0
  347. package/resource/doc/chatuikit/faq/android_sdk/client-api.md +0 -1376
  348. package/resource/doc/chatuikit/faq/flutter_sdk/client-api.md +0 -860
  349. package/resource/doc/chatuikit/faq/ios_sdk/client-api.md +0 -1371
  350. package/resource/doc/chatuikit/flutter/workflow.md +0 -816
  351. package/resource/doc/chatuikit/iOS/workflow.md +0 -0
  352. package/resource/doc/chatuikit/react/components/conversation-list.md +0 -765
  353. package/resource/doc/chatuikit/react/components/search.md +0 -885
  354. package/resource/doc/chatuikit/react/create-group.md +0 -22
  355. package/resource/doc/chatuikit/react/init.md +0 -25
  356. package/resource/doc/chatuikit/react/workflow.md +0 -254
  357. package/resource/doc/chatuikit/uniapp-app/faq.md +0 -0
  358. package/resource/doc/chatuikit/uniapp-app/integration.md +0 -619
  359. package/resource/doc/chatuikit/uniapp-app/workflow.md +0 -576
  360. package/resource/doc/chatuikit/vue/components/contact-list.md +0 -679
  361. package/resource/doc/chatuikit/vue/components/tuikit.md +0 -110
  362. package/resource/doc/chatuikit/vue/create-group.md +0 -26
  363. package/resource/doc/chatuikit/vue/init.md +0 -35
  364. package/resource/doc/chatuikit/vue/workflow.md +0 -395
  365. package/resource/doc/livekit/live/android/workflow.md +0 -322
  366. package/resource/doc/livekit/live/flutter/live-integration.md +0 -1029
  367. package/resource/doc/livekit/live/flutter/workflow.md +0 -353
  368. package/resource/doc/livekit/live/ios/workflow.md +0 -352
  369. package/resource/doc/livekit/live/vue/components/barrage.md +0 -615
  370. package/resource/doc/livekit/live/vue/components/stream-mixer.md +0 -442
  371. package/resource/doc/livekit/live/vue/faq.md +0 -0
  372. package/resource/doc/livekit/live/vue/live-list-integration.md +0 -195
  373. package/resource/doc/livekit/live/vue/live-player-desk-integration.md +0 -293
  374. package/resource/doc/livekit/live/vue/live-player-h5-integration.md +0 -381
  375. package/resource/doc/livekit/live/vue/live-pusher-integration.md +0 -598
  376. package/resource/doc/livekit/live/vue/states/live-state.md +0 -2656
  377. package/resource/doc/livekit/live/vue/workflow.md +0 -219
  378. package/resource/doc/native_live/android/V2TXLiveCode_api_android.md +0 -334
  379. package/resource/doc/native_live/android/V2TXLiveDef_api_android.md +0 -434
  380. package/resource/doc/native_live/android/V2TXLivePlayerObserver_api_android.md +0 -685
  381. package/resource/doc/native_live/android/V2TXLivePlayer_api_android.md +0 -712
  382. package/resource/doc/native_live/android/V2TXLivePremier_api_android.md +0 -284
  383. package/resource/doc/native_live/android/V2TXLivePusherObserver_api_android.md +0 -849
  384. package/resource/doc/native_live/android/V2TXLivePusher_api_android.md +0 -1046
  385. package/resource/doc/native_live/flutter/V2TXLiveCode_api_flutter.md +0 -460
  386. package/resource/doc/native_live/flutter/V2TXLiveDef_api_flutter.md +0 -558
  387. package/resource/doc/native_live/flutter/V2TXLivePlayerObserver_api_flutter.md +0 -879
  388. package/resource/doc/native_live/flutter/V2TXLivePlayer_api_flutter.md +0 -668
  389. package/resource/doc/native_live/flutter/V2TXLivePremier_api_flutter.md +0 -456
  390. package/resource/doc/native_live/flutter/V2TXLivePusherObserver_api_flutter.md +0 -332
  391. package/resource/doc/native_live/flutter/V2TXLivePusher_api_flutter.md +0 -748
  392. package/resource/doc/native_live/iOS/V2TXLiveCode_api_iOS.md +0 -328
  393. package/resource/doc/native_live/iOS/V2TXLiveDef_api_iOS.md +0 -505
  394. package/resource/doc/native_live/iOS/V2TXLivePlayerObserver_api_iOS.md +0 -507
  395. package/resource/doc/native_live/iOS/V2TXLivePlayer_api_iOS.md +0 -676
  396. package/resource/doc/native_live/iOS/V2TXLivePremier_api_iOS.md +0 -284
  397. package/resource/doc/native_live/iOS/V2TXLivePusherObserver_api_iOS.md +0 -820
  398. package/resource/doc/native_live/iOS/V2TXLivePusher_api_iOS.md +0 -1065
  399. package/resource/doc/roomkit/vue/features/workflow.md +0 -553
  400. package/resource/doc/roomkit/vue/workflow.md +0 -487
  401. package/resource/doc/tuicallkit/android/integration.md +0 -302
  402. package/resource/doc/tuicallkit/android/workflow.md +0 -0
  403. package/resource/doc/tuicallkit/faq/android_sdk/call-observer-api.md +0 -786
  404. package/resource/doc/tuicallkit/faq/android_sdk/callkit-api.md +0 -663
  405. package/resource/doc/tuicallkit/faq/flutter_sdk/call-define-api.md +0 -932
  406. package/resource/doc/tuicallkit/faq/flutter_sdk/call-observer-api.md +0 -926
  407. package/resource/doc/tuicallkit/faq/flutter_sdk/callkit-api.md +0 -452
  408. package/resource/doc/tuicallkit/faq/ios_sdk/call-observer-api.md +0 -779
  409. package/resource/doc/tuicallkit/faq/ios_sdk/callkit-api.md +0 -635
  410. package/resource/doc/tuicallkit/flutter/workflow.md +0 -331
  411. package/resource/doc/tuicallkit/react/api.md +0 -1512
  412. package/resource/doc/tuicallkit/vue/api.md +0 -1512
  413. package/resource/doc/tuicallkit/vue/faq.md +0 -986
  414. package/tools/call/get-native-call-integration.js +0 -43
  415. package/tools/call/get-native-call-integration.js.map +0 -1
  416. package/tools/call/get-web-call-api.js +0 -27
  417. package/tools/call/get-web-call-api.js.map +0 -1
  418. package/tools/call/get-web-call-integration.js.map +0 -1
  419. package/tools/chat/get-native-chat-feature-detail.js +0 -30
  420. package/tools/chat/get-native-chat-feature-detail.js.map +0 -1
  421. package/tools/chat/get-native-chat-integration.js +0 -45
  422. package/tools/chat/get-native-chat-integration.js.map +0 -1
  423. package/tools/chat/get-web-chat-component-detail.js +0 -31
  424. package/tools/chat/get-web-chat-component-detail.js.map +0 -1
  425. package/tools/chat/get-web-chat-integration.js +0 -45
  426. package/tools/chat/get-web-chat-integration.js.map +0 -1
  427. package/tools/chat/get-web-chat-uikit-init.js +0 -28
  428. package/tools/chat/get-web-chat-uikit-init.js.map +0 -1
  429. package/tools/chat/get-web-create-group-doc.js +0 -28
  430. package/tools/chat/get-web-create-group-doc.js.map +0 -1
  431. package/tools/common/get-faq.js +0 -91
  432. package/tools/common/get-faq.js.map +0 -1
  433. package/tools/common/get-usersig.js.map +0 -1
  434. package/tools/common/present-framework-choice.js +0 -16
  435. package/tools/common/present-framework-choice.js.map +0 -1
  436. package/tools/common/record-prompt.js +0 -55
  437. package/tools/common/record-prompt.js.map +0 -1
  438. package/tools/common/record-result.js +0 -60
  439. package/tools/common/record-result.js.map +0 -1
  440. package/tools/definitions/get_native_chat_feature_detail_def.js +0 -32
  441. package/tools/definitions/get_native_chat_feature_detail_def.js.map +0 -1
  442. package/tools/definitions/get_native_live_api_def.js +0 -22
  443. package/tools/definitions/get_native_live_api_def.js.map +0 -1
  444. package/tools/definitions/get_native_live_uikit_extra_features_def.js +0 -109
  445. package/tools/definitions/get_native_live_uikit_extra_features_def.js.map +0 -1
  446. package/tools/definitions/get_native_live_uikit_integration_def.js +0 -50
  447. package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
  448. package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -115
  449. package/tools/definitions/get_native_live_uikit_interaction_def.js.map +0 -1
  450. package/tools/definitions/get_trtc_native_api_def.js +0 -17
  451. package/tools/definitions/get_trtc_native_api_def.js.map +0 -1
  452. package/tools/definitions/get_web_call_uikit_api_def.js +0 -23
  453. package/tools/definitions/get_web_call_uikit_api_def.js.map +0 -1
  454. package/tools/definitions/get_web_chat_uikit_init_def.js +0 -23
  455. package/tools/definitions/get_web_chat_uikit_init_def.js.map +0 -1
  456. package/tools/definitions/get_web_create_group_doc_def.js +0 -18
  457. package/tools/definitions/get_web_create_group_doc_def.js.map +0 -1
  458. package/tools/definitions/get_web_live_state_detail_def.js +0 -19
  459. package/tools/definitions/get_web_live_state_detail_def.js.map +0 -1
  460. package/tools/definitions/get_web_live_uikit_component_detail_def.js +0 -27
  461. package/tools/definitions/get_web_live_uikit_component_detail_def.js.map +0 -1
  462. package/tools/definitions/get_web_room_feature_detail_def.js +0 -95
  463. package/tools/definitions/get_web_room_feature_detail_def.js.map +0 -1
  464. package/tools/definitions/record_prompt_def.js +0 -53
  465. package/tools/definitions/record_prompt_def.js.map +0 -1
  466. package/tools/definitions/record_result_def.js +0 -30
  467. package/tools/definitions/record_result_def.js.map +0 -1
  468. package/tools/live/get-native-live-uikit-integration.js +0 -101
  469. package/tools/live/get-native-live-uikit-integration.js.map +0 -1
  470. package/tools/live/get-web-live-component-detail.js +0 -31
  471. package/tools/live/get-web-live-component-detail.js.map +0 -1
  472. package/tools/live/get-web-live-state-detail.js +0 -31
  473. package/tools/live/get-web-live-state-detail.js.map +0 -1
  474. package/tools/live/get-web-live-uikit-integration.js +0 -52
  475. package/tools/live/get-web-live-uikit-integration.js.map +0 -1
  476. package/tools/live/get_native_live_uikit_extra_features.js +0 -105
  477. package/tools/live/get_native_live_uikit_extra_features.js.map +0 -1
  478. package/tools/live/get_native_live_uikit_interaction.js +0 -101
  479. package/tools/live/get_native_live_uikit_interaction.js.map +0 -1
  480. package/tools/native_live/get-native-live-api.js +0 -31
  481. package/tools/native_live/get-native-live-api.js.map +0 -1
  482. package/tools/room/get-web-room-feature-detail.js.map +0 -1
  483. package/tools/room/get-web-room-integration.js.map +0 -1
  484. package/tools/rtcengine/get-rtcengine-web-sdk-integration.js +0 -28
  485. package/tools/rtcengine/get-rtcengine-web-sdk-integration.js.map +0 -1
  486. package/tools/rtcengine/get-trtc-sdk-faq.js +0 -32
  487. package/tools/rtcengine/get-trtc-sdk-faq.js.map +0 -1
  488. package/tools/rtcengine/get-trtc-web-sdk-api.js +0 -28
  489. package/tools/rtcengine/get-trtc-web-sdk-api.js.map +0 -1
  490. package/tools/rtcengine/get-trtc-web-sdk-faq.js +0 -30
  491. package/tools/rtcengine/get-trtc-web-sdk-faq.js.map +0 -1
  492. package/tools/rtcengine/get-trtc-web-sdk-integration.js +0 -29
  493. package/tools/rtcengine/get-trtc-web-sdk-integration.js.map +0 -1
  494. package/tools/rtcengine/get-trtc-web-sdk-plugin.js +0 -45
  495. package/tools/rtcengine/get-trtc-web-sdk-plugin.js.map +0 -1
  496. package/tools/trtc/get-trtc-native-api.js +0 -31
  497. package/tools/trtc/get-trtc-native-api.js.map +0 -1
  498. package/utils/handle-component-name.js +0 -33
  499. package/utils/handle-component-name.js.map +0 -1
  500. /package/resource/doc/{rtcengine/web → callkit/core-sdk}/.gitkeep +0 -0
  501. /package/resource/doc/{chatuikit → chatkit}/faq/common/server_error_code.md +0 -0
  502. /package/resource/doc/{chatuikit → chatkit}/flutter/faq.md +0 -0
  503. /package/resource/doc/{chatuikit → chatkit}/react/faq.md +0 -0
@@ -1,598 +0,0 @@
1
- 本文将介绍如何接入 TUILiveKit Demo 的**主播开播页**,指导您将我们提供的开播页面集成到您的项目中,同时介绍如何对直播页面的样式、布局、以及功能进行自定义修改。
2
-
3
- ## 功能展示
4
- - **横屏开播**
5
-
6
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027339142/bac075ccbf0111f0b4c35254001c06ec.png)
7
-
8
- - **竖屏开播**
9
-
10
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027339142/931de742bf0111f0b4c35254001c06ec.png)
11
-
12
-
13
- ## 功能概览
14
- - **画面源管理**:支持添加多个摄像头、屏幕分享、窗口分享和本地图片。
15
-
16
- - **直播画面排版**:支持对画面源拖拽、缩放,支持通过快捷菜单对画面源设置镜像、旋转和层级调整。
17
-
18
- - **观众连麦**:支持房间内观众连麦,内置多种连麦布局。
19
-
20
- - **主播PK**:支持主播跨房连线、PK。
21
-
22
- - **互动聊天**:支持收发文字和表情消息,聊天互动。
23
-
24
- - **观众管理**:支持对观众禁言、踢出直播间等操作。
25
-
26
-
27
- ## 快速接入
28
-
29
- ### 步骤1:环境配置及开通服务
30
-
31
- 在进行快速接入之前,您需要参见 [准备工作](https://write.woa.com/document/188228825253294080),满足相关环境配置及开通对应服务。
32
-
33
- ### 步骤2: 安装依赖
34
-
35
-
36
-
37
-
38
- 【npm】
39
- ``` bash
40
- npm install tuikit-atomicx-vue3 @tencentcloud/uikit-base-component-vue3 --save
41
- ```
42
-
43
-
44
- 【pnpm】
45
- ``` bash
46
- pnpm add tuikit-atomicx-vue3 @tencentcloud/livekit-web-vue3 @tencentcloud/uikit-base-component-vue3
47
- ```
48
-
49
-
50
- 【yarn】
51
- ``` bash
52
- yarn add tuikit-atomicx-vue3 @tencentcloud/livekit-web-vue3 @tencentcloud/uikit-base-component-vue3
53
- ```
54
-
55
- ### 步骤3:主播开播页面接入
56
-
57
- 在您的项目下创建 `live-pusher.vue` 文件,通过复制如下代码至您新建的 `live-pusher.vue` 文件中集成完整的**主播开播页面**。
58
- ``` typescript
59
- <template>
60
- <UIKitProvider language="zh-CN" theme="dark">
61
- <div class="custom-live-pusher">
62
- <!-- 顶部控制栏 -->
63
- <div class="top-controls">
64
- <div class="live-title">{{ liveName }}</div>
65
- <div class="audience-count">{{ audienceCount }} 人观看</div>
66
- </div>
67
-
68
- <!-- 主要内容区 -->
69
- <div class="main-content">
70
- <!-- 左侧:视频源和工具 -->
71
- <div class="left-panel">
72
- <LiveScenePanel />
73
- <div class="tools-section">
74
- <!-- <CoGuestButton /> -->
75
- </div>
76
- </div>
77
-
78
- <!-- 中央:直播画面 -->
79
- <div class="center-panel">
80
- <StreamMixer />
81
- <div class="live-controls">
82
- <button v-if="!currentLive?.liveId" @click="handleStartLive">开始直播</button>
83
- <button v-else @click="handleStopLive">停止直播</button>
84
- </div>
85
- </div>
86
-
87
- <!-- 右侧:观众互动 -->
88
- <div class="right-panel">
89
- <LiveAudienceList />
90
- <BarrageList />
91
- <BarrageInput />
92
- </div>
93
-
94
- <!-- 底部:主播操作 -->
95
- <!-- <div class="bottom-panel">
96
- <MicVolumeSetting /> // 媒体设置能力请参考本文高级功能集成部分
97
- <SpeakerVolumeSetting />
98
- <CoGuestButton /> // 连麦观众能力请参考本文高级功能集成部分
99
- <OrientationSwitch /> // 布局设置请参考本文高级功能集成部分
100
- <LayoutSwitch /> // 横竖屏推流能力请参考本文高级功能集成部分
101
- </div>-->
102
- </div>
103
- </div>
104
- </UIKitProvider>
105
- </template>
106
-
107
- <script setup lang="ts">
108
- import { onMounted } from 'vue';
109
- import { UIKitProvider } from '@tencentcloud/uikit-base-component-vue3';
110
- import {
111
- LiveScenePanel,
112
- StreamMixer,
113
- LiveAudienceList,
114
- BarrageList,
115
- BarrageInput,
116
- useLiveListState,
117
- useLiveAudienceState,
118
- useLoginState,
119
- } from 'tuikit-atomicx-vue3';
120
-
121
- const { login, setSelfInfo } = useLoginState();
122
- const { createLive, currentLive, endLive } = useLiveListState();
123
- const { audienceCount } = useLiveAudienceState();
124
- const liveName = '我的直播间';
125
-
126
- const handleStartLive = async () => {
127
- await createLive({
128
- liveId: 'my-live-room',
129
- liveName: liveName,
130
- });
131
- await setSelfInfo({
132
- userName: '我的名字/昵称', // 用户名
133
- avatarUrl: '', // 头像 URL 地址
134
- });
135
- };
136
-
137
- const handleStopLive = async () => {
138
- await endLive();
139
- };
140
-
141
- async function initLogin() {
142
- try {
143
- await login({
144
- sdkAppId: 0, // SDKAppID, 可以参考步骤 1 获取
145
- userId: '', // UserID, 可以参考步骤 1 获取
146
- userSig: '', // userSig, 可以参考步骤 1 获取
147
- });
148
- } catch (error) {
149
- console.error('登录失败:', error);
150
- }
151
- }
152
-
153
- onMounted(async () => {
154
- await initLogin();
155
- });
156
-
157
- </script>
158
-
159
- <style>
160
- html,body,#app {height: 100%;width: 100%;margin: 0;padding: 0;}
161
- </style>
162
- <style scoped>
163
- .custom-live-pusher,.left-panel{flex-direction:column;display:flex}.custom-live-pusher,.live-title{color:var(--text-color-primary)}.live-controls,.tools-section,.top-controls{backdrop-filter:blur(10px)}*{box-sizing:border-box;margin:0;padding:0}:global(::before){box-sizing:border-box;margin:0;padding:0}.layout-label,.template-options{margin-bottom:16px}:global(body){line-height:1.6;color:var(--text-color-primary);background:var(--bg-color-default)}.custom-live-pusher{height:100vh;width:100vw;background:linear-gradient(135deg,var(--bg-color-default) 0,var(--bg-color-function) 100%);overflow:hidden}.top-controls{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:var(--bg-color-operate);border-bottom:1px solid var(--stroke-color-primary);z-index:100;min-height:60px}.live-title{font-size:18px;font-weight:600;text-shadow:0 2px 4px var(--shadow-color)}.audience-count{font-size:14px;color:var(--text-color-error);background:var(--uikit-color-red-1);padding:6px 12px;border-radius:20px;border:1px solid var(--uikit-color-red-3)}.live-controls,.tools-section{background:var(--bg-color-operate)}.main-content{display:flex;flex:1;height:calc(100vh - 60px);gap:16px;padding:16px;overflow:hidden}.left-panel{width:280px;gap:16px;flex-shrink:0}.tools-section{border-radius:12px;padding:16px;border:1px solid var(--stroke-color-primary)}.center-panel{display:flex;flex-direction:column;flex:1;gap:16px;min-width:0}.live-controls{display:flex;justify-content:space-between;align-items:center;padding:16px;border-radius:12px;border:1px solid var(--stroke-color-primary);gap:16px}.live-controls button{background:linear-gradient(135deg,var(--text-color-error) 0,var(--uikit-color-red-5) 100%);color:var(--text-color-button);border:none;padding:12px 32px;border-radius:25px;font-size:16px;font-weight:600;cursor:pointer;box-shadow:0 4px 15px var(--shadow-color)}.right-panel{display:flex;flex-direction:column;width:320px;gap:16px;flex-shrink:0}.center-panel>*,.left-panel>*,.right-panel>*{background:var(--bg-color-operate);border-radius:12px;border:1px solid var(--stroke-color-primary);overflow:hidden}.left-panel>*,.right-panel>*{padding:16px}.custom-icon-container,.device-setting{padding:8px 12px;background:var(--bg-color-function)}.center-panel>:first-child{flex:1;min-height:300px;padding:0;border:2px solid var(--stroke-color-secondary)}.bottom-panel,.device-setting{align-items:center;display:flex}.custom-icon-container:hover,.option-card:hover{border-color:var(--stroke-color-primary);background:var(--list-color-hover)}.bottom-panel{gap:16px;flex:1}.device-setting{gap:8px;border-radius:8px;border:1px solid var(--stroke-color-secondary)}.device-icon{cursor:pointer;color:var(--text-color-primary);transition:color .2s}.device-icon:hover{color:var(--text-color-link)}.device-slider{width:80px}.custom-icon-container{display:flex;align-items:center;gap:6px;border-radius:8px;border:1px solid var(--stroke-color-secondary);cursor:pointer;transition:.2s;position:relative}.custom-icon-container.disabled{opacity:.5;cursor:not-allowed}.custom-icon-container.disabled:hover{background:var(--bg-color-function);border-color:var(--stroke-color-secondary)}.custom-icon{width:16px;height:16px;display:inline-block;background-size:contain;background-repeat:no-repeat;background-position:center}.horizontal-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Crect x='3' y='6' width='18' height='12' rx='2'/%3E%3Cpath d='M7 10h10'/%3E%3C/svg%3E")}.portrait-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Crect x='6' y='3' width='12' height='18' rx='2'/%3E%3Cpath d='M10 7h4'/%3E%3C/svg%3E")}.layout-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Crect x='3' y='3' width='7' height='7'/%3E%3Crect x='14' y='3' width='7' height='7'/%3E%3Crect x='14' y='14' width='7' height='7'/%3E%3Crect x='3' y='14' width='7' height='7'/%3E%3C/svg%3E")}.co-guest-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M23 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E")}.custom-text{font-size:12px;color:var(--text-color-secondary);white-space:nowrap}.unread-count{position:absolute;top:-4px;right:-4px;background:var(--text-color-error);color:var(--text-color-button);border-radius:10px;padding:2px 6px;font-size:10px;font-weight:600;min-width:16px;text-align:center;line-height:1}.layout-label,.option-info h4{color:var(--text-color-primary)}.layout-dialog{max-width:600px}.layout-label{font-size:16px;font-weight:600}.options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.option-card{padding:16px;background:var(--bg-color-function);border:2px solid var(--stroke-color-secondary);border-radius:8px;cursor:pointer;transition:.2s;text-align:center}.option-card.active{border-color:var(--text-color-link);background:var(--bg-color-operate)}.option-info h4{margin:8px 0 0;font-size:12px}.option-icon{width:32px;height:32px;margin:0 auto;color:var(--text-color-secondary)}.co-guest-dialog{max-width:500px}.co-guest-panel{min-height:300px}
164
- </style>
165
- ```
166
-
167
- ### 步骤4:开启直播
168
-
169
- 开启您的第一场直播。
170
- ``` bash
171
- npm run dev
172
- ```
173
-
174
- ### 步骤5:观看直播
175
- - **方式一:(推荐)**
176
-
177
-
178
- 通过我们提供的 [在线观看网站](https://web.sdk.qcloud.com/trtc/livekit/player/index.html),立刻观看您开启的直播。
179
-
180
- - **方式二:**
181
-
182
-
183
- 集成我们提供的 [观众观看(Web 桌面浏览器)](https://write.woa.com/document/185968222948704256)或者 [观众观看(H5 移动端浏览器)](https://write.woa.com/document/188483856012668928) 页面,观看直播。
184
-
185
-
186
- > **重要提示:**
187
- >
188
-
189
- > 请使用不同的**用户 ID** 登录观看: 开播端和观看端必须使用**不同**的用户 ID,否则后登录的设备会强制先登录的设备下线(即“被踢下线”)。
190
- >
191
-
192
-
193
- ## 高级功能集成
194
-
195
-
196
-
197
- 【支持媒体设置能力】
198
-
199
- 若您需要支持媒体设置能力,包括设置扬声器、麦克风音量大小等内容,请参考如下代码示例复制到`live-pusher.vue `文件中即可。
200
- ``` typescript
201
- <template>
202
- <!-- MicVolumeSetting 麦克风设置 -->
203
- <div class="device-setting">
204
- <IconAudio :size="16" :audioVolume="audioVolume" :isMuted="microphoneStatus === DeviceStatus.Off" @click="switchMicrophoneStatus" />
205
- <TUISlider v-if="microphoneStatus !== DeviceStatus.Off" v-model="microphoneVolume" class="device-slider" :min="0" :max="100" @change="handleMicrophoneVolumeChange" />
206
- <TUISlider v-else class="device-slider" :min="0" :max="100" disabled />
207
- </div>
208
- <!-- SpeakerVolumeSetting 扬声器设置 -->
209
- <div class="device-setting">
210
- <TUIIcon class="device-icon" :icon="speakerIsOn ? IconSpeakerOn : IconSpeakerOff" @click="switchSpeaker(!speakerIsOn)" />
211
- <TUISlider v-if="speakerIsOn" v-model="speakerVolume" class="device-slider" :min="0" :max="100" @change="handleSpeakerVolumeChange" />
212
- </div>
213
- </template>
214
-
215
- <script lang="ts" setup>
216
- import { ref, watch } from 'vue';
217
- import { TUIIcon, TUISlider, IconSpeakerOn, IconSpeakerOff, IconAudio } from '@tencentcloud/uikit-base-component-vue3';
218
- import { DeviceStatus, useDeviceState } from 'tuikit-atomicx-vue3';
219
-
220
- const {
221
- captureVolume,
222
- setCaptureVolume,
223
- microphoneStatus,
224
- openLocalMicrophone,
225
- closeLocalMicrophone,
226
- audioVolume,
227
- } = useDeviceState();
228
- const { outputVolume, setOutputVolume } = useDeviceState();
229
-
230
- const microphoneVolume = ref(captureVolume.value);
231
- const speakerVolume = ref(outputVolume.value);
232
- const speakerIsOn = ref(true);
233
- const templateSpeakerVolume = ref(outputVolume.value);
234
-
235
- const handleMicrophoneVolumeChange = (value: number) => {
236
- if (value !== captureVolume.value) {
237
- setCaptureVolume(value);
238
- }
239
- };
240
-
241
- const switchMicrophoneStatus = () => {
242
- if (microphoneStatus.value === DeviceStatus.On) {
243
- closeLocalMicrophone();
244
- } else {
245
- openLocalMicrophone();
246
- }
247
- };
248
-
249
- const switchSpeaker = (open: boolean) => {
250
- speakerIsOn.value = open;
251
- if (!open) {
252
- templateSpeakerVolume.value = outputVolume.value;
253
- setOutputVolume(0);
254
- } else {
255
- setOutputVolume(templateSpeakerVolume.value);
256
- }
257
- };
258
-
259
- const handleSpeakerVolumeChange = (value: number) => {
260
- if (value !== outputVolume.value) {
261
- setOutputVolume(value);
262
- }
263
- };
264
-
265
- watch(captureVolume, (newVal) => {
266
- microphoneVolume.value = newVal;
267
- });
268
-
269
- watch(outputVolume, (newVal) => {
270
- speakerVolume.value = newVal;
271
- });
272
- </script>
273
-
274
- ```
275
-
276
- 【支持横竖屏推流能力】
277
-
278
- 若您需要支持横竖屏推流能力,包括设置切换横竖屏等内容,请参考如下代码示例复制到`live-pusher.vue `文件中即可。
279
- ``` typescript
280
- <template>
281
- <!-- LayoutSwitch 横竖屏推流设置 -->
282
- <div class="custom-icon-container":class="{ 'disabled': localLiveStatus === LiveStatus.Live }" @click="handleOrientationSwitch">
283
- <span v-if="currentOrientation === LiveOrientation.Landscape" class="custom-icon horizontal-icon" />
284
- <span v-else class="custom-icon portrait-icon"/>
285
- <span class="custom-text co-guest-text">{{ currentOrientation === LiveOrientation.Portrait ? t('Portrait') : t('Landscape')}}</span>
286
- </div>
287
- </template>
288
-
289
- <script setup lang="ts">
290
- import { ref, watch } from 'vue';
291
- import { useUIKit, TUIToast, TOAST_TYPE } from '@tencentcloud/uikit-base-component-vue3';
292
- import { useLiveListState, LiveOrientation, LiveStatus } from 'tuikit-atomicx-vue3';
293
-
294
- const { t } = useUIKit();
295
-
296
- enum TUISeatLayoutTemplate {
297
- LandscapeDynamic_1v3 = 200,
298
- PortraitDynamic_Grid9 = 600,
299
- PortraitDynamic_1v6 = 601,
300
- PortraitFixed_Grid9 = 800,
301
- PortraitFixed_1v6 = 801,
302
- PortraitFixed_6v6 = 802,
303
- }
304
-
305
- const { currentLive, localLiveStatus, updateLiveInfo } = useLiveListState();
306
- const currentOrientation = ref(LiveOrientation.Portrait);
307
-
308
- watch(
309
- () => currentLive.value?.layoutTemplate,
310
- (newVal) => {
311
- if (newVal === TUISeatLayoutTemplate.LandscapeDynamic_1v3) {
312
- currentOrientation.value = LiveOrientation.Landscape;
313
- } else {
314
- currentOrientation.value = LiveOrientation.Portrait;
315
- }
316
- },
317
- { immediate: true },
318
- );
319
-
320
- const handleOrientationSwitch = () => {
321
- if (localLiveStatus.value === LiveStatus.Live) {
322
- TUIToast({
323
- message: t('Cannot switch orientation during live streaming'),
324
- type: TOAST_TYPE.ERROR,
325
- });
326
- return;
327
- }
328
- if (currentOrientation.value === LiveOrientation.Portrait) {
329
- updateLiveInfo({ layoutTemplate: TUISeatLayoutTemplate.LandscapeDynamic_1v3 });
330
- } else {
331
- updateLiveInfo({ layoutTemplate: TUISeatLayoutTemplate.PortraitDynamic_Grid9 });
332
- }
333
- };
334
- </script>
335
-
336
-
337
- ```
338
-
339
- 【支持连观众能力】
340
-
341
- 若您需要支持观众连麦能力,包括设置连麦申请、连麦管理等内容,请参考如下代码示例复制到`live-pusher.vue `文件中即可。
342
- ``` typescript
343
- <template>
344
- <!-- CoGuestSetting 观众连麦设置 -->
345
- <div class="custom-icon-container" @click="handleCoGuest">
346
- <span v-if="receivedCoGuestUserList.length > 0" class="unread-count">{{ receivedCoGuestUserList.length }}</span>
347
- <span class="custom-icon co-guest-icon" />
348
- <span class="custom-text co-guest-text">{{ t('CoGuest') }}</span>
349
- </div>
350
- <TUIDialog :title="t('CoGuest')" :visible="coGuestPanelVisible" :customClasses="['co-guest-dialog']" @close="coGuestPanelVisible = false" @confirm="coGuestPanelVisible = false" @cancel="coGuestPanelVisible = false">
351
- <CoGuestPanel class="co-guest-panel" />
352
- <template #footer>
353
- <div />
354
- </template>
355
- </TUIDialog>
356
- </template>
357
-
358
- <script lang="ts" setup>
359
- import { ref } from 'vue';
360
- import { useUIKit, TUIDialog } from '@tencentcloud/uikit-base-component-vue3';
361
- import { CoGuestPanel, useCoGuestState } from 'tuikit-atomicx-vue3';
362
-
363
- const { t } = useUIKit();
364
- const { receivedCoGuestUserList } = useCoGuestState();
365
-
366
- const coGuestPanelVisible = ref(false);
367
-
368
- const handleCoGuest = () => {
369
- coGuestPanelVisible.value = true;
370
- };
371
- </script>
372
- ```
373
-
374
- 【支持布局设置能力】
375
-
376
- 若您需要支持视频流切换布局能力,包括设置**动态宫格布局、静态宫格布局、静态小窗布局、浮动小窗布局**等内容,请参考如下代码示例复制到`live-pusher.vue `文件中即可。
377
- ``` typescript
378
- <template>
379
- <!-- OrientationSwitch 布局设置 -->
380
- <div class="custom-icon-container" @click="handleSwitchLayout">
381
- <span class="custom-icon layout-icon" />
382
- <span class="custom-text setting-text">{{ t('Layout Settings') }}</span>
383
- </div>
384
- <TUIDialog :customClasses="['layout-dialog']":title="t('Layout Settings')" :visible="layoutSwitchVisible" @close="handleCancel" @confirm="handleConfirm" @cancel="handleCancel">
385
- <div class="layout-label"> {{ t('Audience Layout') }}</div>
386
- <div class="template-options">
387
- <div class="options-grid">
388
- <template v-for="template in layoutOptions" :key="template.id">
389
- <div class="option-card" :class="{ active: selectedTemplate === template.templateId }" @click="selectTemplate(template.templateId)">
390
- <div class="option-info">
391
- <component :is="template.icon" v-if="template.icon" class="option-icon"/>
392
- <h4>{{ template.label }}</h4>
393
- </div>
394
- </div>
395
- </template>
396
- </div>
397
- </div>
398
- </TUIDialog>
399
- </template>
400
-
401
- <script lang="ts" setup>
402
- import { ref, computed, watch } from 'vue';
403
- import { TUIErrorCode, } from '@tencentcloud/tuiroom-engine-js';
404
- import { useUIKit, TUIDialog, TUIToast, TOAST_TYPE } from '@tencentcloud/uikit-base-component-vue3';
405
- import { LiveStatus, useLiveListState } from 'tuikit-atomicx-vue3';
406
- import { TUISeatLayoutTemplate } from '../types/LivePusher';
407
-
408
- const { t } = useUIKit();
409
- const { localLiveStatus, currentLive, updateLiveInfo } = useLiveListState();
410
-
411
- watch(
412
- localLiveStatus,
413
- () => {
414
- if (localLiveStatus.value === LiveStatus.IDLE) {
415
- updateLiveInfo({ layoutTemplate: TUISeatLayoutTemplate.PortraitDynamic_Grid9 });
416
- }
417
- },
418
- { immediate: true },
419
- );
420
-
421
- const layoutSwitchVisible = ref(false);
422
-
423
- const handleSwitchLayout = () => {
424
- layoutSwitchVisible.value = true;
425
- };
426
-
427
- const portraitLayoutOptions = computed(() => [
428
- {
429
- id: 'PortraitDynamic_Grid9',
430
- templateId: TUISeatLayoutTemplate.PortraitDynamic_Grid9,
431
- label: t('Dynamic Grid9 Layout'),
432
- },
433
- {
434
- id: 'PortraitFixed_1v6',
435
- templateId: TUISeatLayoutTemplate.PortraitFixed_1v6,
436
- label: t('Fixed 1v6 Layout'),
437
- },
438
- {
439
- id: 'PortraitFixed_Grid9',
440
- templateId: TUISeatLayoutTemplate.PortraitFixed_Grid9,
441
- label: t('Fixed Grid9 Layout'),
442
- },
443
- {
444
- id: 'PortraitDynamic_1v6',
445
- templateId: TUISeatLayoutTemplate.PortraitDynamic_1v6,
446
- label: t('Dynamic 1v6 Layout'),
447
- },
448
- ]);
449
-
450
- const horizontalLayoutOptions = computed(() => [
451
- {
452
- id: 'LandscapeDynamic_1v3',
453
- templateId: TUISeatLayoutTemplate.LandscapeDynamic_1v3,
454
- label: t('Landscape Template'),
455
- },
456
- ]);
457
-
458
- const layoutOptions = computed(() => {
459
- if (currentLive.value && currentLive.value?.layoutTemplate >= 200 && currentLive.value?.layoutTemplate <= 599) {
460
- return horizontalLayoutOptions.value;
461
- }
462
- return portraitLayoutOptions.value;
463
- });
464
-
465
- const selectedTemplate = ref<TUISeatLayoutTemplate | null>(currentLive.value?.layoutTemplate ?? null);
466
-
467
- function selectTemplate(template: TUISeatLayoutTemplate) {
468
- selectedTemplate.value = template;
469
- }
470
-
471
- watch(() => currentLive.value?.layoutTemplate, (newVal) => {
472
- if (newVal) {
473
- selectedTemplate.value = newVal;
474
- }
475
- });
476
-
477
- async function handleConfirm() {
478
- if (selectedTemplate.value) {
479
- try {
480
- await updateLiveInfo({ layoutTemplate: selectedTemplate.value });
481
- layoutSwitchVisible.value = false;
482
- } catch (error: any) {
483
- let errorMessage = t('Layout switch failed');
484
- if (error.code === TUIErrorCode.ERR_FREQ_LIMIT) {
485
- errorMessage = t('Operation too frequent, please try again later');
486
- }
487
- TUIToast({ type: TOAST_TYPE.ERROR, message: errorMessage });
488
- }
489
- } else {
490
- layoutSwitchVisible.value = false;
491
- }
492
- }
493
-
494
- function handleCancel() {
495
- selectedTemplate.value = currentLive.value?.layoutTemplate ?? null;
496
- layoutSwitchVisible.value = false;
497
- }
498
- </script>
499
- ```
500
-
501
- ## 自由定制
502
-
503
- 根据上述功能展示图,我们同样支持您根据项目需求对**主播开播页面**进行 UI 定制的能力。除了页面 UI 布局调整,我们也支持您对**颜色主题、字体、圆角、按钮、图标、输入框、弹框等**内容进行**增加、删除、修改**等操作,满足您的 UI 定制需要。
504
- <table>
505
- <tr>
506
- <td rowspan="1" colSpan="1" >**类别**</td>
507
-
508
- <td rowspan="1" colSpan="1" >**功能**</td>
509
-
510
- <td rowspan="1" colSpan="1" >**描述**</td>
511
- </tr>
512
-
513
- <tr>
514
- <td rowspan="1" colSpan="1" >**素材管理**</td>
515
-
516
- <td rowspan="1" colSpan="1" >自定义素材管理区域展示</td>
517
-
518
- <td rowspan="1" colSpan="1" >**支持:**<br>- **调整展示 Icon 的大小、颜色或对 Icon 进行替换**</td>
519
- </tr>
520
-
521
- <tr>
522
- <td rowspan="1" colSpan="1" >**直播工具**</td>
523
-
524
- <td rowspan="1" colSpan="1" >自定义直播工具信息展示</td>
525
-
526
- <td rowspan="1" colSpan="1" >**支持:**<br>- **调整展示 Icon 的大小、颜色或对 Icon 进行替换**</td>
527
- </tr>
528
-
529
- <tr>
530
- <td rowspan="1" colSpan="1" >**在线观众**</td>
531
-
532
- <td rowspan="1" colSpan="1" >自定义观众信息展示</td>
533
-
534
- <td rowspan="1" colSpan="1" >**支持:**<br>- **展示/隐藏观众等级**<br>- **观众信息字体、颜色 UI 自定义设置**<br>- **替换为您需要的 Icon 风格**</td>
535
- </tr>
536
-
537
- <tr>
538
- <td rowspan="1" colSpan="1" >**消息列表**</td>
539
-
540
- <td rowspan="1" colSpan="1" >自定义消息弹幕区域展示</td>
541
-
542
- <td rowspan="1" colSpan="1" >**支持:**<br>- **展示/隐藏聊天输入区域**<br>- **支持 UI 定制聊天气泡风格、定制观众等级等内容**</td>
543
- </tr>
544
- </table>
545
-
546
-
547
- ### 颜色主题
548
-
549
- 参见**步骤3**中代码示例,您可以使用操作 theme 的值来实现您切换颜色主题。
550
- ``` java
551
- <UIKitProvider theme="dark"> // theme 传入 dark 时,界面整体颜色主题为黑色
552
- xxx // theme 传入 light 时,界面整体颜色主题为白色
553
- </UIKitProvider>
554
- ```
555
-
556
- ### 按钮 Button / 图标 Icon
557
-
558
- 若您需要对按钮 Button 或图标 Icon 等其他控件进行新增或替换等 UI 定制,您可以通过如下方式实现,以`live-pusher.vue `文件中的按钮和图标为例,您可以参考下图找到对应按钮或图标的指定位置源码,对当前部分的控件进行**增加、删除、替换**等 UI 定制操作。
559
-
560
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027862798/7447da478ebd11f0974b52540044a08e.png)
561
-
562
-
563
- ## 下一步
564
-
565
- 恭喜您,现在您已经成功集成了** 主播开播页面 **。接下来,您可以实现**观众观看页**、**直播列表页**等内容,可参考下表:
566
- <table>
567
- <tr>
568
- <td rowspan="1" colSpan="1" >**功能**</td>
569
-
570
- <td rowspan="1" colSpan="1" >**描述**</td>
571
-
572
- <td rowspan="1" colSpan="1" >**集成指引**</td>
573
- </tr>
574
-
575
- <tr>
576
- <td rowspan="1" colSpan="1" >**观众观看**</td>
577
-
578
- <td rowspan="1" colSpan="1" >实现观众进入主播的直播间后观看直播,实现观众连麦 、直播间信息、在线观众、弹幕显示等功能</td>
579
-
580
- <td rowspan="1" colSpan="1" >[观众观看](https://write.woa.com/document/185968222948704256)</td>
581
- </tr>
582
-
583
- <tr>
584
- <td rowspan="1" colSpan="1" >**直播列表**</td>
585
-
586
- <td rowspan="1" colSpan="1" >展示直播列表界面和功能,包含直播列表,房间信息展示功能</td>
587
-
588
- <td rowspan="1" colSpan="1" >[直播列表](https://write.woa.com/document/185968224430342144)</td>
589
- </tr>
590
-
591
- <tr>
592
- <td rowspan="1" colSpan="1" >**UI 自定义**</td>
593
-
594
- <td rowspan="1" colSpan="1" >更详细的 UI 组件自定义指引。</td>
595
-
596
- <td rowspan="1" colSpan="1" >[概述](https://write.woa.com/document/177815913198854144)</td>
597
- </tr>
598
- </table>