@tencentcloud/sdk-mcp 1.3.9 → 1.4.1

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 (514) 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/vue/faq.md → callkit/faq/web-faq.md} +78 -311
  9. package/resource/doc/callkit/preset/android/api.md +330 -0
  10. package/resource/doc/{tuicallkit → callkit/preset}/android/integration.md +63 -420
  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/{chatuikit → chatkit}/android/integration.md +30 -126
  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/{live → core-sdk/live}/flutter/live-integration.md +160 -543
  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/{voice → core-sdk/voice}/android/voice-audience-list.md +17 -88
  134. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audio-effect.md +34 -192
  135. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-barrage.md +26 -139
  136. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-co-guest-interaction.md +53 -262
  137. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-gift.md +75 -455
  138. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-host-interaction.md +60 -272
  139. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-integration.md +63 -440
  140. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-room-list.md +23 -151
  141. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-audience-list.md +13 -91
  142. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-audio-effect.md +34 -177
  143. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-barrage.md +18 -102
  144. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-co-guest-interaction.md +44 -201
  145. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-gift.md +66 -460
  146. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-integration.md +57 -419
  147. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-room-list.md +24 -157
  148. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audience-list.md +23 -96
  149. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audio-effect.md +33 -195
  150. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-barrage.md +35 -150
  151. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-co-guest-interaction.md +45 -254
  152. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-gift.md +77 -457
  153. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-host-interaction.md +52 -261
  154. package/resource/doc/livekit/core-sdk/voice/ios/voice-integration.md +478 -0
  155. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-room-list.md +36 -167
  156. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-audience-list.md +15 -45
  157. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-audio-effect.md +23 -137
  158. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-barrage.md +25 -131
  159. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-co-guest-interaction.md +70 -366
  160. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-gift.md +70 -424
  161. package/resource/doc/livekit/core-sdk/voice/uni-app/voice-integration.md +323 -0
  162. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-room-list.md +24 -116
  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 +21 -80
  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/common/record_skill_session.js +58 -0
  275. package/tools/common/record_skill_session.js.map +1 -0
  276. package/tools/definitions/get_callkit_api_def.js +28 -0
  277. package/tools/definitions/get_callkit_api_def.js.map +1 -0
  278. package/tools/definitions/get_faq_def.js +18 -19
  279. package/tools/definitions/get_faq_def.js.map +1 -1
  280. package/tools/definitions/get_native_call_uikit_integration_def.js +15 -34
  281. package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
  282. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +31 -0
  283. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +1 -0
  284. package/tools/definitions/get_native_chat_uikit_integration_def.js +16 -41
  285. package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
  286. package/tools/definitions/get_native_livekit_core_features_def.js +33 -0
  287. package/tools/definitions/get_native_livekit_core_features_def.js.map +1 -0
  288. package/tools/definitions/get_native_livekit_core_integration_def.js +33 -0
  289. package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -0
  290. package/tools/definitions/get_native_trtc_sdk_docs_def.js +32 -0
  291. package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +1 -0
  292. package/tools/definitions/get_usersig_def.js +17 -24
  293. package/tools/definitions/get_usersig_def.js.map +1 -1
  294. package/tools/definitions/get_web_call_uikit_integration_def.js +15 -7
  295. package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
  296. package/tools/definitions/get_web_chat_uikit_component_detail_def.js +17 -49
  297. package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +1 -1
  298. package/tools/definitions/get_web_chat_uikit_integration_def.js +16 -19
  299. package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
  300. package/tools/definitions/get_web_live_uikit_integration_def.js +13 -18
  301. package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
  302. package/tools/definitions/get_web_livekit_api_def.js +27 -0
  303. package/tools/definitions/get_web_livekit_api_def.js.map +1 -0
  304. package/tools/definitions/get_web_livekit_component_detail_def.js +29 -0
  305. package/tools/definitions/get_web_livekit_component_detail_def.js.map +1 -0
  306. package/tools/definitions/get_web_room_uikit_integration_def.js +13 -46
  307. package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
  308. package/tools/definitions/get_web_roomkit_feature_detail_def.js +30 -0
  309. package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +1 -0
  310. package/tools/definitions/get_web_trtc_sdk_api_def.js +25 -0
  311. package/tools/definitions/get_web_trtc_sdk_api_def.js.map +1 -0
  312. package/tools/definitions/get_web_trtc_sdk_integration_def.js +25 -0
  313. package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +1 -0
  314. package/tools/definitions/get_web_trtc_sdk_plugin_def.js +25 -0
  315. package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +1 -0
  316. package/tools/definitions/present_framework_choice_def.js +23 -12
  317. package/tools/definitions/present_framework_choice_def.js.map +1 -1
  318. package/tools/definitions/record_skill_session_def.js +31 -0
  319. package/tools/definitions/record_skill_session_def.js.map +1 -0
  320. package/tools/index.js +49 -61
  321. package/tools/index.js.map +1 -1
  322. package/tools/live/get_native_livekit_core_features.js +65 -0
  323. package/tools/live/get_native_livekit_core_features.js.map +1 -0
  324. package/tools/live/get_native_livekit_core_integration.js +59 -0
  325. package/tools/live/get_native_livekit_core_integration.js.map +1 -0
  326. package/tools/live/get_web_live_uikit_integration.js +48 -0
  327. package/tools/live/get_web_live_uikit_integration.js.map +1 -0
  328. package/tools/live/get_web_livekit_api.js +32 -0
  329. package/tools/live/get_web_livekit_api.js.map +1 -0
  330. package/tools/live/get_web_livekit_component_detail.js +34 -0
  331. package/tools/live/get_web_livekit_component_detail.js.map +1 -0
  332. package/tools/room/{get-web-room-integration.js → get_web_room_uikit_integration.js} +13 -14
  333. package/tools/room/get_web_room_uikit_integration.js.map +1 -0
  334. package/tools/room/{get-web-room-feature-detail.js → get_web_roomkit_feature_detail.js} +30 -31
  335. package/tools/room/get_web_roomkit_feature_detail.js.map +1 -0
  336. package/tools/rtcengine/get_web_trtc_sdk_api.js +31 -0
  337. package/tools/rtcengine/get_web_trtc_sdk_api.js.map +1 -0
  338. package/tools/rtcengine/get_web_trtc_sdk_integration.js +31 -0
  339. package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +1 -0
  340. package/tools/rtcengine/get_web_trtc_sdk_plugin.js +31 -0
  341. package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +1 -0
  342. package/tools/trtc/get_native_trtc_sdk_docs.js +73 -0
  343. package/tools/trtc/get_native_trtc_sdk_docs.js.map +1 -0
  344. package/utils/generate-structured-result.js +61 -17
  345. package/utils/generate-structured-result.js.map +1 -1
  346. package/utils/report-cls-client.js +21 -1
  347. package/utils/report-cls-client.js.map +1 -1
  348. package/utils/report-es-client.js +1 -1
  349. package/resource/doc/chatuikit/android/workflow.md +0 -713
  350. package/resource/doc/chatuikit/faq/android_sdk/client-api.md +0 -1376
  351. package/resource/doc/chatuikit/faq/flutter_sdk/client-api.md +0 -860
  352. package/resource/doc/chatuikit/faq/ios_sdk/client-api.md +0 -1371
  353. package/resource/doc/chatuikit/flutter/workflow.md +0 -816
  354. package/resource/doc/chatuikit/iOS/workflow.md +0 -0
  355. package/resource/doc/chatuikit/react/components/conversation-list.md +0 -765
  356. package/resource/doc/chatuikit/react/components/search.md +0 -885
  357. package/resource/doc/chatuikit/react/create-group.md +0 -22
  358. package/resource/doc/chatuikit/react/init.md +0 -25
  359. package/resource/doc/chatuikit/react/workflow.md +0 -254
  360. package/resource/doc/chatuikit/uniapp-app/faq.md +0 -0
  361. package/resource/doc/chatuikit/uniapp-app/integration.md +0 -619
  362. package/resource/doc/chatuikit/uniapp-app/workflow.md +0 -576
  363. package/resource/doc/chatuikit/vue/components/contact-list.md +0 -679
  364. package/resource/doc/chatuikit/vue/components/tuikit.md +0 -110
  365. package/resource/doc/chatuikit/vue/create-group.md +0 -26
  366. package/resource/doc/chatuikit/vue/init.md +0 -35
  367. package/resource/doc/chatuikit/vue/workflow.md +0 -395
  368. package/resource/doc/livekit/live/android/workflow.md +0 -322
  369. package/resource/doc/livekit/live/flutter/workflow.md +0 -353
  370. package/resource/doc/livekit/live/ios/workflow.md +0 -352
  371. package/resource/doc/livekit/live/vue/components/barrage.md +0 -615
  372. package/resource/doc/livekit/live/vue/components/stream-mixer.md +0 -442
  373. package/resource/doc/livekit/live/vue/faq.md +0 -0
  374. package/resource/doc/livekit/live/vue/live-list-integration.md +0 -195
  375. package/resource/doc/livekit/live/vue/live-player-desk-integration.md +0 -293
  376. package/resource/doc/livekit/live/vue/live-player-h5-integration.md +0 -381
  377. package/resource/doc/livekit/live/vue/live-pusher-integration.md +0 -598
  378. package/resource/doc/livekit/live/vue/states/live-state.md +0 -2656
  379. package/resource/doc/livekit/live/vue/workflow.md +0 -219
  380. package/resource/doc/livekit/voice/android/workflow.md +0 -333
  381. package/resource/doc/livekit/voice/flutter/workflow.md +0 -359
  382. package/resource/doc/livekit/voice/ios/voice-integration.md +0 -853
  383. package/resource/doc/livekit/voice/ios/workflow.md +0 -358
  384. package/resource/doc/livekit/voice/uni-app/voice-integration.md +0 -613
  385. package/resource/doc/livekit/voice/uni-app/workflow.md +0 -369
  386. package/resource/doc/native_live/android/V2TXLiveCode_api_android.md +0 -334
  387. package/resource/doc/native_live/android/V2TXLiveDef_api_android.md +0 -434
  388. package/resource/doc/native_live/android/V2TXLivePlayerObserver_api_android.md +0 -685
  389. package/resource/doc/native_live/android/V2TXLivePlayer_api_android.md +0 -712
  390. package/resource/doc/native_live/android/V2TXLivePremier_api_android.md +0 -284
  391. package/resource/doc/native_live/android/V2TXLivePusherObserver_api_android.md +0 -849
  392. package/resource/doc/native_live/android/V2TXLivePusher_api_android.md +0 -1046
  393. package/resource/doc/native_live/flutter/V2TXLiveCode_api_flutter.md +0 -460
  394. package/resource/doc/native_live/flutter/V2TXLiveDef_api_flutter.md +0 -558
  395. package/resource/doc/native_live/flutter/V2TXLivePlayerObserver_api_flutter.md +0 -879
  396. package/resource/doc/native_live/flutter/V2TXLivePlayer_api_flutter.md +0 -668
  397. package/resource/doc/native_live/flutter/V2TXLivePremier_api_flutter.md +0 -456
  398. package/resource/doc/native_live/flutter/V2TXLivePusherObserver_api_flutter.md +0 -332
  399. package/resource/doc/native_live/flutter/V2TXLivePusher_api_flutter.md +0 -748
  400. package/resource/doc/native_live/iOS/V2TXLiveCode_api_iOS.md +0 -328
  401. package/resource/doc/native_live/iOS/V2TXLiveDef_api_iOS.md +0 -505
  402. package/resource/doc/native_live/iOS/V2TXLivePlayerObserver_api_iOS.md +0 -507
  403. package/resource/doc/native_live/iOS/V2TXLivePlayer_api_iOS.md +0 -676
  404. package/resource/doc/native_live/iOS/V2TXLivePremier_api_iOS.md +0 -284
  405. package/resource/doc/native_live/iOS/V2TXLivePusherObserver_api_iOS.md +0 -820
  406. package/resource/doc/native_live/iOS/V2TXLivePusher_api_iOS.md +0 -1065
  407. package/resource/doc/roomkit/vue/features/workflow.md +0 -553
  408. package/resource/doc/roomkit/vue/workflow.md +0 -733
  409. package/resource/doc/tuicallkit/android/workflow.md +0 -432
  410. package/resource/doc/tuicallkit/faq/android_sdk/call-observer-api.md +0 -786
  411. package/resource/doc/tuicallkit/faq/android_sdk/callkit-api.md +0 -663
  412. package/resource/doc/tuicallkit/faq/flutter_sdk/call-define-api.md +0 -932
  413. package/resource/doc/tuicallkit/faq/flutter_sdk/call-observer-api.md +0 -926
  414. package/resource/doc/tuicallkit/faq/flutter_sdk/callkit-api.md +0 -452
  415. package/resource/doc/tuicallkit/faq/ios_sdk/call-observer-api.md +0 -779
  416. package/resource/doc/tuicallkit/faq/ios_sdk/callkit-api.md +0 -635
  417. package/resource/doc/tuicallkit/flutter/workflow.md +0 -331
  418. package/resource/doc/tuicallkit/react/api.md +0 -1512
  419. package/resource/doc/tuicallkit/react/faq.md +0 -986
  420. package/resource/doc/tuicallkit/vue/api.md +0 -1512
  421. package/tools/call/get-native-call-integration.js +0 -43
  422. package/tools/call/get-native-call-integration.js.map +0 -1
  423. package/tools/call/get-web-call-api.js +0 -27
  424. package/tools/call/get-web-call-api.js.map +0 -1
  425. package/tools/call/get-web-call-integration.js.map +0 -1
  426. package/tools/chat/get-native-chat-feature-detail.js +0 -30
  427. package/tools/chat/get-native-chat-feature-detail.js.map +0 -1
  428. package/tools/chat/get-native-chat-integration.js +0 -45
  429. package/tools/chat/get-native-chat-integration.js.map +0 -1
  430. package/tools/chat/get-web-chat-component-detail.js +0 -31
  431. package/tools/chat/get-web-chat-component-detail.js.map +0 -1
  432. package/tools/chat/get-web-chat-integration.js +0 -45
  433. package/tools/chat/get-web-chat-integration.js.map +0 -1
  434. package/tools/chat/get-web-chat-uikit-init.js +0 -28
  435. package/tools/chat/get-web-chat-uikit-init.js.map +0 -1
  436. package/tools/chat/get-web-create-group-doc.js +0 -28
  437. package/tools/chat/get-web-create-group-doc.js.map +0 -1
  438. package/tools/common/get-faq.js +0 -91
  439. package/tools/common/get-faq.js.map +0 -1
  440. package/tools/common/get-usersig.js.map +0 -1
  441. package/tools/common/present-framework-choice.js +0 -16
  442. package/tools/common/present-framework-choice.js.map +0 -1
  443. package/tools/common/present-scenario-choice.js +0 -16
  444. package/tools/common/present-scenario-choice.js.map +0 -1
  445. package/tools/common/record-prompt.js +0 -55
  446. package/tools/common/record-prompt.js.map +0 -1
  447. package/tools/common/record-result.js +0 -60
  448. package/tools/common/record-result.js.map +0 -1
  449. package/tools/definitions/get_native_chat_feature_detail_def.js +0 -32
  450. package/tools/definitions/get_native_chat_feature_detail_def.js.map +0 -1
  451. package/tools/definitions/get_native_live_api_def.js +0 -22
  452. package/tools/definitions/get_native_live_api_def.js.map +0 -1
  453. package/tools/definitions/get_native_live_uikit_extra_features_def.js +0 -109
  454. package/tools/definitions/get_native_live_uikit_extra_features_def.js.map +0 -1
  455. package/tools/definitions/get_native_live_uikit_integration_def.js +0 -75
  456. package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
  457. package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -63
  458. package/tools/definitions/get_native_live_uikit_interaction_def.js.map +0 -1
  459. package/tools/definitions/get_trtc_native_api_def.js +0 -17
  460. package/tools/definitions/get_trtc_native_api_def.js.map +0 -1
  461. package/tools/definitions/get_web_call_uikit_api_def.js +0 -23
  462. package/tools/definitions/get_web_call_uikit_api_def.js.map +0 -1
  463. package/tools/definitions/get_web_chat_uikit_init_def.js +0 -23
  464. package/tools/definitions/get_web_chat_uikit_init_def.js.map +0 -1
  465. package/tools/definitions/get_web_create_group_doc_def.js +0 -18
  466. package/tools/definitions/get_web_create_group_doc_def.js.map +0 -1
  467. package/tools/definitions/get_web_live_state_detail_def.js +0 -19
  468. package/tools/definitions/get_web_live_state_detail_def.js.map +0 -1
  469. package/tools/definitions/get_web_live_uikit_component_detail_def.js +0 -27
  470. package/tools/definitions/get_web_live_uikit_component_detail_def.js.map +0 -1
  471. package/tools/definitions/get_web_room_feature_detail_def.js +0 -92
  472. package/tools/definitions/get_web_room_feature_detail_def.js.map +0 -1
  473. package/tools/definitions/present_scenario_choice_def.js +0 -53
  474. package/tools/definitions/present_scenario_choice_def.js.map +0 -1
  475. package/tools/definitions/record_prompt_def.js +0 -58
  476. package/tools/definitions/record_prompt_def.js.map +0 -1
  477. package/tools/definitions/record_result_def.js +0 -46
  478. package/tools/definitions/record_result_def.js.map +0 -1
  479. package/tools/live/get-native-live-uikit-integration.js +0 -177
  480. package/tools/live/get-native-live-uikit-integration.js.map +0 -1
  481. package/tools/live/get-web-live-component-detail.js +0 -31
  482. package/tools/live/get-web-live-component-detail.js.map +0 -1
  483. package/tools/live/get-web-live-state-detail.js +0 -31
  484. package/tools/live/get-web-live-state-detail.js.map +0 -1
  485. package/tools/live/get-web-live-uikit-integration.js +0 -52
  486. package/tools/live/get-web-live-uikit-integration.js.map +0 -1
  487. package/tools/live/get_native_live_uikit_extra_features.js +0 -105
  488. package/tools/live/get_native_live_uikit_extra_features.js.map +0 -1
  489. package/tools/live/get_native_live_uikit_interaction.js +0 -194
  490. package/tools/live/get_native_live_uikit_interaction.js.map +0 -1
  491. package/tools/native_live/get-native-live-api.js +0 -31
  492. package/tools/native_live/get-native-live-api.js.map +0 -1
  493. package/tools/room/get-web-room-feature-detail.js.map +0 -1
  494. package/tools/room/get-web-room-integration.js.map +0 -1
  495. package/tools/rtcengine/get-rtcengine-web-sdk-integration.js +0 -28
  496. package/tools/rtcengine/get-rtcengine-web-sdk-integration.js.map +0 -1
  497. package/tools/rtcengine/get-trtc-sdk-faq.js +0 -32
  498. package/tools/rtcengine/get-trtc-sdk-faq.js.map +0 -1
  499. package/tools/rtcengine/get-trtc-web-sdk-api.js +0 -28
  500. package/tools/rtcengine/get-trtc-web-sdk-api.js.map +0 -1
  501. package/tools/rtcengine/get-trtc-web-sdk-faq.js +0 -30
  502. package/tools/rtcengine/get-trtc-web-sdk-faq.js.map +0 -1
  503. package/tools/rtcengine/get-trtc-web-sdk-integration.js +0 -29
  504. package/tools/rtcengine/get-trtc-web-sdk-integration.js.map +0 -1
  505. package/tools/rtcengine/get-trtc-web-sdk-plugin.js +0 -45
  506. package/tools/rtcengine/get-trtc-web-sdk-plugin.js.map +0 -1
  507. package/tools/trtc/get-trtc-native-api.js +0 -31
  508. package/tools/trtc/get-trtc-native-api.js.map +0 -1
  509. package/utils/handle-component-name.js +0 -33
  510. package/utils/handle-component-name.js.map +0 -1
  511. /package/resource/doc/{rtcengine/web → callkit/core-sdk}/.gitkeep +0 -0
  512. /package/resource/doc/{chatuikit → chatkit}/faq/common/server_error_code.md +0 -0
  513. /package/resource/doc/{chatuikit → chatkit}/flutter/faq.md +0 -0
  514. /package/resource/doc/{chatuikit → chatkit}/react/faq.md +0 -0
