@tencentcloud/sdk-mcp 1.3.9 → 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 (510) hide show
  1. package/index.js +1 -1
  2. package/index.js.map +1 -1
  3. package/package.json +2 -2
  4. package/resource/doc/{tuicallkit/android/faq.md → callkit/faq/android-faq.md} +75 -308
  5. package/resource/doc/{tuicallkit/faq/common/error_code.md → callkit/faq/common/error-code.md} +2 -2
  6. package/resource/doc/{tuicallkit/flutter/faq.md → callkit/faq/flutter-faq.md} +83 -315
  7. package/resource/doc/{tuicallkit/iOS/faq.md → callkit/faq/ios-faq.md} +76 -313
  8. package/resource/doc/{tuicallkit/vue/faq.md → callkit/faq/web-faq.md} +78 -311
  9. package/resource/doc/callkit/preset/android/api.md +330 -0
  10. package/resource/doc/{tuicallkit → callkit/preset}/android/integration.md +63 -420
  11. package/resource/doc/callkit/preset/flutter/api.md +401 -0
  12. package/resource/doc/{tuicallkit → callkit/preset}/flutter/integration.md +53 -273
  13. package/resource/doc/callkit/preset/ios/api.md +282 -0
  14. package/resource/doc/{tuicallkit/iOS → callkit/preset/ios}/integration.md +39 -120
  15. package/resource/doc/callkit/preset/react/api.md +600 -0
  16. package/resource/doc/{tuicallkit → callkit/preset}/react/integration.md +6 -6
  17. package/resource/doc/callkit/preset/vue/api.md +600 -0
  18. package/resource/doc/{tuicallkit → callkit/preset}/vue/integration.md +5 -5
  19. package/resource/doc/{chatuikit → chatkit}/android/faq.md +29 -37
  20. package/resource/doc/{chatuikit → chatkit}/android/features/theme.md +22 -166
  21. package/resource/doc/{chatuikit → chatkit}/android/integration.md +30 -126
  22. package/resource/doc/chatkit/faq/android_sdk/client-api.md +280 -0
  23. package/resource/doc/{chatuikit → chatkit}/faq/common/product.md +4 -17
  24. package/resource/doc/{chatuikit → chatkit}/faq/common/server.md +1 -2
  25. package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +183 -0
  26. package/resource/doc/{chatuikit → chatkit}/faq/flutter_sdk/faq.md +3 -3
  27. package/resource/doc/chatkit/faq/ios_sdk/client-api.md +279 -0
  28. package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/error_code.md +1 -1
  29. package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/faq.md +4 -4
  30. package/resource/doc/{chatuikit → chatkit}/flutter/features/theme.md +22 -166
  31. package/resource/doc/{chatuikit → chatkit}/flutter/integration.md +20 -95
  32. package/resource/doc/{chatuikit/iOS → chatkit/ios}/faq.md +29 -37
  33. package/resource/doc/{chatuikit/iOS → chatkit/ios}/features/theme.md +27 -176
  34. package/resource/doc/{chatuikit/iOS → chatkit/ios}/integration.md +78 -280
  35. package/resource/doc/{chatuikit/vue → chatkit/react}/components/avatar.md +0 -1
  36. package/resource/doc/{chatuikit → chatkit}/react/components/chat-header.md +7 -12
  37. package/resource/doc/{chatuikit → chatkit}/react/components/chat-setting.md +10 -17
  38. package/resource/doc/{chatuikit → chatkit}/react/components/chat.md +1 -1
  39. package/resource/doc/{chatuikit → chatkit}/react/components/component-list.md +0 -1
  40. package/resource/doc/{chatuikit → chatkit}/react/components/contact-list.md +122 -703
  41. package/resource/doc/chatkit/react/components/conversation-actions.md +174 -0
  42. package/resource/doc/chatkit/react/components/conversation-list.md +333 -0
  43. package/resource/doc/chatkit/react/components/conversation-preview.md +116 -0
  44. package/resource/doc/chatkit/react/components/conversation-search.md +57 -0
  45. package/resource/doc/{chatuikit → chatkit}/react/components/message-input.md +36 -186
  46. package/resource/doc/{chatuikit → chatkit}/react/components/message-list.md +21 -113
  47. package/resource/doc/chatkit/react/components/search.md +282 -0
  48. package/resource/doc/{chatuikit → chatkit}/react/components/tuikit.md +5 -26
  49. package/resource/doc/{chatuikit → chatkit}/react/integration.md +37 -104
  50. package/resource/doc/{chatuikit/react → chatkit/vue}/components/avatar.md +0 -1
  51. package/resource/doc/{chatuikit → chatkit}/vue/components/chat-header.md +7 -13
  52. package/resource/doc/{chatuikit → chatkit}/vue/components/chat-setting.md +13 -18
  53. package/resource/doc/{chatuikit → chatkit}/vue/components/chat.md +1 -2
  54. package/resource/doc/{chatuikit → chatkit}/vue/components/component-list.md +0 -1
  55. package/resource/doc/chatkit/vue/components/contact-list.md +271 -0
  56. package/resource/doc/chatkit/vue/components/conversation-actions.md +228 -0
  57. package/resource/doc/{chatuikit → chatkit}/vue/components/conversation-list.md +42 -316
  58. package/resource/doc/chatkit/vue/components/conversation-preview.md +213 -0
  59. package/resource/doc/chatkit/vue/components/conversation-search.md +50 -0
  60. package/resource/doc/{chatuikit → chatkit}/vue/components/message-input.md +1 -23
  61. package/resource/doc/{chatuikit → chatkit}/vue/components/message-list.md +23 -134
  62. package/resource/doc/{chatuikit → chatkit}/vue/components/search.md +73 -640
  63. package/resource/doc/chatkit/vue/components/tuikit.md +45 -0
  64. package/resource/doc/{chatuikit → chatkit}/vue/components/userpicker.md +4 -4
  65. package/resource/doc/{chatuikit → chatkit}/vue/faq.md +1 -1
  66. package/resource/doc/{chatuikit → chatkit}/vue/integration.md +53 -121
  67. package/resource/doc/livekit/core-sdk/live/android/api-reference/AudioEffectStore.md +283 -0
  68. package/resource/doc/livekit/core-sdk/live/android/api-reference/BarrageStore.md +148 -0
  69. package/resource/doc/livekit/core-sdk/live/android/api-reference/BattleStore.md +316 -0
  70. package/resource/doc/livekit/core-sdk/live/android/api-reference/CameraView.md +57 -0
  71. package/resource/doc/livekit/core-sdk/live/android/api-reference/CoGuestStore.md +419 -0
  72. package/resource/doc/livekit/core-sdk/live/android/api-reference/CoHostStore.md +325 -0
  73. package/resource/doc/livekit/core-sdk/live/android/api-reference/DeviceStore.md +436 -0
  74. package/resource/doc/livekit/core-sdk/live/android/api-reference/GiftStore.md +165 -0
  75. package/resource/doc/livekit/core-sdk/live/android/api-reference/LikeStore.md +49 -0
  76. package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveAudienceStore.md +239 -0
  77. package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveCoreView.md +74 -0
  78. package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveSeatStore.md +417 -0
  79. package/resource/doc/livekit/core-sdk/live/android/api-reference/LoginStore.md +207 -0
  80. package/resource/doc/livekit/{live → core-sdk/live}/android/live-audience-list.md +17 -88
  81. package/resource/doc/livekit/{live → core-sdk/live}/android/live-audio-effect.md +34 -192
  82. package/resource/doc/livekit/{live → core-sdk/live}/android/live-barrage.md +26 -139
  83. package/resource/doc/livekit/{live → core-sdk/live}/android/live-base-beauty.md +16 -99
  84. package/resource/doc/livekit/{live → core-sdk/live}/android/live-co-guest-interaction.md +54 -161
  85. package/resource/doc/livekit/{live → core-sdk/live}/android/live-gift.md +75 -455
  86. package/resource/doc/livekit/{live → core-sdk/live}/android/live-host-interaction.md +91 -338
  87. package/resource/doc/livekit/{live → core-sdk/live}/android/live-integration.md +108 -492
  88. package/resource/doc/livekit/{live → core-sdk/live}/android/live-live-list.md +27 -165
  89. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/AudioEffectStore.md +279 -0
  90. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BarrageStore.md +158 -0
  91. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BaseBeautyStore.md +155 -0
  92. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BattleStore.md +304 -0
  93. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoGuestStore.md +394 -0
  94. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoHostStore.md +303 -0
  95. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/DeviceStore.md +410 -0
  96. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/GiftStore.md +160 -0
  97. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LikeStore.md +51 -0
  98. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveAudienceStore.md +231 -0
  99. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveCoreView.md +143 -0
  100. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveSeatStore.md +375 -0
  101. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LoginStore.md +170 -0
  102. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audience-list.md +13 -91
  103. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audio-effect.md +34 -177
  104. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-barrage.md +18 -102
  105. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-base-beauty.md +24 -164
  106. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-co-guest-interaction.md +56 -161
  107. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-gift.md +66 -460
  108. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-host-interaction.md +117 -364
  109. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-integration.md +160 -543
  110. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-live-list.md +22 -161
  111. package/resource/doc/livekit/core-sdk/live/ios/api-reference/AudioEffectStore.md +287 -0
  112. package/resource/doc/livekit/core-sdk/live/ios/api-reference/BarrageStore.md +165 -0
  113. package/resource/doc/livekit/core-sdk/live/ios/api-reference/BaseBeautyStore.md +143 -0
  114. package/resource/doc/livekit/core-sdk/live/ios/api-reference/BattleStore.md +298 -0
  115. package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoGuestStore.md +349 -0
  116. package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoHostStore.md +297 -0
  117. package/resource/doc/livekit/core-sdk/live/ios/api-reference/DeviceStore.md +471 -0
  118. package/resource/doc/livekit/core-sdk/live/ios/api-reference/GiftStore.md +179 -0
  119. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LikeStore.md +49 -0
  120. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveAudienceStore.md +238 -0
  121. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveCoreView.md +74 -0
  122. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveSeatStore.md +412 -0
  123. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LoginStore.md +173 -0
  124. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audience-list.md +23 -96
  125. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audio-effect.md +33 -195
  126. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-barrage.md +35 -150
  127. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-base-beauty.md +20 -105
  128. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-co-guest-interaction.md +35 -140
  129. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-gift.md +77 -457
  130. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-host-interaction.md +70 -317
  131. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-integration.md +90 -473
  132. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-live-list.md +28 -163
  133. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audience-list.md +17 -88
  134. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audio-effect.md +34 -192
  135. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-barrage.md +26 -139
  136. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-co-guest-interaction.md +53 -262
  137. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-gift.md +75 -455
  138. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-host-interaction.md +60 -272
  139. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-integration.md +63 -440
  140. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-room-list.md +23 -151
  141. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-audience-list.md +13 -91
  142. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-audio-effect.md +34 -177
  143. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-barrage.md +18 -102
  144. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-co-guest-interaction.md +44 -201
  145. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-gift.md +66 -460
  146. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-integration.md +57 -419
  147. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-room-list.md +24 -157
  148. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audience-list.md +23 -96
  149. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audio-effect.md +33 -195
  150. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-barrage.md +35 -150
  151. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-co-guest-interaction.md +45 -254
  152. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-gift.md +77 -457
  153. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-host-interaction.md +52 -261
  154. package/resource/doc/livekit/core-sdk/voice/ios/voice-integration.md +478 -0
  155. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-room-list.md +36 -167
  156. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-audience-list.md +15 -45
  157. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-audio-effect.md +23 -137
  158. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-barrage.md +25 -131
  159. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-co-guest-interaction.md +70 -366
  160. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-gift.md +70 -424
  161. package/resource/doc/livekit/core-sdk/voice/uni-app/voice-integration.md +323 -0
  162. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-room-list.md +24 -116
  163. package/resource/doc/livekit/faq/common/{error_code.md → error-code.md} +2 -3
  164. package/resource/doc/livekit/preset/live/vue/api-reference/index.md +780 -0
  165. package/resource/doc/livekit/preset/live/vue/components/barrage.md +291 -0
  166. package/resource/doc/livekit/{live → preset/live}/vue/components/co-guest-panel.md +9 -48
  167. package/resource/doc/livekit/{live → preset/live}/vue/components/live-audience-list.md +27 -145
  168. package/resource/doc/livekit/{live → preset/live}/vue/components/live-scene-panel.md +13 -76
  169. package/resource/doc/livekit/{live → preset/live}/vue/components/live-view.md +33 -224
  170. package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +211 -0
  171. package/resource/doc/livekit/preset/live/vue/faq.md +1 -0
  172. package/resource/doc/livekit/preset/live/vue/live-list-integration.md +244 -0
  173. package/resource/doc/livekit/preset/live/vue/live-player-desk-integration.md +301 -0
  174. package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +307 -0
  175. package/resource/doc/livekit/preset/live/vue/live-pusher-integration.md +754 -0
  176. package/resource/doc/roomkit/android/features/call-user-to-room.md +234 -0
  177. package/resource/doc/roomkit/android/features/room-participant-state.md +850 -0
  178. package/resource/doc/roomkit/android/features/room-state.md +358 -0
  179. package/resource/doc/roomkit/android/features/schedule-room.md +336 -0
  180. package/resource/doc/roomkit/android/integration.md +433 -0
  181. package/resource/doc/roomkit/{common/error_code.md → faq/common/error-code.md} +1 -1
  182. package/resource/doc/roomkit/flutter/features/call-user-to-room.md +228 -0
  183. package/resource/doc/roomkit/flutter/features/room-participant-state.md +796 -0
  184. package/resource/doc/roomkit/flutter/features/room-state.md +324 -0
  185. package/resource/doc/roomkit/flutter/features/schedule-room.md +324 -0
  186. package/resource/doc/roomkit/flutter/integration.md +405 -0
  187. package/resource/doc/roomkit/ios/features/call-user-to-room.md +226 -0
  188. package/resource/doc/roomkit/ios/features/room-participant-state.md +821 -0
  189. package/resource/doc/roomkit/ios/features/room-state.md +320 -0
  190. package/resource/doc/roomkit/ios/features/schedule-room.md +318 -0
  191. package/resource/doc/roomkit/ios/integration.md +384 -0
  192. package/resource/doc/roomkit/vue/faq.md +1 -0
  193. package/resource/doc/roomkit/vue/features/call-user-to-room.md +17 -53
  194. package/resource/doc/roomkit/vue/features/device-detection.md +30 -48
  195. package/resource/doc/roomkit/vue/features/device-state.md +24 -44
  196. package/resource/doc/roomkit/vue/features/free-beauty-panel.md +13 -36
  197. package/resource/doc/roomkit/vue/features/room-chat.md +31 -89
  198. package/resource/doc/roomkit/vue/features/room-participant-state.md +28 -50
  199. package/resource/doc/roomkit/vue/features/room-state.md +25 -36
  200. package/resource/doc/roomkit/vue/features/room-view.md +30 -127
  201. package/resource/doc/roomkit/vue/features/schedule-room.md +9 -40
  202. package/resource/doc/roomkit/vue/features/screen-share.md +22 -90
  203. package/resource/doc/roomkit/vue/features/virtual-background.md +13 -34
  204. package/resource/doc/roomkit/vue/integration.md +21 -80
  205. package/resource/doc/rtcengine/faq/common/userSig.md +17 -141
  206. package/resource/doc/rtcengine/faq/web/web.md +15 -22
  207. package/resource/doc/rtcengine/web/api.md +17 -21
  208. package/resource/doc/rtcengine/web/how_to_integrated_web_sdk.md +4 -10
  209. package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +4 -8
  210. package/resource/doc/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +3 -3
  211. package/resource/doc/rtcengine/web/plugin/21-advanced-auto-play-policy.md +2 -3
  212. package/resource/doc/rtcengine/web/plugin/22-advanced-audio-mixer.md +6 -6
  213. package/resource/doc/rtcengine/web/plugin/23-advanced-support-detection.md +2 -2
  214. package/resource/doc/rtcengine/web/plugin/24-advanced-network-quality.md +2 -4
  215. package/resource/doc/rtcengine/web/plugin/25-advanced-device-change.md +1 -2
  216. package/resource/doc/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +2 -6
  217. package/resource/doc/rtcengine/web/plugin/27-advanced-small-stream.md +13 -14
  218. package/resource/doc/rtcengine/web/plugin/28-advanced-beauty.md +10 -90
  219. package/resource/doc/rtcengine/web/plugin/31-advanced-plugins-overview.md +5 -8
  220. package/resource/doc/rtcengine/web/plugin/34-advanced-proxy.md +31 -35
  221. package/resource/doc/rtcengine/web/plugin/35-advanced-ai-denoiser.md +0 -2
  222. package/resource/doc/rtcengine/web/plugin/36-advanced-virtual-background.md +7 -49
  223. package/resource/doc/rtcengine/web/plugin/37-advanced-voice-changer.md +1 -1
  224. package/resource/doc/rtcengine/web/plugin/39-advanced-video-decoder.md +0 -3
  225. package/resource/doc/rtcengine/web/plugin/40-advanced-video-mixer.md +20 -20
  226. package/resource/doc/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +1 -1
  227. package/resource/doc/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +4 -4
  228. package/resource/doc/rtcengine/web/plugin/43-advanced-face-detection.md +3 -3
  229. package/resource/doc/trtc/C++/ITRTCCloud.md +718 -2847
  230. package/resource/doc/trtc/C++/ITRTCStatistics.md +53 -308
  231. package/resource/doc/trtc/C++/ITXAudioEffectManager.md +207 -1041
  232. package/resource/doc/trtc/C++/ITXDeviceManager.md +127 -768
  233. package/resource/doc/trtc/C++/TRTCCloudCallback.md +634 -2259
  234. package/resource/doc/trtc/C++/TRTCTypeDef.md +726 -3465
  235. package/resource/doc/trtc/C++/TXLiteAVCode.md +117 -916
  236. package/resource/doc/trtc/android/TRTCCloud.md +638 -2612
  237. package/resource/doc/trtc/android/TRTCCloudDef.md +769 -3697
  238. package/resource/doc/trtc/android/TRTCCloudListener.md +609 -2070
  239. package/resource/doc/trtc/android/TRTCStatistics.md +48 -278
  240. package/resource/doc/trtc/android/TXAudioEffectManager.md +207 -1049
  241. package/resource/doc/trtc/android/TXBeautyManager.md +127 -704
  242. package/resource/doc/trtc/android/TXDeviceManager.md +51 -318
  243. package/resource/doc/trtc/android/TXLiteAVCode.md +115 -900
  244. package/resource/doc/trtc/iOS/TRTCCloud.md +726 -2930
  245. package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +580 -2099
  246. package/resource/doc/trtc/iOS/TRTCStatistics.md +48 -278
  247. package/resource/doc/trtc/iOS/TXAudioEffectManager.md +179 -896
  248. package/resource/doc/trtc/iOS/TXBeautyManager.md +128 -710
  249. package/resource/doc/trtc/iOS/TXDeviceManager.md +129 -772
  250. package/resource/doc/trtc/iOS/TXLiteAVCode.md +117 -915
  251. package/resource/doc/trtc/iOS/TXLiveSDKTypeDef.md +747 -3559
  252. package/server.js +1 -5
  253. package/server.js.map +1 -1
  254. package/tools/call/get_callkit_api.js +32 -0
  255. package/tools/call/get_callkit_api.js.map +1 -0
  256. package/tools/call/get_native_call_uikit_integration.js +34 -0
  257. package/tools/call/get_native_call_uikit_integration.js.map +1 -0
  258. package/tools/call/{get-web-call-integration.js → get_web_call_uikit_integration.js} +13 -8
  259. package/tools/call/get_web_call_uikit_integration.js.map +1 -0
  260. package/tools/chat/get_native_chat_uikit_feature_detail.js +34 -0
  261. package/tools/chat/get_native_chat_uikit_feature_detail.js.map +1 -0
  262. package/tools/chat/get_native_chat_uikit_integration.js +45 -0
  263. package/tools/chat/get_native_chat_uikit_integration.js.map +1 -0
  264. package/tools/chat/get_web_chat_uikit_component_detail.js +34 -0
  265. package/tools/chat/get_web_chat_uikit_component_detail.js.map +1 -0
  266. package/tools/chat/get_web_chat_uikit_integration.js +45 -0
  267. package/tools/chat/get_web_chat_uikit_integration.js.map +1 -0
  268. package/tools/common/get_faq.js +265 -0
  269. package/tools/common/get_faq.js.map +1 -0
  270. package/tools/common/{get-usersig.js → get_usersig.js} +6 -3
  271. package/tools/common/get_usersig.js.map +1 -0
  272. package/tools/common/present_framework_choice.js +63 -0
  273. package/tools/common/present_framework_choice.js.map +1 -0
  274. package/tools/definitions/get_callkit_api_def.js +28 -0
  275. package/tools/definitions/get_callkit_api_def.js.map +1 -0
  276. package/tools/definitions/get_faq_def.js +18 -19
  277. package/tools/definitions/get_faq_def.js.map +1 -1
  278. package/tools/definitions/get_native_call_uikit_integration_def.js +15 -34
  279. package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
  280. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +31 -0
  281. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +1 -0
  282. package/tools/definitions/get_native_chat_uikit_integration_def.js +16 -41
  283. package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
  284. package/tools/definitions/get_native_livekit_core_features_def.js +33 -0
  285. package/tools/definitions/get_native_livekit_core_features_def.js.map +1 -0
  286. package/tools/definitions/get_native_livekit_core_integration_def.js +33 -0
  287. package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -0
  288. package/tools/definitions/get_native_trtc_sdk_docs_def.js +32 -0
  289. package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +1 -0
  290. package/tools/definitions/get_usersig_def.js +17 -24
  291. package/tools/definitions/get_usersig_def.js.map +1 -1
  292. package/tools/definitions/get_web_call_uikit_integration_def.js +15 -7
  293. package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
  294. package/tools/definitions/get_web_chat_uikit_component_detail_def.js +17 -49
  295. package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +1 -1
  296. package/tools/definitions/get_web_chat_uikit_integration_def.js +16 -19
  297. package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
  298. package/tools/definitions/get_web_live_uikit_integration_def.js +13 -18
  299. package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
  300. package/tools/definitions/get_web_livekit_api_def.js +27 -0
  301. package/tools/definitions/get_web_livekit_api_def.js.map +1 -0
  302. package/tools/definitions/get_web_livekit_component_detail_def.js +29 -0
  303. package/tools/definitions/get_web_livekit_component_detail_def.js.map +1 -0
  304. package/tools/definitions/get_web_room_uikit_integration_def.js +13 -46
  305. package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
  306. package/tools/definitions/get_web_roomkit_feature_detail_def.js +30 -0
  307. package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +1 -0
  308. package/tools/definitions/get_web_trtc_sdk_api_def.js +25 -0
  309. package/tools/definitions/get_web_trtc_sdk_api_def.js.map +1 -0
  310. package/tools/definitions/get_web_trtc_sdk_integration_def.js +25 -0
  311. package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +1 -0
  312. package/tools/definitions/get_web_trtc_sdk_plugin_def.js +25 -0
  313. package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +1 -0
  314. package/tools/definitions/present_framework_choice_def.js +23 -12
  315. package/tools/definitions/present_framework_choice_def.js.map +1 -1
  316. package/tools/index.js +47 -61
  317. package/tools/index.js.map +1 -1
  318. package/tools/live/get_native_livekit_core_features.js +65 -0
  319. package/tools/live/get_native_livekit_core_features.js.map +1 -0
  320. package/tools/live/get_native_livekit_core_integration.js +59 -0
  321. package/tools/live/get_native_livekit_core_integration.js.map +1 -0
  322. package/tools/live/get_web_live_uikit_integration.js +48 -0
  323. package/tools/live/get_web_live_uikit_integration.js.map +1 -0
  324. package/tools/live/get_web_livekit_api.js +32 -0
  325. package/tools/live/get_web_livekit_api.js.map +1 -0
  326. package/tools/live/get_web_livekit_component_detail.js +34 -0
  327. package/tools/live/get_web_livekit_component_detail.js.map +1 -0
  328. package/tools/room/{get-web-room-integration.js → get_web_room_uikit_integration.js} +13 -14
  329. package/tools/room/get_web_room_uikit_integration.js.map +1 -0
  330. package/tools/room/{get-web-room-feature-detail.js → get_web_roomkit_feature_detail.js} +30 -31
  331. package/tools/room/get_web_roomkit_feature_detail.js.map +1 -0
  332. package/tools/rtcengine/get_web_trtc_sdk_api.js +31 -0
  333. package/tools/rtcengine/get_web_trtc_sdk_api.js.map +1 -0
  334. package/tools/rtcengine/get_web_trtc_sdk_integration.js +31 -0
  335. package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +1 -0
  336. package/tools/rtcengine/get_web_trtc_sdk_plugin.js +31 -0
  337. package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +1 -0
  338. package/tools/trtc/get_native_trtc_sdk_docs.js +73 -0
  339. package/tools/trtc/get_native_trtc_sdk_docs.js.map +1 -0
  340. package/utils/generate-structured-result.js +61 -17
  341. package/utils/generate-structured-result.js.map +1 -1
  342. package/utils/report-cls-client.js +12 -1
  343. package/utils/report-cls-client.js.map +1 -1
  344. package/utils/report-es-client.js +1 -1
  345. package/resource/doc/chatuikit/android/workflow.md +0 -713
  346. package/resource/doc/chatuikit/faq/android_sdk/client-api.md +0 -1376
  347. package/resource/doc/chatuikit/faq/flutter_sdk/client-api.md +0 -860
  348. package/resource/doc/chatuikit/faq/ios_sdk/client-api.md +0 -1371
  349. package/resource/doc/chatuikit/flutter/workflow.md +0 -816
  350. package/resource/doc/chatuikit/iOS/workflow.md +0 -0
  351. package/resource/doc/chatuikit/react/components/conversation-list.md +0 -765
  352. package/resource/doc/chatuikit/react/components/search.md +0 -885
  353. package/resource/doc/chatuikit/react/create-group.md +0 -22
  354. package/resource/doc/chatuikit/react/init.md +0 -25
  355. package/resource/doc/chatuikit/react/workflow.md +0 -254
  356. package/resource/doc/chatuikit/uniapp-app/faq.md +0 -0
  357. package/resource/doc/chatuikit/uniapp-app/integration.md +0 -619
  358. package/resource/doc/chatuikit/uniapp-app/workflow.md +0 -576
  359. package/resource/doc/chatuikit/vue/components/contact-list.md +0 -679
  360. package/resource/doc/chatuikit/vue/components/tuikit.md +0 -110
  361. package/resource/doc/chatuikit/vue/create-group.md +0 -26
  362. package/resource/doc/chatuikit/vue/init.md +0 -35
  363. package/resource/doc/chatuikit/vue/workflow.md +0 -395
  364. package/resource/doc/livekit/live/android/workflow.md +0 -322
  365. package/resource/doc/livekit/live/flutter/workflow.md +0 -353
  366. package/resource/doc/livekit/live/ios/workflow.md +0 -352
  367. package/resource/doc/livekit/live/vue/components/barrage.md +0 -615
  368. package/resource/doc/livekit/live/vue/components/stream-mixer.md +0 -442
  369. package/resource/doc/livekit/live/vue/faq.md +0 -0
  370. package/resource/doc/livekit/live/vue/live-list-integration.md +0 -195
  371. package/resource/doc/livekit/live/vue/live-player-desk-integration.md +0 -293
  372. package/resource/doc/livekit/live/vue/live-player-h5-integration.md +0 -381
  373. package/resource/doc/livekit/live/vue/live-pusher-integration.md +0 -598
  374. package/resource/doc/livekit/live/vue/states/live-state.md +0 -2656
  375. package/resource/doc/livekit/live/vue/workflow.md +0 -219
  376. package/resource/doc/livekit/voice/android/workflow.md +0 -333
  377. package/resource/doc/livekit/voice/flutter/workflow.md +0 -359
  378. package/resource/doc/livekit/voice/ios/voice-integration.md +0 -853
  379. package/resource/doc/livekit/voice/ios/workflow.md +0 -358
  380. package/resource/doc/livekit/voice/uni-app/voice-integration.md +0 -613
  381. package/resource/doc/livekit/voice/uni-app/workflow.md +0 -369
  382. package/resource/doc/native_live/android/V2TXLiveCode_api_android.md +0 -334
  383. package/resource/doc/native_live/android/V2TXLiveDef_api_android.md +0 -434
  384. package/resource/doc/native_live/android/V2TXLivePlayerObserver_api_android.md +0 -685
  385. package/resource/doc/native_live/android/V2TXLivePlayer_api_android.md +0 -712
  386. package/resource/doc/native_live/android/V2TXLivePremier_api_android.md +0 -284
  387. package/resource/doc/native_live/android/V2TXLivePusherObserver_api_android.md +0 -849
  388. package/resource/doc/native_live/android/V2TXLivePusher_api_android.md +0 -1046
  389. package/resource/doc/native_live/flutter/V2TXLiveCode_api_flutter.md +0 -460
  390. package/resource/doc/native_live/flutter/V2TXLiveDef_api_flutter.md +0 -558
  391. package/resource/doc/native_live/flutter/V2TXLivePlayerObserver_api_flutter.md +0 -879
  392. package/resource/doc/native_live/flutter/V2TXLivePlayer_api_flutter.md +0 -668
  393. package/resource/doc/native_live/flutter/V2TXLivePremier_api_flutter.md +0 -456
  394. package/resource/doc/native_live/flutter/V2TXLivePusherObserver_api_flutter.md +0 -332
  395. package/resource/doc/native_live/flutter/V2TXLivePusher_api_flutter.md +0 -748
  396. package/resource/doc/native_live/iOS/V2TXLiveCode_api_iOS.md +0 -328
  397. package/resource/doc/native_live/iOS/V2TXLiveDef_api_iOS.md +0 -505
  398. package/resource/doc/native_live/iOS/V2TXLivePlayerObserver_api_iOS.md +0 -507
  399. package/resource/doc/native_live/iOS/V2TXLivePlayer_api_iOS.md +0 -676
  400. package/resource/doc/native_live/iOS/V2TXLivePremier_api_iOS.md +0 -284
  401. package/resource/doc/native_live/iOS/V2TXLivePusherObserver_api_iOS.md +0 -820
  402. package/resource/doc/native_live/iOS/V2TXLivePusher_api_iOS.md +0 -1065
  403. package/resource/doc/roomkit/vue/features/workflow.md +0 -553
  404. package/resource/doc/roomkit/vue/workflow.md +0 -733
  405. package/resource/doc/tuicallkit/android/workflow.md +0 -432
  406. package/resource/doc/tuicallkit/faq/android_sdk/call-observer-api.md +0 -786
  407. package/resource/doc/tuicallkit/faq/android_sdk/callkit-api.md +0 -663
  408. package/resource/doc/tuicallkit/faq/flutter_sdk/call-define-api.md +0 -932
  409. package/resource/doc/tuicallkit/faq/flutter_sdk/call-observer-api.md +0 -926
  410. package/resource/doc/tuicallkit/faq/flutter_sdk/callkit-api.md +0 -452
  411. package/resource/doc/tuicallkit/faq/ios_sdk/call-observer-api.md +0 -779
  412. package/resource/doc/tuicallkit/faq/ios_sdk/callkit-api.md +0 -635
  413. package/resource/doc/tuicallkit/flutter/workflow.md +0 -331
  414. package/resource/doc/tuicallkit/react/api.md +0 -1512
  415. package/resource/doc/tuicallkit/react/faq.md +0 -986
  416. package/resource/doc/tuicallkit/vue/api.md +0 -1512
  417. package/tools/call/get-native-call-integration.js +0 -43
  418. package/tools/call/get-native-call-integration.js.map +0 -1
  419. package/tools/call/get-web-call-api.js +0 -27
  420. package/tools/call/get-web-call-api.js.map +0 -1
  421. package/tools/call/get-web-call-integration.js.map +0 -1
  422. package/tools/chat/get-native-chat-feature-detail.js +0 -30
  423. package/tools/chat/get-native-chat-feature-detail.js.map +0 -1
  424. package/tools/chat/get-native-chat-integration.js +0 -45
  425. package/tools/chat/get-native-chat-integration.js.map +0 -1
  426. package/tools/chat/get-web-chat-component-detail.js +0 -31
  427. package/tools/chat/get-web-chat-component-detail.js.map +0 -1
  428. package/tools/chat/get-web-chat-integration.js +0 -45
  429. package/tools/chat/get-web-chat-integration.js.map +0 -1
  430. package/tools/chat/get-web-chat-uikit-init.js +0 -28
  431. package/tools/chat/get-web-chat-uikit-init.js.map +0 -1
  432. package/tools/chat/get-web-create-group-doc.js +0 -28
  433. package/tools/chat/get-web-create-group-doc.js.map +0 -1
  434. package/tools/common/get-faq.js +0 -91
  435. package/tools/common/get-faq.js.map +0 -1
  436. package/tools/common/get-usersig.js.map +0 -1
  437. package/tools/common/present-framework-choice.js +0 -16
  438. package/tools/common/present-framework-choice.js.map +0 -1
  439. package/tools/common/present-scenario-choice.js +0 -16
  440. package/tools/common/present-scenario-choice.js.map +0 -1
  441. package/tools/common/record-prompt.js +0 -55
  442. package/tools/common/record-prompt.js.map +0 -1
  443. package/tools/common/record-result.js +0 -60
  444. package/tools/common/record-result.js.map +0 -1
  445. package/tools/definitions/get_native_chat_feature_detail_def.js +0 -32
  446. package/tools/definitions/get_native_chat_feature_detail_def.js.map +0 -1
  447. package/tools/definitions/get_native_live_api_def.js +0 -22
  448. package/tools/definitions/get_native_live_api_def.js.map +0 -1
  449. package/tools/definitions/get_native_live_uikit_extra_features_def.js +0 -109
  450. package/tools/definitions/get_native_live_uikit_extra_features_def.js.map +0 -1
  451. package/tools/definitions/get_native_live_uikit_integration_def.js +0 -75
  452. package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
  453. package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -63
  454. package/tools/definitions/get_native_live_uikit_interaction_def.js.map +0 -1
  455. package/tools/definitions/get_trtc_native_api_def.js +0 -17
  456. package/tools/definitions/get_trtc_native_api_def.js.map +0 -1
  457. package/tools/definitions/get_web_call_uikit_api_def.js +0 -23
  458. package/tools/definitions/get_web_call_uikit_api_def.js.map +0 -1
  459. package/tools/definitions/get_web_chat_uikit_init_def.js +0 -23
  460. package/tools/definitions/get_web_chat_uikit_init_def.js.map +0 -1
  461. package/tools/definitions/get_web_create_group_doc_def.js +0 -18
  462. package/tools/definitions/get_web_create_group_doc_def.js.map +0 -1
  463. package/tools/definitions/get_web_live_state_detail_def.js +0 -19
  464. package/tools/definitions/get_web_live_state_detail_def.js.map +0 -1
  465. package/tools/definitions/get_web_live_uikit_component_detail_def.js +0 -27
  466. package/tools/definitions/get_web_live_uikit_component_detail_def.js.map +0 -1
  467. package/tools/definitions/get_web_room_feature_detail_def.js +0 -92
  468. package/tools/definitions/get_web_room_feature_detail_def.js.map +0 -1
  469. package/tools/definitions/present_scenario_choice_def.js +0 -53
  470. package/tools/definitions/present_scenario_choice_def.js.map +0 -1
  471. package/tools/definitions/record_prompt_def.js +0 -58
  472. package/tools/definitions/record_prompt_def.js.map +0 -1
  473. package/tools/definitions/record_result_def.js +0 -46
  474. package/tools/definitions/record_result_def.js.map +0 -1
  475. package/tools/live/get-native-live-uikit-integration.js +0 -177
  476. package/tools/live/get-native-live-uikit-integration.js.map +0 -1
  477. package/tools/live/get-web-live-component-detail.js +0 -31
  478. package/tools/live/get-web-live-component-detail.js.map +0 -1
  479. package/tools/live/get-web-live-state-detail.js +0 -31
  480. package/tools/live/get-web-live-state-detail.js.map +0 -1
  481. package/tools/live/get-web-live-uikit-integration.js +0 -52
  482. package/tools/live/get-web-live-uikit-integration.js.map +0 -1
  483. package/tools/live/get_native_live_uikit_extra_features.js +0 -105
  484. package/tools/live/get_native_live_uikit_extra_features.js.map +0 -1
  485. package/tools/live/get_native_live_uikit_interaction.js +0 -194
  486. package/tools/live/get_native_live_uikit_interaction.js.map +0 -1
  487. package/tools/native_live/get-native-live-api.js +0 -31
  488. package/tools/native_live/get-native-live-api.js.map +0 -1
  489. package/tools/room/get-web-room-feature-detail.js.map +0 -1
  490. package/tools/room/get-web-room-integration.js.map +0 -1
  491. package/tools/rtcengine/get-rtcengine-web-sdk-integration.js +0 -28
  492. package/tools/rtcengine/get-rtcengine-web-sdk-integration.js.map +0 -1
  493. package/tools/rtcengine/get-trtc-sdk-faq.js +0 -32
  494. package/tools/rtcengine/get-trtc-sdk-faq.js.map +0 -1
  495. package/tools/rtcengine/get-trtc-web-sdk-api.js +0 -28
  496. package/tools/rtcengine/get-trtc-web-sdk-api.js.map +0 -1
  497. package/tools/rtcengine/get-trtc-web-sdk-faq.js +0 -30
  498. package/tools/rtcengine/get-trtc-web-sdk-faq.js.map +0 -1
  499. package/tools/rtcengine/get-trtc-web-sdk-integration.js +0 -29
  500. package/tools/rtcengine/get-trtc-web-sdk-integration.js.map +0 -1
  501. package/tools/rtcengine/get-trtc-web-sdk-plugin.js +0 -45
  502. package/tools/rtcengine/get-trtc-web-sdk-plugin.js.map +0 -1
  503. package/tools/trtc/get-trtc-native-api.js +0 -31
  504. package/tools/trtc/get-trtc-native-api.js.map +0 -1
  505. package/utils/handle-component-name.js +0 -33
  506. package/utils/handle-component-name.js.map +0 -1
  507. /package/resource/doc/{rtcengine/web → callkit/core-sdk}/.gitkeep +0 -0
  508. /package/resource/doc/{chatuikit → chatkit}/faq/common/server_error_code.md +0 -0
  509. /package/resource/doc/{chatuikit → chatkit}/flutter/faq.md +0 -0
  510. /package/resource/doc/{chatuikit → chatkit}/react/faq.md +0 -0
