@tencent-rtc/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 (429) hide show
  1. package/package.json +2 -2
  2. package/resource/doc/{tuicallkit/iOS/faq.md → callkit/faq/android-faq.md} +10 -22
  3. package/resource/doc/{tuicallkit/android/faq.md → callkit/faq/flutter-faq.md} +10 -22
  4. package/resource/doc/{tuicallkit/flutter/faq.md → callkit/faq/ios-faq.md} +10 -22
  5. package/resource/doc/callkit/preset/android/api.md +296 -0
  6. package/resource/doc/callkit/preset/android/integration.md +430 -0
  7. package/resource/doc/callkit/preset/flutter/api.md +410 -0
  8. package/resource/doc/{tuicallkit → callkit/preset}/flutter/integration.md +35 -97
  9. package/resource/doc/callkit/preset/ios/api.md +80 -0
  10. package/resource/doc/{tuicallkit/iOS → callkit/preset/ios}/integration.md +37 -118
  11. package/resource/doc/callkit/preset/react/api.md +501 -0
  12. package/resource/doc/{tuicallkit → callkit/preset}/react/integration.md +5 -20
  13. package/resource/doc/callkit/preset/vue/api.md +501 -0
  14. package/resource/doc/{tuicallkit → callkit/preset}/vue/integration.md +4 -19
  15. package/resource/doc/{chatuikit → chatkit}/android/faq.md +29 -38
  16. package/resource/doc/{chatuikit → chatkit}/android/features/theme.md +22 -166
  17. package/resource/doc/chatkit/android/integration.md +490 -0
  18. package/resource/doc/chatkit/faq/android_sdk/client-api.md +281 -0
  19. package/resource/doc/{chatuikit → chatkit}/faq/common/product.md +0 -1
  20. package/resource/doc/{chatuikit → chatkit}/faq/common/server.md +1 -1
  21. package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +199 -0
  22. package/resource/doc/{chatuikit → chatkit}/faq/flutter_sdk/faq.md +3 -3
  23. package/resource/doc/chatkit/faq/ios_sdk/client-api.md +235 -0
  24. package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/faq.md +3 -3
  25. package/resource/doc/{chatuikit → chatkit}/flutter/features/theme.md +22 -166
  26. package/resource/doc/{chatuikit → chatkit}/flutter/integration.md +19 -88
  27. package/resource/doc/{chatuikit/iOS → chatkit/ios}/faq.md +29 -38
  28. package/resource/doc/{chatuikit/iOS → chatkit/ios}/features/theme.md +27 -176
  29. package/resource/doc/{chatuikit/iOS → chatkit/ios}/integration.md +47 -165
  30. package/resource/doc/{chatuikit → chatkit}/react/components/avatar.md +0 -33
  31. package/resource/doc/{chatuikit → chatkit}/react/components/chat-header.md +8 -49
  32. package/resource/doc/{chatuikit → chatkit}/react/components/chat-setting.md +6 -35
  33. package/resource/doc/{chatuikit → chatkit}/react/components/chat.md +0 -6
  34. package/resource/doc/{chatuikit → chatkit}/react/components/component-list.md +0 -11
  35. package/resource/doc/{chatuikit → chatkit}/react/components/contact-list.md +96 -502
  36. package/resource/doc/chatkit/react/components/conversation-actions.md +174 -0
  37. package/resource/doc/chatkit/react/components/conversation-list.md +333 -0
  38. package/resource/doc/chatkit/react/components/conversation-preview.md +118 -0
  39. package/resource/doc/chatkit/react/components/conversation-search.md +60 -0
  40. package/resource/doc/{chatuikit → chatkit}/react/components/message-input.md +36 -337
  41. package/resource/doc/{chatuikit → chatkit}/react/components/message-list.md +20 -212
  42. package/resource/doc/chatkit/react/components/search.md +243 -0
  43. package/resource/doc/{chatuikit → chatkit}/react/components/tuikit.md +1 -47
  44. package/resource/doc/{chatuikit → chatkit}/react/integration.md +21 -81
  45. package/resource/doc/{chatuikit → chatkit}/vue/components/avatar.md +0 -33
  46. package/resource/doc/{chatuikit → chatkit}/vue/components/chat-header.md +7 -48
  47. package/resource/doc/{chatuikit → chatkit}/vue/components/chat-setting.md +3 -5
  48. package/resource/doc/{chatuikit → chatkit}/vue/components/chat.md +0 -5
  49. package/resource/doc/{chatuikit → chatkit}/vue/components/component-list.md +0 -15
  50. package/resource/doc/chatkit/vue/components/contact-list.md +271 -0
  51. package/resource/doc/chatkit/vue/components/conversation-actions.md +228 -0
  52. package/resource/doc/{chatuikit → chatkit}/vue/components/conversation-list.md +42 -492
  53. package/resource/doc/chatkit/vue/components/conversation-preview.md +213 -0
  54. package/resource/doc/chatkit/vue/components/conversation-search.md +50 -0
  55. package/resource/doc/{chatuikit → chatkit}/vue/components/message-input.md +2 -223
  56. package/resource/doc/{chatuikit → chatkit}/vue/components/message-list.md +23 -252
  57. package/resource/doc/{chatuikit → chatkit}/vue/components/search.md +73 -640
  58. package/resource/doc/{chatuikit → chatkit}/vue/components/tuikit.md +7 -21
  59. package/resource/doc/{chatuikit → chatkit}/vue/components/userpicker.md +3 -62
  60. package/resource/doc/{chatuikit → chatkit}/vue/faq.md +1 -1
  61. package/resource/doc/{chatuikit → chatkit}/vue/integration.md +22 -23
  62. package/resource/doc/livekit/{live → core-sdk/live}/android/live-audience-list.md +18 -89
  63. package/resource/doc/livekit/{live → core-sdk/live}/android/live-audio-effect.md +34 -192
  64. package/resource/doc/livekit/{live → core-sdk/live}/android/live-barrage.md +28 -141
  65. package/resource/doc/livekit/{live → core-sdk/live}/android/live-base-beauty.md +20 -112
  66. package/resource/doc/livekit/{live → core-sdk/live}/android/live-co-guest-interaction.md +59 -193
  67. package/resource/doc/livekit/{live → core-sdk/live}/android/live-gift.md +75 -455
  68. package/resource/doc/livekit/{live → core-sdk/live}/android/live-host-interaction.md +94 -344
  69. package/resource/doc/livekit/{live → core-sdk/live}/android/live-integration.md +107 -515
  70. package/resource/doc/livekit/{live → core-sdk/live}/android/live-live-list.md +33 -173
  71. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audience-list.md +14 -93
  72. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audio-effect.md +34 -179
  73. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-barrage.md +19 -107
  74. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-base-beauty.md +24 -166
  75. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-co-guest-interaction.md +56 -163
  76. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-gift.md +69 -443
  77. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-host-interaction.md +117 -364
  78. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-integration.md +107 -492
  79. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-live-list.md +23 -165
  80. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audience-list.md +35 -111
  81. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audio-effect.md +35 -193
  82. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-barrage.md +31 -144
  83. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-base-beauty.md +24 -116
  84. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-co-guest-interaction.md +37 -171
  85. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-gift.md +79 -459
  86. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-host-interaction.md +69 -320
  87. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-integration.md +85 -502
  88. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-live-list.md +32 -169
  89. package/resource/doc/livekit/core-sdk/voice/android/voice-audience-list.md +263 -0
  90. package/resource/doc/livekit/core-sdk/voice/android/voice-audio-effect.md +222 -0
  91. package/resource/doc/livekit/core-sdk/voice/android/voice-barrage.md +452 -0
  92. package/resource/doc/livekit/core-sdk/voice/android/voice-co-guest-interaction.md +536 -0
  93. package/resource/doc/livekit/core-sdk/voice/android/voice-gift.md +442 -0
  94. package/resource/doc/livekit/core-sdk/voice/android/voice-host-interaction.md +489 -0
  95. package/resource/doc/livekit/core-sdk/voice/android/voice-integration.md +574 -0
  96. package/resource/doc/livekit/core-sdk/voice/android/voice-room-list.md +435 -0
  97. package/resource/doc/livekit/core-sdk/voice/flutter/voice-co-guest-interaction.md +516 -0
  98. package/resource/doc/livekit/core-sdk/voice/flutter/voice-integration.md +576 -0
  99. package/resource/doc/livekit/core-sdk/voice/ios/voice-audience-list.md +263 -0
  100. package/resource/doc/livekit/core-sdk/voice/ios/voice-audio-effect.md +212 -0
  101. package/resource/doc/livekit/core-sdk/voice/ios/voice-barrage.md +404 -0
  102. package/resource/doc/livekit/core-sdk/voice/ios/voice-co-guest-interaction.md +499 -0
  103. package/resource/doc/livekit/core-sdk/voice/ios/voice-gift.md +403 -0
  104. package/resource/doc/livekit/core-sdk/voice/ios/voice-host-interaction.md +552 -0
  105. package/resource/doc/livekit/core-sdk/voice/ios/voice-integration.md +514 -0
  106. package/resource/doc/livekit/core-sdk/voice/ios/voice-room-list.md +348 -0
  107. package/resource/doc/livekit/faq/common/{error_code.md → error-code.md} +2 -2
  108. package/resource/doc/livekit/preset/live/vue/api-reference/index.md +780 -0
  109. package/resource/doc/livekit/preset/live/vue/components/barrage.md +291 -0
  110. package/resource/doc/livekit/{live → preset/live}/vue/components/co-guest-panel.md +10 -49
  111. package/resource/doc/livekit/{live → preset/live}/vue/components/live-audience-list.md +26 -144
  112. package/resource/doc/livekit/{live → preset/live}/vue/components/live-scene-panel.md +12 -75
  113. package/resource/doc/livekit/{live → preset/live}/vue/components/live-view.md +36 -227
  114. package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +215 -0
  115. package/resource/doc/livekit/preset/live/vue/faq.md +1 -0
  116. package/resource/doc/livekit/preset/live/vue/live-list-integration.md +241 -0
  117. package/resource/doc/livekit/preset/live/vue/live-player-desk-integration.md +299 -0
  118. package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +300 -0
  119. package/resource/doc/livekit/preset/live/vue/live-pusher-integration.md +743 -0
  120. package/resource/doc/roomkit/vue/faq.md +1 -0
  121. package/resource/doc/roomkit/vue/features/call-user-to-room.md +17 -53
  122. package/resource/doc/roomkit/vue/features/device-detection.md +30 -48
  123. package/resource/doc/roomkit/vue/features/device-state.md +24 -44
  124. package/resource/doc/roomkit/vue/features/free-beauty-panel.md +13 -36
  125. package/resource/doc/roomkit/vue/features/room-chat.md +31 -89
  126. package/resource/doc/roomkit/vue/features/room-participant-state.md +28 -50
  127. package/resource/doc/roomkit/vue/features/room-state.md +25 -34
  128. package/resource/doc/roomkit/vue/features/room-view.md +30 -125
  129. package/resource/doc/roomkit/vue/features/schedule-room.md +9 -40
  130. package/resource/doc/roomkit/vue/features/screen-share.md +22 -90
  131. package/resource/doc/roomkit/vue/features/virtual-background.md +13 -29
  132. package/resource/doc/roomkit/vue/integration.md +173 -337
  133. package/resource/doc/rtcengine/faq/common/error_code.md +1 -0
  134. package/resource/doc/rtcengine/faq/web/web.md +14 -24
  135. package/resource/doc/rtcengine/web/api.md +1 -3
  136. package/resource/doc/rtcengine/web/how_to_integrated_web_sdk.md +3 -10
  137. package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +1 -5
  138. package/resource/doc/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +1 -2
  139. package/resource/doc/rtcengine/web/plugin/21-advanced-auto-play-policy.md +2 -4
  140. package/resource/doc/rtcengine/web/plugin/23-advanced-support-detection.md +3 -5
  141. package/resource/doc/rtcengine/web/plugin/24-advanced-network-quality.md +1 -7
  142. package/resource/doc/rtcengine/web/plugin/25-advanced-device-change.md +0 -2
  143. package/resource/doc/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +4 -8
  144. package/resource/doc/rtcengine/web/plugin/27-advanced-small-stream.md +11 -11
  145. package/resource/doc/rtcengine/web/plugin/28-advanced-beauty.md +12 -88
  146. package/resource/doc/rtcengine/web/plugin/31-advanced-plugins-overview.md +5 -5
  147. package/resource/doc/rtcengine/web/plugin/34-advanced-proxy.md +30 -37
  148. package/resource/doc/rtcengine/web/plugin/36-advanced-virtual-background.md +13 -90
  149. package/resource/doc/rtcengine/web/plugin/37-advanced-voice-changer.md +1 -2
  150. package/resource/doc/rtcengine/web/plugin/39-advanced-video-decoder.md +1 -2
  151. package/resource/doc/rtcengine/web/plugin/40-advanced-video-mixer.md +19 -19
  152. package/resource/doc/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +1 -1
  153. package/resource/doc/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +4 -5
  154. package/resource/doc/rtcengine/web/plugin/43-advanced-face-detection.md +3 -3
  155. package/resource/doc/trtc/C++/ITRTCCloud.md +686 -2835
  156. package/resource/doc/trtc/C++/ITRTCStatistics.md +53 -308
  157. package/resource/doc/trtc/C++/ITXAudioEffectManager.md +202 -1022
  158. package/resource/doc/trtc/C++/ITXDeviceManager.md +126 -767
  159. package/resource/doc/trtc/C++/TRTCCloudCallback.md +579 -2147
  160. package/resource/doc/trtc/C++/TRTCTypeDef.md +703 -3378
  161. package/resource/doc/trtc/C++/TXLiteAVCode.md +116 -908
  162. package/resource/doc/trtc/android/TRTCCloud.md +606 -2573
  163. package/resource/doc/trtc/android/TRTCCloudDef.md +752 -3640
  164. package/resource/doc/trtc/android/TRTCCloudListener.md +581 -2008
  165. package/resource/doc/trtc/android/TRTCStatistics.md +48 -278
  166. package/resource/doc/trtc/android/TXAudioEffectManager.md +202 -1022
  167. package/resource/doc/trtc/android/TXBeautyManager.md +127 -704
  168. package/resource/doc/trtc/android/TXDeviceManager.md +51 -318
  169. package/resource/doc/trtc/android/TXLiteAVCode.md +114 -892
  170. package/resource/doc/trtc/iOS/TRTCCloud.md +694 -2904
  171. package/resource/doc/trtc/iOS/TRTCCloudDef.md +726 -3498
  172. package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +543 -2028
  173. package/resource/doc/trtc/iOS/TRTCStatistics.md +48 -278
  174. package/resource/doc/trtc/iOS/TXAudioEffectManager.md +174 -877
  175. package/resource/doc/trtc/iOS/TXBeautyManager.md +128 -710
  176. package/resource/doc/trtc/iOS/TXDeviceManager.md +129 -772
  177. package/resource/doc/trtc/iOS/TXLiteAVCode.md +117 -915
  178. package/server.js +1 -5
  179. package/server.js.map +1 -1
  180. package/tools/call/get_callkit_api.js +32 -0
  181. package/tools/call/get_callkit_api.js.map +1 -0
  182. package/tools/call/get_native_call_uikit_integration.js +34 -0
  183. package/tools/call/get_native_call_uikit_integration.js.map +1 -0
  184. package/tools/call/{get-web-call-integration.js → get_web_call_uikit_integration.js} +13 -8
  185. package/tools/call/get_web_call_uikit_integration.js.map +1 -0
  186. package/tools/chat/get_native_chat_uikit_feature_detail.js +34 -0
  187. package/tools/chat/get_native_chat_uikit_feature_detail.js.map +1 -0
  188. package/tools/chat/get_native_chat_uikit_integration.js +45 -0
  189. package/tools/chat/get_native_chat_uikit_integration.js.map +1 -0
  190. package/tools/chat/get_web_chat_uikit_component_detail.js +34 -0
  191. package/tools/chat/get_web_chat_uikit_component_detail.js.map +1 -0
  192. package/tools/chat/get_web_chat_uikit_integration.js +45 -0
  193. package/tools/chat/get_web_chat_uikit_integration.js.map +1 -0
  194. package/tools/common/get_faq.js +265 -0
  195. package/tools/common/get_faq.js.map +1 -0
  196. package/tools/common/{get-usersig.js → get_usersig.js} +6 -3
  197. package/tools/common/get_usersig.js.map +1 -0
  198. package/tools/common/present_framework_choice.js +63 -0
  199. package/tools/common/present_framework_choice.js.map +1 -0
  200. package/tools/definitions/get_callkit_api_def.js +29 -0
  201. package/tools/definitions/get_callkit_api_def.js.map +1 -0
  202. package/tools/definitions/get_faq_def.js +17 -18
  203. package/tools/definitions/get_faq_def.js.map +1 -1
  204. package/tools/definitions/get_native_call_uikit_integration_def.js +15 -18
  205. package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
  206. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +31 -0
  207. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +1 -0
  208. package/tools/definitions/get_native_chat_uikit_integration_def.js +16 -19
  209. package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
  210. package/tools/definitions/get_native_livekit_core_features_def.js +34 -0
  211. package/tools/definitions/get_native_livekit_core_features_def.js.map +1 -0
  212. package/tools/definitions/get_native_livekit_core_integration_def.js +34 -0
  213. package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -0
  214. package/tools/definitions/get_native_trtc_sdk_docs_def.js +32 -0
  215. package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +1 -0
  216. package/tools/definitions/get_usersig_def.js +17 -22
  217. package/tools/definitions/get_usersig_def.js.map +1 -1
  218. package/tools/definitions/get_web_call_uikit_integration_def.js +15 -7
  219. package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
  220. package/tools/definitions/get_web_chat_uikit_component_detail_def.js +17 -49
  221. package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +1 -1
  222. package/tools/definitions/get_web_chat_uikit_integration_def.js +16 -19
  223. package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
  224. package/tools/definitions/get_web_live_uikit_integration_def.js +15 -18
  225. package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
  226. package/tools/definitions/get_web_livekit_api_def.js +30 -0
  227. package/tools/definitions/get_web_livekit_api_def.js.map +1 -0
  228. package/tools/definitions/get_web_livekit_component_detail_def.js +32 -0
  229. package/tools/definitions/get_web_livekit_component_detail_def.js.map +1 -0
  230. package/tools/definitions/get_web_room_uikit_integration_def.js +15 -30
  231. package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
  232. package/tools/definitions/get_web_roomkit_feature_detail_def.js +31 -0
  233. package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +1 -0
  234. package/tools/definitions/get_web_trtc_sdk_api_def.js +27 -0
  235. package/tools/definitions/get_web_trtc_sdk_api_def.js.map +1 -0
  236. package/tools/definitions/get_web_trtc_sdk_integration_def.js +27 -0
  237. package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +1 -0
  238. package/tools/definitions/get_web_trtc_sdk_plugin_def.js +27 -0
  239. package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +1 -0
  240. package/tools/definitions/present_framework_choice_def.js +24 -12
  241. package/tools/definitions/present_framework_choice_def.js.map +1 -1
  242. package/tools/index.js +47 -59
  243. package/tools/index.js.map +1 -1
  244. package/tools/live/get_native_livekit_core_features.js +65 -0
  245. package/tools/live/get_native_livekit_core_features.js.map +1 -0
  246. package/tools/live/get_native_livekit_core_integration.js +59 -0
  247. package/tools/live/get_native_livekit_core_integration.js.map +1 -0
  248. package/tools/live/get_web_live_uikit_integration.js +48 -0
  249. package/tools/live/get_web_live_uikit_integration.js.map +1 -0
  250. package/tools/live/get_web_livekit_api.js +32 -0
  251. package/tools/live/get_web_livekit_api.js.map +1 -0
  252. package/tools/live/get_web_livekit_component_detail.js +34 -0
  253. package/tools/live/get_web_livekit_component_detail.js.map +1 -0
  254. package/tools/room/{get-web-room-integration.js → get_web_room_uikit_integration.js} +13 -14
  255. package/tools/room/get_web_room_uikit_integration.js.map +1 -0
  256. package/tools/room/{get-web-room-feature-detail.js → get_web_roomkit_feature_detail.js} +30 -31
  257. package/tools/room/get_web_roomkit_feature_detail.js.map +1 -0
  258. package/tools/rtcengine/get_web_trtc_sdk_api.js +31 -0
  259. package/tools/rtcengine/get_web_trtc_sdk_api.js.map +1 -0
  260. package/tools/rtcengine/get_web_trtc_sdk_integration.js +31 -0
  261. package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +1 -0
  262. package/tools/rtcengine/get_web_trtc_sdk_plugin.js +31 -0
  263. package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +1 -0
  264. package/tools/trtc/get_native_trtc_sdk_docs.js +73 -0
  265. package/tools/trtc/get_native_trtc_sdk_docs.js.map +1 -0
  266. package/utils/generate-structured-result.js +61 -17
  267. package/utils/generate-structured-result.js.map +1 -1
  268. package/utils/report-cls-client.js +12 -1
  269. package/utils/report-cls-client.js.map +1 -1
  270. package/utils/report-es-client.js +2 -2
  271. package/resource/doc/chatuikit/android/integration.md +0 -287
  272. package/resource/doc/chatuikit/faq/android_sdk/client-api.md +0 -1371
  273. package/resource/doc/chatuikit/faq/flutter_sdk/client-api.md +0 -932
  274. package/resource/doc/chatuikit/faq/ios_sdk/client-api.md +0 -1119
  275. package/resource/doc/chatuikit/flutter/workflow.md +0 -941
  276. package/resource/doc/chatuikit/iOS/workflow.md +0 -0
  277. package/resource/doc/chatuikit/react/components/conversation-list.md +0 -1017
  278. package/resource/doc/chatuikit/react/components/search.md +0 -745
  279. package/resource/doc/chatuikit/react/create-group.md +0 -23
  280. package/resource/doc/chatuikit/react/init.md +0 -26
  281. package/resource/doc/chatuikit/react/workflow.md +0 -258
  282. package/resource/doc/chatuikit/vue/components/contact-list.md +0 -679
  283. package/resource/doc/chatuikit/vue/create-group.md +0 -25
  284. package/resource/doc/chatuikit/vue/init.md +0 -40
  285. package/resource/doc/chatuikit/vue/workflow.md +0 -395
  286. package/resource/doc/livekit/live/android/workflow.md +0 -320
  287. package/resource/doc/livekit/live/flutter/workflow.md +0 -353
  288. package/resource/doc/livekit/live/ios/workflow.md +0 -454
  289. package/resource/doc/livekit/live/vue/components/barrage.md +0 -616
  290. package/resource/doc/livekit/live/vue/components/stream-mixer.md +0 -446
  291. package/resource/doc/livekit/live/vue/faq.md +0 -0
  292. package/resource/doc/livekit/live/vue/live-list-integration.md +0 -200
  293. package/resource/doc/livekit/live/vue/live-player-desk-integration.md +0 -269
  294. package/resource/doc/livekit/live/vue/live-player-h5-integration.md +0 -269
  295. package/resource/doc/livekit/live/vue/live-pusher-integration.md +0 -595
  296. package/resource/doc/livekit/live/vue/states/live-state.md +0 -3591
  297. package/resource/doc/livekit/live/vue/workflow.md +0 -218
  298. package/resource/doc/native_live/android/V2TXLiveCode_api_android.md +0 -312
  299. package/resource/doc/native_live/android/V2TXLiveDef_api_android.md +0 -430
  300. package/resource/doc/native_live/android/V2TXLivePlayerObserver_api_android.md +0 -679
  301. package/resource/doc/native_live/android/V2TXLivePlayer_api_android.md +0 -671
  302. package/resource/doc/native_live/android/V2TXLivePremier_api_android.md +0 -271
  303. package/resource/doc/native_live/android/V2TXLivePusherObserver_api_android.md +0 -849
  304. package/resource/doc/native_live/android/V2TXLivePusher_api_android.md +0 -1046
  305. package/resource/doc/native_live/flutter/V2TXLiveCode_api_flutter.md +0 -460
  306. package/resource/doc/native_live/flutter/V2TXLiveDef_api_flutter.md +0 -558
  307. package/resource/doc/native_live/flutter/V2TXLivePlayerObserver_api_flutter.md +0 -865
  308. package/resource/doc/native_live/flutter/V2TXLivePlayer_api_flutter.md +0 -657
  309. package/resource/doc/native_live/flutter/V2TXLivePremier_api_flutter.md +0 -437
  310. package/resource/doc/native_live/flutter/V2TXLivePusherObserver_api_flutter.md +0 -335
  311. package/resource/doc/native_live/flutter/V2TXLivePusher_api_flutter.md +0 -748
  312. package/resource/doc/native_live/iOS/V2TXLiveCode_api_iOS.md +0 -327
  313. package/resource/doc/native_live/iOS/V2TXLiveDef_api_iOS.md +0 -507
  314. package/resource/doc/native_live/iOS/V2TXLivePlayerObserver_api_iOS.md +0 -507
  315. package/resource/doc/native_live/iOS/V2TXLivePlayer_api_iOS.md +0 -659
  316. package/resource/doc/native_live/iOS/V2TXLivePremier_api_iOS.md +0 -284
  317. package/resource/doc/native_live/iOS/V2TXLivePusherObserver_api_iOS.md +0 -814
  318. package/resource/doc/native_live/iOS/V2TXLivePusher_api_iOS.md +0 -1000
  319. package/resource/doc/roomkit/vue/features/workflow.md +0 -553
  320. package/resource/doc/roomkit/vue/workflow.md +0 -487
  321. package/resource/doc/tuicallkit/android/integration.md +0 -286
  322. package/resource/doc/tuicallkit/android/workflow.md +0 -0
  323. package/resource/doc/tuicallkit/faq/android_sdk/call-observer-api.md +0 -784
  324. package/resource/doc/tuicallkit/faq/android_sdk/callkit-api.md +0 -610
  325. package/resource/doc/tuicallkit/faq/flutter_sdk/call-define-api.md +0 -938
  326. package/resource/doc/tuicallkit/faq/flutter_sdk/call-observer-api.md +0 -897
  327. package/resource/doc/tuicallkit/faq/flutter_sdk/callkit-api.md +0 -469
  328. package/resource/doc/tuicallkit/faq/ios_sdk/call-observer-api.md +0 -781
  329. package/resource/doc/tuicallkit/faq/ios_sdk/callkit-api.md +0 -398
  330. package/resource/doc/tuicallkit/flutter/workflow.md +0 -331
  331. package/resource/doc/tuicallkit/react/api.md +0 -1404
  332. package/resource/doc/tuicallkit/vue/api.md +0 -1406
  333. package/resource/doc/tuicallkit/vue/faq.md +0 -36
  334. package/tools/call/get-native-call-integration.js +0 -43
  335. package/tools/call/get-native-call-integration.js.map +0 -1
  336. package/tools/call/get-web-call-api.js +0 -27
  337. package/tools/call/get-web-call-api.js.map +0 -1
  338. package/tools/call/get-web-call-integration.js.map +0 -1
  339. package/tools/chat/get-native-chat-feature-detail.js +0 -30
  340. package/tools/chat/get-native-chat-feature-detail.js.map +0 -1
  341. package/tools/chat/get-native-chat-integration.js +0 -45
  342. package/tools/chat/get-native-chat-integration.js.map +0 -1
  343. package/tools/chat/get-web-chat-component-detail.js +0 -31
  344. package/tools/chat/get-web-chat-component-detail.js.map +0 -1
  345. package/tools/chat/get-web-chat-integration.js +0 -45
  346. package/tools/chat/get-web-chat-integration.js.map +0 -1
  347. package/tools/chat/get-web-chat-uikit-init.js +0 -28
  348. package/tools/chat/get-web-chat-uikit-init.js.map +0 -1
  349. package/tools/chat/get-web-create-group-doc.js +0 -28
  350. package/tools/chat/get-web-create-group-doc.js.map +0 -1
  351. package/tools/common/get-faq.js +0 -91
  352. package/tools/common/get-faq.js.map +0 -1
  353. package/tools/common/get-usersig.js.map +0 -1
  354. package/tools/common/present-framework-choice.js +0 -16
  355. package/tools/common/present-framework-choice.js.map +0 -1
  356. package/tools/common/record-prompt.js +0 -55
  357. package/tools/common/record-prompt.js.map +0 -1
  358. package/tools/common/record-result.js +0 -60
  359. package/tools/common/record-result.js.map +0 -1
  360. package/tools/definitions/get_native_chat_feature_detail_def.js +0 -32
  361. package/tools/definitions/get_native_chat_feature_detail_def.js.map +0 -1
  362. package/tools/definitions/get_native_live_api_def.js +0 -23
  363. package/tools/definitions/get_native_live_api_def.js.map +0 -1
  364. package/tools/definitions/get_native_live_uikit_extra_features_def.js +0 -87
  365. package/tools/definitions/get_native_live_uikit_extra_features_def.js.map +0 -1
  366. package/tools/definitions/get_native_live_uikit_integration_def.js +0 -49
  367. package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
  368. package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -74
  369. package/tools/definitions/get_native_live_uikit_interaction_def.js.map +0 -1
  370. package/tools/definitions/get_trtc_native_api_def.js +0 -16
  371. package/tools/definitions/get_trtc_native_api_def.js.map +0 -1
  372. package/tools/definitions/get_web_call_uikit_api_def.js +0 -23
  373. package/tools/definitions/get_web_call_uikit_api_def.js.map +0 -1
  374. package/tools/definitions/get_web_chat_uikit_init_def.js +0 -23
  375. package/tools/definitions/get_web_chat_uikit_init_def.js.map +0 -1
  376. package/tools/definitions/get_web_create_group_doc_def.js +0 -18
  377. package/tools/definitions/get_web_create_group_doc_def.js.map +0 -1
  378. package/tools/definitions/get_web_live_state_detail_def.js +0 -19
  379. package/tools/definitions/get_web_live_state_detail_def.js.map +0 -1
  380. package/tools/definitions/get_web_live_uikit_component_detail_def.js +0 -27
  381. package/tools/definitions/get_web_live_uikit_component_detail_def.js.map +0 -1
  382. package/tools/definitions/get_web_room_feature_detail_def.js +0 -95
  383. package/tools/definitions/get_web_room_feature_detail_def.js.map +0 -1
  384. package/tools/definitions/get_web_room_state_detail_def.js +0 -19
  385. package/tools/definitions/get_web_room_state_detail_def.js.map +0 -1
  386. package/tools/definitions/record_prompt_def.js +0 -53
  387. package/tools/definitions/record_prompt_def.js.map +0 -1
  388. package/tools/definitions/record_result_def.js +0 -30
  389. package/tools/definitions/record_result_def.js.map +0 -1
  390. package/tools/live/get-native-live-uikit-integration.js +0 -101
  391. package/tools/live/get-native-live-uikit-integration.js.map +0 -1
  392. package/tools/live/get-web-live-component-detail.js +0 -31
  393. package/tools/live/get-web-live-component-detail.js.map +0 -1
  394. package/tools/live/get-web-live-state-detail.js +0 -31
  395. package/tools/live/get-web-live-state-detail.js.map +0 -1
  396. package/tools/live/get-web-live-uikit-integration.js +0 -52
  397. package/tools/live/get-web-live-uikit-integration.js.map +0 -1
  398. package/tools/live/get_native_live_uikit_extra_features.js +0 -105
  399. package/tools/live/get_native_live_uikit_extra_features.js.map +0 -1
  400. package/tools/live/get_native_live_uikit_interaction.js +0 -101
  401. package/tools/live/get_native_live_uikit_interaction.js.map +0 -1
  402. package/tools/native_live/get-native-live-api.js +0 -31
  403. package/tools/native_live/get-native-live-api.js.map +0 -1
  404. package/tools/room/get-web-room-feature-detail.js.map +0 -1
  405. package/tools/room/get-web-room-integration.js.map +0 -1
  406. package/tools/rtcengine/get-rtcengine-web-sdk-integration.js +0 -28
  407. package/tools/rtcengine/get-rtcengine-web-sdk-integration.js.map +0 -1
  408. package/tools/rtcengine/get-trtc-sdk-faq.js +0 -32
  409. package/tools/rtcengine/get-trtc-sdk-faq.js.map +0 -1
  410. package/tools/rtcengine/get-trtc-web-sdk-api.js +0 -28
  411. package/tools/rtcengine/get-trtc-web-sdk-api.js.map +0 -1
  412. package/tools/rtcengine/get-trtc-web-sdk-faq.js +0 -30
  413. package/tools/rtcengine/get-trtc-web-sdk-faq.js.map +0 -1
  414. package/tools/rtcengine/get-trtc-web-sdk-integration.js +0 -29
  415. package/tools/rtcengine/get-trtc-web-sdk-integration.js.map +0 -1
  416. package/tools/rtcengine/get-trtc-web-sdk-plugin.js +0 -45
  417. package/tools/rtcengine/get-trtc-web-sdk-plugin.js.map +0 -1
  418. package/tools/trtc/get-trtc-native-api.js +0 -31
  419. package/tools/trtc/get-trtc-native-api.js.map +0 -1
  420. package/utils/handle-component-name.js +0 -33
  421. package/utils/handle-component-name.js.map +0 -1
  422. /package/resource/doc/{chatuikit/android/workflow.md → callkit/core-sdk/.gitkeep} +0 -0
  423. /package/resource/doc/{tuicallkit/faq/common/error_code.md → callkit/faq/common/error-code.md} +0 -0
  424. /package/resource/doc/{tuicallkit/react/faq.md → callkit/faq/web-faq.md} +0 -0
  425. /package/resource/doc/{chatuikit → chatkit}/faq/common/server_error_code.md +0 -0
  426. /package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/error_code.md +0 -0
  427. /package/resource/doc/{chatuikit → chatkit}/flutter/faq.md +0 -0
  428. /package/resource/doc/{chatuikit → chatkit}/react/faq.md +0 -0
  429. /package/resource/doc/roomkit/faq/common/{error_code.md → error-code.md} +0 -0