@@ -1,8 +1,5 @@
1
1
  **AtomicXCore** 提供了 [CoGuestStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-guest-store/index.html) 和 [LiveSeatStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-seat-store/index.html)模块,用于管理观众连麦的完整业务流程。您无需关心复杂的状态同步和信令交互,只需调用几个简单的方法,即可为您的直播添加强大的观众与主播音视频互动功能。本文档将指导您如何使用 `CoGuestStore `和 `LiveSeatStore` 在 `Android` 应用中快速实现语音连麦功能。
2
2
 
3
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027182232/43473ccbb88211f0a808525400bf7822.png)
4
-
5
-
6
3
  ## 核心场景
7
4
 
8
5
  `CoGuestStore`和`LiveSeatStore`支持以下几个主流的场景:
@@ -12,12 +9,11 @@
12
9
 
13
10
  - **主播管理麦位**:主播可以对麦位上的用户进行踢人、闭麦、锁麦等操作。
14
11
 
15
-
16
12
  ## 实现步骤
17
13
 
18
14
  ### 步骤1:组件集成
19
15
 
20
- 请参考 [快速接入](https://write.woa.com/document/192834878686547968) 集成 **AtomicXCore**。
16
+ 请参考 快速接入 集成 **AtomicXCore**。
21
17
 
22
18
  ### 步骤2:实现观众申请上麦
23
19
 
@@ -26,16 +22,15 @@
26
22
  作为观众,您的核心任务是**发起申请、接收结果**和**主动下麦**。
27
23
  1. **发起连麦申请**
28
24
 
29
-
30
25
  当用户点击界面上的“申请连麦”按钮时,调用 `applyForSeat` 方法。
31
26
 
32
27
  ``` java
33
28
  import io.trtc.tuikit.atomicxcore.api.CompletionHandler
34
29
  import io.trtc.tuikit.atomicxcore.api.live.CoGuestStore
35
-
30
+
36
31
  val liveId = "房间ID"
37
32
  val guestStore = CoGuestStore.create(liveId)
38
-
33
+
39
34
  // 用户点击“申请连麦”
40
35
  fun requestToConnect() {
41
36
  // timeout: 请求超时时间,例如 30 秒
@@ -43,7 +38,7 @@
43
38
  override fun onSuccess() {
44
39
  print("连麦申请已发送,等待主播处理...")
45
40
  }
46
-
41
+
47
42
  override fun onFailure(code: Int, desc: String) {
48
43
  print("申请发送失败: $desc")
49
44
  }
@@ -52,14 +47,13 @@
52
47
  ```
53
48
  2. **监听主播的处理结果**
54
49
 
55
-
56
50
  通过订阅 `GuestListener`,您可以接收到主播的处理结果。
57
51
 
58
52
  ``` java
59
53
  import io.trtc.tuikit.atomicxcore.api.device.DeviceStore
60
54
  import io.trtc.tuikit.atomicxcore.api.live.GuestListener
61
55
  import io.trtc.tuikit.atomicxcore.api.live.LiveUserInfo
62
-
56
+
63
57
  // 在您的 Activity/Fragment 初始化时添加监听
64
58
  fun subscribeGuestEvents() {
65
59
  val guestListener = object : GuestListener() {
@@ -81,7 +75,6 @@
81
75
  ```
82
76
  3. **主动下麦**
83
77
 
84
-
85
78
  当连麦观众想结束互动时,调用 `disConnect` 方法即可返回普通观众状态。
86
79
 
87
80
  ``` java
@@ -91,7 +84,7 @@
91
84
  override fun onSuccess() {
92
85
  print("已成功下麦")
93
86
  }
94
-
87
+
95
88
  override fun onFailure(code: Int, desc: String) {
96
89
  print("下麦失败: $desc")
97
90
  }
@@ -100,7 +93,6 @@
100
93
  ```
101
94
  4. **(可选) 取消申请**
102
95
 
103
-
104
96
  如果观众在主播处理前想撤回申请,可以调用 `cancelApplication`。
105
97
 
106
98
  ``` java
@@ -110,7 +102,7 @@
110
102
  override fun onSuccess() {
111
103
  print("申请已取消")
112
104
  }
113
-
105
+
114
106
  override fun onFailure(code: Int, desc: String) {
115
107
  print("申请取消失败: $desc")
116
108
  }
@@ -123,38 +115,36 @@
123
115
  作为主播,您的核心任务是**接收申请、展示申请列表**和**处理申请**。
124
116
  1. **监听新的连麦申请**
125
117
 
126
-
127
118
  通过订阅 `HostListener`,您可以在有新观众申请时立即收到通知,并给出提示。
128
119
 
129
120
  ``` java
130
121
  import io.trtc.tuikit.atomicxcore.api.live.CoGuestStore
131
122
  import io.trtc.tuikit.atomicxcore.api.live.HostListener
132
123
  import io.trtc.tuikit.atomicxcore.api.live.LiveUserInfo
133
-
124
+
134
125
  val liveId = "房间ID"
135
126
  val guestStore = CoGuestStore.create(liveId)
136
-
127
+
137
128
  // 订阅主播事件
138
129
  val hostListener = object : HostListener() {
139
130
  override fun onGuestApplicationReceived(guestUser: LiveUserInfo) {
140
131
  print("收到观众 ${guestUser.userName} 的连麦申请")
141
132
  // 在此更新 UI,例如在“申请列表”按钮上显示红点
142
133
  }
143
-
134
+
144
135
  // ... 覆盖其他需要的回调方法
145
136
  }
146
137
  guestStore.addHostListener(hostListener)
147
138
  ```
148
139
  2. **展示申请列表**
149
140
 
150
-
151
141
  `CoGuestStore` 的 `state` 会实时维护当前的申请者列表,您可以订阅它来刷新您的 UI。
152
142
 
153
143
  ``` java
154
144
  import kotlinx.coroutines.CoroutineScope
155
145
  import kotlinx.coroutines.Dispatchers
156
146
  import kotlinx.coroutines.launch
157
-
147
+
158
148
  // 订阅状态变更
159
149
  fun observeApplicants() {
160
150
  CoroutineScope(Dispatchers.Main).launch {
@@ -167,7 +157,6 @@
167
157
  ```
168
158
  3. **处理连麦申请**
169
159
 
170
-
171
160
  当您在列表中选择一位观众并点击“同意”或“拒绝”时,调用相应的方法。
172
161
 
173
162
  ``` java
@@ -179,14 +168,14 @@
179
168
  override fun onSuccess() {
180
169
  print("已同意 $userId 的申请,对方正在上麦")
181
170
  }
182
-
171
+
183
172
  override fun onFailure(code: Int, desc: String) {
184
173
  print("同意申请失败: $desc")
185
174
  }
186
175
  }
187
176
  )
188
177
  }
