@tencentcloud/sdk-mcp 1.4.6 → 1.6.0-beta.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 (556) hide show
  1. package/index.js +0 -1
  2. package/knowledge/bm25-cache.js +73 -0
  3. package/knowledge/bm25.js +147 -0
  4. package/knowledge/build-index.js +65 -0
  5. package/knowledge/chunker.js +167 -0
  6. package/knowledge/content-loader.js +44 -0
  7. package/knowledge/extractors.js +25 -0
  8. package/knowledge/path-meta.js +175 -0
  9. package/knowledge/search/exact-lookup.js +330 -0
  10. package/knowledge/search/filter-pool.js +86 -0
  11. package/knowledge/search/requires-framework.js +72 -0
  12. package/knowledge/search/search-knowledge.js +226 -0
  13. package/package.json +9 -9
  14. package/resource/_schema/feature-aliases.yaml +10 -0
  15. package/resource/_schema/goal-tags.yaml +72 -0
  16. package/resource/_schema/products.yaml +16 -0
  17. package/resource/_schema/trtc-intents.yaml +27 -0
  18. package/resource/_schema/types.yaml +44 -0
  19. package/resource/index/component-slugs.json +1 -0
  20. package/resource/index/manifest.json +1 -0
  21. package/resource/{doc → integration}/callkit/preset/android/integration.md +32 -28
  22. package/resource/{doc → integration}/callkit/preset/flutter/integration.md +109 -54
  23. package/resource/integration/callkit/preset/ios/integration.md +411 -0
  24. package/resource/integration/callkit/preset/react/integration.md +499 -0
  25. package/resource/integration/callkit/preset/vue/integration.md +768 -0
  26. package/resource/{doc/chatkit → integration/chat/preset}/android/integration.md +11 -11
  27. package/resource/{doc/chatkit → integration/chat/preset}/flutter/integration.md +59 -37
  28. package/resource/integration/chat/preset/ios/integration.md +568 -0
  29. package/resource/{doc/chatkit → integration/chat/preset}/react/integration.md +127 -95
  30. package/resource/integration/chat/preset/uni-app/integration.md +494 -0
  31. package/resource/{doc/chatkit → integration/chat/preset}/vue/integration.md +163 -143
  32. package/resource/{doc → integration}/livekit/preset/live/vue/live-list-integration.md +15 -15
  33. package/resource/{doc → integration}/livekit/preset/live/vue/live-player-desk-integration.md +25 -13
  34. package/resource/{doc → integration}/livekit/preset/live/vue/live-player-h5-integration.md +15 -9
  35. package/resource/{doc → integration}/livekit/preset/live/vue/live-pusher-integration.md +31 -26
  36. package/resource/integration/roomkit/preset/vue/integration.md +571 -0
  37. package/resource/knowledge/callkit/core-sdk/android/answer-call.md +852 -0
  38. package/resource/knowledge/callkit/core-sdk/android/make-call.md +929 -0
  39. package/resource/knowledge/callkit/core-sdk/android/offline-push.md +364 -0
  40. package/resource/knowledge/callkit/core-sdk/flutter/answer-call.md +1150 -0
  41. package/resource/knowledge/callkit/core-sdk/flutter/make-call.md +1216 -0
  42. package/resource/knowledge/callkit/core-sdk/flutter/offline-push.md +412 -0
  43. package/resource/knowledge/callkit/core-sdk/ios/answer-call.md +1191 -0
  44. package/resource/knowledge/callkit/core-sdk/ios/make-call.md +1292 -0
  45. package/resource/knowledge/callkit/core-sdk/ios/offline-push.md +537 -0
  46. package/resource/knowledge/callkit/core-sdk/uni-app/answer-call.md +953 -0
  47. package/resource/knowledge/callkit/core-sdk/uni-app/make-call.md +1061 -0
  48. package/resource/knowledge/callkit/faq/android.md +168 -0
  49. package/resource/knowledge/callkit/faq/common.md +180 -0
  50. package/resource/knowledge/callkit/faq/flutter.md +52 -0
  51. package/resource/knowledge/callkit/faq/ios.md +116 -0
  52. package/resource/knowledge/callkit/faq/uniapp-app.md +89 -0
  53. package/resource/knowledge/callkit/faq/uniapp-miniprogram.md +217 -0
  54. package/resource/knowledge/callkit/faq/web.md +363 -0
  55. package/resource/knowledge/callkit/preset/android/api.md +413 -0
  56. package/resource/knowledge/callkit/preset/flutter/api.md +22 -0
  57. package/resource/knowledge/callkit/preset/ios/api.md +256 -0
  58. package/resource/knowledge/callkit/preset/web/api.md +79 -0
  59. package/resource/knowledge/chat/preset/android/features/chat-setting.md +72 -0
  60. package/resource/knowledge/chat/preset/android/features/contact-list.md +41 -0
  61. package/resource/knowledge/chat/preset/android/features/conversation-list.md +123 -0
  62. package/resource/knowledge/chat/preset/android/features/language.md +142 -0
  63. package/resource/knowledge/chat/preset/android/features/message-input.md +57 -0
  64. package/resource/knowledge/chat/preset/android/features/message-list.md +142 -0
  65. package/resource/knowledge/chat/preset/android/features/search.md +64 -0
  66. package/resource/{doc/chatkit → knowledge/chat/preset}/android/features/theme.md +21 -18
  67. package/resource/knowledge/chat/preset/android-view/integration.md +448 -0
  68. package/resource/knowledge/chat/preset/flutter/features/chat-setting.md +62 -0
  69. package/resource/knowledge/chat/preset/flutter/features/contact-list.md +40 -0
  70. package/resource/knowledge/chat/preset/flutter/features/conversation-list.md +129 -0
  71. package/resource/knowledge/chat/preset/flutter/features/language.md +104 -0
  72. package/resource/knowledge/chat/preset/flutter/features/message-input.md +54 -0
  73. package/resource/knowledge/chat/preset/flutter/features/message-list.md +163 -0
  74. package/resource/knowledge/chat/preset/flutter/features/search.md +59 -0
  75. package/resource/{doc/chatkit → knowledge/chat/preset}/flutter/features/theme.md +47 -19
  76. package/resource/knowledge/chat/preset/ios/features/chat-setting.md +92 -0
  77. package/resource/knowledge/chat/preset/ios/features/contact-list.md +119 -0
  78. package/resource/knowledge/chat/preset/ios/features/conversation-list.md +134 -0
  79. package/resource/knowledge/chat/preset/ios/features/language.md +105 -0
  80. package/resource/knowledge/chat/preset/ios/features/message-input.md +69 -0
  81. package/resource/knowledge/chat/preset/ios/features/message-list.md +164 -0
  82. package/resource/knowledge/chat/preset/ios/features/search.md +94 -0
  83. package/resource/{doc/chatkit → knowledge/chat/preset}/ios/features/theme.md +54 -51
  84. package/resource/{doc/chatkit/ios → knowledge/chat/preset/ios-uikit}/integration.md +157 -94
  85. package/resource/knowledge/chat/preset/react/features/chat-setting.md +123 -0
  86. package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/contact-list.md +256 -104
  87. package/resource/knowledge/chat/preset/react/features/conversation-actions.md +217 -0
  88. package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/conversation-list.md +86 -79
  89. package/resource/knowledge/chat/preset/react/features/conversation-preview.md +99 -0
  90. package/resource/knowledge/chat/preset/react/features/conversation-search.md +58 -0
  91. package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/message-input.md +30 -83
  92. package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/message-list.md +22 -25
  93. package/resource/knowledge/chat/preset/react/features/search.md +531 -0
  94. package/resource/knowledge/chat/preset/react/features/theme.md +16 -0
  95. package/resource/knowledge/chat/preset/vue/features/chat-header.md +331 -0
  96. package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/chat-setting.md +0 -4
  97. package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/contact-list.md +59 -53
  98. package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/conversation-actions.md +49 -43
  99. package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/conversation-list.md +61 -49
  100. package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/conversation-preview.md +43 -40
  101. package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/conversation-search.md +1 -1
  102. package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/message-input.md +128 -105
  103. package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/message-list.md +108 -195
  104. package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/search.md +74 -68
  105. package/resource/knowledge/chat/preset/vue/features/theme.md +136 -0
  106. package/resource/knowledge/chat/urls/error-code.md +16 -0
  107. package/resource/knowledge/chat/urls/product.md +61 -0
  108. package/resource/knowledge/chat/urls/restapi.md +226 -0
  109. package/resource/knowledge/chat/urls/sdk/android.md +84 -0
  110. package/resource/knowledge/chat/urls/sdk/flutter.md +73 -0
  111. package/resource/knowledge/chat/urls/sdk/ios.md +84 -0
  112. package/resource/knowledge/chat/urls/sdk/web.md +88 -0
  113. package/resource/knowledge/chat/urls/webhook.md +73 -0
  114. package/resource/{doc/livekit/core-sdk/live/android/api-reference → knowledge/livekit/core-sdk/api-reference/android}/AudioEffectStore.md +79 -76
  115. package/resource/knowledge/livekit/core-sdk/api-reference/android/BarrageStore.md +174 -0
  116. package/resource/knowledge/livekit/core-sdk/api-reference/android/BattleStore.md +329 -0
  117. package/resource/{doc/livekit/core-sdk/live/android/api-reference → knowledge/livekit/core-sdk/api-reference/android}/CameraView.md +7 -6
  118. package/resource/knowledge/livekit/core-sdk/api-reference/android/CoGuestStore.md +434 -0
  119. package/resource/knowledge/livekit/core-sdk/api-reference/android/CoHostStore.md +362 -0
  120. package/resource/knowledge/livekit/core-sdk/api-reference/android/DeviceStore.md +466 -0
  121. package/resource/knowledge/livekit/core-sdk/api-reference/android/GiftStore.md +173 -0
  122. package/resource/{doc/livekit/core-sdk/live/android/api-reference → knowledge/livekit/core-sdk/api-reference/android}/LikeStore.md +12 -10
  123. package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveAudienceStore.md +291 -0
  124. package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveCoreView.md +78 -0
  125. package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveSeatStore.md +439 -0
  126. package/resource/knowledge/livekit/core-sdk/api-reference/android/LoginStore.md +221 -0
  127. package/resource/{doc/livekit/core-sdk/live/flutter/api-reference → knowledge/livekit/core-sdk/api-reference/flutter}/AudioEffectStore.md +79 -76
  128. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BarrageStore.md +212 -0
  129. package/resource/{doc/livekit/core-sdk/live/flutter/api-reference → knowledge/livekit/core-sdk/api-reference/flutter}/BaseBeautyStore.md +43 -45
  130. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BattleStore.md +312 -0
  131. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/CoGuestStore.md +404 -0
  132. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/CoHostStore.md +334 -0
  133. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/DeviceStore.md +420 -0
  134. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/GiftStore.md +166 -0
  135. package/resource/{doc/livekit/core-sdk/live/flutter/api-reference → knowledge/livekit/core-sdk/api-reference/flutter}/LikeStore.md +12 -11
  136. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveAudienceStore.md +281 -0
  137. package/resource/{doc/livekit/core-sdk/live/flutter/api-reference → knowledge/livekit/core-sdk/api-reference/flutter}/LiveCoreView.md +49 -42
  138. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveSeatStore.md +397 -0
  139. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LoginStore.md +183 -0
  140. package/resource/{doc/livekit/core-sdk/live/ios/api-reference → knowledge/livekit/core-sdk/api-reference/ios}/AudioEffectStore.md +79 -75
  141. package/resource/knowledge/livekit/core-sdk/api-reference/ios/BarrageStore.md +192 -0
  142. package/resource/knowledge/livekit/core-sdk/api-reference/ios/BaseBeautyStore.md +146 -0
  143. package/resource/knowledge/livekit/core-sdk/api-reference/ios/BattleStore.md +309 -0
  144. package/resource/knowledge/livekit/core-sdk/api-reference/ios/CoGuestStore.md +370 -0
  145. package/resource/knowledge/livekit/core-sdk/api-reference/ios/CoHostStore.md +339 -0
  146. package/resource/knowledge/livekit/core-sdk/api-reference/ios/DeviceStore.md +503 -0
  147. package/resource/knowledge/livekit/core-sdk/api-reference/ios/GiftStore.md +188 -0
  148. package/resource/{doc/livekit/core-sdk/live/ios/api-reference → knowledge/livekit/core-sdk/api-reference/ios}/LikeStore.md +12 -10
  149. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveAudienceStore.md +289 -0
  150. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveCoreView.md +78 -0
  151. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveSeatStore.md +434 -0
  152. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LoginStore.md +187 -0
  153. package/resource/knowledge/livekit/core-sdk/api-reference/web/index.md +780 -0
  154. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-audience-list.md +59 -51
  155. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-audio-effect.md +37 -34
  156. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-barrage.md +68 -38
  157. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-base-beauty.md +18 -15
  158. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-co-guest-interaction.md +17 -17
  159. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-gift.md +86 -80
  160. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-host-interaction.md +53 -49
  161. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-integration.md +47 -45
  162. package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-live-list.md +26 -22
  163. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-audience-list.md +16 -13
  164. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-audio-effect.md +28 -24
  165. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-barrage.md +33 -21
  166. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-base-beauty.md +29 -25
  167. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-co-guest-interaction.md +21 -20
  168. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-gift.md +78 -69
  169. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-host-interaction.md +47 -43
  170. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-integration.md +48 -45
  171. package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-live-list.md +27 -23
  172. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-audience-list.md +15 -12
  173. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-audio-effect.md +39 -36
  174. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-barrage.md +42 -29
  175. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-base-beauty.md +19 -16
  176. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-co-guest-interaction.md +20 -19
  177. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-gift.md +55 -49
  178. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-host-interaction.md +50 -46
  179. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-integration.md +48 -46
  180. package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-live-list.md +26 -22
  181. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-audience-list.md +59 -51
  182. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-audio-effect.md +41 -38
  183. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-barrage.md +67 -37
  184. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-co-guest-interaction.md +53 -46
  185. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-gift.md +86 -80
  186. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-host-interaction.md +45 -40
  187. package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-integration.md +43 -42
  188. package/resource/knowledge/livekit/core-sdk/voice/android/voice-room-list.md +523 -0
  189. package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-audience-list.md +16 -13
  190. package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-audio-effect.md +54 -50
  191. package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-barrage.md +33 -21
  192. package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-co-guest-interaction.md +34 -28
  193. package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-gift.md +73 -64
  194. package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-integration.md +46 -43
  195. package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-room-list.md +165 -148
  196. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-audience-list.md +19 -16
  197. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-audio-effect.md +40 -37
  198. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-barrage.md +41 -28
  199. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-co-guest-interaction.md +54 -47
  200. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-gift.md +52 -46
  201. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-host-interaction.md +55 -50
  202. package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-integration.md +47 -45
  203. package/resource/knowledge/livekit/core-sdk/voice/ios/voice-room-list.md +404 -0
  204. package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-audience-list.md +40 -57
  205. package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-audio-effect.md +38 -49
  206. package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-barrage.md +53 -53
  207. package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-co-guest-interaction.md +106 -116
  208. package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-gift.md +49 -59
  209. package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-integration.md +52 -45
  210. package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-room-list.md +38 -46
  211. package/resource/knowledge/livekit/preset/live/vue/features/barrage.md +915 -0
  212. package/resource/knowledge/livekit/preset/live/vue/features/live-audience-list.md +179 -0
  213. package/resource/knowledge/livekit/preset/live/vue/features/live-view.md +419 -0
  214. package/resource/knowledge/push/config/android/fcm.md +133 -0
  215. package/resource/knowledge/push/config/android/honor.md +111 -0
  216. package/resource/knowledge/push/config/android/huawei.md +106 -0
  217. package/resource/knowledge/push/config/android/meizu.md +121 -0
  218. package/resource/knowledge/push/config/android/oppo.md +108 -0
  219. package/resource/knowledge/push/config/android/vivo.md +101 -0
  220. package/resource/knowledge/push/config/android/xiaomi.md +99 -0
  221. package/resource/knowledge/push/integration/android.md +1028 -0
  222. package/resource/knowledge/push/integration/donut.md +271 -0
  223. package/resource/knowledge/push/integration/flutter.md +363 -0
  224. package/resource/knowledge/push/integration/harmonyos.md +72 -0
  225. package/resource/knowledge/push/integration/ios.md +705 -0
  226. package/resource/knowledge/push/integration/react-native.md +337 -0
  227. package/resource/knowledge/push/integration/uni-app.md +461 -0
  228. package/resource/knowledge/push/integration/unity.md +357 -0
  229. package/resource/knowledge/push/integration/unreal-engine.md +353 -0
  230. package/resource/knowledge/push/overview/prepare.md +30 -0
  231. package/resource/{doc/roomkit/android/features → knowledge/roomkit/core-sdk/android}/call-user-to-room.md +22 -20
  232. package/resource/{doc/roomkit/android/features → knowledge/roomkit/core-sdk/android}/room-participant-state.md +22 -193
  233. package/resource/{doc/roomkit/android/features → knowledge/roomkit/core-sdk/android}/room-state.md +33 -32
  234. package/resource/{doc/roomkit/android/features → knowledge/roomkit/core-sdk/android}/schedule-room.md +30 -29
  235. package/resource/knowledge/roomkit/core-sdk/flutter/call-user-to-room.md +230 -0
  236. package/resource/{doc/roomkit/flutter/features → knowledge/roomkit/core-sdk/flutter}/room-participant-state.md +22 -21
  237. package/resource/{doc/roomkit/flutter/features → knowledge/roomkit/core-sdk/flutter}/room-state.md +29 -28
  238. package/resource/{doc/roomkit/flutter/features → knowledge/roomkit/core-sdk/flutter}/schedule-room.md +17 -16
  239. package/resource/{doc/roomkit/ios/features → knowledge/roomkit/core-sdk/ios}/call-user-to-room.md +22 -20
  240. package/resource/{doc/roomkit/ios/features → knowledge/roomkit/core-sdk/ios}/room-participant-state.md +49 -218
  241. package/resource/{doc/roomkit/ios/features → knowledge/roomkit/core-sdk/ios}/room-state.md +37 -37
  242. package/resource/{doc/roomkit/ios/features → knowledge/roomkit/core-sdk/ios}/schedule-room.md +28 -28
  243. package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/call-user-to-room.md +122 -7
  244. package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/device-detection.md +318 -3
  245. package/resource/knowledge/roomkit/core-sdk/vue/device-state.md +1504 -0
  246. package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/free-beauty-panel.md +4 -3
  247. package/resource/knowledge/roomkit/core-sdk/vue/room-chat.md +709 -0
  248. package/resource/knowledge/roomkit/core-sdk/vue/room-participant-state.md +1105 -0
  249. package/resource/knowledge/roomkit/core-sdk/vue/room-state.md +635 -0
  250. package/resource/knowledge/roomkit/core-sdk/vue/room-view.md +529 -0
  251. package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/schedule-room.md +256 -13
  252. package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/screen-share.md +218 -25
  253. package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/virtual-background.md +4 -3
  254. package/resource/{doc/roomkit → knowledge/roomkit/preset}/android/integration.md +50 -64
  255. package/resource/{doc/roomkit → knowledge/roomkit/preset}/flutter/integration.md +34 -31
  256. package/resource/{doc/roomkit → knowledge/roomkit/preset}/ios/integration.md +45 -53
  257. package/resource/knowledge/roomkit/preset/react/integration.md +571 -0
  258. package/resource/{doc → knowledge}/rtcengine/web/how_to_run_web_sdk_demo.md +31 -15
  259. package/resource/{doc → knowledge}/rtcengine/web/plugin/21-advanced-auto-play-policy.md +9 -3
  260. package/resource/{doc → knowledge}/rtcengine/web/plugin/22-advanced-audio-mixer.md +1 -1
  261. package/resource/{doc → knowledge}/rtcengine/web/plugin/23-advanced-support-detection.md +1 -1
  262. package/resource/{doc → knowledge}/rtcengine/web/plugin/24-advanced-network-quality.md +6 -6
  263. package/resource/{doc → knowledge}/rtcengine/web/plugin/25-advanced-device-change.md +1 -1
  264. package/resource/{doc → knowledge}/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +4 -4
  265. package/resource/{doc → knowledge}/rtcengine/web/plugin/27-advanced-small-stream.md +4 -4
  266. package/resource/{doc → knowledge}/rtcengine/web/plugin/31-advanced-plugins-overview.md +1 -1
  267. package/resource/{doc → knowledge}/trtc/android/TRTCCloud.md +547 -495
  268. package/resource/{doc → knowledge}/trtc/android/TRTCCloudDef.md +434 -403
  269. package/resource/{doc → knowledge}/trtc/android/TRTCCloudListener.md +394 -348
  270. package/resource/{doc → knowledge}/trtc/android/TRTCStatistics.md +17 -15
  271. package/resource/{doc → knowledge}/trtc/android/TXAudioEffectManager.md +227 -197
  272. package/resource/knowledge/trtc/android/TXBeautyManager.md +415 -0
  273. package/resource/{doc → knowledge}/trtc/android/TXDeviceManager.md +70 -63
  274. package/resource/{doc → knowledge}/trtc/android/TXLiteAVCode.md +19 -17
  275. package/resource/{doc/trtc/C++ → knowledge/trtc/c++}/ITRTCCloud.md +599 -544
  276. package/resource/{doc/trtc/C++ → knowledge/trtc/c++}/ITRTCStatistics.md +17 -15
  277. package/resource/knowledge/trtc/c++/ITXAudioEffectManager.md +502 -0
  278. package/resource/knowledge/trtc/c++/ITXDeviceManager.md +403 -0
  279. package/resource/{doc/trtc/C++ → knowledge/trtc/c++}/TRTCCloudCallback.md +439 -387
  280. package/resource/{doc/trtc/C++ → knowledge/trtc/c++}/TRTCTypeDef.md +417 -387
  281. package/resource/{doc/trtc/C++ → knowledge/trtc/c++}/TXLiteAVCode.md +19 -17
  282. package/resource/{doc/trtc/iOS → knowledge/trtc/ios}/TRTCCloud.md +619 -559
  283. package/resource/{doc/trtc/iOS → knowledge/trtc/ios}/TRTCCloudDelegate.md +409 -360
  284. package/resource/{doc/trtc/iOS → knowledge/trtc/ios}/TRTCStatistics.md +17 -15
  285. package/resource/{doc/trtc/iOS → knowledge/trtc/ios}/TXAudioEffectManager.md +187 -164
  286. package/resource/knowledge/trtc/ios/TXBeautyManager.md +416 -0
  287. package/resource/knowledge/trtc/ios/TXDeviceManager.md +399 -0
  288. package/resource/{doc/trtc/iOS → knowledge/trtc/ios}/TXLiteAVCode.md +19 -17
  289. package/resource/{doc/trtc/iOS → knowledge/trtc/ios}/TXLiveSDKTypeDef.md +422 -396
  290. package/server-config.js +0 -1
  291. package/server.js +22 -11
  292. package/streamable-http.js +0 -1
  293. package/tools/call/get_native_call_uikit_integration.js +2 -4
  294. package/tools/call/get_native_callkit_core_integration.js +2 -6
  295. package/tools/call/get_web_call_uikit_integration.js +2 -4
  296. package/tools/chat/get_native_chat_uikit_integration.js +2 -4
  297. package/tools/chat/get_web_chat_uikit_integration.js +2 -4
  298. package/tools/common/get_usersig.js +0 -1
  299. package/tools/common/present_framework_choice.js +9 -4
  300. package/tools/common/record_answer.js +19 -26
  301. package/tools/common/record_feedback.js +17 -31
  302. package/tools/common/search_trtc_knowledge.js +44 -0
  303. package/tools/definitions/get_native_call_uikit_integration_def.js +2 -1
  304. package/tools/definitions/get_native_callkit_core_integration_def.js +2 -1
  305. package/tools/definitions/get_native_chat_uikit_integration_def.js +3 -2
  306. package/tools/definitions/get_native_livekit_core_integration_def.js +2 -1
  307. package/tools/definitions/get_usersig_def.js +0 -1
  308. package/tools/definitions/get_web_call_uikit_integration_def.js +2 -1
  309. package/tools/definitions/get_web_chat_uikit_integration_def.js +2 -1
  310. package/tools/definitions/get_web_live_uikit_integration_def.js +4 -3
  311. package/tools/definitions/get_web_room_core_integration_def.js +46 -0
  312. package/tools/definitions/get_web_room_uikit_integration_def.js +3 -1
  313. package/tools/definitions/integration-boundary.js +5 -0
  314. package/tools/definitions/present_framework_choice_def.js +11 -10
  315. package/tools/definitions/record_answer_def.js +9 -8
  316. package/tools/definitions/record_feedback_def.js +4 -3
  317. package/tools/definitions/search_trtc_knowledge_def.js +69 -0
  318. package/tools/index.js +5 -37
  319. package/tools/live/get_native_livekit_core_integration.js +1 -4
  320. package/tools/live/get_web_live_uikit_integration.js +2 -5
  321. package/tools/room/get_web_room_core_integration.js +47 -0
  322. package/tools/room/get_web_room_uikit_integration.js +2 -4
  323. package/utils/generate-structured-result.js +4 -11
  324. package/utils/generate-usersig.js +0 -1
  325. package/utils/get-device-identifier.js +0 -1
  326. package/utils/get-doc-content.js +14 -9
  327. package/utils/http-get.js +0 -1
  328. package/utils/http-post.js +0 -1
  329. package/utils/report-cls-client.js +22 -21
  330. package/utils/report-es-client.js +1 -2
  331. package/utils/report-runtime-error-cls-client.js +0 -1
  332. package/index.js.map +0 -1
  333. package/resource/doc/callkit/core-sdk/.gitkeep +0 -0
  334. package/resource/doc/callkit/core-sdk/android/answer-call.md +0 -942
  335. package/resource/doc/callkit/core-sdk/android/make-call.md +0 -876
  336. package/resource/doc/callkit/core-sdk/android/offline-push.md +0 -368
  337. package/resource/doc/callkit/core-sdk/flutter/answer-call.md +0 -1132
  338. package/resource/doc/callkit/core-sdk/flutter/make-call.md +0 -1206
  339. package/resource/doc/callkit/core-sdk/flutter/offline-push.md +0 -357
  340. package/resource/doc/callkit/core-sdk/ios/answer-call.md +0 -1009
  341. package/resource/doc/callkit/core-sdk/ios/make-call.md +0 -1154
  342. package/resource/doc/callkit/core-sdk/ios/offline-push.md +0 -470
  343. package/resource/doc/callkit/core-sdk/uni-app/answer-call.md +0 -1146
  344. package/resource/doc/callkit/core-sdk/uni-app/make-call.md +0 -1267
  345. package/resource/doc/callkit/faq/android-faq.md +0 -767
  346. package/resource/doc/callkit/faq/flutter-faq.md +0 -749
  347. package/resource/doc/callkit/faq/ios-faq.md +0 -759
  348. package/resource/doc/callkit/faq/web-faq.md +0 -753
  349. package/resource/doc/callkit/preset/android/api.md +0 -330
  350. package/resource/doc/callkit/preset/flutter/api.md +0 -401
  351. package/resource/doc/callkit/preset/ios/api.md +0 -282
  352. package/resource/doc/callkit/preset/ios/integration.md +0 -188
  353. package/resource/doc/callkit/preset/react/api.md +0 -600
  354. package/resource/doc/callkit/preset/react/integration.md +0 -86
  355. package/resource/doc/callkit/preset/vue/api.md +0 -600
  356. package/resource/doc/callkit/preset/vue/integration.md +0 -83
  357. package/resource/doc/chatkit/android/faq.md +0 -109
  358. package/resource/doc/chatkit/faq/android_sdk/client-api.md +0 -280
  359. package/resource/doc/chatkit/faq/common/product.md +0 -82
  360. package/resource/doc/chatkit/faq/common/server.md +0 -53
  361. package/resource/doc/chatkit/faq/common/server_error_code.md +0 -74
  362. package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +0 -183
  363. package/resource/doc/chatkit/faq/flutter_sdk/faq.md +0 -54
  364. package/resource/doc/chatkit/faq/ios_sdk/client-api.md +0 -279
  365. package/resource/doc/chatkit/faq/web_sdk/error_code.md +0 -47
  366. package/resource/doc/chatkit/faq/web_sdk/faq.md +0 -292
  367. package/resource/doc/chatkit/flutter/faq.md +0 -22
  368. package/resource/doc/chatkit/ios/faq.md +0 -109
  369. package/resource/doc/chatkit/react/components/avatar.md +0 -104
  370. package/resource/doc/chatkit/react/components/chat-header.md +0 -148
  371. package/resource/doc/chatkit/react/components/chat-setting.md +0 -117
  372. package/resource/doc/chatkit/react/components/chat.md +0 -38
  373. package/resource/doc/chatkit/react/components/component-list.md +0 -35
  374. package/resource/doc/chatkit/react/components/conversation-actions.md +0 -174
  375. package/resource/doc/chatkit/react/components/conversation-preview.md +0 -116
  376. package/resource/doc/chatkit/react/components/conversation-search.md +0 -57
  377. package/resource/doc/chatkit/react/components/search.md +0 -282
  378. package/resource/doc/chatkit/react/components/tuikit.md +0 -43
  379. package/resource/doc/chatkit/react/faq.md +0 -26
  380. package/resource/doc/chatkit/vue/components/avatar.md +0 -104
  381. package/resource/doc/chatkit/vue/components/chat-header.md +0 -149
  382. package/resource/doc/chatkit/vue/components/chat.md +0 -42
  383. package/resource/doc/chatkit/vue/components/component-list.md +0 -89
  384. package/resource/doc/chatkit/vue/components/tuikit.md +0 -45
  385. package/resource/doc/chatkit/vue/components/userpicker.md +0 -256
  386. package/resource/doc/chatkit/vue/faq.md +0 -35
  387. package/resource/doc/livekit/core-sdk/live/android/api-reference/BarrageStore.md +0 -148
  388. package/resource/doc/livekit/core-sdk/live/android/api-reference/BattleStore.md +0 -316
  389. package/resource/doc/livekit/core-sdk/live/android/api-reference/CoGuestStore.md +0 -419
  390. package/resource/doc/livekit/core-sdk/live/android/api-reference/CoHostStore.md +0 -325
  391. package/resource/doc/livekit/core-sdk/live/android/api-reference/DeviceStore.md +0 -436
  392. package/resource/doc/livekit/core-sdk/live/android/api-reference/GiftStore.md +0 -165
  393. package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveAudienceStore.md +0 -239
  394. package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveCoreView.md +0 -74
  395. package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveSeatStore.md +0 -417
  396. package/resource/doc/livekit/core-sdk/live/android/api-reference/LoginStore.md +0 -207
  397. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BarrageStore.md +0 -158
  398. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BattleStore.md +0 -304
  399. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoGuestStore.md +0 -394
  400. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoHostStore.md +0 -303
  401. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/DeviceStore.md +0 -410
  402. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/GiftStore.md +0 -160
  403. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveAudienceStore.md +0 -231
  404. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveSeatStore.md +0 -375
  405. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LoginStore.md +0 -170
  406. package/resource/doc/livekit/core-sdk/live/ios/api-reference/BarrageStore.md +0 -165
  407. package/resource/doc/livekit/core-sdk/live/ios/api-reference/BaseBeautyStore.md +0 -143
  408. package/resource/doc/livekit/core-sdk/live/ios/api-reference/BattleStore.md +0 -298
  409. package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoGuestStore.md +0 -349
  410. package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoHostStore.md +0 -297
  411. package/resource/doc/livekit/core-sdk/live/ios/api-reference/DeviceStore.md +0 -471
  412. package/resource/doc/livekit/core-sdk/live/ios/api-reference/GiftStore.md +0 -179
  413. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveAudienceStore.md +0 -238
  414. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveCoreView.md +0 -74
  415. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveSeatStore.md +0 -412
  416. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LoginStore.md +0 -173
  417. package/resource/doc/livekit/core-sdk/voice/android/voice-room-list.md +0 -365
  418. package/resource/doc/livekit/core-sdk/voice/ios/voice-room-list.md +0 -336
  419. package/resource/doc/livekit/preset/live/vue/api-reference/index.md +0 -780
  420. package/resource/doc/livekit/preset/live/vue/components/barrage.md +0 -291
  421. package/resource/doc/livekit/preset/live/vue/components/co-guest-panel.md +0 -88
  422. package/resource/doc/livekit/preset/live/vue/components/live-audience-list.md +0 -164
  423. package/resource/doc/livekit/preset/live/vue/components/live-scene-panel.md +0 -130
  424. package/resource/doc/livekit/preset/live/vue/components/live-view.md +0 -203
  425. package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +0 -211
  426. package/resource/doc/livekit/preset/live/vue/faq.md +0 -1
  427. package/resource/doc/roomkit/faq/common/error-code.md +0 -67
  428. package/resource/doc/roomkit/flutter/features/call-user-to-room.md +0 -228
  429. package/resource/doc/roomkit/vue/faq.md +0 -1
  430. package/resource/doc/roomkit/vue/features/device-state.md +0 -460
  431. package/resource/doc/roomkit/vue/features/room-chat.md +0 -369
  432. package/resource/doc/roomkit/vue/features/room-participant-state.md +0 -385
  433. package/resource/doc/roomkit/vue/features/room-state.md +0 -280
  434. package/resource/doc/roomkit/vue/features/room-view.md +0 -241
  435. package/resource/doc/roomkit/vue/integration.md +0 -315
  436. package/resource/doc/rtcengine/faq/web_sdk/.gitkeep +0 -0
  437. package/resource/doc/trtc/C++/ITXAudioEffectManager.md +0 -472
  438. package/resource/doc/trtc/C++/ITXDeviceManager.md +0 -388
  439. package/resource/doc/trtc/android/TXBeautyManager.md +0 -403
  440. package/resource/doc/trtc/iOS/TXBeautyManager.md +0 -404
  441. package/resource/doc/trtc/iOS/TXDeviceManager.md +0 -382
  442. package/server-config.js.map +0 -1
  443. package/server.js.map +0 -1
  444. package/streamable-http.js.map +0 -1
  445. package/tools/call/get_callkit_api.js +0 -33
  446. package/tools/call/get_callkit_api.js.map +0 -1
  447. package/tools/call/get_native_call_uikit_integration.js.map +0 -1
  448. package/tools/call/get_native_callkit_core_integration.js.map +0 -1
  449. package/tools/call/get_web_call_uikit_integration.js.map +0 -1
  450. package/tools/chat/get_native_chat_uikit_feature_detail.js +0 -35
  451. package/tools/chat/get_native_chat_uikit_feature_detail.js.map +0 -1
  452. package/tools/chat/get_native_chat_uikit_integration.js.map +0 -1
  453. package/tools/chat/get_web_chat_uikit_component_detail.js +0 -35
  454. package/tools/chat/get_web_chat_uikit_component_detail.js.map +0 -1
  455. package/tools/chat/get_web_chat_uikit_integration.js.map +0 -1
  456. package/tools/common/get_faq.js +0 -266
  457. package/tools/common/get_faq.js.map +0 -1
  458. package/tools/common/get_usersig.js.map +0 -1
  459. package/tools/common/present_framework_choice.js.map +0 -1
  460. package/tools/common/record_answer.js.map +0 -1
  461. package/tools/common/record_feedback.js.map +0 -1
  462. package/tools/common/record_skill_session.js +0 -69
  463. package/tools/common/record_skill_session.js.map +0 -1
  464. package/tools/definitions/get_callkit_api_def.js +0 -28
  465. package/tools/definitions/get_callkit_api_def.js.map +0 -1
  466. package/tools/definitions/get_faq_def.js +0 -41
  467. package/tools/definitions/get_faq_def.js.map +0 -1
  468. package/tools/definitions/get_native_call_uikit_integration_def.js.map +0 -1
  469. package/tools/definitions/get_native_callkit_core_integration_def.js.map +0 -1
  470. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +0 -31
  471. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +0 -1
  472. package/tools/definitions/get_native_chat_uikit_integration_def.js.map +0 -1
  473. package/tools/definitions/get_native_livekit_core_features_def.js +0 -33
  474. package/tools/definitions/get_native_livekit_core_features_def.js.map +0 -1
  475. package/tools/definitions/get_native_livekit_core_integration_def.js.map +0 -1
  476. package/tools/definitions/get_native_trtc_sdk_docs_def.js +0 -32
  477. package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +0 -1
  478. package/tools/definitions/get_usersig_def.js.map +0 -1
  479. package/tools/definitions/get_web_call_uikit_integration_def.js.map +0 -1
  480. package/tools/definitions/get_web_chat_uikit_component_detail_def.js +0 -31
  481. package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +0 -1
  482. package/tools/definitions/get_web_chat_uikit_integration_def.js.map +0 -1
  483. package/tools/definitions/get_web_live_uikit_integration_def.js.map +0 -1
  484. package/tools/definitions/get_web_livekit_api_def.js +0 -27
  485. package/tools/definitions/get_web_livekit_api_def.js.map +0 -1
  486. package/tools/definitions/get_web_livekit_component_detail_def.js +0 -29
  487. package/tools/definitions/get_web_livekit_component_detail_def.js.map +0 -1
  488. package/tools/definitions/get_web_room_uikit_integration_def.js.map +0 -1
  489. package/tools/definitions/get_web_roomkit_feature_detail_def.js +0 -30
  490. package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +0 -1
  491. package/tools/definitions/get_web_trtc_sdk_api_def.js +0 -25
  492. package/tools/definitions/get_web_trtc_sdk_api_def.js.map +0 -1
  493. package/tools/definitions/get_web_trtc_sdk_integration_def.js +0 -25
  494. package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +0 -1
  495. package/tools/definitions/get_web_trtc_sdk_plugin_def.js +0 -25
  496. package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +0 -1
  497. package/tools/definitions/present_framework_choice_def.js.map +0 -1
  498. package/tools/definitions/record_answer_def.js.map +0 -1
  499. package/tools/definitions/record_feedback_def.js.map +0 -1
  500. package/tools/definitions/record_skill_session_def.js +0 -31
  501. package/tools/definitions/record_skill_session_def.js.map +0 -1
  502. package/tools/index.js.map +0 -1
  503. package/tools/live/get_native_livekit_core_features.js +0 -68
  504. package/tools/live/get_native_livekit_core_features.js.map +0 -1
  505. package/tools/live/get_native_livekit_core_integration.js.map +0 -1
  506. package/tools/live/get_web_live_uikit_integration.js.map +0 -1
  507. package/tools/live/get_web_livekit_api.js +0 -33
  508. package/tools/live/get_web_livekit_api.js.map +0 -1
  509. package/tools/live/get_web_livekit_component_detail.js +0 -35
  510. package/tools/live/get_web_livekit_component_detail.js.map +0 -1
  511. package/tools/room/get_web_room_uikit_integration.js.map +0 -1
  512. package/tools/room/get_web_roomkit_feature_detail.js +0 -69
  513. package/tools/room/get_web_roomkit_feature_detail.js.map +0 -1
  514. package/tools/rtcengine/get_web_trtc_sdk_api.js +0 -32
  515. package/tools/rtcengine/get_web_trtc_sdk_api.js.map +0 -1
  516. package/tools/rtcengine/get_web_trtc_sdk_integration.js +0 -32
  517. package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +0 -1
  518. package/tools/rtcengine/get_web_trtc_sdk_plugin.js +0 -32
  519. package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +0 -1
  520. package/tools/trtc/get_native_trtc_sdk_docs.js +0 -74
  521. package/tools/trtc/get_native_trtc_sdk_docs.js.map +0 -1
  522. package/utils/build-session-directives.js +0 -122
  523. package/utils/build-session-directives.js.map +0 -1
  524. package/utils/generate-structured-result.js.map +0 -1
  525. package/utils/generate-usersig.js.map +0 -1
  526. package/utils/get-device-identifier.js.map +0 -1
  527. package/utils/get-doc-content.js.map +0 -1
  528. package/utils/handle-framework.js +0 -9
  529. package/utils/handle-framework.js.map +0 -1
  530. package/utils/handle-state-name.js +0 -29
  531. package/utils/handle-state-name.js.map +0 -1
  532. package/utils/http-get.js.map +0 -1
  533. package/utils/http-post.js.map +0 -1
  534. package/utils/report-cls-client.js.map +0 -1
  535. package/utils/report-es-client.js.map +0 -1
  536. package/utils/report-runtime-error-cls-client.js.map +0 -1
  537. /package/resource/{doc/callkit/faq/common → knowledge/callkit/faq}/error-code.md +0 -0
  538. /package/resource/{doc/livekit/faq/common → knowledge/livekit/faq}/error-code.md +0 -0
  539. /package/resource/{doc → knowledge}/rtcengine/web/api.md +0 -0
  540. /package/resource/{doc/rtcengine/faq/web/web.md → knowledge/rtcengine/web/faq.md} +0 -0
  541. /package/resource/{doc → knowledge}/rtcengine/web/how_to_integrated_web_sdk.md +0 -0
  542. /package/resource/{doc → knowledge}/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +0 -0
  543. /package/resource/{doc → knowledge}/rtcengine/web/plugin/28-advanced-beauty.md +0 -0
  544. /package/resource/{doc → knowledge}/rtcengine/web/plugin/29-advanced-water-mark.md +0 -0
  545. /package/resource/{doc → knowledge}/rtcengine/web/plugin/30-advanced-cross-room-link.md +0 -0
  546. /package/resource/{doc → knowledge}/rtcengine/web/plugin/34-advanced-proxy.md +0 -0
  547. /package/resource/{doc → knowledge}/rtcengine/web/plugin/35-advanced-ai-denoiser.md +0 -0
  548. /package/resource/{doc → knowledge}/rtcengine/web/plugin/36-advanced-virtual-background.md +0 -0
  549. /package/resource/{doc → knowledge}/rtcengine/web/plugin/37-advanced-voice-changer.md +0 -0
  550. /package/resource/{doc → knowledge}/rtcengine/web/plugin/38-advanced-basic-beauty.md +0 -0
  551. /package/resource/{doc → knowledge}/rtcengine/web/plugin/39-advanced-video-decoder.md +0 -0
  552. /package/resource/{doc → knowledge}/rtcengine/web/plugin/40-advanced-video-mixer.md +0 -0
  553. /package/resource/{doc → knowledge}/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +0 -0
  554. /package/resource/{doc → knowledge}/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +0 -0
  555. /package/resource/{doc → knowledge}/rtcengine/web/plugin/43-advanced-face-detection.md +0 -0
  556. /package/resource/{doc/rtcengine/faq/common → knowledge/share}/userSig.md +0 -0