@@ -1,8 +1,5 @@
1
1
  `LiveListStore` is the core module of **AtomicXCore** responsible for managing the live room list, creating and joining rooms, and maintaining room state. With `LiveListStore`, you can implement comprehensive live streaming lifecycle management in your application.
2
2
 
3
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027182498/fe0864bbc90511f09e745254007c27c5.png)
4
-
5
-
6
3
  ## Core Features
7
4
  - **Live Room List Fetching**: Retrieve all currently public live rooms, returned one page at a time.
8
5
 
@@ -10,58 +7,20 @@
10
7
 
11
8
  - **Real-Time Event Listening**: Listen for key events such as live session end or users being removed from a room.
12
9
 
13
-
14
10
  ## Core Concepts
15
- <table>
16
- <tr>
17
- <td rowspan="1" colSpan="1" >**Core Concept**</td>
18
-
19
- <td rowspan="1" colSpan="1" >**Type**</td>
20
-
21
- <td rowspan="1" colSpan="1" >**Core Responsibility & Description**</td>
22
- </tr>
23
-
24
- <tr>
25
- <td rowspan="1" colSpan="1" >`LiveInfo`</td>
26
-
27
- <td rowspan="1" colSpan="1" >`struct`</td>
28
-
29
- <td rowspan="1" colSpan="1" >- Represents the complete information model of a live room. <br>- Includes the live room ID (`liveID`), name (`liveName`), owner information (`liveOwner`), and custom metadata (`metaData`), among other properties.</td>
30
- </tr>
31
-
32
- <tr>
33
- <td rowspan="1" colSpan="1" >`LiveListState`</td>
34
-
35
- <td rowspan="1" colSpan="1" >`struct`</td>
36
-
37
- <td rowspan="1" colSpan="1" >- Represents the current state of the live list module. <br>- The core property `liveList` is a StateFlow containing the fetched live room list; <br>- `currentLive` represents the information of the live room the user is currently in.</td>
38
- </tr>
39
-
40
- <tr>
41
- <td rowspan="1" colSpan="1" >`LiveListEvent`</td>
42
-
43
- <td rowspan="1" colSpan="1" >`enum`</td>
44
-
45
- <td rowspan="1" colSpan="1" >Handles global live room events, including `.onLiveEnded` (live ended) and `.onKickedOutOfLive` (user removed from live), for responding to key room state changes.</td>
46
- </tr>
47
-
48
- <tr>
49
- <td rowspan="1" colSpan="1" >`LiveListStore`</td>
50
-
51
- <td rowspan="1" colSpan="1" >`class`</td>
52
-
53
- <td rowspan="1" colSpan="1" >- The core management class for interacting with the live room list and room lifecycle. <br>- It is a global singleton responsible for all operations such as creating, joining, and updating live room information.</td>
54
- </tr>
55
- </table>
56
-
11
+ | **Core Concept** | **Type** | **Core Responsibility & Description** |
12
+ | --- | --- | --- |
13
+ | `LiveInfo` | `struct` | - Represents the complete information model of a live room.<br>- Includes the live room ID (`liveID`), name (`liveName`), owner information (`liveOwner`), and custom metadata (`metaData`), among other properties. |
14
+ | `LiveListState` | `struct` | - Represents the current state of the live list module.<br>- The core property `liveList` is a StateFlow containing the fetched live room list;<br>- `currentLive` represents the information of the live room the user is currently in. |
15
+ | `LiveListEvent` | `enum` | Handles global live room events, including `.onLiveEnded` (live ended) and `.onKickedOutOfLive` (user removed from live), for responding to key room state changes. |
16
+ | `LiveListStore` | `class` | - The core management class for interacting with the live room list and room lifecycle.<br>- It is a global singleton responsible for all operations such as creating, joining, and updating live room information. |
57
17
 