189
-
178
+
190
179
  // 主播点击“拒绝”按钮
191
180
  fun reject(userId: String) {
192
181
  guestStore.rejectApplication(
@@ -195,14 +184,14 @@
195
184
  override fun onSuccess() {
196
185
  print("已拒绝 $userId 的申请")
197
186
  }
198
-
187
+
199
188
  override fun onFailure(code: Int, desc: String) {
200
189
  print("拒绝申请失败: $desc")
201
190
  }
202
191
  }
203
192
  )
204
193
  }
205
-
194
+
206
195
  ```
207
196
 
208
197
  ### 步骤3:实现主播邀请上麦
@@ -210,7 +199,6 @@
210
199
  #### 主播端实现
211
200
  1. **向观众发起邀请**
212
201
 
213
-
214
202
  当主播在观众列表中选择某人并点击“邀请连麦”时,调用 `inviteToSeat` 方法。
215
203
 
216
204
  ``` java
@@ -221,7 +209,7 @@
221
209
  override fun onSuccess() {
222
210
  print("已向 $userId 发出邀请,等待对方回应...")
223
211
  }
224
-
212
+
225
213
  override fun onFailure(code: Int, desc: String) {
226
214
  print("邀请发送失败: $desc")
227
215
  }
@@ -230,7 +218,6 @@
230
218
  ```
231
219
  2. **监听观众的回应**
232
220
 
233
-
234
221
  通过 `HostListener` 监听 `onHostInvitationResponded` 事件。
235
222
 
236
223
  ``` java