@@ -0,0 +1,404 @@
1
+ `LiveListStore` 是 `AtomicXCore` 中负责管理直播房间列表、创建、加入以及维护房间状态的核心模块。通过 `LiveListStore`,您可以为您的应用构建完整的直播生命周期管理。
2
+
3
+ ## 核心功能
4
+ - **直播列表拉取**:获取当前所有公开的直播间列表,支持分页加载。
5
+
6
+ - **直播生命周期管理**:提供从创建、开播、加入、离开到结束直播的全套流程接口。
7
+
8
+ - **直播信息更新**:主播可以随时更新直播间的公开信息,例如封面、公告等。
9
+
10
+ - **实时事件监听**:监听直播结束、用户被踢出等关键事件。
11
+
12
+ - **自定义业务数据**:强大的自定义元数据(`MetaData`)能力,允许您在房间内存储和同步任何业务相关的信息,例如直播状态、音乐信息、自定义角色等 。
13
+
14
+ ## 核心概念
15
+
16
+ 在开始集成之前,我们先通过下表了解一下 `LiveListStore` 相关的几个核心概念:
17
+
18
+ |**核心概念**|**类型**|**核心职责与描述**|
19
+ |---------|---------|---------|
20
+ |`LiveInfo`|`struct`|代表一个直播间的所有信息模型。包含了直播 ID (`liveID`)、名称 (`liveName`)、房主信息 (`liveOwner`) 以及自定义元数据 (`metaData`) 等。|
21
+ |`LiveListState`|`struct`|代表直播列表模块的当前状态。其核心属性 liveList 是一个 `[LiveInfo] `数组,存储了拉取到的直播列表;`currentLive` 则代表用户当前所在的直播间信息。|
22
+ |`LiveListEvent`|`enum`|代表直播房间的全局事件。分为 `.onLiveEnded` (直播结束) 和 `.onKickedOutOfLive` (被踢出直播) 两种,用于处理关键的房间状态变更。|
23
+ |`LiveListStore`|`class`|这是与直播列表和房间生命周期交互的核心管理类。它是一个全局单例 (shared),负责所有直播房间的创建、加入、信息更新等操作。|
24
+
25
+ ## 实现步骤
26
+
27
+ ### 步骤1:组件集成
28
+ - **视频直播**:请参考 开播与观看 集成 **AtomicXCore**,完成接入。
29
+
30
+ - **语聊房**:请参考 开播与收听 集成 **AtomicXCore**,完成接入。
31
+
32
+ ### 步骤2:实现观众从直播列表进入直播间
33
+
34
+ 创建一个展示直播列表的页面,该页面使用 `UICollectionView` 来布局直播间卡片。当用户点击某个卡片时,获取该直播间的 `liveId`,并跳转到观众观看页面。
35
+ ``` swift
36
+ import AtomicXCore
37
+ import SnapKit
38
+ import RTCRoomEngine
39
+ import Combine
40
+
41
+ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout {
42
+
43
+ private let liveListStore = LiveListStore.shared
44
+ private var cancellables = Set<AnyCancellable>()
45
+ private var liveList: [LiveInfo] = []
46
+
47
+ private var collectionView: UICollectionView!
48
+
49
+ override func viewDidLoad() {
50
+ super.viewDidLoad()
51
+ setupUI()
52
+ bindStore()
53
+ fetchLiveList()
54
+ }
55
+
56
+ private func bindStore() {
57
+ // 订阅 state,自动接收列表更新
58
+ liveListStore.state
59
+ .subscribe(StatePublisherSelector(keyPath: \LiveListState.liveList))
60
+ .receive(on: DispatchQueue.main)
61
+ .sink { [weak self] fetchedList in
62
+ self?.liveList = fetchedList
63
+ self?.collectionView.reloadData()
64
+ }
65
+ .store(in: &cancellables)
66
+ }
67
+
68
+ private func fetchLiveList() {
69
+ liveListStore.fetchLiveList(cursor: "", count: 20) { result in
70
+ if case .failure(let error) = result {
71
+ print("直播列表拉取失败: \(error.localizedDescription)")
72
+ }
73
+ }
74
+ }
75
+
76
+ // 当用户点击列表中的某个Cell时
77
+ func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
78
+ let selectedLiveInfo = liveList[indexPath.item]
79
+
80
+ // 创建观众观看页面,并将 liveId 传入
81
+ let audienceVC = YourAudienceViewController(liveId: selectedLiveInfo.liveID)
82
+ audienceVC.modalPresentationStyle = .fullScreen
83
+ present(audienceVC, animated: true)
84
+ }
85
+
86
+ // --- UICollectionViewDataSource, Delegate, and UI setup methods ---
87
+ private func setupUI() {
88
+ let layout = UICollectionViewFlowLayout()
89
+ // ... (可以自定义您的布局)
90
+ collectionView = UICollectionView(frame: view.bounds, collectionViewLayout: layout)
91
+ collectionView.dataSource = self
92
+ collectionView.delegate = self
93
+ collectionView.register(UICollectionViewCell.self, forCellWithReuseIdentifier: "LiveCell")
94
+ view.addSubview(collectionView)
95
+ }
96
+
97
+ func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
98
+ return liveList.count
99
+ }
100
+
101
+ func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
102
+ let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "LiveCell", for: indexPath)
103
+ cell.backgroundColor = .lightGray // 自定义您的Cell样式
104
+ // let liveInfo = liveList[indexPath.item]
105
+ // ... (例如: cell.titleLabel.text = liveInfo.liveName)
106
+ return cell
107
+ }
108
+
109
+ func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
110
+ // 单列、双列布局可通过自定义您的Cell大小来实现
111
+ let width = (view.bounds.width - 30) / 2
112
+ return CGSize(width: width, height: width * 1.2)
113
+ }
114
+ }
115
+ ```
116
+
117
+ **LiveInfo 参数说明**
118
+
119
+ |**参数名**|**类型**|**描述**|
120
+ |---------|---------|---------|
121
+ |`liveID`|`String`|直播间的唯一标识符。|
122
+ |`liveName`|`String`|直播间的标题。|
123
+ |`coverURL`|`String`|直播间的封面图片地址。|
124
+ |`liveOwner`|[LiveUserInfo](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveuserinfo)|房主的个人信息。|
125
+ |`totalViewerCount`|`Int`|直播间的总观看人数。|
126
+ |`categoryList`|`[NSNumber]`|直播间的分类标签列表。|
127
+ |`notice`|`String`|直播间的公告信息。|
128
+ |`metaData`|`[String: String]`|开发者自定义的元数据,用于实现复杂的业务场景。|
129
+
130
+ ## 功能进阶
131
+
132
+ ### 场景一:实现直播列表的分类展示
133
+
134
+ 在 App 的直播广场页,顶部设有“热门”、“音乐”、“游戏”等分类标签。用户点击不同的标签后,下方的直播列表会动态筛选,只展示对应分类的直播间,从而帮助用户快速发现感兴趣的内容。
135
+
136
+ #### 实现方式
137
+
138
+ 核心是利用 `LiveInfo` 模型中的 `categoryList` 属性。当主播开播设置分类后,`fetchLiveList` 返回的 `LiveInfo` 对象中就会包含这些分类信息。您的 App 在获取到完整的直播列表后,只需在客户端根据用户选择的分类,对这个列表进行一次简单的筛选,然后刷新 UI 即可。
139
+
140
+ #### 代码示例
141
+
142
+ 以下示例展示了如何在 `LiveListViewController` 中扩展一个 `LiveListManager` 来处理数据和筛选逻辑。
143
+ ``` swift
144
+ import AtomicXCore
145
+ import Combine
146
+
147
+ // 1. 创建一个数据管理器来封装数据获取和筛选逻辑
148
+ class LiveListManager {
149
+ private let liveListStore = LiveListStore.shared
150
+ private var cancellables = Set<AnyCancellable>()
151
+ private var fullLiveList: [LiveInfo] = []
152
+
153
+ // 对外暴露最终的直播列表
154
+ let filteredLiveListPublisher = CurrentValueSubject<[LiveInfo], Never>([])
155
+
156
+ init() {
157
+ liveListStore.state
158
+ .subscribe(StatePublisherSelector(keyPath: \LiveListState.liveList))
159
+ .receive(on: DispatchQueue.main)
160
+ .sink { [weak self] fetchedList in
161
+ self?.fullLiveList = fetchedList
162
+ // 默认将完整列表发布出去
163
+ self?.filteredLiveListPublisher.send(fetchedList)
164
+ }
165
+ .store(in: &cancellables)
166
+ }
167
+
168
+ func fetchFirstPage() {
169
+ liveListStore.fetchLiveList(cursor: "", count: 20) { _ in }
170
+ }
171
+
172
+ /// 根据分类筛选直播列表
173
+ func filterLiveList(by categoryId: NSNumber?) {
174
+ guard let categoryId = categoryId else {
175
+ // 如果 categoryId 为 nil,则显示完整列表
176
+ filteredLiveListPublisher.send(fullLiveList)
177
+ return
178
+ }
179
+
180
+ let filteredList = fullLiveList.filter { liveInfo in
181
+ liveInfo.categoryList.contains(categoryId)
182
+ }
183
+ filteredLiveListPublisher.send(filteredList)
184
+ }
185
+ }
186
+
187
+ // 2. 在您的 LiveListViewController 中使用 Manager
188
+ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICollectionViewDelegate {
189
+
190
+ private let manager = LiveListManager()
191
+ private var cancellables = Set<AnyCancellable>()
192
+ private var liveList: [LiveInfo] = []
193
+ private var collectionView: UICollectionView!
194
+
195
+ override func viewDidLoad() {
196
+ super.viewDidLoad()
197
+ // ... setupUI ...
198
+
199
+ // 绑定数据
200
+ manager.filteredLiveListPublisher
201
+ .receive(on: DispatchQueue.main)
202
+ .sink { [weak self] filteredList in
203
+ self?.liveList = filteredList
204
+ self?.collectionView.reloadData()
205
+ }
206
+ .store(in: &cancellables)
207
+
208
+ // 首次拉取
209
+ manager.fetchFirstPage()
210
+ }
211
+
212
+ // 当用户点击顶部分类标签 (UISegmentedControl) 时
213
+ @objc func categorySegmentDidChange(_ sender: UISegmentedControl) {
214
+ let selectedCategoryId: NSNumber? = 1 // 假设 "音乐" 分类的ID是 1
215
+ manager.filterLiveList(by: selectedCategoryId)
216
+ }
217
+
218
+ // ... (UICollectionView 相关代码)
219
+ }
220
+ ```
221
+
222
+ ### 场景二:实现直播列表的滑动播放
223
+
224
+ 用户可以通过上下滑动来切换直播间,当一个新的直播间滑动到屏幕中央时,视频会自动开始播放预览;当它滑出屏幕时,视频则会自动停止,以节省带宽和设备性能。
225
+
226
+ #### 交互流程图
227
+
228
+ #### 实现方式
229
+
230
+ `LiveCoreView` 支持多实例使用,我们为每一个 `UICollectionViewCell` 都创建一个独立的 `LiveCoreView` 实例。通过监听 `UICollectionView` 的滚动代理方法,我们可以精确地控制即将出现和已经离开屏幕的 Cell 中的 `LiveCoreView` 何时开始和停止拉流,从而实现“即滑即播、即走即停”的效果。
231
+
232
+ #### 代码示例
233
+
234
+ 我们创建一个自定义的 `LiveFeedCell`,它内部持有一个 `LiveCoreView`。然后在 UIViewController 中管理这些 Cell 的播放状态。
235
+ ``` swift
236
+ import UIKit
237
+ import AtomicXCore
238
+
239
+ // 1. 自定义 UICollectionViewCell,内部包含一个 LiveCoreView
240
+ class LiveFeedCell: UICollectionViewCell {
241
+ private var liveCoreView: LiveCoreView?
242
+
243
+ func setLiveInfo(_ liveInfo: LiveInfo) {
244
+ // 为新的直播信息创建一个新的 LiveCoreView
245
+ liveCoreView = LiveCoreView(viewType: .playView)
246
+ guard let liveCoreView = liveCoreView else { return }
247
+ contentView.addSubview(liveCoreView)
248
+ liveCoreView.frame = contentView.bounds
249
+ }
250
+
251
+ func startPlay(roomId: String) {
252
+ liveCoreView?.startPreviewLiveStream(roomId: roomId, isMuteAudio: false)
253
+ }
254
+
255
+ func stopPlay(roomId: String) {
256
+ liveCoreView?.stopPreviewLiveStream(roomId: roomId)
257
+ }
258
+ }
259
+
260
+ // 2. 在 ViewController 中管理播放逻辑
261
+ class LiveFeedViewController: UIViewController, UICollectionViewDataSource, UICollectionViewDelegate {
262
+
263
+ private var collectionView: UICollectionView!
264
+ private var liveList: [LiveInfo] = []
265
+ private var currentPlayingIndexPath: IndexPath?
266
+
267
+ // 当滑动完全停止后,此代理方法会被调用
268
+ func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
269
+ let page = Int(scrollView.contentOffset.y / view.frame.height)
270
+ let indexPath = IndexPath(item: page, section: 0)
271
+
272
+ // 只有当居中的 Cell 变化时才切换播放
273
+ if currentPlayingIndexPath != indexPath {
274
+ playVideo(at: indexPath)
275
+ }
276
+ }
277
+
278
+ // 当 Cell 即将离开屏幕时调用
279
+ func collectionView(_ collectionView: UICollectionView, didEndDisplaying cell: UICollectionViewCell, forItemAt indexPath: IndexPath) {
280
+ if let liveCell = cell as? LiveFeedCell {
281
+ let liveInfo = liveList[indexPath.item]
282
+ liveCell.stopPlay(roomId: liveInfo.liveID)
283
+ }
284
+ }
285
+
286
+ private func playVideo(at indexPath: IndexPath) {
287
+ if let cell = collectionView.cellForItem(at: indexPath) as? LiveFeedCell {
288
+ let liveInfo = liveList[indexPath.item]
289
+ cell.startPlay(roomId: liveInfo.liveID)
290
+ currentPlayingIndexPath = indexPath
291
+ }
292
+ }
293
+
294
+ // ... (UICollectionViewDataSource 的其他方法)
295
+ func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
296
+ let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "LiveFeedCell", for: indexPath) as! LiveFeedCell
297
+ cell.setLiveInfo(liveList[indexPath.item])
298
+ return cell
299
+ }
300
+ }
301
+ ```
302
+
303
+ ### 场景三:实现电商直播的商品信息展示
304
+
305
+ 在电商直播中,主播正在讲解一款商品。此时,所有观众的直播画面下方都会弹出一张商品卡片,实时展示该商品的图片、名称和价格。当主播切换讲解下一件商品时,所有观众端的卡片都会自动、同步更新。
306
+
307
+ #### 实现方式
308
+
309
+ 主播端将当前商品的结构化信息(建议使用 **JSON **格式)通过 `updateLiveMetaData` 接口设置到一个自定义的 key(例如 "`product_info`")中。**AtomicXCore** 会将这个变更实时同步给所有观众。观众端只需订阅 `LiveListStore.state`,监听 `metaData` 的变化,一旦发现 `product_info` 的值更新,就解析其中的 JSON 数据并刷新商品卡片 UI。
310
+
311
+ #### 代码示例
312
+ ``` swift
313
+ import AtomicXCore
314
+ import Combine
315
+
316
+ // 1. 定义一个商品信息模型,遵循 Codable 以便与JSON互转
317
+ struct Product: Codable {
318
+ let id: String
319
+ let name: String
320
+ let price: String
321
+ let imageUrl: String
322
+ }
323
+
324
+ // 2. 主播端:在 YourAnchorViewController 中添加推送商品的方法
325
+ extension YourAnchorViewController {
326
+ func pushProductInfo(_ product: Product) {
327
+ guard let jsonData = try? JSONEncoder().encode(product),
328
+ let jsonString = String(data: jsonData, encoding: .utf8) else { return }
329
+
330
+ let metaData = ["product_info": jsonString]
331
+
332
+ // 使用全局单例的 liveListStore 来更新 metaData
333
+ LiveListStore.shared.updateLiveMetaData(metaData) { result in
334
+ if case .success = result {
335
+ print("商品 \(product.name) 信息推送成功")
336
+ }
337
+ }
338
+ }
339
+ }
340
+
341
+ // 3. 观众端:在 YourAudienceViewController 中订阅并响应
342
+ class YourAudienceViewController: UIViewController {
343
+
344
+ // ... (已有代码)
345
+ private var cancellables = Set<AnyCancellable>()
346
+ // 假设您有一个自定义的商品卡片视图
347
+ // private let productCardView = ProductCardView()
348
+
349
+ override func viewDidLoad() {
350
+ super.viewDidLoad()
351
+ view.backgroundColor = .black
352
+ // ... (setupUI, 布局 productCardView)
353
+ joinLive()
354
+ subscribeToProductUpdates()
355
+ }
356
+
357
+ private func subscribeToProductUpdates() {
358
+ LiveListStore.shared.state
359
+ // 监听当前房间的 metaDatass
360
+ .subscribe(StatePublisherSelector(keyPath: \LiveListState.currentLive.metaData))
361
+ .removeDuplicates()
362
+ .receive(on: DispatchQueue.main)
363
+ .sink { metaData in
364
+ guard let jsonString = metaData["product_info"],
365
+ let data = jsonString.data(using: .utf8),
366
+ let product = try? JSONDecoder().decode(Product.self, from: data) else {
367
+ // self.productCardView.hide() // 如果没有商品信息,则隐藏卡片
368
+ return
369
+ }
370
+ // self.productCardView.update(with: product) // 使用新数据更新商品卡片UI
371
+ // self.productCardView.show()
372
+ }
373
+ .store(in: &cancellables)
374
+ }
375
+
376
+ // ... (joinLive 和 leaveLive 方法)
377
+ }
378
+ ```
379
+
380
+ ## API 文档
381
+
382
+ 关于 [LiveListStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveliststore) 及其相关类的所有公开接口、属性和方法的详细信息,请参阅随 [AtomicXCore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore) 框架的官方 API 文档。本文档使用到的相关 Store 如下:
383
+
384
+ |Store/Component|功能描述|API 文档|
385
+ |---------|---------|---------|
386
+ |LiveCoreView|直播视频流展示与交互的核心视图组件:负责视频流渲染和视图挂件处理,支持主播直播、观众连麦、主播连线等场景。|[API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/livecoreview)|
387
+ |LiveListStore|直播间全生命周期管理:创建 / 加入 / 离开 / 销毁房间,查询房间列表,修改直播信息(名称、公告等),监听直播状态(例如被踢出、结束)。|[API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveliststore)|
388
+
389
+ ## 常见问题
390
+
391
+ ### 使用 `updateLiveMetaData` 时有哪些需要注意的限制和规则?
392
+
393
+ 为了保证系统的稳定和高效,`metaData` 的使用遵循以下规则:
394
+ - **权限**: 只有房主和管理员可以调用 `updateLiveMetaData`。普通观众没有权限。
395
+
396
+ - **数量与大小限制**:
397
+
398
+ - 单个房间最多支持 **10** 个 key。
399
+
400
+ - 每个 key 的长度不超过 **50 字节**,每个 value 的长度不超过 **2KB**。
401
+
402
+ - 单个房间所有 value 的总大小不超过 **16KB**。
403
+
404
+ - **冲突解决**: `metaData` 的更新机制是“后来者覆盖”。如果多个管理员在短时间内修改同一个 key,最后一次的修改会生效。建议在业务设计上避免多人同时修改同一个关键信息。
@@ -1,38 +1,36 @@
1
- `LiveAudienceState` 是 `AtomicXCore` 中专门负责管理语聊房观众信息的模块。通过 `LiveAudienceState`,您可以为您的直播应用构建一套完整的观众列表及管理系统。
1
+ `LiveAudienceState` 是 `AtomicXCore` 中专门负责管理直播间观众信息的模块。通过 `LiveAudienceState`,您可以为您的直播应用构建一套完整的观众列表及管理系统。
2
2
 
