@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,454 +0,0 @@
1
- # Native Live AtomicXCore Code Generation Workflow Instructions (iOS)
2
-
3
- ## 🚨 Core Principles (Highest Priority)
4
-
5
- **The Agent MUST ensure that the generated code compiles and runs successfully. Delivering uncompilable code to the user is strictly prohibited!**
6
-
7
- ### ⚠️ Mandatory Compilation Verification (Must be executed, cannot be omitted)
8
-
9
- **🚫 Prohibited Actions**:
10
- - ❌ DO NOT assume code is correct based only on `read_lints` checks.
11
- - ❌ DO NOT use `grep` to filter compilation output (this will cause commands to be skipped).
12
- - ❌ DO NOT deliver code without compilation verification.
13
-
14
- **✅ The Only Correct Way to Verify**:
15
-
16
- ```bash
17
- # Step 1: Install dependencies (if needed)
18
- cd <ProjectDir> && pod install
19
-
20
- # Step 2: Compile verification (use tail to limit output)
21
- cd <ProjectDir> && xcodebuild build \
22
- -scheme <SchemeName> \
23
- -workspace <WorkspaceName>.xcworkspace \
24
- -destination 'generic/platform=iOS' \
25
- CODE_SIGNING_ALLOWED=NO 2>&1 | tail -150
26
- ```
27
-
28
- **Judging Criteria**:
29
- - ✅ Output contains `BUILD SUCCEEDED` → Compilation passed, ready for delivery.
30
- - ❌ Output contains `BUILD FAILED` or `error:` → Must fix and recompile.
31
-
32
- **Common Errors & Fixes**:
33
- | Error Keyword | Reason | Fix |
34
- |---------------|--------|-----|
35
- | `No such module 'xxx'` | Missing Pod dependency | Add to Podfile and run `pod install`. |
36
- | `Cannot find 'xxx' in scope` | Missing import | Add `import xxx`. |
37
- | `Use of unresolved identifier` | Incorrect API name | Consult documentation for correct API. |
38
- | `NSCameraUsageDescription` | Missing Info.plist permission | Add permission description. |
39
-
40
- **Verification Loop (Must Follow)**:
41
- ```
42
- Execute Compilation → Failure → Analyze Error → Fix Code → Re-execute Compilation → ... → BUILD SUCCEEDED → Deliver
43
- ```
44
-
45
- ---
46
-
47
- ## 📋 Instruction Purpose & Architecture
48
-
49
- Provides the Agent with a **code generation blueprint** for implementing core features of Native (iOS) Live AtomicXCore.
50
-
51
- **Core Architecture**:
52
- * **Container**: `LiveCoreView` (View layer)
53
- * **State**: `Store` (Data-driven)
54
- * **Events**: `Publisher` (Combine subscription)
55
-
56
- **Feature Dependency Logic (Important)**:
57
- 1. **Base First**: Basic live streaming (Broadcasting/Viewing/List) must be completed first using the base tool (`get_native_live_uikit_integration`).
58
- 2. **Interaction Overlay**: If requirements include "Co-guesting", "PK", or "Audience List", the interaction tool (`get_native_live_uikit_interaction`) must be called **after** basic features are completed.
59
- 3. **Empty Project Handling**: If the user requests interaction features in an empty project, the Agent **MUST implement basic features first**, then add interaction capabilities.
60
-
61
- ---
62
-
63
- ## ⚙️ Automated Workflow Steps (Must be created as TODO tasks)
64
-
65
- **🚨 The Agent MUST create the following steps as a TODO task list, complete them one by one, and check them off:**
66
-
67
- ### Step 1: Preparation
68
- 1. **Generate Credentials**: Call the `get_usersig` tool to generate test credentials.
69
- * Host: `anchor001`, `anchor002`, `anchor003`
70
- * Audience: `user001`, `user002`, `user003`
71
- 2. **Environment Check**: Check `Podfile` and add the following dependency if missing:
72
- ```ruby
73
- pod 'AtomicXCore'
74
- ```
75
- 3. **Permission Injection**: Add Camera and Microphone permission descriptions in `Info.plist`:
76
- ```xml
77
- <key>NSCameraUsageDescription</key>
78
- <string>Needs camera access to record video.</string>
79
- <key>NSMicrophoneUsageDescription</key>
80
- <string>Needs microphone access to record audio.</string>
81
- ```
82
-
83
- ### Step 2: Code Generation
84
- **PRIORITIZE and EXCLUSIVELY** use the **real-time documentation content** returned by this tool for code generation.
85
- * **Host Only**: Generate `AnchorViewController`.
86
- * **Audience Only**: Generate `AudienceViewController`.
87
- * **Host + Audience**: Generate `MainViewController` (Entry selection) + `AnchorViewController` + `AudienceViewController`.
88
-
89
- ### Step 3: 🚨 Compilation Verification (Mandatory, cannot be skipped)
90
- **This step MUST be executed as a standalone TODO task, cannot be omitted or merged!**
91
-
92
- **Execution Command**:
93
- ```bash
94
- cd <ProjectDir>/ios && pod install && \
95
- xcodebuild build -scheme <SchemeName> -workspace <WorkspaceName>.xcworkspace \
96
- -destination 'platform=iOS Simulator,name=iPhone 16' \
97
- CODE_SIGNING_ALLOWED=NO 2>&1 | tail -150
98
- ```
99
-
100
- **Judgment & Handling**:
101
- * Output contains **BUILD SUCCEEDED** → Proceed to Step 4.
102
- * Output contains **BUILD FAILED** or **error:** → Analyze error → Fix code → **Re-execute this command**, loop until success.
103
-
104
- ### Step 4: Deliver Results
105
- Deliver the code after confirming compilation passes.
106
-
107
- ---
108
-
109
- ## 🚫 Code Generation Constraints (Strictly Follow)
110
-
111
- ### 1. General Code Constraints
112
- * **Strictly Prohibited to Modify Imports**: Import paths in the documentation are verified; DO NOT modify them.
113
- * **Strictly Prohibited to Fabricate APIs**: If an API is not in the documentation, DO NOT invent method or parameter names.
114
- * **MUST Consult API Docs**: For data model fields (e.g., `LiveInfo`), visit the documentation to confirm field names (e.g., confirm it's `liveOwner.userName` and not `name`).
115
-
116
- ### 2. 🧩 Store & Publisher Management Constraints (Lifecycle Safety)
117
- **Core Reason**: SDK uses Combine's `Publisher` for state subscription. Incorrect lifecycle management leads to listener failure or memory leaks.
118
-
119
- * **Subscription Management Principle**: All `AnyCancellable` **MUST be declared as member variables** of the ViewController in `cancellableSet`.
120
- * **No Ignoring Return Values**: Prohibited to not store the `AnyCancellable` returned by `.sink {}`.
121
- * **Pairing Principle**: Setup subscriptions in `viewDidLoad`; they will be automatically released when the `cancellableSet` is deinitialized.
122
-
123
- ### 3. ⏱️ Timeout Limits (Critical)
124
- **Strictly adhere to the following parameter limits, prioritizing values from documentation examples:**
125
-
126
- #### A. Co-guesting (`CoGuestStore`)
127
- * **Rules**:
128
- * Optional parameter; if not filled, timeout is not checked.
129
- * If filled, the range MUST be between **5 - 1800 seconds**.
130
- * **Correct Examples**:
131
- ```swift
132
- // ✅ Recommended: Follow doc examples (e.g., 30s)
133
- CoGuestStore.shared.applyForSeat(seatIndex: -1, timeout: 30) { ... }
134
- // ✅ Valid: No timeout check
135
- CoGuestStore.shared.applyForSeat(seatIndex: -1, timeout: 0) { ... }
136
- ```
137
- * **Incorrect Examples**: ❌ `timeout: 3` (too short), ❌ `timeout: 2000` (too long).
138
-
139
- #### B. Co-hosting/PK (`CoHostStore`)
140
- * **Rules**:
141
- * **Maximum 30 seconds** (Hard limit).
142
- * **Correct Examples**:
143
- ```swift
144
- // ✅ Recommended: Use maximum value
145
- CoHostStore.shared.requestHostConnection(..., timeout: 30) { ... }
146
- ```
147
- * **Incorrect Examples**: ❌ `timeout: 60` (will cause request failure).
148
-
149
- ### 4. 🎨 Extra Feature Constraints (Beauty/Audio/UI)
150
-
151
- #### A. Audio Effects
152
- * **Voice Changer Enum (`AudioChangerType`)**:
153
- * ✅ **Allowed**: `.child, .littleGirl, .man, .ethereal`, etc.
154
- * ❌ **Prohibited**: `.uncle, .loli, .girl, .boy` (deprecated or incorrect).
155
- * **Reverb Enum (`AudioReverbType`)**:
156
- * ✅ **Allowed**: `.ktv, .smallRoom, .metallic`, etc.
157
- * ❌ **Prohibited**: `.room, .hall, .low`.
158
-
159
- #### B. Beauty
160
- * **Parameter Range**: **0.0 - 9.0** (Float).
161
- * ❌ NOT 0-1 (Float), and NOT 0-100 (Int).
162
- * **UI Mapping Formula**: `sliderValue / 100.0 * 9.0`.
163
-
164
- #### C. Barrage, Gift & Layout (Barrage, Gift & UI)
165
- * **Layering Requirements**: Barrage list and full-screen gift animations MUST overlay **on top** of the video layer `LiveCoreView` using a `UIView`.
166
- * **Split Screen Prohibited**: Strictly prohibited to split the screen (e.g., video on top, barrage at bottom); MUST use overlay mode.
167
-
168
- ##### Barrage Input
169
- * **Position**: Fixed at the bottom left of the screen, in the same row as function buttons (Gift, Co-guest, etc.).
170
- * **Style**: Semi-transparent rounded background + placeholder text "Say something...".
171
- * **Keyboard Adaptation**:
172
- * When the keyboard is raised, the input box **must remain in its original position** and is prohibited from moving up with the keyboard.
173
- * The `LiveCoreView` constraint must be fixed to `edges.equalToSuperview()`, prohibiting distortion or upward shifting.
174
- * **Strictly Prohibited** to use `UIScrollView.contentInsetAdjustmentBehavior` or automatic constraint adjustments.
175
-
176
- ##### Barrage Display Flow
177
- ```
178
- Sending Barrage:
179
- User input → Click Send/Enter → BarrageStore.sendTextMessage(text) → Insert into local barrage list immediately
180
-
181
- Receiving Barrage:
182
- Subscribe to BarrageStore.barrageState.$barrageList → New message received → Insert into barrage list → Scroll to bottom
183
- ```
184
- * **Data Source**: Subscribe to `BarrageStore.shared.barrageState.$barrageList`.
185
- * **Local Echo**: Insert into the local barrage list **immediately** after successful sending, without waiting for server callback.
186
- * **Scrolling Behavior**: Automatically scroll to the bottom when a new message arrives (`scrollToRow(at: lastIndex, animated: true)`).
187
- * **Message Format**: `[Nickname]: [Message Content]`, nickname uses theme color, content uses white.
188
-
189
- * **Gift Barrage**: **If the user needs gift barrage integration**, when `onReceiveGift` is triggered, a gift message MUST be inserted into the barrage list on **both host and audience sides**. DO NOT display only on the audience side.
190
-
191
- ##### Full-screen Gift Animation
192
- **⚠️ MANDATORY**: Full-screen gift animation is a **mandatory requirement** when integrating gift features and cannot be omitted.
193
-
194
- * **Layering**: The full-screen gift animation view MUST overlay **on top** of the `LiveCoreView` using a separate `UIView` container.
195
- * **Layout**: Constrained to `edges.equalToSuperview()`, covering the entire screen.
196
- * **Dual-side Sync**: Upon receiving the `.onReceiveGift` event, the full-screen animation MUST be played on **both host and audience sides**. Playing only on the audience side is strictly prohibited.
197
-
198
- ##### ⚠️ SVGA Animation Playback (Mandatory use of SVGAPlayer, Strictly Prohibited to use UIImageView)
199
- **Strictly Prohibited to use UIImageView/Kingfisher to load .svga files**. SVGA is a vector animation format, not a normal image; UIImageView cannot play it.
200
-
201
- * **Dependency Configuration** (Podfile):
202
- ```ruby
203
- pod 'SVGAPlayer'
204
- ```
205
-
206
- * **Core Playback Logic (MUST use SVGAParser + SVGAPlayer)**:
207
- ```swift
208
- import SVGAPlayer
209
-
210
- // ❌ Incorrect: Using UIImageView to load SVGA (cannot play animation)
211
- // imageView.kf.setImage(with: URL(string: gift.resourceURL))
212
-
213
- // ✅ Correct: Using SVGAParser to parse + SVGAPlayer to play
214
- svgaParser.parse(with: url) { [weak self] videoItem in
215
- guard let videoItem = videoItem else { return }
216
- self?.svgaPlayer.videoItem = videoItem
217
- self?.svgaPlayer.startAnimation() // Start playing animation
218
- }
219
- ```
220
-
221
- * **Full Implementation Example (Within ViewController)**:
222
- ```swift
223
- import UIKit
224
- import AtomicXCore
225
- import Combine
226
- import SVGAPlayer
227
-
228
- class LiveRoomViewController: UIViewController, SVGAPlayerDelegate {
229
- private var cancellables = Set<AnyCancellable>()
230
-
231
- // SVGA Player Components
232
- private let svgaPlayer = SVGAPlayer()
233
- private let svgaParser = SVGAParser()
234
-
235
- override func viewDidLoad() {
236
- super.viewDidLoad()
237
- setupSVGAPlayer()
238
- subscribeGiftEvents()
239
- }
240
-
241
- // 1. Initialize SVGAPlayer
242
- private func setupSVGAPlayer() {
243
- svgaPlayer.delegate = self
244
- svgaPlayer.loops = 1 // Play once
245
- svgaPlayer.clearsAfterStop = true // Clear automatically after stopping
246
- svgaPlayer.frame = view.bounds // Full screen
247
- svgaPlayer.isHidden = true
248
- view.addSubview(svgaPlayer)
249
- // Ensure svgaPlayer is at the top level
250
- view.bringSubviewToFront(svgaPlayer)
251
- }
252
-
253
- // 2. Subscribe to Gift Events
254
- private func subscribeGiftEvents() {
255
- let giftStore = GiftStore.create(liveID: liveId)
256
- giftStore.giftEventPublisher
257
- .receive(on: DispatchQueue.main)
258
- .sink { [weak self] event in
259
- guard case .onReceiveGift(_, let gift, let count, let sender) = event else { return }
260
-
261
- // Play full-screen gift animation
262
- if !gift.resourceURL.isEmpty, let url = URL(string: gift.resourceURL) {
263
- self?.playGiftAnimation(from: url)
264
- }
265
-
266
- // (Optional) Insert gift message into barrage list
267
- // let tipText = "\(sender.userName) sent \(gift.name) x \(count)"
268
- // barrageStore.appendLocalTip(message: tipText)
269
- }
270
- .store(in: &cancellables)
271
- }
272
-
273
- // 3. Use SVGAParser to parse and play animation
274
- private func playGiftAnimation(from url: URL) {
275
- svgaParser.parse(with: url, completionBlock: { [weak self] videoItem in
276
- guard let self = self, let videoItem = videoItem else { return }
277
- DispatchQueue.main.async {
278
- self.svgaPlayer.videoItem = videoItem
279
- self.svgaPlayer.isHidden = false
280
- self.svgaPlayer.startAnimation()
281
- }
282
- }, failureBlock: { error in
283
- print("SVGA Parse Failed: \(error?.localizedDescription ?? "")")
284
- })
285
- }
286
-
287
- // 4. SVGAPlayerDelegate - Playback Finished Callback
288
- func svgaPlayerDidFinishedAnimation(_ player: SVGAPlayer!) {
289
- svgaPlayer.isHidden = true
290
- }
291
- }
292
- ```
293
-
294
- * **Key Checkpoints**:
295
- 1. ✅ Import `import SVGAPlayer`
296
- 2. ✅ Use `SVGAParser().parse(with: url)` to parse animation URL
297
- 3. ✅ Use `SVGAPlayer().startAnimation()` to play animation
298
- 4. ✅ Implement `SVGAPlayerDelegate` to handle playback end
299
- 5. ❌ PROHIBITED to use `UIImageView`/`Kingfisher`/`SDWebImage` to load .svga files
300
-
301
- ### 🎨 Default UI/UX Design & Interaction Specifications (Only applies if user doesn't specify)
302
-
303
- **⚠️ Note: The following specifications are only executed as default standards when the user does not provide specific UI design or requirements.**
304
-
305
- ### 1. Global Aesthetics
306
- * **Immersive Dark**: The background of the live page must be `.black`, and the video layer (`LiveCoreView`) must **fill the entire screen** (`edges.equalToSuperview()`) and be at the bottom layer.
307
- * **Safe Area**: All floating UIs must be constrained within the `safeAreaLayoutGuide`, strictly prohibiting being blocked by notches or the bottom Home bar.
308
- * **Text Readability**: White text above the video (e.g., barrage, ID) must have a **black shadow** (`shadowColor = .black, offset = 0x1`).
309
- * **Error Prompts**: Use **Toast** uniformly; prohibit the use of modal Alerts that interrupt the user.
310
-
311
- ### 2. Component Standards
312
- * **Glass Capsule (Top)**:
313
- * **Style**: **Frosted glass background** (`UIBlurEffect.dark`) + **full rounded corners**.
314
- * **Application**: Only used at the top left to display "Host Avatar + ID + Popularity".
315
- * **Flat Buttons**:
316
- * **Style**: **"Text + Rounded Rectangle Background"**. Minimalist flat design, background color is semi-transparent black or theme color.
317
- * **Close Button**: Special case, use a circular frosted glass icon.
318
- * **Floating Panels**:
319
- * **Style**: Only top rounded corners (`maskedCorners = [.layerMinXMinYCorner, .layerMaxXMinYCorner]`).
320
- * **Taboo**: Solid color backgrounds at the bottom are prohibited; floating feeling must be maintained.
321
-
322
- ### 3. Live Room Layout Blueprint
323
- **⚠️ Dynamic Layout Principle: Only render function buttons that the user has actually integrated. If a user did not request a feature (e.g., PK/Beauty), DO NOT add corresponding empty buttons.**
324
-
325
- #### A. Top Bar
326
- * **Left [Room Info]**: Wrapped in a **frosted capsule** [Host Avatar | Host Nickname].
327
- * **Right [Control Area]**: Horizontally arranged [Online Audience Count] + [Close Icon (X)].
328
-
329
- #### B. Bottom Bar - Dynamically switches based on state
330
- * **Preview Mode**:
331
- * Content **aligned to the right**: [Beauty] [Audio Effects] [Start Live (Main Button)].
332
- * **Anchor Live Mode**:
333
- * **Left**: [Barrage List (Transparent Background)] + [Chat Input Box].
334
- * **Right**: Function array [Beauty] [Audio Effects] [Co-hosting] [PK].
335
- * **Audience Live Mode**:
336
- * **Left**: [Barrage List] + [Chat Input Box].
337
- * **Right**: [Gift] [Apply for Co-guesting].
338
-
339
- ### 4. Home Layout & Interaction
340
-
341
- #### A. Home Reference Layout
342
- ```
343
- ┌─────────────────────────────┐
344
- │ AtomicXCore Live │
345
- │ │
346
- │ Live Room ID │
347
- │ ┌─────────────────────────┐│
348
- │ │ live_000001 ││ ← Input Box (with left padding, semi-transparent background)
349
- │ └─────────────────────────┘│
350
- │ │
351
- │ Host Broadcasting │
352
- │ (Click to login as anchor001)│
353
- │ │
354
- │ Audience Viewing │
355
- │ (Click to login as user001) │
356
- │ │
357
- │ [ 📋 Live List ] │
358
- └─────────────────────────────┘
359
- ```
360
-
361
- #### B. Implicit Login Flow
362
- **No separate login button is required on the home page**; login is automatically completed when a function button is clicked:
363
- * Click "Host Broadcasting" → Login using `anchor001` → Jump to host page.
364
- * Click "Audience Viewing" → Login using `user001` → Jump to audience page.
365
- * Click "Live List" → Login using `user001` → Jump to list page.
366
-
367
- ---
368
-
369
- ## 🎯 Implementation Details
370
-
371
- ### 1. Host Broadcasting (`host_streaming`)
372
- * **Core**: `LiveCoreView(viewType: .pushView)`
373
- * **Flow**: `LiveListStore.shared.createLive()`
374
- * **Cleanup**: `deinit` or when exiting the page, `endLive()` MUST be called.
375
-
376
- ### 2. Audience Viewing (`audience_streaming`)
377
- * **Core**: `LiveCoreView(viewType: .playView)`
378
- * **Flow**: `LiveListStore.shared.joinLive()`
379
- * **Cleanup**: `deinit` or when exiting the page, `leaveLive()` MUST be called.
380
-
381
- ### 3. Live List (`live_list`)
382
- * **Core**: `LiveListStore.shared.fetchLiveList()` + `UITableView/UICollectionView`
383
- * **Data**: Subscribe to `liveState.liveList`.
384
- * **Navigation**: Clicking a list item navigates to the audience page, passing the `liveID`.
385
-
386
- ### 4. Co-guest & Co-host Interaction Specifications (`co_guest` & `co_host`)
387
-
388
- #### A. Audience Co-guesting (Host passively receives)
389
- * **Host UI**: ❌ **Strictly prohibited** to display a "Co-guest Application" list button in the bottom toolbar or anywhere else.
390
- * **Interaction Logic**: Upon receiving a co-guest application callback, pop up a dialog (`UIAlertController`) directly in the center of the screen:
391
- * **Title**: Co-guest Application
392
- * **Content**: Received a co-guest application from audience [Nickname], accept?
393
- * **Operations**: [Decline] [Accept]
394
-
395
- #### B. Host Co-hosting Panel (Pops up when clicking bottom [Co-host] button)
396
- * **Presentation**: Use a bottom floating panel (`UIView` animated up); prohibit `UIAlertController`.
397
- * **UI Layout (Strictly follow illustration)**:
398
- ```
399
- ┌─────────────────────────────────────┐
400
- │ │
401
- │ Initiate Connection [🚪 End Co-host] │ ← Red text
402
- │ │
403
- │ Connected (2 persons) │
404
- │ ┌─────────────────────────────────┐│
405
- │ │ [👤] Li Ziming [💎20] PK... ││ ← Connected users
406
- │ │ [👤] Filinna [💎32] PK... ││
407
- │ └─────────────────────────────────┘│
408
- ├─────────────────────────────────────┤
409
- │ Other Live Users │
410
- │ ┌─────────────────────────────────┐│
411
- │ │ [👤] Li Ziming [💎20] [Cancel Inv] ││ ← Gray-black background button
412
- │ │ [👤] Filinna [💎32] [Invite] ││ ← Blue background button
413
- │ │ [👤] Tie Zhu [💗99] [Invite] ││
414
- │ └─────────────────────────────────┘│
415
- └─────────────────────────────────────┘
416
- ```
417
-
418
- #### C. PK Button Interaction Constraints
419
- * **Pre-check**: When clicking the bottom [PK] button, current connection status must be checked (`CoHostStore.shared.connectedUsers.isEmpty`).
420
- * **Status Handling**:
421
- * **Not connected**: ❌ Prohibit jump, show Toast: `"Please initiate co-hosting first"`.
422
- * **Connected**: ✅ Pop up PK invitation panel.
423
-
424
- ---
425
-
426
- ## 📋 Agent Final Checklist
427
-
428
- ### 🚨 Must-do Items (None can be omitted)
429
- - [ ] **🔴 Compilation Verification**: Executed the following command and output contains **BUILD SUCCEEDED** (This item must be explicitly listed in the TODO task)
430
- ```bash
431
- xcodebuild build -scheme <ProjectName> -workspace <ProjectName>.xcworkspace -destination 'generic/platform=iOS' CODE_SIGNING_ALLOWED=NO 2>&1 | grep -E "(error:|warning:.*\.swift|BUILD SUCCEEDED|BUILD FAILED)" | head -30
432
- ```
433
- - [ ] **Credential Injection**: Called `get_usersig` to generate test credentials.
434
- - [ ] **Dependencies Complete**: Checked `Podfile` and Info.plist permissions.
435
-
436
- ### Code Quality Check
437
- - [ ] **API Accuracy**: Imports not modified, APIs not fabricated, `LiveInfo` field names verified.
438
- - [ ] **Timeout Compliance**: Co-guesting 5-1800s, Co-hosting ≤30s.
439
- - [ ] **Extra Feature Compliance**: Audio enums correct, beauty range 0-9, barrage layout overlays, and keyboard adaptation.
440
- - [ ] **Gift Compliance**: Full-screen gift animations implemented on both host and audience sides.
441
-
442
- ---
443
-
444
- ## 🚨 Security Reminder (Code Comment Template)
445
-
446
- ```swift
447
- /**
448
- * ⚠️ Test Credential Warning
449
- * - Current userSig is automatically generated by development tools and is valid for 7 days.
450
- * - ❌ PROHIBITED from generating userSig on the client side in production.
451
- * - ✅ userSig MUST be generated on a backend service before official launch.
452
- * - Reference: https://trtc.io/document/35166?product=live&menulabel=uikit&platform=ios
453
- */
454
- ```