@@ -247,7 +234,6 @@
247
234
  #### 观众端实现
248
235
  1. **接收主播的邀请**
249
236
 
250
-
251
237
  通过 `GuestListener` 监听 `onHostInvitationReceived` 事件。
252
238
 
253
239
  ``` java
@@ -259,12 +245,11 @@
259
245
  ```
260
246
  2. **响应邀请**
261
247
 
262
-
263
248
  当用户在弹出的对话框中做出选择后,调用相应的方法。
264
249
 
265
250
  ``` java
266
251
  val inviterId = "发起邀请的主播ID" // 从 onHostInvitationReceived 事件中获取
267
-
252
+
268
253
  // 用户点击“接受”
269
254
  fun accept() {
270
255
  guestStore.acceptInvitation(inviterId, object : CompletionHandler {
@@ -272,13 +257,13 @@
272
257
  // 2. 打开麦克风
273
258
  DeviceStore.shared().openLocalMicrophone(null)
274
259
  }
275
-
260
+
276
261
  override fun onFailure(code: Int, desc: String) {
277
262
  print("接受邀请失败: $desc")
278
263
  }
279
264
  })
280
265
  }
281
-
266
+
282
267
  // 用户点击“拒绝”
283
268
  fun reject() {
284
269
  guestStore.rejectInvitation(inviterId, object : CompletionHandler {
@@ -305,7 +290,6 @@
305
290
 
306
291
  2. **解除静音**:调用 `unmuteMicrophone(completion)` 方法。
307
292
 
308
-
309
293
  #### 示例代码:
310
294
  ``` java