58
18
  ## Implementation
59
19
 
60
20
  ### Step 1: Component Integration
61
- - **Video Live Streaming**:Refer to [Quick Start](https://write.woa.com/document/194571606121816064) to integrate AtomicXCore and complete the implementation of the [Host Video Streaming](https://write.woa.com/document/194571606121816064) and [Audience Join and Watch](https://write.woa.com/document/194571606121816064) features.
62
-
63
- - **Voice Chat Room**:Refer to [Quick Start](https://write.woa.com/document/194571595685527552) to integrate AtomicXCore and complete the implementation of the [Host Audio Streaming](https://write.woa.com/document/194571595685527552) and [Audience Join and Watch](https://write.woa.com/document/194571595685527552) features.
21
+ - **Video Live Streaming**:Refer to Quick Start to integrate AtomicXCore and complete the implementation of the Host Video Streaming and Audience Join and Watch features.
64
22
 
23
+ - **Voice Chat Room**:Refer to Quick Start to integrate AtomicXCore and complete the implementation of the Host Audio Streaming and Audience Join and Watch features.
65
24
 
66
25
  ### Step 2: Implement Audience Entry from Live Room List
67
26
 
@@ -85,7 +44,7 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
85
44
  bindStore()
86
45
  fetchLiveList()
87
46
  }
88
-
47
+
89
48
  private func bindStore() {
90
49
  // Subscribe to state to automatically receive list updates
91
50
  liveListStore.state
@@ -105,7 +64,7 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
105
64
  }
106
65
  }