3
3
  ## 核心功能
4
- - **实时观众列表**:获取并展示当前在语聊房内的所有观众信息。
4
+ - **实时观众列表**:获取并展示当前在直播间内的所有观众信息。
5
5
 
6
- - **观众人数统计**:实时获取当前语聊房的准确观众总数。
6
+ - **观众人数统计**:实时获取当前直播间的准确观众总数。
7
7
 
8
8
  - **观众动态监听**:通过事件订阅,实时感知观众的加入和离开。
9
9
 
10
10
  - **管理员权限**:主播可以将普通观众设为管理员,或撤销其管理员身份。
11
11
 
12
- - **房间管理**:主播或管理员可以将任意普通观众请出(踢出)语聊房。
12
+ - **房间管理**:主播或管理员可以将任意普通观众请出(踢出)直播间。
13
13
 
14
14
  ## 实现步骤
15
15
 
16
16
  ### 步骤1:组件集成
17
+ - **视频直播**:请参考 开播与观看 集成 **AtomicXCore**,完成接入。
17
18
 
18
- 请参考 开始直播 集成 **AtomicXCore**,完成接入。
19
+ - **语聊房**:请参考 开播与收听 集成 **AtomicXCore**,完成接入。
19
20
 
20
21
  ### 步骤2:初始化并获取观众列表