311
295
  import io.trtc.tuikit.atomicxcore.api.live.LiveSeatStore
@@ -318,24 +302,9 @@ seatStore.unmuteMicrophone(null) //解除静音
318
302
  ```
319
303
 
320
304
  #### unmuteMicrophone 接口参数:
321
- <table>
322
- <tr>
323
- <td rowspan="1" colSpan="1" >**参数**</td>
324
-
325
- <td rowspan="1" colSpan="1" >**类型**</td>
326
-
327
- <td rowspan="1" colSpan="1" >**描述**</td>
328
- </tr>
329
-
330
- <tr>
331
- <td rowspan="1" colSpan="1" >`completion`</td>
332
-
333
- <td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
334
-
335
- <td rowspan="1" colSpan="1" >操作完成后的回调。</td>
336
- </tr>
337
- </table>
338
-
305
+ | **参数** | **类型** | **描述** |
306
+ | --- | --- | --- |
307
+ | `completion` | `CompletionHandler?` | 操作完成后的回调。 |
339
308
 
340
309
  ### 主播远程控制麦上用户开麦或关麦
341
310
 
@@ -348,7 +317,6 @@ seatStore.unmuteMicrophone(null) //解除静音
348
317
 
349
318
  3. **用户自行开麦**:用户在收到“解除锁定”的通知后,必须主动调用 `LiveSeatStore` 的 `unmuteMicrophone()`方法解除静音,才能让房间内其他人听到自己的声音。
350
319
 
351
-
352
320
  #### 示例代码:
353
321
 
354
322
  ##### 主播端:
@@ -398,60 +366,16 @@ seatStore.addLiveSeatEventListener(seatListener)
398
366
  ```