107
66
  }
108
-
67
+
109
68
  // Called when the user taps a cell in the list
110
69
  func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
111
70
  let selectedLiveInfo = liveList[indexPath.item]
@@ -114,7 +73,7 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
114
73
  audienceVC.modalPresentationStyle = .fullScreen
115
74
  present(audienceVC, animated: true)
116
75
  }
117
-
76
+
118
77
  // --- UICollectionViewDataSource, Delegate, and UI setup methods ---
119
78
  private func setupUI() {
120
79
  let layout = UICollectionViewFlowLayout()
@@ -129,7 +88,7 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
129
88
  func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
130
89
  return liveList.count
131
90
  }
132
-
91
+
133
92
  func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
134
93
  let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "LiveCell", for: indexPath)
135
94
  cell.backgroundColor = .lightGray // Customize your cell style
@@ -137,7 +96,7 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
137
96
  // ... (e.g.: cell.titleLabel.text = liveInfo.liveName)
138
97
  return cell
139
98
  }
140
-
99
+
141
100
  func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
142
101
  // Adjust cell size for single or double column layout as needed
143
102
  let width = (view.bounds.width - 30) / 2
@@ -147,80 +106,16 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
147
106
  ```
148
107
 
149
108
  #### LiveInfo Parameter Reference
150
- <table>
151
- <tr>
152
- <td rowspan="1" colSpan="1" >**Parameter Name**</td>
153
-
154
- <td rowspan="1" colSpan="1" >**Type**</td>
155
-
156
- <td rowspan="1" colSpan="1" >**Description**</td>
157
- </tr>
158
-
159
- <tr>
160
- <td rowspan="1" colSpan="1" >`liveID`</td>
161
-
162
- <td rowspan="1" colSpan="1" >`String`</td>
163
-
164
- <td rowspan="1" colSpan="1" >Unique identifier for the live room</td>
165
- </tr>
166
-
167
- <tr>
168
- <td rowspan="1" colSpan="1" >`liveName`</td>
169
-
170
- <td rowspan="1" colSpan="1" >`String`</td>
171
-
172
- <td rowspan="1" colSpan="1" >Title of the live room</td>
173
- </tr>
174
-
175
- <tr>
176
- <td rowspan="1" colSpan="1" >`coverURL`</td>
177
-
178
- <td rowspan="1" colSpan="1" >`String`</td>
179
-
180
- <td rowspan="1" colSpan="1" >URL of the live room cover image</td>
181
- </tr>
182
-
183
- <tr>
184
- <td rowspan="1" colSpan="1" >`liveOwner`</td>
185
-
186
- <td rowspan="1" colSpan="1" >[LiveUserInfo](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveuserinfo)</td>
187
-
188
- <td rowspan="1" colSpan="1" >Personal information of the room owner</td>
189
- </tr>
190
-
191
- <tr>
192
- <td rowspan="1" colSpan="1" >`totalViewerCount`</td>
193
-
194
- <td rowspan="1" colSpan="1" >`Int`</td>
195
-
196
- <td rowspan="1" colSpan="1" >Total number of viewers in the live room</td>
197
- </tr>
198
-
199
- <tr>
200
- <td rowspan="1" colSpan="1" >`categoryList`</td>
201
-
202
- <td rowspan="1" colSpan="1" >`[NSNumber]`</td>
203
-
204
- <td rowspan="1" colSpan="1" >List of category tags for the live room</td>
205
- </tr>
206
-
207
- <tr>
208
- <td rowspan="1" colSpan="1" >`notice`</td>
209
-
210
- <td rowspan="1" colSpan="1" >`String`</td>
211
-
212
- <td rowspan="1" colSpan="1" >Announcement information for the live room</td>
213
- </tr>
214
-
215
- <tr>
216
- <td rowspan="1" colSpan="1" >`metaData`</td>
217
-
218
- <td rowspan="1" colSpan="1" >`[String: String]`</td>
219
-
220
- <td rowspan="1" colSpan="1" >Developer-defined metadata for implementing complex business scenarios</td>
221
- </tr>
222
- </table>
223
-
109
+ | **Parameter Name** | **Type** | **Description** |
110
+ | --- | --- | --- |
111
+ | `liveID` | `String` | Unique identifier for the live room |
112
+ | `liveName` | `String` | Title of the live room |
113
+ | `coverURL` | `String` | URL of the live room cover image |
114
+ | `liveOwner` | [LiveUserInfo](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveuserinfo) | Personal information of the room owner |
115
+ | `totalViewerCount` | `Int` | Total number of viewers in the live room |
116
+ | `categoryList` | `[NSNumber]` | List of category tags for the live room |
117
+ | `notice` | `String` | Announcement information for the live room |
118
+ | `metaData` | `[String: String]` | Developer-defined metadata for implementing complex business scenarios |
224
119
 
225
120
  ## Advanced Features
226
121
 
@@ -228,9 +123,6 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
228
123
 
229
124
  On the live plaza page, users can select category tags such as "Hot", "Music", "Games", etc. When a tag is selected, the live room list dynamically filters to display only rooms in the chosen category, helping users quickly discover relevant content.
230
125
 
231
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027182498/7dcde616ab4b11f0a68e5254001c06ec.png)
232
-
233
-
234
126
  #### Implementation
235
127
 
236
128
  Use the `categoryList` property in the `LiveInfo` model. When the host sets a category at the start of the stream, the `LiveInfo` object returned by `fetchLiveList` includes this category data. After fetching the full live room list, filter it on the client side based on the selected category and update the UI.
@@ -321,17 +213,13 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
321
213
  Users can switch between live rooms by swiping up or down. When a new live room is centered on the screen, its video will automatically start preview playback; when it is swiped away or no longer visible on the screen, playback will automatically stop to save bandwidth and device resources.
322
214
 
323
215
  > **Note:**
324
- >
216
+ >
325
217
 
326
218
  > **Swipe-to-Play **is currently only supported for Video Live Streaming.
327
- >
328
-
219
+ >
329
220
 
330
221
  #### Interaction Flow
331
222
 
332
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027182498/9e134120c90711f087ad52540099c741.webp)
333
-
334
-
335
223
  #### Implementation
336
224
 
337
225
  `LiveCoreView` supports multiple instances. Create a separate `LiveCoreView` for each `UICollectionViewCell`. By listening to the scroll delegate methods of `UICollectionView`, you can control when the `LiveCoreView` in each cell should start or stop streaming, enabling "play on swipe in, stop on swipe out".
@@ -409,32 +297,10 @@ class LiveFeedViewController: UIViewController, UICollectionViewDataSource, UICo
409
297
  ## **API Documentation**
410
298
 
411
299
  For detailed information on all public interfaces, properties, and methods of [LiveListStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveliststore) and related classes, refer to the official API documentation included with the [AtomicXCore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore) framework. The relevant Stores used in this document are as follows:
412
- <table>
413
- <tr>
414
- <td rowspan="1" colSpan="1" >**Store/Component**</td>
415
-
416
- <td rowspan="1" colSpan="1" >**Feature Description**</td>
417
-
418
- <td rowspan="1" colSpan="1" >**API Documentation**</td>
419
- </tr>
420
-
421
- <tr>
422
- <td rowspan="1" colSpan="1" >LiveCoreView</td>
423
-
424
- <td rowspan="1" colSpan="1" >- Core view component for live video stream display and interaction. <br>- Responsible for video stream rendering and view widget handling, supporting scenarios such as host streaming, audience co-hosting, and host linking.</td>
425
-
426
- <td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/livecoreview)</td>
427
- </tr>
428
-
429
- <tr>
430
- <td rowspan="1" colSpan="1" >LiveListStore</td>
431
-
432
- <td rowspan="1" colSpan="1" >Full lifecycle management of live rooms: create, join, leave, destroy rooms; query room list; modify live information (name, announcement, etc.); listen to live status (such as being removed or ended).</td>
433
-
434
- <td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveliststore)</td>
435
- </tr>
436
- </table>
437
-
300
+ | **Store/Component** | **Feature Description** | **API Documentation** |
301
+ | --- | --- | --- |
302
+ | LiveCoreView | - Core view component for live video stream display and interaction.<br>- Responsible for video stream rendering and view widget handling, supporting scenarios such as host streaming, audience co-hosting, and host linking. | [API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/livecoreview) |
303
+ | LiveListStore | Full lifecycle management of live rooms: create, join, leave, destroy rooms; query room list; modify live information (name, announcement, etc.); listen to live status (such as being removed or ended). | [API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveliststore) |
438
304
 
439
305
  ## FAQs
440
306
 
@@ -450,7 +316,7 @@ We recommend two approaches:
450
316
 
451
317
  **Approach 1 (Recommended): Use seatLayoutTemplateID for differentiation.**
452
318
 
453
- This template ID defines the room layout. For supported template IDs and effects, refer to [Run And Test](https://write.woa.com/document/194571606121816064).
319
+ This template ID defines the room layout. For supported template IDs and effects, refer to Run And Test.
454
320
  - **Step 1: Specify ID when creating a room**
455
321
 
456
322
  - When calling `LiveListStore.shared.createLive`, set the `seatLayoutTemplateID` property of `LiveInfo` based on your business scenario:
@@ -462,18 +328,15 @@ This template ID defines the room layout. For supported template IDs and effects
462
328
  - **Step 2: Filter when fetching the list**
463
329
 
464
330
  - On the client side, after receiving the list in `LiveListStore.state.liveList`, determine the business scenario by checking the template ID range.
465
-
466
331
 
467
332
  > **Note:**
468
- >
333
+ >
469
334
 
470
335
  > If the seatLayoutTemplateID does not match your business scenario (voice chat room or video live room), seat layout features may not work as expected.
471
- >
472
-
336
+ >
473
337
 
474
338
  **Approach 2:****Add a business prefix to **`liveID`**.**
475
339
 
476
-
477
340
  This is an optional, application-layer convention to help you filter rooms quickly.
478
341
 
479
342
  - **Step 1: Add prefix when creating a room**
@@ -0,0 +1,263 @@
1
+ `LiveAudienceStore` is a module in `AtomicXCore` designed for managing audience information in live streaming rooms. With `LiveAudienceStore`, you can implement a comprehensive audience list and management system for your live streaming application.
2
+
3
+ ## Core Features
4
+ - **Real-Time Audience List**: Retrieve and display all audience information currently present in the live room.
5
+
6
+ - **Audience Count Statistics**: Access the accurate, real-time total number of viewers in the live room.
7
+
8
+ - **Audience Activity Monitoring**: Subscribe to events to instantly detect when viewers join or leave.
9
+
10
+ - **Administrator Privileges**: The host can promote regular viewers to administrators or revoke their admin status.
11
+
12
+ - **Room Management**: The host or administrator can remove (kick out) any regular viewer from the live room.
13
+
14
+ ## Core Concepts
15
+ | **Core Concept** | **Type** | **Core Responsibilities & Description** |
16
+ | --- | --- | --- |
17
+ | `LiveUserInfo` | data class | Represents the basic information model of an audience member (user). It contains the user's unique identifier (`userID`), nickname (`userName`), and avatar URL (`avatarURL`). |
18
+ | `LiveAudienceState` | data class | Represents the current state of the audience module. Its core property `audienceList` is a StateFlow that stores the real-time state of the audience list; `audienceCount` represents the real-time state of the current total number of viewers. |
19
+ | `LiveAudienceListener` | abstract class | Represents real-time audience activity events. It includes `onAudienceJoined` (audience joins) and `onAudienceLeft` (audience leaves), used for incremental updates to the audience list. |
20
+ | `LiveAudienceStore` | abstract class | This is the core management class for interacting with audience list functionality. Through it, you can obtain audience list snapshots, perform management operations, and subscribe to its `LiveAudienceListener` for real-time updates. |
21
+
22
+ ## Implementation Guide
23
+
24
+ ### Step 1: Component Integration
25
+ - **Video Live Streaming**: Please refer to Quick Start to integrate AtomicXCore
26
+
27
+ - **Voice Chat Room**: Please refer to Quick Start to integrate AtomicXCore.
28
+
29
+ ### Step 2: Initialize and Retrieve the Audience List
30
+
31
+ Obtain a `LiveAudienceStore` instance bound to the current live room's `liveId`, and fetch the current audience list for the initial display.
32
+ ``` kotlin
33
+ import kotlinx.coroutines.*
34
+ import kotlinx.coroutines.flow.*
35
+ import io.trtc.tuikit.atomicxcore.api.CompletionHandler
36
+ import io.trtc.tuikit.atomicxcore.api.live.LiveAudienceStore
37
+ import io.trtc.tuikit.atomicxcore.api.live.LiveUserInfo
38
+
39
+ class AudienceManager(
40
+ private val liveId: String
41
+ ) {
42
+ private val audienceStore: LiveAudienceStore = LiveAudienceStore.create(liveId)
43
+ private val scope = CoroutineScope(Dispatchers.Main)
44
+
45
+ // Expose the [full] audience list state flow for UI layer subscription
46
+ private val _audienceList = MutableStateFlow<List<LiveUserInfo>>(emptyList())
47
+ val audienceList: StateFlow<List<LiveUserInfo>> = _audienceList.asStateFlow()
48
+
49
+ // Expose the audience count state flow
50
+ private val _audienceCount = MutableStateFlow(0)
51
+ val audienceCount: StateFlow<Int> = _audienceCount.asStateFlow()
52
+
53
+ init {
54
+ // 1. Subscribe to state and events, see next section for implementation
55
+ subscribeToAudienceState()
56
+ subscribeToAudienceEvents()
57
+
58
+ // 2. Actively fetch initial data for the first screen
59
+ fetchInitialAudienceList()
60
+ }
61
+
62
+ /// Actively fetch a snapshot of the audience list once
63
+ private fun fetchInitialAudienceList() {
64
+ audienceStore.fetchAudienceList(object : CompletionHandler {
65
+ override fun onSuccess() {
66
+ println("Successfully fetched the initial audience list")
67
+ // After success, the data will be automatically updated via the state subscription channel below
68
+ }
69
+
70
+ override fun onFailure(code: Int, desc: String) {
71
+ println("Failed to fetch the initial audience list: $desc")
72
+ }
73
+ })
74
+ }
75
+
76
+ // ... subsequent code
77
+ }
78
+ ```
79
+
80
+ ### Step 3: Listen to Audience List State and Real-Time Activity
81
+
82
+ Subscribe to the `liveAudienceState` of `audienceStore` and add a `LiveAudienceListener` to receive full list snapshots and real-time audience join/leave events. Use these updates to drive UI changes.
83
+ ``` kotlin
84
+ class AudienceManager {
85
+ /// Subscribe to state for audience count and list snapshots
86
+ private fun subscribeToAudienceState() {
87
+ scope.launch {
88
+ // audienceList is a full snapshot
89
+ audienceStore.liveAudienceState.audienceList.collect { audienceList ->
90
+ _audienceList.value = audienceList
91
+ }
92
+ }
93
+
94
+ scope.launch {
95
+ // audienceCount is the real-time total
96
+ audienceStore.liveAudienceState.audienceCount.collect { count ->
97
+ _audienceCount.value = count
98
+ }
99
+ }
100
+ }
101
+
102
+ /// Subscribe to events to handle real-time audience join/leave
103
+ private fun subscribeToAudienceEvents() {
104
+ audienceStore.addLiveAudienceListener(object : LiveAudienceListener() {
105
+ override fun onAudienceJoined(newAudience: LiveUserInfo) {
106
+ println("Audience ${newAudience.userName} joined the live room")
107
+ // Incremental update: add the new audience member to the end of the current list
108
+ val currentList = _audienceList.value.toMutableList()
109
+ if (!currentList.any { it.userID == newAudience.userID }) {
110
+ currentList.add(newAudience)
111
+ _audienceList.value = currentList
112
+ }
113
+ }
114
+
115
+ override fun onAudienceLeft(departedAudience: LiveUserInfo) {
116
+ println("Audience ${departedAudience.userName} left the live room")
117
+ // Incremental update: remove the departed audience member from the current list
118
+ val currentList = _audienceList.value.toMutableList()
119
+ currentList.removeAll { it.userID == departedAudience.userID }
120
+ _audienceList.value = currentList
121
+ }
122
+ })
123
+ }
124
+ }
125
+ ```
126
+
127
+ ### Step 4: Manage Audience (Kick and Set Administrator)
128
+
129
+ As a host or administrator, you can manage viewers in the live room.
130
+
131
+ #### 4.1 Kick a Viewer Out of the Live Room
132
+
133
+ Call the `kickUserOutOfRoom` method to remove a specified user from the live room.
134
+ ``` kotlin
135
+ class AudienceManager {
136
+ fun kick(userId: String) {
137
+ audienceStore.kickUserOutOfRoom(userId, object : CompletionHandler {
138
+ override fun onSuccess() {
139
+ println("Successfully kicked user $userId out of the room")
140
+ // After a successful kick, you will receive an onAudienceLeft event
141
+ }
142
+
143
+ override fun onFailure(code: Int, desc: String) {
144
+ println("Failed to kick user $userId: $desc")
145
+ }
146
+ })
147
+ }
148
+ }
149
+ ```
150
+
151
+ #### 4.2 Set or Revoke Administrator Status
152
+
153
+ Use the `setAdministrator` and `revokeAdministrator` methods to manage a user's administrator status.
154
+ ``` kotlin
155
+ class AudienceManager {
156
+ /// Promote user to administrator
157
+ fun promoteToAdmin(userId: String) {
158
+ audienceStore.setAdministrator(userId, object : CompletionHandler {
159
+ override fun onSuccess() {
160
+ println("Successfully promoted user $userId to administrator")
161
+ }
162
+
163
+ override fun onFailure(code: Int, desc: String) {
164
+ println("Failed to set administrator: $desc")
165
+ }
166
+ })
167
+ }
168
+
169
+ /// Revoke user's administrator status
170
+ fun revokeAdmin(userId: String) {
171
+ audienceStore.revokeAdministrator(userId, object : CompletionHandler {
172
+ override fun onSuccess() {
173
+ println("Successfully revoked administrator status for user $userId")
174
+ }
175
+
176
+ override fun onFailure(code: Int, desc: String) {
177
+ println("Failed to revoke administrator: $desc")
178
+ }
179
+ })
180
+ }
181
+ }
182
+ ```
183
+
184
+ ## Advanced Features
185
+
186
+ ### Display a Welcome Message in the Barrage Area When a Viewer Joins
187
+
188
+ When a new viewer enters the live room, a welcome message such as `"Welcome [user nickname] to the live room"` is automatically displayed locally in the barrage/chat area.
189
+
190
+ #### Implementation
191
+
192
+ Add a listener for the audience join event `LiveAudienceListener.onAudienceJoined` in `LiveAudienceStore` to receive real-time notifications when a new viewer joins. When triggered, extract the new viewer's nickname and call the `appendLocalTip` method of BarrageStore to insert the message locally.
193
+ ``` kotlin
194
+ import io.trtc.tuikit.atomicxcore.api.live.LiveAudienceListener
195
+ import io.trtc.tuikit.atomicxcore.api.live.LiveAudienceStore
196
+ import io.trtc.tuikit.atomicxcore.api.live.LiveUserInfo
197
+ import io.trtc.tuikit.atomicxcore.api.barrage.Barrage
198
+ import io.trtc.tuikit.atomicxcore.api.barrage.BarrageStore
199
+ import io.trtc.tuikit.atomicxcore.api.barrage.BarrageType
200
+
201
+ class LiveRoomManager(
202
+ private val liveId: String
203
+ ) {
204
+
205
+ init {
206
+ // Initialize two core managers
207
+ setupWelcomeMessageFlow()
208
+ }
209
+
210
+ private fun setupWelcomeMessageFlow() {
211
+ // 1. Get an instance of LiveAudienceStore
212
+ val audienceStore = LiveAudienceStore.create(liveId)
213
+
214
+ // 2. Get an instance of BarrageStore (this will be the same instance due to internal mechanisms)
215
+ val barrageStore = BarrageStore.create(liveId)
216
+
217
+ // 3. Subscribe to audience events
218
+ audienceStore.addLiveAudienceListener(object : LiveAudienceListener() {
219
+ override fun onAudienceJoined(audience: LiveUserInfo) {
220
+ // 4. Create a local tip message
221
+ val welcomeTip = Barrage().apply {
222
+ liveID = liveId
223
+ messageType = BarrageType.TEXT
224
+ textContent = "Welcome ${audience.userName} to the live room!"
225
+ }
226
+
227
+ // 5. Use BarrageStore's method to insert it into the barrage list
228
+ barrageStore.appendLocalTip(welcomeTip)
229
+ }
230
+ })
231
+ }
232
+ }
233
+ ```
234
+
235
+ ## API Documentation
236
+
237
+ For detailed information on all public interfaces, properties, and methods of [LiveAudienceStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-audience-store/index.html) and its related classes, refer to the official API documentation included with the [AtomicX Core](https://tencent-rtc.github.io/TUIKit_Android/index.html) framework. The relevant Stores used in this document are as follows:
238
+ | **Store/Component** | **Feature Description** | **API Documentation** |
239
+ | --- | --- | --- |
240
+ | LiveCoreView | Core view component for live video stream display and interaction: responsible for video stream rendering and view widget handling, supporting scenarios such as host streaming, audience co-hosting, and host-to-host connection. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html) |
241
+ | LiveAudienceStore | Audience management: obtain real-time audience list (ID / name / avatar), count audience numbers, and listen for audience join/leave events. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html) |
242
+ | BarrageStore | Barrage feature: send text/custom barrage, maintain barrage list, and listen to barrage status in real time. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.barrage/-barrage-store/index.html) |
243
+
244
+ ## FAQs
245
+
246
+ ### How is the online audience count (audienceCount) in LiveAudienceState updated? What are the timing and frequency?
247
+
248
+ The update of `audienceCount` is not always strictly real-time. The mechanism is as follows:
249
+ - **Active Join/Leave**: When a user actively joins or leaves the live room, the audience count change notification is triggered instantly. You will quickly observe the change in `audienceCount` in `LiveAudienceState`.
250
+
251
+ - **Unexpected Disconnection**: If a user disconnects unexpectedly due to network issues, app crashes, and so on, the system determines their actual status using a heartbeat mechanism. Only when the user has no heartbeat for 90 consecutive seconds does the system consider them offline and trigger a count change notification.
252
+
253
+ - **Update Mechanism and Frequency Control:**
254
+
255
+ - Whether triggered instantly or with a delay, all audience count change notifications are broadcast as messages within the room.
256
+
257
+ - There is an upper limit to the total number of messages per second in a room, with a per-room message rate limit of 40 messages per second.
258
+
259
+ - Key Point: In scenarios with extremely high message traffic, such as "barrage storms" or rapid-fire gifting, if the message rate in the room exceeds the 40 messages/second threshold, to ensure the delivery of core messages (such as barrage), audience count change messages may be dropped by the rate-limiting policy.
260
+
261
+ - **What does this mean for developers?**
262
+
263
+ `audienceCount` is a near real-time, high-precision estimate, but in extreme high-concurrency scenarios, there may be brief delays or data loss. We recommend using it for UI display only, and not as the sole basis for billing, statistics, or other scenarios requiring absolute accuracy.