21
22
 
22
- 获取一个与当前语聊房 liveID 绑定的 `LiveAudienceState` 实例,并主动拉取一次当前的观众列表,用于首次展示。
23
+ 获取一个与当前直播间 liveID 绑定的 `LiveAudienceState` 实例,并主动拉取一次当前的观众列表,用于首次展示。
23
24
  ``` typescript
24
25
  import { useLiveAudienceState } from "@/uni_modules/tuikit-atomic-x/state/LiveAudienceState";
25
26
  import { onMounted, watch } from 'vue';
26
-
27
- // liveID 是语聊房的唯一标识
28
- const liveID = 'your_live_id'; // 替换为实际的语聊房 liveID
29
-
27
+ const liveID = "xxx" // 您当前加入语聊房或直播间的 liveID
30
28
  // 通过 liveID 获取 LiveAudienceState 的实例
31
29
  const { fetchAudienceList, audienceList } = useLiveAudienceState(liveID)
32
30
 
33
31
  onMounted(() => {
34
32
  fetchAudienceList({
35
- liveID: 'xxx', // 当前语聊房的 liveID
33
+ liveID: 'xxx', // 当前直播间的 liveID
36
34
  success: () => {
37
35
  // 成功后,响应式数据会自动更新
38
36
  console.log('首次拉取观众列表成功')
@@ -53,12 +51,11 @@ watch(audienceList, (newVal, oldVal) => {
53
51
 
54
52
  ### 步骤3:监听观众列表状态与实时动态
55
53
 
56
- 订阅和监听 `audienceState` 的 `event` 和 `响应式数据`,用来接收全量列表快照和实时的观众进出事件,从而驱动 UI 更新。
54
+ 订阅和监听 `LiveAudienceState` 的 `event` 和 `响应式数据`,用来接收全量列表快照和实时的观众进出事件,从而驱动 UI 更新。
57
55
  ``` typescript