399
367
 
400
368
  #### closeRemoteMicrophone 接口参数:
401
- <table>
402
- <tr>
403
- <td rowspan="1" colSpan="1" >**参数**</td>
404
-
405
- <td rowspan="1" colSpan="1" >**类型**</td>
406
-
407
- <td rowspan="1" colSpan="1" >**描述**</td>
408
- </tr>
409
-
410
- <tr>
411
- <td rowspan="1" colSpan="1" >`userID`</td>
412
-
413
- <td rowspan="1" colSpan="1" >`String`</td>
414
-
415
- <td rowspan="1" colSpan="1" >被操作的用户`userID`。</td>
416
- </tr>
417
-
418
- <tr>
419
- <td rowspan="1" colSpan="1" >`completion`</td>
420
-
421
- <td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
422
-
423
- <td rowspan="1" colSpan="1" >请求完成后的回调。</td>
424
- </tr>
425
- </table>
426
-
369
+ | **参数** | **类型** | **描述** |
370
+ | --- | --- | --- |
371
+ | `userID` | `String` | 被操作的用户`userID`。 |
372
+ | `completion` | `CompletionHandler?` | 请求完成后的回调。 |
427
373
 
428
374
  #### openRemoteMicrophone 接口参数:
429
- <table>
430
- <tr>
431
- <td rowspan="1" colSpan="1" >**参数**</td>
432
-
433
- <td rowspan="1" colSpan="1" >**类型**</td>
434
-
435
- <td rowspan="1" colSpan="1" >**描述**</td>
436
- </tr>
437
-
438
- <tr>
439
- <td rowspan="1" colSpan="1" >`userID`</td>
440
-
441
- <td rowspan="1" colSpan="1" >`String`</td>
442
-
443
- <td rowspan="1" colSpan="1" >被操作的用户`userID`。</td>
444
- </tr>
445
-
446
- <tr>
447
- <td rowspan="1" colSpan="1" >`completion`</td>
448
-
449
- <td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
450
-
451
- <td rowspan="1" colSpan="1" >请求完成后的回调。</td>
452
- </tr>
453
- </table>
454
-
375
+ | **参数** | **类型** | **描述** |
376
+ | --- | --- | --- |
377
+ | `userID` | `String` | 被操作的用户`userID`。 |
378
+ | `completion` | `CompletionHandler?` | 请求完成后的回调。 |
455
379
 
456
380
  ### 主播将麦上用户踢下麦位
457
381
 
@@ -460,7 +384,6 @@ seatStore.addLiveSeatEventListener(seatListener)
460
384
 
461
385
  2. **监听事件通知**:被踢下麦的用户会收到 `GuestListener` 中的 `onKickedOffSeat` 事件通知。
462
386
 
463
-
464
387
  #### 示例代码:
465
388
  ``` java
466
389
  // 假设要踢走 "userB"
@@ -482,32 +405,10 @@ override fun onKickedOffSeat(seatIndex: Int, hostUser: LiveUserInfo) {
482
405
  ```
483
406
 
484
407
  #### kickUserOutOfSeat 接口参数:
485
- <table>
486
- <tr>
487
- <td rowspan="1" colSpan="1" >**参数**</td>
488
-
489
- <td rowspan="1" colSpan="1" >**类型**</td>
490
-
491
- <td rowspan="1" colSpan="1" >**描述**</td>
492
- </tr>
493
-
494
- <tr>
495
- <td rowspan="1" colSpan="1" >`userID`</td>
496
-
497
- <td rowspan="1" colSpan="1" >`String`</td>
498
-
499
- <td rowspan="1" colSpan="1" >被踢下麦用户`userID`。</td>
500
- </tr>
501
-
502
- <tr>
503
- <td rowspan="1" colSpan="1" >`completion`</td>
504
-
505
- <td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
506
-
507
- <td rowspan="1" colSpan="1" >请求完成后的回调。</td>
508
- </tr>
509
- </table>
510
-
408
+ | **参数** | **类型** | **描述** |
409
+ | --- | --- | --- |
410
+ | `userID` | `String` | 被踢下麦用户`userID`。 |
411
+ | `completion` | `CompletionHandler?` | 请求完成后的回调。 |
511
412
 