@@ -0,0 +1,384 @@
1
+ TUIRoomKit 是腾讯云提供的一站式多人音视频房间解决方案,集成了完整的 UI 组件和核心功能。通过本文档,开发者可以快速了解如何将 TUIRoomKit 集成到项目中,实现多人音视频房间功能。本文还将详细介绍如何快速替换图片资源、本地化文案等个性化配置,帮助开发者打造符合品牌特色的音视频应用。
2
+ | 房间准备页 | 标准房间主页 | 大型研讨会房间主页 | 成员管理 |
3
+ | --- | --- | --- | --- |
4
+ | | | | |
5
+
6
+ ## 前提条件
7
+
8
+ ### 开通服务
9
+
10
+ 请参考 开通服务 领取 `TUIRoomKit` 体验版,并在 [应用管理](https://console.cloud.tencent.com/trtc) 页面获取以下信息:
11
+ - **SDKAppID**:应用标识(必填),腾讯云基于 SDKAppID 完成计费统计。
12
+
13
+ - **SDKSecretKey**:应用密钥,用于初始化配置文件的密钥信息。
14
+
15
+ ### 环境准备
16
+
17
+ 在开始运行 Demo 之前,请确保您的开发环境满足以下要求:
18
+ - **Xcode**:需使用 **Xcode 15 **或更高版本。
19
+
20
+ - **iOS 系统**:支持 **iOS 13.0 **或更高版本的设备。
21
+
22
+ - **CocoaPods 环境**:已安装 CocoaPods 环境。如果您尚未安装,请参见 [CocoaPods官网安装](https://guides.cocoapods.org/using/getting-started.html),或按以下步骤操作:
23
+
24
+ - **使用 gem 安装 CocoaPods**:在终端中执行 `sudo gem install cocoapods` 命令进行安装。
25
+
26
+ > **提示:**
27
+ >
28
+
29
+ > `sudo gem install cocoapods` 安装过程中可能需要输入电脑密码,按提示输入管理员密码即可。
30
+ >
31
+
32
+ ## 快速接入
33
+
34
+ ### 步骤1:集成 TUIRoomKit 组件
35
+ 1. **添加 Pod 依赖:**
36
+
37
+ - **若项目已有 Podfile 文件。**
38
+
39
+ 在您项目的 `Podfile` 文件中添加 `pod 'TUIRoomKit'` 依赖。例如:
40
+
41
+ ``` ruby
42
+ target 'YourProjectTarget' do
43
+ # 其他已有的 Pod 依赖...
44
+ # 添加 pod 'TUIRoomKit' 依赖
45
+ pod 'TUIRoomKit'
46
+
47
+ end
48
+ ```
49
+ - **若项目没有 Podfile 文件。**
50
+
51
+ 在终端中通过 `cd` 命令切换到您的 `.xcodeproj` 目录下,然后执行 `pod init` 命令创建 `Podfile` 文件,创建完成后,在您的 `Podfile` 文件中添加 `pod 'TUIRoomKit'` 依赖。例如:
52
+
53
+ ``` bash
54
+ // 如果您的项目目录是 /Users/yourusername/Projects/YourProject
55
+
56
+ // 1. cd 到您的.xcodeproj 工程目录下
57
+ cd /Users/yourusername/Projects/YourProject
58
+
59
+ // 2. 执行 pod init,此命令运行完后,会在您的工程目录下生成一个 Podfile 文件。
60
+ pod init
61
+
62
+ // 3. 在生成的 Podfile 文件中添加 pod 'TUIRoomKit' 依赖
63
+ target 'YourProjectTarget' do
64
+ # 添加 pod 'TUIRoomKit' 依赖
65
+ pod 'TUIRoomKit'
66
+
67
+ end
68
+ ```
69
+ 2. **安装组件**:
70
+
71
+ 在终端中 `cd` 到 `Podfile` 文件所在的目录,然后执行以下命令安装组件。
72
+
73
+ ``` bash
74
+ pod install
75
+ ```
76
+
77
+ ### 步骤2:工程配置
78
+
79
+ 为了使用音视频功能,您的应用需要获取麦克风和摄像头的权限。请在应用的 `Info.plist` 文件中添加以下两项,并填写对应的使用说明,这些说明将在系统请求权限时向用户显示:
80
+ ``` ruby
81
+ <key>NSCameraUsageDescription</key>
82
+ <string>TUIRoomKit需要访问您的相机权限</string>
83
+ <key>NSMicrophoneUsageDescription</key>
84
+ <string>TUIRoomKit需要访问您的麦克风权限</string>
85
+ ```
86
+
87
+ ### 步骤3:登录
88
+
89
+ 代码集成完成后,需要完成登录操作,这是**使用 **`TUIRoomKit`** 的关键步骤**。只有在登录成功后,才能正常使用 `TUIRoomKit` 的各项功能,因此请仔细检查相关参数配置是否正确:
90
+
91
+ > **说明:**
92
+ >
93
+
94
+ > 在示例代码中,登录操作是在 `didFinishLaunchingWithOptions` 方法内完成的。但在实际项目场景下,强烈推荐**在完成自己的用户身份验证等相关登录操作后,再调用 AtomicXCore 的登录服务**。这样可以避免因过早调用登录服务,导致业务逻辑混乱或数据不一致的问题,同时也能更好地适配您项目中现有的用户管理和权限控制体系。
95
+ >
96
+
97
+ 【Swift】
98
+ ``` swift
99
+ import AtomicXCore
100
+
101
+ // AppDelegate.swift
102
+ func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
103
+ LoginStore.shared.login(sdkAppID: 1400000001, // 替换为项目的 sdkAppID
104
+ userID: "test_001", // 替换为项目的 userID
105
+ userSig: "xxxxxxxxxxx") { result in // 替换为项目的 userSig
106
+ switch result {
107
+ case .success(let info):
108
+ debugPrint("login success")
109
+ case .failure(let error):
110
+ debugPrint("login failed code:\(error.code), message:\(error.message)")
111
+ }
112
+ }
113
+ return true
114
+ }
115
+ ```
116
+
117
+ **登录接口参数说明:**
118
+ | 参数 | 类型 | 说明 |
119
+ | --- | --- | --- |
120
+ | `sdkAppID` | `Int32` | 从 [控制台](https://console.cloud.tencent.com/trtc) 获取,通常是以 `140` 或 `160` 开头的 10 位整数。 |
121
+ | `userID` | `String` | 当前用户的唯一 ID,仅包含英文字母、数字、连字符和下划线。为避免多端登录冲突,**请勿使用**`1`、`123`**等简单 ID**。 |
122
+ | `userSig` | `String` | 用于腾讯云鉴权的票据。更多信息请参见 如何计算及使用 UserSig。<br>**注意:**<br>- 开发环境:可以采用本地 `GenerateTestUserSig.genTestSig` 函数生成 userSig 或者通过 [UserSig 辅助工具](https://console.cloud.tencent.com/im/tool-usersig) 生成临时的 userSig。<br>- 生产环境:为了防止密钥泄露,请务必采用服务端生成 userSig 的方式。详细信息请参考 服务端生成 UserSig。 |
123
+
124
+ ### 步骤4:设置头像和昵称
125
+
126
+ 首次登录的用户没有头像和昵称信息,需要通过 `LoginStore` 的 `setSelfInfo` 接口设置个人信息:
127
+ ``` swift
128
+ import AtomicXCore
129
+
130
+ func setSelfInfo() {
131
+ let userProfile = UserProfile(userID: "test_001", // 您已经登录的userID
132
+ nickname: "tom", // 设置昵称
133
+ avatarURL: "http://xxx.png") // 设置头像URL
134
+ LoginStore.shared.setSelfInfo(userProfile: userProfile) { result in
135
+ switch result {
136
+ case .success():
137
+ debugPrint("setSelfInfo success")
138
+ case .failure(let error):
139
+ debugPrint("setSelfInfo failed code:\(error.code), message:\(error.message)")
140
+ }
141
+ }
142
+ }
143
+ ```
144
+
145
+ **setSelfInfo接口参数说明:**
146
+ | 参数 | 类型 | 必填 | 说明 |
147
+ | --- | --- | --- | --- |
148
+ | `userProfile` | `UserProfile` | 是 | 个人用户信息核心模型,包含:<br>- userID:要设置用户信息的用户 ID。<br>- nickname:昵称信息。<br>- avatarURL:头像链接。 |
149
+ | `completion` | `CompletionClosure` | 否 | 设置个人信息接口的结果回调。若失败会返回错误码和错误信息。 |
150
+
151
+ ### 步骤5:创建房间
152
+
153
+ 在 `TUIRoomKit` 组件中,`RoomMainView` 是集成了完整的多人音视频房间功能的核心界面,以下将向开发者演示如何以房主身份将 `RoomMainView` 嵌入到应用中。
154
+
155
+ #### **实现方式:**
156
+ 1. **遵守路由导航协议**:`TUIRoomKit` 内部使用 `RouterContext` 协议管理页面间的路由跳转。宿主视图控制器需要声明遵循该协议,以确保组件内部的导航操作(如结束房间、返回上一页)能够正确执行。
157
+
158
+ 2. **懒加载创建视图页面**:在控制器内部以懒加载方式实例化 `RoomMainView`,并为其设置 `routerContext` 属性。该属性使得视图能够通过协议方法调用宿主控制器的导航功能。
159
+
160
+ 3. **构造进房的配置项**:进入房间后是否需要自动打开音视频设备的配置项。
161
+
162
+ 4. **初始化房间主页面**:通过房主身份初始化房间主页面。
163
+
164
+ 5. **将视图添加到控制器**:在控制器的 `viewDidLoad` 方法中,将 `RoomMainView` 加入视图层级,并使用约束布局使其充满整个控制器视图区域。
165
+
166
+ > **说明:**
167
+ >
168
+ > - `TUIRoomKit` 的内部页面跳转机制基于 `UINavigationController` 的标准导航方法(push/pop)实现。为确保页面路由功能正常工作,开发者的视图控制器必须作为 `UINavigationController` 的根视图控制器或位于其导航栈内。若未将控制器包装至 `UINavigationController` 中,SDK 内部的跳转操作将因缺少有效的导航上下文而失效,导致页面无法正常切换。
169
+ > - 移动端仅支持创建标准房间,如果您需要创建大型研讨会房间,请参考 Web 快速接入 使用 Web 端创建。
170
+
171
+ #### **示例代码:**
172
+ ``` swift
173
+ import UIKit
174
+ import TUIRoomKit
175
+ import SnapKit
176
+ import AtomicXCore
177
+
178
+ // YourMainViewController 代表您加载房间主页面的视图控制器
179
+
180
+ // 1. YourMainViewController 需要遵守 TUIRoomKit 组件中的 RouterContext 协议
181
+ class YourMainViewController: UIViewController, RouterContext {
182
+
183
+ // 2. 懒加载创建 TUIRoomKit 中的 RoomMainView 房间主页面
184
+ private lazy var mainView: RoomMainView = {
185
+ // 3. 构造进房的配置项
186
+ var config = ConnectConfig()
187
+ config.autoEnableCamera = true // 进房后是否自动开启摄像头
188
+ config.autoEnableMicrophone = true // 进房后是否自动开启麦克风
189
+ config.autoEnableSpeaker = true // 进房后是否自动开启扬声器
190
+
191
+ // 4 房主身份初始化房间主页面
192
+ var options = CreateRoomOptions()
193
+ options.roomName = "roomName" // 房间名称
194
+
195
+ let view = RoomMainView(roomID: "roomID", behavior: .create(options: options), config: config)
196
+ view.routerContext = self
197
+ return view
198
+ }()
199
+
200
+ public override func viewDidLoad() {
201
+ super.viewDidLoad()
202
+ // 5. 将 RoomMainView 对象 添加到视图控制器中
203
+ view.addSubview(mainView)
204
+ mainView.snp.makeConstraints { make in
205
+ make.edges.equalToSuperview()
206
+ }
207
+ }
208
+ }
209
+ ```
210
+
211
+ **RoomMainView 构造函数参数详细说明:**
212
+ | 参数 | 类型 | 说明 |
213
+ | --- | --- | --- |
214
+ | `roomID` | `String` | - 字符串类型的房间唯一标识符。<br>- 限制长度为 0-48 字节。<br>- 建议仅包含数字、英文字母(区分大小写)、下划线(_)和连字符(-)。避免使用空格和中文字符。 |
215
+ | `behavior` | `RoomBehavior` | 房间主页面初始化来源。<br>- create:房主身份创建房间的方式需要构造创建房间配置项。<br>- 关于 `CreateRoomOptions` 的详细用法请参考:CreateRoomOptions 结构体详细说明。<br>- join:参与者身份加入房间。 |
216
+ | `config` | `ConnectConfig` | 进房后音视频设备控制的配置项。 |
217
+
218
+ **ConnectConfig 参数详细说明****:**
219
+ | 参数 | 类型 | 说明 |
220
+ | --- | --- | --- |
221
+ | autoEnableMicrophone | `Bool` | 进房后是否自动开启麦克风。<br>- true:自动开启 (默认值)。<br>- false:不自动开启。 |
222
+ | autoEnableCamera | `Bool` | 进房后是否自动开启摄像头。<br>- true:自动开启 (默认值)。<br>- false:不自动开启。 |
223
+ | autoEnableSpeaker | `Bool` | 进房后是否自动开启扬声器。<br>- true:自动开启 (默认值)。<br>- false:不自动开启。 |
224
+
225
+ ### 步骤6:加入房间
226
+
227
+ 以下示例将向开发者演示如何以参与者身份将`RoomMainView`嵌入到应用中。
228
+
229
+ #### **实现方式:**
230
+ 1. **遵守路由导航协议**:`TUIRoomKit` 内部使用 `RouterContext` 协议管理页面间的路由跳转。宿主视图控制器需要声明遵循该协议,以确保组件内部的导航操作(如结束房间、返回上一页)能够正确执行。
231
+
232
+ 2. **懒加载创建视图页面**:在控制器内部以懒加载方式实例化 `RoomMainView`,并为其设置 `routerContext` 属性。该属性使得视图能够通过协议方法调用宿主控制器的导航功能。
233
+
234
+ 3. **构造进房的配置项**:进入房间后是否需要自动打开音视频设备的配置项。
235
+
236
+ 4. **初始化房间主页面**:通过参与者身份初始化房间主页面。
237
+
238
+ 5. **将视图添加到控制器**:在控制器的 `viewDidLoad` 方法中,将 `RoomMainView` 加入视图层级,并使用约束布局使其充满整个控制器视图区域。
239
+
240
+ #### 代码示例:
241
+ ``` swift
242
+ import UIKit
243
+ import TUIRoomKit
244
+ import SnapKit
245
+ import AtomicXCore
246
+ // YourMainViewController 代表您加载房间主页面的视图控制器
247
+
248
+ // 1. YourMainViewController 需要遵守 TUIRoomKit 组件中的 RouterContext 协议
249
+ class YourMainViewController: UIViewController, RouterContext {
250
+
251
+ // 2. 懒加载创建 TUIRoomKit 中的 RoomMainView 房间主页面
252
+ private lazy var mainView: RoomMainView = {
253
+ // 3. 构造进房的配置项
254
+ var config = ConnectConfig()
255
+ config.autoEnableCamera = true // 进房后是否自动开启摄像头
256
+ config.autoEnableMicrophone = true // 进房后是否自动开启麦克风
257
+ config.autoEnableSpeaker = true // 进房后是否自动开启扬声器
258
+
259
+ // 4. 参与者身份初始化房间主页面
260
+ let view = RoomMainView(roomID: "roomID", behavior: .join, config: config)
261
+ view.routerContext = self
262
+ return view
263
+ }()
264
+
265
+ public override func viewDidLoad() {
266
+ super.viewDidLoad()
267
+
268
+ // 5. 将 RoomMainView 对象 添加到视图控制器中
269
+ view.addSubview(mainView)
270
+ mainView.snp.makeConstraints { make in
271
+ make.edges.equalToSuperview()
272
+ }
273
+ }
274
+ }
275
+ ```
276
+
277
+ **参数详细说明请参考:**
278
+
279
+ [RoomMainView 构造函数参数详细说明]( 构造函数参数详细说明)和 [ConnectConfig 参数详细说明]( 参数详细说明)
280
+
281
+ > **说明:**
282
+ >
283
+
284
+ > 使用 **TUIRoomKit** 组件进入大型研讨会房间时,需确保Web端创建的研讨会房间的房间ID以 `webinar_` 开头。
285
+ >
286
+
287
+ ## 核心功能
288
+
289
+ 接入`RoomMainView`代码后,开发者将得到一个完整的多人音视频页面,内部包含成员管理,音视频设备控制,房间信息展示等功能,这是 `TUIRoomKit` 组件的核心。
290
+ | 标准房间 | 大型研讨会房间 |
291
+ | --- | --- |
292
+ | | |
293
+
294
+ ## 界面定制
295
+
296
+ > **注意:**
297
+ >
298
+
299
+ > 界面定制、图标定制、文案定制这部分章节内容,涉及到需要修改`TUIRoomKit` 组件源码,通过 **CocoaPods** 依赖管理器集成`TUIRoomKit`将被视为“不可变”的依赖项。每次执行 pod install 时,**CocoaPods** 会:
300
+ >
301
+ > - 检查 Podfile.lock 中记录的版本号。
302
+ > - 从远程仓库重新下载对应版本的源码。
303
+ > - 用下载的原始代码覆盖 Pods/ 目录下的现有文件。
304
+
305
+ > **因此,任何对 Pods/ 目录的手动修改都只是临时性的,下次执行安装命令时即被还原。**
306
+ >
307
+
308
+ > **推荐解决方案:**
309
+ >
310
+ > - Fork [TUIRoomKit](https://github.com/Tencent-RTC/TUIKit_iOS) 的官方仓库。
311
+ > - 在 fork 的仓库中修复问题并提交。
312
+ > - 修改 Podfile,指向自定义仓库和分支。
313
+ > `pod 'TUIRoomKit', :git => 'https://github.com/your-username/TUIRoomKit.git', :branch => 'your-branch'`
314
+
315
+ `RoomMainView`房间主页面内功能丰富,可定制化度高,开发者可以根据实际产品需求,对 UI 进行定制化修改,以适配业务交互场景。以下将详细为开发者展示`RoomMainView`页面中视图组件,便于开发者快速修改。
316
+ | 标准房间 | 大型研讨会房间 |
317
+ | --- | --- |
318
+ | | |
319
+
320
+ `RoomMainView`**中的组件详细说明**
321
+ | 组件 | 功能描述 | 定制化建议 |
322
+ | --- | --- | --- |
323
+ | [RoomMainView](https://github.com/Tencent-RTC/TUIKit_iOS/blob/main/room/Source/View/RoomMainView.swift) | 房间主视图容器,负责协调各子组件的布局与数据流转。 | 可调整整体背景、安全区域适配、组件显隐逻辑。 |
324
+ | [RoomTopBarView](https://github.com/Tencent-RTC/TUIKit_iOS/blob/main/room/Source/View/Main/RoomTopBarView.swift) | 顶部导航栏,包含房间信息、摄像头和声音控制、退出房间功能入口。 | 可替换图标、调整背景透明度、添加自定义按钮(例如录制、 窗口化)。 |
325
+ | [RoomView](https://github.com/Tencent-RTC/TUIKit_iOS/blob/main/room/Source/View/Main/RoomView.swift) | 视频流展示区域,采用瀑布流布局管理多个用户视频画面。 | 可修改布局算法(行列数、间距)、分页指示器样式、空状态视图。 |
326
+ | [RoomViewVideoStreamCell](https://github.com/Tencent-RTC/TUIKit_iOS/blob/main/room/Source/View/Main/RoomView/RoomViewCell.swift) | 单个视频流单元格,承载用户视频画面与基本信息。 | 可自定义视频渲染层、用户信息面板(头像、徽章)、互动控件(语音波形)。 |
327
+ | [RoomBottomBarView](https://github.com/Tencent-RTC/TUIKit_iOS/blob/main/room/Source/View/Main/RoomBottomBarView.swift) | 底部工具栏,集成麦克风、摄像头、成员管理操作按钮。 | 可重新排列按钮顺序、修改按钮样式(颜色、尺寸)、添加业务相关功能(例如屏幕分享、会中呼叫、美颜)。 |
328
+
329
+ ## 图标定制
330
+
331
+ 接入 `TUIRoomKit` 组件后,开发者可以根据实际 UI 交互需求直接替换组件下的图标资源, 以适配开发者的业务场景。
332
+
333
+ `TUIRoomKit` 使用 `TUIRoomKit.xcassets`管理 UI 所需的图片资源,您可以借助 Xcode 图形化工具快速修改自定义界面所需的图标。
334
+
335
+ **常用的图片文件列表**
336
+ | 图标 | 文件名 | 说明 |
337
+ | --- | --- | --- |
338
+ | | camera_close.png | 摄像头关闭图标 |
339
+ | | camera_open.png | 摄像头开启图标 |
340
+ | | room_mic_off_red.png | 麦克风关闭图标 |
341
+ | | room_mic_on_big.png | 麦克风开启图标 |
342
+ | | room_admin_tag.png | 管理员身份标识图标 |
343
+ | | room_owner_tag.png | 房主身份标识图标 |
344
+
345
+ ## 文案定制
346
+
347
+ `TUIRoomKit` 使用更为方便的 [Apple Strings Catalog](https://developer.apple.com/documentation/xcode/localizing-and-varying-text-with-a-string-catalog) 工具来管理 UI 所需的文案显示,您可以很直观的通过 Xcode 视图化管理工具修改需要调整的文案:
348
+
349
+ > **说明:**
350
+ >
351
+
352
+ > [Apple Strings Catalog](https://developer.apple.com/documentation/xcode/localizing-and-varying-text-with-a-string-catalog) (.xcstrings) 是在 Xcode 15 中引入的本地化格式。它增强了开发者管理本地化字符串的方式,支持处理复数、设备特定变体等的结构化格式。这种格式正成为管理 iOS 和 macOS 应用程序本地化的推荐方法。
353
+ >
354
+
355
+ ## 常见问题
356
+
357
+ ### pod install 执行后本地安装找不到 TUIRoomKit 最新版本?
358
+
359
+ 如果无法安装 `TUIRoomKit` 最新版本,请按以下步骤操作:
360
+ 1. 在 Podfile 所在目录下删除 `Podfile.lock`和 `Pods`,您可以选择手动删除或终端执行以下命令:
361
+
362
+ ``` bash
363
+ // cd 到 Podfile 所在目录下
364
+
365
+ rm -rf Pods/
366
+ rm Podfile.lock
367
+ ```
368
+ 2. 在 Podfile 所在目录下执行 `pod install --repo-update`:
369
+
370
+ ``` bash
371
+ // cd 到 Podfile 所在目录下
372
+
373
+ pod install --repo-update
374
+ ```
375
+
376
+ ### 每次进房都需要调用登录吗?
377
+
378
+ 不需要。通常您只需要完成一次 `LoginStore.shared.login` 调用即可,我们建议您将 `LoginStore.shared.login` 和
379
+
380
+ `LoginStore.shared.logout` 与自己的登录业务关联。
381
+
382
+ ### Podfile 文件有没有示例配置可以参考?
383
+
384
+ 您可以参考 [GitHub TUIKit_iOS Example](https://github.com/Tencent-RTC/TUIKit_iOS/tree/main/application) 工程 `Podfile` 示例文件。
@@ -0,0 +1 @@
1
+
@@ -7,26 +7,21 @@
7
7
 
8
8
  - **互联网医疗会诊:**首诊医生在病历分析过程中,通过呼叫功能邀请上级医生进入虚拟诊室进行多方会诊,或者医生呼叫在等候室的患者进行问诊。
9
9
 
10
-
11
10
  ## 前提条件
12
11
 
13
12
  在接入功能前,请确保满足以下条件:
14
- - **邀请者 (User A):**用户已经通过 `useLoginState` 完成登录鉴权,参考 [接入概览](https://write.woa.com/document/197379797539790848),并已作为一个房间的房主或成员在房间内,参考 [房间周期](https://write.woa.com/document/197379861957083136)。
13
+ - **邀请者 (User A):**用户已经通过 `useLoginState` 完成登录鉴权,参考 接入概览,并已作为一个房间的房主或成员在房间内,参考 房间周期。
15
14
 
16
- - **被邀请者 (User B):**用户已经通过 `useLoginState` 完成登录鉴权,参考 [接入概览](https://write.woa.com/document/197379797539790848),以便接收信令事件。
15
+ - **被邀请者 (User B):**用户已经通过 `useLoginState` 完成登录鉴权,参考 接入概览,以便接收信令事件。
17
16
 
18
17
  - **环境依赖:**项目已正确安装并引入 `tuikit-atomicx-vue3`。
19
18
 
20
-
21
19
  ## 实现会中呼叫功能
22
20
 
23
21
  实现会中呼叫的核心流程如下:
24
22
 
25
- ![会中呼叫时序图](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027160512/82ba8603dee611f0a4f35254007c27c5.png)
26
-
27
23
  会中呼叫时序图
28
24
 
29
-
30
25
  ### 步骤1:发起呼叫(邀请者)
31
26
 
32
27
  邀请者调用 [callUserToRoom](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#callUserToRoom) 接口发起邀请。请确保邀请者当前已在房间内(即 [currentRoom](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#currentRoom) 不为空),否则无法发起呼叫。
@@ -48,9 +43,9 @@ const inviteUser = async () => {
48
43
  userIdList: ['user1', 'user2'], // 目标用户 ID 数组,支持单人或多人
49
44
  timeout: 60, // 邀请有效时长(秒),超时后双方会触发 onCallTimeout
50
45
  // extensionInfo 可用于传递业务自定义数据,例如邀请类型、附加消息等
51
- extensionInfo: JSON.stringify({ type: 'emergency', priority: 'high' })
46
+ extensionInfo: JSON.stringify({ type: 'emergency', priority: 'high' })
52
47
  });
53
-
48
+
54
49
  // resultMap 返回每个 userId 对应的状态,例如 Success、AlreadyInRoom (已在房) 或 AlreadyInCalling (通话中)
55
50
  console.log('邀请发送完成,详情状态映射:', resultMap);
56
51
  } catch (error) {
@@ -66,13 +61,13 @@ const inviteUser = async () => {
66
61
  import { ref, onMounted, onUnmounted } from 'vue';
67
62
  import { useRoomState, RoomEvent } from 'tuikit-atomicx-vue3/room';
68
63
 
69
- const {
70
- subscribeEvent,
71
- unsubscribeEvent,
72
- acceptCall,
73
- rejectCall,
74
- joinRoom,
75
- currentRoom
64
+ const {
65
+ subscribeEvent,
66
+ unsubscribeEvent,
67
+ acceptCall,
68
+ rejectCall,
69
+ joinRoom,
70
+ currentRoom
76
71
  } = useRoomState();
77
72
 
78
73
  const showInviteDialog = ref(false); // 控制 UI 弹窗显隐
@@ -98,9 +93,9 @@ const onUserAccept = async () => {
98
93
  try {
99
94
  // 关键流程 A:响应信令。告知邀请者已接受,使其能更新 UI(例如显示“对方已接听”)
100
95
  await acceptCall({ roomId });
101
-
96
+
102
97
  // 关键流程 B:执行进房。只有调用 joinRoom 才会真正开启音视频推拉流链路
103
- await joinRoom({ roomId });
98
+ await joinRoom({ roomId });
104
99
  } catch (error) {
105
100
  console.error('接受呼叫后的进房操作失败:', error);
106
101
  } finally {
@@ -125,7 +120,7 @@ const closeDialog = () => {
125
120
  // 事件全生命周期管理:确保在组件挂载时监听,销毁时移除,防止事件溢出
126
121
  onMounted(() => {
127
122
  subscribeEvent(RoomEvent.onCallReceived, handleCallReceived);
128
-
123
+
129
124
  // 监听导致邀请结束的各种异常/同步事件,确保 UI 弹窗能及时闭合
130
125
  subscribeEvent(RoomEvent.onCallCancelled, closeDialog); // 邀请者取消了呼叫
131
126
  subscribeEvent(RoomEvent.onCallTimeout, closeDialog); // 呼叫超时未响应
@@ -152,13 +147,11 @@ onUnmounted(() => {
152
147
 
153
148
  - **听觉提醒**:在 `onCallReceived` 事件触发时播放高优先级的提示铃声。注意:需遵循浏览器的 [自动播放策略](https://developer.mozilla.org/zh-CN/docs/Web/Media/Guides/Autoplay),大部分浏览器在缺乏用户交互(例如点击、触摸或按键)的情况下会限制音频自动播放。
154
149
 
155
-
156
150
  ### 2. 丰富邀请上下文(提升接听意愿)
157
151
 
158
152
  缺乏明确意图的邀请容易被用户拒绝。建议充分利用 `extensionInfo` 字段传递关键业务信息,以提升用户的接听意愿。
159
153
  - **传递业务上下文**:利用 `extensionInfo` 透传如 `reason`(例如:“项目紧急评审”)、`level`(例如:“P0故障排查”)等业务字段,告知用户呼叫的紧迫性和重要性。
160
154
 
161
-
162
155
  ### 3. 多通道触达兜底(确保消息可达)
163
156
 
164
157
  受限于 Web 端机制,浏览器进程结束将无法接收实时信令。建议采取以下替代方案以确保触达:
@@ -166,91 +159,62 @@ onUnmounted(() => {
166
159
 
167
160
  - **多通道触达**:建议结合业务后端逻辑,在检测到用户不在线或超时未响应时,通过**短信**、**邮件**或**企业微信**等外部渠道发送入会链接,实现全方位触达。
168
161
 
169
-
170
162
  ### 4. 智能重试机制(解决“接受邀请后进房失败”)
171
163
 
172
164
  在弱网或其他不稳定环境下,用户点击接受邀请后调用 `joinRoom` 可能会出现偶发性失败。
173
165
  - **自动重试**:建议在 `onUserAccept` 的异常处理逻辑(`catch`)中引入 2-3 次自动重试机制(推荐结合指数退避策略),以最大程度确保用户点击“接受”后能成功加入会议。
174
166
 
175
-
176
167
  ## 开发注意事项
177
168
  1. **接受邀请不等于进房**
178
169
 
179
-
180
170
  `acceptCall` 仅仅是信令层面的回复(告知对方已接听)。用户必须在调用 `acceptCall` 后紧接着手动调用 `await joinRoom({ roomId })` 才能真正进入音视频房间。
181
171
 
182
172
  2. **生命周期管理**
183
173
 
184
-
185
174
  请务必在组件销毁周期(`onUnmounted`)调用 `unsubscribeEvent`。如果不清理监听器,当用户切换页面时,旧页面的监听器会残留在内存中,导致一次邀请弹出多个窗口或逻辑重复执行。
186
175
 
187
176
  3. **超时设置**
188
177
 
189
-
190
178
  如果不设置 `timeout` 参数,在某些网络异常或程序崩溃情况下,邀请可能长期处于挂起状态,导致无法再次对该用户发起呼叫。建议设置为 30-60 秒。
191
179
 
192
-
193
180
  ## 常见问题
194
181
  1. **如何在呼叫时带上自定义参数(如“来自XX的紧急会议”)?**
195
182
 
196
-
197
183
  使用 `callUserToRoom` 的 `extensionInfo` 参数传递 JSON 字符串。被邀请者可以在 `onCallReceived` 事件的 `extensionInfo` 字段中解析该字符串获取业务信息。
198
184
 
199
185
  2. **被邀请者如果不在线,上线后能收到邀请吗?**
200
186
 
201
-
202
187
  不可以。邀请事件是一个瞬时信令动作,SDK 目前不会补发离线期间收到的呼叫通知。
203
188
 
204
189
  3. **可以取消已发出的邀请吗?**
205
190
 
206
-
207
191
  可以。调用 `cancelCall({ roomId, userIdList })` 即可撤销。此时被邀请者会收到 `onCallCancelled` 事件,您需要监听此事件来关闭被邀请端的 UI 弹窗。
208
192
 
209
193
  4. **接受后进房失败怎么办?**
210
194
 
211
-
212
195
  检查是否已登录 `TUIRoomEngine`,重试 `joinRoom({ roomId })` 并捕获错误提示用户;必要时在 UI 上提供“重试”按钮。
213
196
 
214
197
  5. **对方忙线或已在其他房间如何提示?**
215
198
 
216
-
217
199
  `callUserToRoom` 的返回值 `resultMap` 中若出现 `AlreadyInRoom` / `AlreadyInCalling`,应在邀请者 UI 提示“对方忙线/已在会中”,并决定是否稍后重试。
218
200
 
219
201
  6. **超时/取消后弹窗不关闭?**
220
202
 
221
-
222
203
  确保监听 `onCallTimeout`、`onCallCancelled`、`onCallHandledByOtherDevice`,统一在回调里关闭弹窗、清理当前邀请数据。
223
204
 
224
205
  7. **多设备同时响铃如何处理?**
225
206
 
226
-
227
207
  在任意设备接受/拒绝后,其余设备会收到 `onCallHandledByOtherDevice`,需关闭其他端弹窗避免重复处理。
228
208
 
229
209
  8. **extensionInfo 该怎么约定?**
230
210
 
231
-
232
211
  建议使用 JSON 字符串并约定字段(例如 `type`、`priority`、`from`),在 `handleCallReceived` 时解析后展示友好文案(例如“来自XX的紧急会议”)。
233
212
 
234
-
235
213
  ## **示例项目**
236
214
 
237
215
  腾讯云在 GitHub 上提供了示例项目 [atomicx-vite-vue3-ts](https://github.com/Tencent-RTC/TUIRoomKit/tree/main/Web/example/atomicx-vite-vue3-ts) ,您可以参考以实现完整的 RoomKit 功能。
238
216
 
239
217
  ## API 文档
240
- <table>
241
- <tr>
242
- <td rowspan="1" colSpan="1" >**State/Component**</td>
243
-
244
- <td rowspan="1" colSpan="1" >**功能描述**</td>
245
-
246
- <td rowspan="1" colSpan="1" >**API 文档**</td>
247
- </tr>
248
-
249
- <tr>
250
- <td rowspan="1" colSpan="1" >**useRoomState**</td>
251
-
252
- <td rowspan="1" colSpan="1" >房间状态管理(创建、加入、预约等)</td>
253
-
254
- <td rowspan="1" colSpan="1" >[API 文档](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-RoomState)</td>
255
- </tr>
256
- </table>
218
+ | **State/Component** | **功能描述** | **API 文档** |
219
+ | --- | --- | --- |
220
+ | **useRoomState** | 房间状态管理(创建、加入、预约等) | [API 文档](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-RoomState) |