58
56
  import { useLiveAudienceState } from "@/uni_modules/tuikit-atomic-x/state/LiveAudienceState";
59
57
  import { onMounted, watch } from 'vue';
60
-
61
- const liveID = 'your_live_id'; // 替换为实际的语聊房 liveID
58
+ const liveID = "xxx" // 您当前加入语聊房或直播间的 liveID
62
59
  //通过 liveID 获取 LiveAudienceState 的实例
63
60
  const { audienceList, audienceCount, addAudienceListener, removeAudienceListener } = useLiveAudienceState(liveID)
64
61
 
@@ -73,41 +70,34 @@ watch(audienceCount, (newVal, oldVal) => {
73
70
  })
74
71
 
75
72
  onMounted(() => {
76
- addAudienceListener( liveID, 'onAudienceJoined',
77
- { callback: (event) => {
73
+ addAudienceListener(liveID, 'onAudienceJoined', (event) => {
78
74
  const newAudience = JSON.parse(event)
79
- console.log("观众 ${newAudience.userName} 加入了语聊房")
80
- }
75
+ console.log("观众 ${newAudience.userName} 加入了直播间")
81
76
  })
82
77
 
83
- addAudienceListener( liveID, 'onAudienceLeft',
84
- { callback: (event) => {
78
+ addAudienceListener(liveID, 'onAudienceLeft', (event) => {
85
79
  const departedAudience = JSON.parse(event)
86
- console.log("观众 ${departedAudience.userName} 离开了语聊房")
87
- }
80
+ console.log("观众 ${departedAudience.userName} 离开了直播间")
88
81
  })
89
82
  })
90
83
  ```
91
84
 
92
85
  ### 步骤4:管理观众(踢人与设置管理员)
93
86
 
94
- 作为主播或管理员,对语聊房内的观众进行管理操作。
87
+ 作为主播或管理员,对直播间内的观众进行管理操作。
95
88
 
96
- #### 4.1 将观众踢出语聊房
89
+ #### 4.1 将观众踢出直播间
97
90
 
98
- 调用 `kickUserOutOfRoom` 接口可以将指定用户请出语聊房。
91
+ 调用 `kickUserOutOfRoom` 接口可以将指定用户请出直播间。
99
92
  ``` typescript
100
93
  import { useLiveAudienceState } from "@/uni_modules/tuikit-atomic-x/state/LiveAudienceState";
101
-
102
- // liveID 是语聊房的唯一标识
103
- const liveID = 'your_live_id'; // 替换为实际的语聊房 liveID
104
-
94
+ const liveID = "xxx" // 您当前加入语聊房或直播间的 liveID
105
95
  //通过 liveID 获取 LiveAudienceState 的实例
106
96
  const { kickUserOutOfRoom } = useLiveAudienceState(liveID)
107
97
 
108
98
  const kickOut = () => {
109
99
  kickUserOutOfRoom({
110
- liveID: 'xxx', // 当前语聊房的 liveID
100
+ liveID: 'xxx', // 当前直播间的 liveID
111
101
  userID: 'xxx', // 想要踢出成员的 userID
112
102
  success: () => {
113
103
  console.log("成功将用户 ${userID} 踢出房间")
@@ -125,17 +115,14 @@ const kickOut = () => {
125
115
  通过 `setAdministrator` 和 `revokeAdministrator` 接口可以管理用户的管理员身份。
126
116
  ``` typescript
127
117
  import { useLiveAudienceState } from "@/uni_modules/tuikit-atomic-x/state/LiveAudienceState";
128
-
129
- // liveID 是语聊房的唯一标识
130
- const liveID = 'your_live_id'; // 替换为实际的语聊房 liveID
131
-
118
+ const liveID = "xxx" // 您当前加入语聊房或直播间的 liveID
132
119
  //通过 liveID 获取 LiveAudienceState 的实例
133
120
  const { setAdministrator, revokeAdministrator } = useLiveAudienceState(liveID)
134
121
 
135
122
  // 将用户设为管理员
136
123
  const promoteToAdmin = () => {
137
124
  setAdministrator({
138
- liveID: 'xxx', // 当前语聊房的 liveID
125
+ liveID: 'xxx', // 当前直播间的 liveID
139
126
  userID: 'xxx', // 想要设为管理员的 userID
140
127
  success: () => {
141
128
  console.log("成功将用户 ${userID} 设为管理员")
@@ -149,7 +136,7 @@ const promoteToAdmin = () => {
149
136
  // 撤销用户的管理员身份
150
137
  const revokeAdmin = () => {
151
138
  revokeAdministrator({
152
- liveID: 'xxx', // 当前语聊房的 liveID
139
+ liveID: 'xxx', // 当前直播间的 liveID
153
140
  userID: 'xxx', // 想要撤销管理员的 userID
154
141
  success: () => {
155
142
  console.log("成功将用户 ${userID} 的管理员身份撤销")
@@ -166,40 +153,35 @@ const revokeAdmin = () => {
166
153
 
167
154
  ### 在弹幕区展示观众入场欢迎语
168
155
 
169
- 当有新观众进入语聊房时,弹幕/聊天区域会在本地自动显示一条欢迎消息,例如:“欢迎 [用户昵称] 进入语聊房”。
156
+ 当有新观众进入直播间时,弹幕/聊天区域会在本地自动显示一条欢迎消息,例如:“欢迎 [用户昵称] 进入直播间”。
170
157
 
171
158
  #### 实现方式
172
159
 
173
- 我们通过订阅 `LiveAudienceState` 的观众加入事件( `'onAudienceJoined'` )来获取新观众加入的实时通知。一旦事件触发,我们便提取出新观众的昵称信息,然后立即调用 `BarrageState` 的本地插入接口 `appendLocalTip`。
160
+ 我们通过订阅 `LiveAudienceState` 的观众加入事件('onAudienceJoined')来获取新观众加入的实时通知。一旦事件触发,我们便提取出新观众的昵称信息,然后立即调用 `BarrageState` 的本地插入接口 `appendLocalTip`。
174
161
  ``` typescript
175
162
  import { useLiveAudienceState } from "@/uni_modules/tuikit-atomic-x/state/LiveAudienceState";
176
163
  import { useBarrageState } from '@/uni_modules/tuikit-atomic-x/state/BarrageState';
177
164
  import { onMounted } from 'vue';
178
-
179
- // liveID 是语聊房的唯一标识
180
- const liveID = 'your_live_id'; // 替换为实际的语聊房 liveID
181
-
165
+ const liveID = "xxx" // 您当前加入语聊房或直播间的 liveID
182
166
  //通过 liveID 获取 LiveAudienceState 的实例
183
167
  const { addAudienceListener, removeAudienceListener } = useLiveAudienceState(liveID)
184
168
  //通过 liveID 获取 BarrageState 的实例
185
169
  const { appendLocalTip } = useBarrageState(liveID)
186
170
 
187
171
  onMounted(() => {
188
- addAudienceListener(liveID, 'onAudienceJoined',
189
- { callback: (event) => {
172
+ addAudienceListener(liveID, 'onAudienceJoined', (event) => {
190
173
  const newAudience = JSON.parse(event)
191
174
  // 创建一条本地提示消息
192
175
  let welcomeTip = {}
193
- welcomeTip.liveID = liveID,
194
- welcomeTip.sender = { userID: 'xxx' },
195
- welcomeTip.sequence = Date.now(),
196
- welcomeTip.timestampInSecond = Date.now(),
197
- welcomeTip.messageType = 'TEXT',
198
- welcomeTip.textContent = "欢迎 ${newAudience.userName} 进入语聊房!"
176
+ welcomeTip.liveID = liveID
177
+ welcomeTip.sender = { userID: 'xxx' }
178
+ welcomeTip.sequence = Math.floor(Date.now() / 1000),
179
+ welcomeTip.timestampInSecond = Date.now()
180
+ welcomeTip.messageType = 'TEXT'
181
+ welcomeTip.textContent = "欢迎 ${newAudience.userName} 进入直播间!"
199
182
  // 调用 BarrageStore 的接口将其插入弹幕列表
200
183
  appendLocalTip(welcomeTip)
201
- console.log("观众 ${newAudience.userName} 加入了语聊房")
202
- }
184
+ console.log("观众 ${newAudience.userName} 加入了直播间")
203
185
  })
204
186
  })
205
187
  ```
@@ -207,17 +189,18 @@ onMounted(() => {
207
189
  ## API 文档
208
190
 
209
191
  关于 [LiveAudienceState](https://liteav.sdk.qcloud.com/doc/product/tuikit/atomic-x/uni-app/zh/v1.0/api/index.html#module-LiveAudienceState) 及其相关类的所有公开接口、属性和方法的详细信息,请参阅随 AtomicXCore 框架的官方 API 文档。本文档使用到的相关 State 如下:
210
- | **State** | **功能描述** | **API 文档** |
211
- | --- | --- | --- |
212
- | LiveAudienceState | 观众管理:获取实时观众列表(ID / 名称 / 头像),统计观众数量,监听观众进出事件。 | [API 文档](https://liteav.sdk.qcloud.com/doc/product/tuikit/atomic-x/uni-app/zh/v1.0/api/index.html#module-LiveAudienceState) |
213
- | BarrageState | 弹幕功能:发送文本 / 自定义弹幕,维护弹幕列表,实时监听弹幕状态。 | [API 文档](https://liteav.sdk.qcloud.com/doc/product/tuikit/atomic-x/uni-app/zh/v1.0/api/index.html#module-BarrageState) |
192
+
193
+ |**State**|**功能描述**|**API 文档**|
194
+ |---------|---------|---------|
195
+ |LiveAudienceState|观众管理:获取实时观众列表(ID / 名称 / 头像),统计观众数量,监听观众进出事件。|[API 文档](https://liteav.sdk.qcloud.com/doc/product/tuikit/atomic-x/uni-app/zh/v1.0/api/index.html#module-LiveAudienceState)|
196
+ |BarrageState|弹幕功能:发送文本 / 自定义弹幕,维护弹幕列表,实时监听弹幕状态。|[API 文档](https://liteav.sdk.qcloud.com/doc/product/tuikit/atomic-x/uni-app/zh/v1.0/api/index.html#module-BarrageState)|
214
197
 
215
198
  ## 常见问题
216
199
 
217
200
  ### `LiveAudienceState` 中的在线人数(`audienceCount`)是如何更新的?时机和频率是怎样的?
218
201
 
219
202
  `audienceCount` 的更新并非总是实时的,其机制如下:
220
- - **主动进出房间**:当用户主动加入或正常退出语聊房时,在线人数的变更通知会即时触发。您会很快在 `LiveAudienceState` 中观察到 `audienceCount` 的变化。
203
+ - **主动进出房间**:当用户主动加入或正常退出直播间时,在线人数的变更通知会即时触发。您会很快在 `LiveAudienceState` 中观察到 `audienceCount` 的变化。
221
204
 
222
205
  - **异常掉线**:当用户因网络问题、应用崩溃等原因异常掉线时,系统需要通过心跳机制来判断其真实状态。只有当该用户连续 90 秒没有心跳后,系统才会判定其为离线,并触发人数变更通知。
223
206