512
413
  ### 主播锁定和解锁麦位
513
414
 
@@ -518,7 +419,6 @@ override fun onKickedOffSeat(seatIndex: Int, hostUser: LiveUserInfo) {
518
419
 
519
420
  2. **解锁麦位**:调用 `unlockSeat` 可以解锁麦位,解锁后该麦位可以再次被占用。
520
421
 
521
-
522
422
  #### 示例代码:
523
423
  ``` java
524
424
  // 锁定2号麦位
@@ -543,71 +443,26 @@ seatStore.unlockSeat(2, object : CompletionHandler {
543
443
  ```
544
444
 
545
445
  #### lockSeat 接口参数:
546
- <table>
547
- <tr>
548
- <td rowspan="1" colSpan="1" >**参数**</td>
549
-
550
- <td rowspan="1" colSpan="1" >**类型**</td>
551
-
552
- <td rowspan="1" colSpan="1" >**描述**</td>
553
- </tr>
554
-
555
- <tr>
556
- <td rowspan="1" colSpan="1" >`seatIndex`</td>
557
-
558
- <td rowspan="1" colSpan="1" >`Int`</td>
559
-
560
- <td rowspan="1" colSpan="1" >需要锁定的麦位索引。</td>
561
- </tr>
562
-
563
- <tr>
564
- <td rowspan="1" colSpan="1" >`completion`</td>
565
-
566
- <td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
567
-
568
- <td rowspan="1" colSpan="1" >请求完成后的回调。</td>
569
- </tr>
570
- </table>
571
-
446
+ | **参数** | **类型** | **描述** |
447
+ | --- | --- | --- |
448
+ | `seatIndex` | `Int` | 需要锁定的麦位索引。 |
449
+ | `completion` | `CompletionHandler?` | 请求完成后的回调。 |
572
450
 
573
451
  #### unlockSeat 接口参数:
574
- <table>
575
- <tr>
576
- <td rowspan="1" colSpan="1" >**参数**</td>
577
-
578
- <td rowspan="1" colSpan="1" >**类型**</td>
579
-
580
- <td rowspan="1" colSpan="1" >**描述**</td>
581
- </tr>
582
-
583
- <tr>
584
- <td rowspan="1" colSpan="1" >`seatIndex`</td>
585
-
586
- <td rowspan="1" colSpan="1" >`Int`</td>
587
-
588
- <td rowspan="1" colSpan="1" >需要解锁的麦位索引。</td>
589
- </tr>
590
-
591
- <tr>
592
- <td rowspan="1" colSpan="1" >`completion`</td>
593
-
594
- <td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
595
-
596
- <td rowspan="1" colSpan="1" >请求完成后的回调。</td>
597
- </tr>
598
- </table>
599
-
452
+ | **参数** | **类型** | **描述** |
453
+ | --- | --- | --- |
454
+ | `seatIndex` | `Int` | 需要解锁的麦位索引。 |
455
+ | `completion` | `CompletionHandler?` | 请求完成后的回调。 |
600
456
 
601
457
  ### 移动麦位
602
458
 
603
459
  主播和普通上麦用户可以调用`moveUserToSeat`移动麦位。
604
460
 
605
461
  #### 实现方式:
606
- 1. **主播移动麦位**:主播可以调用此接口将任意用户移动到指定麦位。此时 `userID` 传入目标用户的 ID,`targetIndex`是目标麦位索引,`policy` 参数来指定如果目标麦位有人时的移动策略,详见[接口参数](https://write.woa.com/#227e92a5-7552-41ae-b57c-2dab5b7de234)说明。
462
+ 1. **主播移动麦位**:主播可以调用此接口将任意用户移动到指定麦位。此时 `userID` 传入目标用户的 ID,`targetIndex`是目标麦位索引,`policy` 参数来指定如果目标麦位有人时的移动策略,详见接口参数说明。
607
463
 
608
464
  2. **普通上麦用户移动自己麦位**:普通上麦用户也可以调用此接口来移动自己。此时 `userID` 必须传入用户自己的 ID,`targetIndex` 传入想去的新麦位索引,此时`policy` 参数无效,如果目标麦位有人时会报错并停止移动。
609
465
 
610
-
611
466
  #### 示例代码:
612
467
  ``` java
613
468
  import io.trtc.tuikit.atomicxcore.api.CompletionHandler
@@ -627,78 +482,20 @@ seatStore.moveUserToSeat("userC",
627
482
  ```
628
483
 
629
484
  #### moveUserToSeat 接口参数:
630
- <table>
631
- <tr>
632
- <td rowspan="1" colSpan="1" >**参数**</td>
633
-
634
- <td rowspan="1" colSpan="1" >**类型**</td>
635
-
636
- <td rowspan="1" colSpan="1" >**描述**</td>
637
- </tr>
638
-
639
- <tr>
640
- <td rowspan="1" colSpan="1" >`userID`</td>
641
-
642
- <td rowspan="1" colSpan="1" >`String`</td>
643
-
644
- <td rowspan="1" colSpan="1" >需要移麦的用户`userID`。</td>
645
- </tr>
646
-
647
- <tr>
648
- <td rowspan="1" colSpan="1" >`targetIndex`</td>
649
-
650
- <td rowspan="1" colSpan="1" >`Int`</td>
651
-
652
- <td rowspan="1" colSpan="1" >目标麦位索引。</td>
653
- </tr>
654
-
655
- <tr>
656
- <td rowspan="1" colSpan="1" >`policy`</td>
657
-
658
- <td rowspan="1" colSpan="1" >`MoveSeatPolicy?`</td>
659
-
660
- <td rowspan="1" colSpan="1" >目标麦位有人时的移动策略枚举:<br>- `abortWhenOccupied`:目标麦位有人时放弃移动(默认策略)​​<br>- `forceReplace`:强制替换目标麦位上的用户​​,被替换的用户将会被踢下麦<br>- `swapPosition`:与目标麦位用户交换位置​​。</td>
661
- </tr>
662
-
663
- <tr>
664
- <td rowspan="1" colSpan="1" >`completion`</td>
665
-
666
- <td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
667
-
668
- <td rowspan="1" colSpan="1" >请求完成后的回调。</td>
669
- </tr>
670
- </table>
671
-
485
+ | **参数** | **类型** | **描述** |
486
+ | --- | --- | --- |
487
+ | `userID` | `String` | 需要移麦的用户`userID`。 |
488
+ | `targetIndex` | `Int` | 目标麦位索引。 |
489
+ | `policy` | `MoveSeatPolicy?` | 目标麦位有人时的移动策略枚举:<br>- `abortWhenOccupied`:目标麦位有人时放弃移动(默认策略)​​<br>- `forceReplace`:强制替换目标麦位上的用户​​,被替换的用户将会被踢下麦<br>- `swapPosition`:与目标麦位用户交换位置​​。 |
490
+ | `completion` | `CompletionHandler?` | 请求完成后的回调。 |
672
491
 
673
492
  ## API 文档
674
493
 
675
494
  关于 [CoGuestStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-guest-store/index.html) 和 [LiveSeatStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-seat-store/index.html) 及其相关类的所有公开接口、属性和方法的详细信息,请参阅 [AtomicXCore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore) 框架的官方 API 文档。本指南使用到的相关 Store 如下:
676
- <table>
677
- <tr>
678
- <td rowspan="1" colSpan="1" >**Store/Component**</td>
679
-
680
- <td rowspan="1" colSpan="1" >**功能描述**</td>
681
-
682
- <td rowspan="1" colSpan="1" >**API 文档**</td>
683
- </tr>
684
-
685
- <tr>
686
- <td rowspan="1" colSpan="1" >CoGuestStore</td>
687
-
688
- <td rowspan="1" colSpan="1" >观众连麦管理:连麦申请 / 邀请 / 同意 / 拒绝,连麦成员权限控制(麦克风 / 摄像头),状态同步。</td>
689
-
690
- <td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-guest-store/index.html)</td>
691
- </tr>
692
-
693
- <tr>
694
- <td rowspan="1" colSpan="1" >LiveSeatStore</td>
695
-
696
- <td rowspan="1" colSpan="1" >麦位管理:静音/解除静音,锁定/解锁麦位,踢人下麦、远程控制麦上用户麦克风,麦列表状态监听</td>
697
-
698
- <td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-seat-store/index.html)</td>
699
- </tr>
700
- </table>
701
-
495
+ | **Store/Component** | **功能描述** | **API 文档** |
496
+ | --- | --- | --- |
497
+ | CoGuestStore | 观众连麦管理:连麦申请 / 邀请 / 同意 / 拒绝,连麦成员权限控制(麦克风 / 摄像头),状态同步。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-guest-store/index.html) |
498
+ | LiveSeatStore | 麦位管理:静音/解除静音,锁定/解锁麦位,踢人下麦、远程控制麦上用户麦克风,麦列表状态监听 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-seat-store/index.html) |
702
499
 
703
500
  ## 常见问题
704
501
 
@@ -709,7 +506,6 @@ seatStore.moveUserToSeat("userC",
709
506
 
710
507
  - 语音房(语聊房):核心是麦位网格。您不会使用 `LiveCoreView`,而是会基于 `LiveSeatStore` 的 `state`(特别是 `seatList`)来构建一个网格 UI(例如 `RecyclerView`)。UI 的重点是实时显示每个麦位 `SeatInfo` 的状态:是否有人、是否静音、是否被锁定 ,以及是否正在说话。您只需要打开麦克风。
711
508
 
712
-
713
509
  ### 如何在 UI 上实时刷新麦位信息(例如是否有人、是否静音)?
714
510
 
715
511
  您应该订阅 `LiveSeatState` 中的 `seatList` 属性,它是一个` List<SeatInfo>` 数组类型的响应式数据,每当数组变化时都会通知您重新渲染麦位列表。遍历此数组,您可以:
@@ -719,7 +515,6 @@ seatStore.moveUserToSeat("userC",
719
515
 
720
516
  - 通过 `seatInfo.userInfo.microphoneStatus` 判断麦上用户的麦克风状态。
721
517
 
722
-
723
518
  ### LiveSeatStore 和 DeviceStore 都有麦克风接口,它们有何区别?
724
519
 
725
520
  这是一个非常重要的问题。`DeviceStore` 管理的是物理设备,而 `LiveSeatStore` 管理的是麦位业务(即音频流)。
@@ -729,14 +524,12 @@ seatStore.moveUserToSeat("userC",
729
524
 
730
525
  - `closeLocalMicrophone`:停止音频采集并释放麦克风设备。
731
526
 
732
-
733
527
  `LiveSeatStore`:
734
528
 
735
529
  - `muteMicrophone`:静音。停止向远端发送本地的音频流,但麦克风设备本身仍在运行。
736
530
 
737
531
  - `unmuteMicrophone`:解除静音。恢复向远端发送音频流。
738
532
 
739
-
740
533
  推荐的工作流程:您应该遵循“设备只开一次,麦上只用静音切换”的原则
741
534
 
742
535
  1. **上麦时**:当观众成功上麦,调用一次 `openLocalMicrophone`来启动设备。
@@ -744,5 +537,3 @@ seatStore.moveUserToSeat("userC",
744
537
  2. **在麦上时**:用户在麦位上所有的“开麦”和“闭麦”操作,都应该调用 `unmuteMicrophone`和 `muteMicrophone`来控制上行音频流的通断。
745
538
 
746
539
  3. **下麦时**:当用户下麦(例如调用 `disconnect`),调用`closeLocalMicrophone`来释放设备。
747
-
748
-