@tencent-rtc/mcp 1.6.4 → 1.6.6

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 (251) hide show
  1. package/knowledge/chunker.js +83 -54
  2. package/knowledge/path-meta.js +179 -26
  3. package/knowledge/search/exact-lookup.js +168 -10
  4. package/knowledge/search/filter-pool.js +73 -19
  5. package/knowledge/search/product-scope-intent.js +2 -2
  6. package/knowledge/search/requires-framework.js +2 -2
  7. package/knowledge/search/search-knowledge.js +247 -61
  8. package/package.json +1 -1
  9. package/resource/index/manifest.json +1 -1
  10. package/resource/integration/callkit/preset/android/integration.md +2 -4
  11. package/resource/integration/callkit/preset/flutter/integration.md +4 -5
  12. package/resource/integration/callkit/preset/ios/integration.md +1 -4
  13. package/resource/integration/callkit/preset/react/integration.md +13 -20
  14. package/resource/integration/callkit/preset/vue/integration.md +14 -21
  15. package/resource/integration/chat/preset/android/integration.md +6 -9
  16. package/resource/integration/chat/preset/flutter/integration.md +9 -12
  17. package/resource/integration/chat/preset/ios/integration.md +2 -4
  18. package/resource/integration/chat/preset/react/integration.md +0 -10
  19. package/resource/integration/livekit/preset/live/android/live-audience-integration.md +129 -0
  20. package/resource/integration/livekit/preset/live/android/live-host-integration.md +219 -0
  21. package/resource/integration/livekit/preset/live/android/live-list-integration.md +261 -0
  22. package/resource/integration/livekit/preset/live/android/prepare-integration.md +254 -0
  23. package/resource/integration/livekit/preset/live/ios/live-audience-integration.md +202 -0
  24. package/resource/integration/livekit/preset/live/ios/live-host-integration.md +369 -0
  25. package/resource/integration/livekit/preset/live/ios/live-list-integration.md +229 -0
  26. package/resource/integration/livekit/preset/live/ios/prepare-integration.md +204 -0
  27. package/resource/integration/livekit/preset/live/vue/live-list-integration.md +0 -3
  28. package/resource/integration/livekit/preset/live/vue/live-player-desk-integration.md +0 -5
  29. package/resource/integration/livekit/preset/live/vue/live-player-h5-integration.md +0 -6
  30. package/resource/integration/livekit/preset/live/vue/live-pusher-integration.md +5 -10
  31. package/resource/integration/roomkit/preset/vue/integration.md +0 -4
  32. package/resource/knowledge/callkit/best-practice/web/callengine-invitation.md +80 -0
  33. package/resource/knowledge/callkit/best-practice/web/callengine-log-control.md +24 -0
  34. package/resource/knowledge/callkit/best-practice/web/callkit-call-vs-calls.md +116 -0
  35. package/resource/knowledge/callkit/core-sdk/android/answer-call.md +7 -8
  36. package/resource/knowledge/callkit/core-sdk/android/make-call.md +5 -7
  37. package/resource/knowledge/callkit/core-sdk/android/offline-push.md +3 -5
  38. package/resource/knowledge/callkit/core-sdk/flutter/answer-call.md +2 -6
  39. package/resource/knowledge/callkit/core-sdk/flutter/make-call.md +2 -6
  40. package/resource/knowledge/callkit/core-sdk/flutter/offline-push.md +4 -9
  41. package/resource/knowledge/callkit/core-sdk/ios/answer-call.md +1 -4
  42. package/resource/knowledge/callkit/core-sdk/ios/make-call.md +8 -11
  43. package/resource/knowledge/callkit/core-sdk/ios/offline-push.md +17 -23
  44. package/resource/knowledge/callkit/core-sdk/web/call-engine.md +33 -0
  45. package/resource/knowledge/callkit/core-sdk/web/call-event.md +327 -0
  46. package/resource/knowledge/callkit/core-sdk/web/callengine-api-overview.md +33 -0
  47. package/resource/knowledge/callkit/faq/android.md +0 -2
  48. package/resource/knowledge/callkit/faq/error-code.md +0 -2
  49. package/resource/knowledge/callkit/faq/flutter.md +2 -2
  50. package/resource/knowledge/callkit/faq/ios.md +3 -5
  51. package/resource/knowledge/callkit/faq/web.md +2 -3
  52. package/resource/knowledge/callkit/preset/android/api.md +2 -5
  53. package/resource/knowledge/callkit/preset/ios/api.md +0 -2
  54. package/resource/knowledge/callkit/preset/react/api.md +445 -0
  55. package/resource/knowledge/callkit/preset/react/uikit-api-reference.md +445 -0
  56. package/resource/knowledge/callkit/preset/vue/api.md +465 -0
  57. package/resource/knowledge/callkit/preset/vue/uikit-api-reference.md +465 -0
  58. package/resource/knowledge/chat/best-practice/web/image-message-url-handling.md +16 -0
  59. package/resource/knowledge/chat/preset/android/features/chat-setting.md +1 -1
  60. package/resource/knowledge/chat/preset/android/features/conversation-list.md +1 -1
  61. package/resource/knowledge/chat/preset/android/features/language.md +0 -1
  62. package/resource/knowledge/chat/preset/android/features/message-input.md +1 -1
  63. package/resource/knowledge/chat/preset/android/features/message-list.md +2 -3
  64. package/resource/knowledge/chat/preset/android/features/search.md +0 -1
  65. package/resource/knowledge/chat/preset/android/features/theme.md +1 -1
  66. package/resource/knowledge/chat/preset/android-view/integration.md +3 -11
  67. package/resource/knowledge/chat/preset/flutter/features/conversation-list.md +0 -1
  68. package/resource/knowledge/chat/preset/flutter/features/message-list.md +1 -2
  69. package/resource/knowledge/chat/preset/flutter/features/search.md +5 -6
  70. package/resource/knowledge/chat/preset/flutter/features/theme.md +2 -2
  71. package/resource/knowledge/chat/preset/ios/features/chat-setting.md +1 -1
  72. package/resource/knowledge/chat/preset/ios/features/conversation-list.md +1 -2
  73. package/resource/knowledge/chat/preset/ios/features/message-list.md +1 -2
  74. package/resource/knowledge/chat/preset/ios/features/search.md +0 -1
  75. package/resource/knowledge/chat/preset/ios-uikit/integration.md +13 -15
  76. package/resource/knowledge/chat/preset/react/features/conversation-list.md +5 -5
  77. package/resource/knowledge/chat/preset/react/features/message-input.md +2 -3
  78. package/resource/knowledge/chat/preset/react/features/search.md +0 -1
  79. package/resource/knowledge/chat/preset/react/features/theme.md +0 -1
  80. package/resource/knowledge/chat/urls/sdk/android.md +3 -3
  81. package/resource/knowledge/chat/urls/sdk/flutter.md +3 -3
  82. package/resource/knowledge/chat/urls/sdk/ios.md +3 -3
  83. package/resource/knowledge/chat/urls/sdk/web.md +3 -3
  84. package/resource/knowledge/livekit/core-sdk/api-reference/android/AudioEffectStore.md +7 -14
  85. package/resource/knowledge/livekit/core-sdk/api-reference/android/BarrageStore.md +5 -8
  86. package/resource/knowledge/livekit/core-sdk/api-reference/android/BattleStore.md +15 -18
  87. package/resource/knowledge/livekit/core-sdk/api-reference/android/CameraView.md +1 -2
  88. package/resource/knowledge/livekit/core-sdk/api-reference/android/CoGuestStore.md +15 -20
  89. package/resource/knowledge/livekit/core-sdk/api-reference/android/CoHostStore.md +10 -13
  90. package/resource/knowledge/livekit/core-sdk/api-reference/android/DeviceStore.md +2 -4
  91. package/resource/knowledge/livekit/core-sdk/api-reference/android/GiftStore.md +4 -6
  92. package/resource/knowledge/livekit/core-sdk/api-reference/android/LikeStore.md +2 -4
  93. package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveAudienceStore.md +2 -4
  94. package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveCoreView.md +1 -2
  95. package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveSeatStore.md +8 -10
  96. package/resource/knowledge/livekit/core-sdk/api-reference/android/LoginStore.md +5 -7
  97. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/AudioEffectStore.md +7 -14
  98. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BarrageStore.md +6 -9
  99. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BaseBeautyStore.md +1 -2
  100. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BattleStore.md +15 -18
  101. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/CoGuestStore.md +15 -20
  102. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/CoHostStore.md +10 -13
  103. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/DeviceStore.md +2 -4
  104. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/GiftStore.md +4 -6
  105. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LikeStore.md +2 -4
  106. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveAudienceStore.md +2 -4
  107. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveCoreView.md +1 -2
  108. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveSeatStore.md +8 -10
  109. package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LoginStore.md +3 -5
  110. package/resource/knowledge/livekit/core-sdk/api-reference/ios/AudioEffectStore.md +7 -14
  111. package/resource/knowledge/livekit/core-sdk/api-reference/ios/BarrageStore.md +5 -8
  112. package/resource/knowledge/livekit/core-sdk/api-reference/ios/BaseBeautyStore.md +1 -2
  113. package/resource/knowledge/livekit/core-sdk/api-reference/ios/BattleStore.md +6 -9
  114. package/resource/knowledge/livekit/core-sdk/api-reference/ios/CoGuestStore.md +5 -10
  115. package/resource/knowledge/livekit/core-sdk/api-reference/ios/CoHostStore.md +3 -6
  116. package/resource/knowledge/livekit/core-sdk/api-reference/ios/DeviceStore.md +2 -4
  117. package/resource/knowledge/livekit/core-sdk/api-reference/ios/GiftStore.md +4 -6
  118. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LikeStore.md +2 -4
  119. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveAudienceStore.md +2 -4
  120. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveCoreView.md +1 -2
  121. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveSeatStore.md +4 -6
  122. package/resource/knowledge/livekit/core-sdk/api-reference/ios/LoginStore.md +3 -5
  123. package/resource/knowledge/livekit/core-sdk/api-reference/{web → vue}/index.md +24 -24
  124. package/resource/knowledge/livekit/core-sdk/{voice/android/voice-audio-effect.md → features/android/audio-effect.md} +1 -2
  125. package/resource/knowledge/livekit/core-sdk/{live/android/live-gift.md → features/android/gift.md} +2 -3
  126. package/resource/knowledge/livekit/core-sdk/{voice/android/voice-room-list.md → features/android/live-list.md} +2 -4
  127. package/resource/knowledge/livekit/core-sdk/{live/flutter/live-audio-effect.md → features/flutter/audio-effect.md} +0 -2
  128. package/resource/knowledge/livekit/core-sdk/{voice/flutter/voice-barrage.md → features/flutter/barrage.md} +2 -2
  129. package/resource/knowledge/livekit/core-sdk/{live/flutter/live-gift.md → features/flutter/gift.md} +2 -3
  130. package/resource/knowledge/livekit/core-sdk/{voice/flutter/voice-room-list.md → features/flutter/live-list.md} +1 -1
  131. package/resource/knowledge/livekit/core-sdk/{voice/ios/voice-audience-list.md → features/ios/audience-list.md} +1 -2
  132. package/resource/knowledge/livekit/core-sdk/{voice/ios/voice-audio-effect.md → features/ios/audio-effect.md} +1 -3
  133. package/resource/knowledge/livekit/core-sdk/{live/ios/live-base-beauty.md → features/ios/base-beauty.md} +2 -2
  134. package/resource/knowledge/livekit/core-sdk/{voice/ios/voice-gift.md → features/ios/gift.md} +2 -3
  135. package/resource/knowledge/livekit/core-sdk/{voice/ios/voice-room-list.md → features/ios/live-list.md} +2 -4
  136. package/resource/knowledge/livekit/core-sdk/live/android/{live-co-guest-interaction.md → co-guest-interaction.md} +0 -1
  137. package/resource/knowledge/livekit/core-sdk/live/android/{live-host-interaction.md → host-interaction.md} +5 -7
  138. package/resource/knowledge/livekit/core-sdk/live/android/{live-integration.md → integration.md} +3 -6
  139. package/resource/knowledge/livekit/core-sdk/live/flutter/{live-co-guest-interaction.md → co-guest-interaction.md} +1 -1
  140. package/resource/knowledge/livekit/core-sdk/live/flutter/{live-host-interaction.md → host-interaction.md} +0 -2
  141. package/resource/knowledge/livekit/core-sdk/live/flutter/{live-integration.md → integration.md} +1 -4
  142. package/resource/knowledge/livekit/core-sdk/live/ios/{live-co-guest-interaction.md → co-guest-interaction.md} +0 -1
  143. package/resource/knowledge/livekit/core-sdk/live/ios/{live-host-interaction.md → host-interaction.md} +2 -4
  144. package/resource/knowledge/livekit/core-sdk/live/ios/{live-integration.md → integration.md} +2 -5
  145. package/resource/knowledge/livekit/core-sdk/voice/android/{voice-host-interaction.md → host-interaction.md} +3 -5
  146. package/resource/knowledge/livekit/core-sdk/voice/android/{voice-integration.md → integration.md} +3 -6
  147. package/resource/knowledge/livekit/core-sdk/voice/flutter/{voice-co-guest-interaction.md → co-guest-interaction.md} +1 -2
  148. package/resource/knowledge/livekit/core-sdk/voice/flutter/{voice-integration.md → integration.md} +6 -9
  149. package/resource/knowledge/livekit/core-sdk/voice/ios/{voice-co-guest-interaction.md → co-guest-interaction.md} +2 -2
  150. package/resource/knowledge/livekit/core-sdk/voice/ios/{voice-host-interaction.md → host-interaction.md} +4 -6
  151. package/resource/knowledge/livekit/core-sdk/voice/ios/{voice-integration.md → integration.md} +1 -4
  152. package/resource/knowledge/livekit/preset/live/vue/features/barrage.md +0 -2
  153. package/resource/knowledge/push/api-reference/android.md +123 -0
  154. package/resource/knowledge/push/api-reference/flutter.md +176 -0
  155. package/resource/knowledge/push/api-reference/harmonyos.md +138 -0
  156. package/resource/knowledge/push/api-reference/ios.md +176 -0
  157. package/resource/knowledge/push/api-reference/react-native.md +147 -0
  158. package/resource/knowledge/push/api-reference/uni-app.md +147 -0
  159. package/resource/knowledge/push/api-reference/unity.md +119 -0
  160. package/resource/knowledge/push/api-reference/unreal-engine.md +123 -0
  161. package/resource/knowledge/push/config/android.md +4 -7
  162. package/resource/knowledge/push/config/harmonyos.md +0 -3
  163. package/resource/knowledge/push/config/ios.md +12 -20
  164. package/resource/knowledge/push/config/react-native.md +18 -26
  165. package/resource/knowledge/push/config/unity.md +20 -28
  166. package/resource/knowledge/push/config/unreal-engine.md +21 -29
  167. package/resource/knowledge/push/integration/android.md +6 -8
  168. package/resource/knowledge/push/integration/flutter.md +6 -9
  169. package/resource/knowledge/push/integration/harmonyos.md +1 -0
  170. package/resource/knowledge/push/integration/ios.md +7 -9
  171. package/resource/knowledge/push/integration/react-native.md +9 -13
  172. package/resource/knowledge/push/integration/uni-app.md +7 -7
  173. package/resource/knowledge/push/integration/unity.md +10 -13
  174. package/resource/knowledge/push/integration/unreal-engine.md +6 -9
  175. package/resource/knowledge/push/overview/prepare.md +2 -2
  176. package/resource/knowledge/roomkit/core-sdk/android/call-user-to-room.md +3 -3
  177. package/resource/knowledge/roomkit/core-sdk/android/capability-matrix.md +46 -0
  178. package/resource/knowledge/roomkit/core-sdk/android/room-participant-state.md +1 -1
  179. package/resource/knowledge/roomkit/core-sdk/android/room-state.md +2 -2
  180. package/resource/knowledge/roomkit/core-sdk/android/schedule-room.md +6 -6
  181. package/resource/knowledge/roomkit/core-sdk/android/unsupported-features.md +79 -0
  182. package/resource/knowledge/roomkit/core-sdk/flutter/capability-matrix.md +46 -0
  183. package/resource/knowledge/roomkit/core-sdk/flutter/room-participant-state.md +1 -1
  184. package/resource/knowledge/roomkit/core-sdk/flutter/unsupported-features.md +79 -0
  185. package/resource/knowledge/roomkit/core-sdk/ios/capability-matrix.md +46 -0
  186. package/resource/knowledge/roomkit/core-sdk/ios/room-participant-state.md +1 -1
  187. package/resource/knowledge/roomkit/core-sdk/ios/unsupported-features.md +79 -0
  188. package/resource/knowledge/roomkit/preset/android/integration.md +5 -7
  189. package/resource/knowledge/roomkit/preset/flutter/integration.md +2 -7
  190. package/resource/knowledge/roomkit/preset/ios/integration.md +3 -9
  191. package/resource/knowledge/roomkit/preset/react/integration.md +12 -16
  192. package/resource/knowledge/trtc/android/TRTCCloud.md +154 -238
  193. package/resource/knowledge/trtc/android/TRTCCloudDef.md +133 -134
  194. package/resource/knowledge/trtc/android/TRTCCloudListener.md +86 -120
  195. package/resource/knowledge/trtc/android/TRTCStatistics.md +10 -10
  196. package/resource/knowledge/trtc/android/TXAudioEffectManager.md +10 -30
  197. package/resource/knowledge/trtc/android/TXBeautyManager.md +25 -25
  198. package/resource/knowledge/trtc/android/TXDeviceManager.md +2 -2
  199. package/resource/knowledge/trtc/android/TXLiteAVCode.md +12 -12
  200. package/resource/knowledge/trtc/c++/ITRTCCloud.md +166 -261
  201. package/resource/knowledge/trtc/c++/ITRTCStatistics.md +12 -12
  202. package/resource/knowledge/trtc/c++/ITXAudioEffectManager.md +10 -30
  203. package/resource/knowledge/trtc/c++/ITXDeviceManager.md +9 -11
  204. package/resource/knowledge/trtc/c++/TRTCCloudCallback.md +96 -130
  205. package/resource/knowledge/trtc/c++/TRTCTypeDef.md +122 -123
  206. package/resource/knowledge/trtc/c++/TXLiteAVCode.md +12 -12
  207. package/resource/knowledge/trtc/ios/TRTCCloud.md +168 -255
  208. package/resource/knowledge/trtc/ios/TRTCCloudDef.md +124 -125
  209. package/resource/knowledge/trtc/ios/TRTCCloudDelegate.md +89 -124
  210. package/resource/knowledge/trtc/ios/TRTCStatistics.md +10 -10
  211. package/resource/knowledge/trtc/ios/TXAudioEffectManager.md +9 -28
  212. package/resource/knowledge/trtc/ios/TXBeautyManager.md +25 -25
  213. package/resource/knowledge/trtc/ios/TXDeviceManager.md +9 -11
  214. package/resource/knowledge/trtc/ios/TXLiteAVCode.md +12 -12
  215. package/server.js +21 -21
  216. package/tools/common/finalize_answer.js +1 -1
  217. package/tools/common/present_framework_choice.js +2 -2
  218. package/tools/common/search_trtc_knowledge.js +3 -3
  219. package/tools/common/submit_feedback.js +1 -1
  220. package/tools/definitions/get_native_live_uikit_integration_def.js +61 -0
  221. package/tools/definitions/get_native_livekit_core_integration_def.js +3 -3
  222. package/tools/definitions/present_framework_choice_def.js +2 -2
  223. package/tools/definitions/search_trtc_knowledge_def.js +5 -5
  224. package/tools/index.js +2 -0
  225. package/tools/live/get_native_live_uikit_integration.js +69 -0
  226. package/tools/live/get_native_livekit_core_integration.js +6 -6
  227. package/utils/report-cls-client.js +1 -1
  228. package/utils/report-es-client.js +1 -1
  229. package/resource/knowledge/callkit/preset/web/api.md +0 -83
  230. package/resource/knowledge/livekit/core-sdk/live/android/live-audio-effect.md +0 -226
  231. package/resource/knowledge/livekit/core-sdk/live/android/live-live-list.md +0 -438
  232. package/resource/knowledge/livekit/core-sdk/live/flutter/live-barrage.md +0 -490
  233. package/resource/knowledge/livekit/core-sdk/live/flutter/live-live-list.md +0 -726
  234. package/resource/knowledge/livekit/core-sdk/live/ios/live-audience-list.md +0 -264
  235. package/resource/knowledge/livekit/core-sdk/live/ios/live-audio-effect.md +0 -216
  236. package/resource/knowledge/livekit/core-sdk/live/ios/live-gift.md +0 -407
  237. package/resource/knowledge/livekit/core-sdk/live/ios/live-live-list.md +0 -349
  238. package/resource/knowledge/livekit/core-sdk/voice/android/voice-audience-list.md +0 -269
  239. package/resource/knowledge/livekit/core-sdk/voice/android/voice-barrage.md +0 -456
  240. package/resource/knowledge/livekit/core-sdk/voice/android/voice-gift.md +0 -455
  241. package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-audience-list.md +0 -260
  242. package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-audio-effect.md +0 -598
  243. package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-gift.md +0 -424
  244. package/resource/knowledge/livekit/core-sdk/voice/ios/voice-barrage.md +0 -408
  245. /package/resource/knowledge/livekit/core-sdk/{live/android/live-audience-list.md → features/android/audience-list.md} +0 -0
  246. /package/resource/knowledge/livekit/core-sdk/{live/android/live-barrage.md → features/android/barrage.md} +0 -0
  247. /package/resource/knowledge/livekit/core-sdk/{live/android/live-base-beauty.md → features/android/base-beauty.md} +0 -0
  248. /package/resource/knowledge/livekit/core-sdk/{live/flutter/live-audience-list.md → features/flutter/audience-list.md} +0 -0
  249. /package/resource/knowledge/livekit/core-sdk/{live/flutter/live-base-beauty.md → features/flutter/base-beauty.md} +0 -0
  250. /package/resource/knowledge/livekit/core-sdk/{live/ios/live-barrage.md → features/ios/barrage.md} +0 -0
  251. /package/resource/knowledge/livekit/core-sdk/voice/android/{voice-co-guest-interaction.md → co-guest-interaction.md} +0 -0
@@ -62,11 +62,10 @@ end
62
62
 
63
63
  ### Step 3: Implement Login Logic
64
64
 
65
- Call `LoginStore.shared.login` in the project to complete login. **This is the key premise for using **`AtomicXCore`** all functions**.
65
+ Call `LoginStore.shared.login` in the project to complete login. **This is the key premise for using** `AtomicXCore` **all functions**.
66
66
 
67
67
  > **Important:**
68
68
  >
69
-
70
69
  > We recommend calling LoginStore.shared.login after successful log-in to your App's user account to ensure clear and consistent login service logic.
71
70
  >
72
71
 
@@ -108,7 +107,7 @@ void main() async {
108
107
 
109
108
  Follow these steps to quickly set up a voice chat room as the host.
110
109
 
111
- #### 1. **Initialize **LiveSeatStore
110
+ #### 1. **Initialize** LiveSeatStore
112
111
 
113
112
  On your anchor page, create a `LiveSeatStore` instance. You need to listen to changes in `liveSeatStore.liveSeatState` for real-time seat updates and UI rendering.
114
113
  ``` java
@@ -169,7 +168,7 @@ class _YourAnchorPageState extends State<YourAnchorPage> {
169
168
 
170
169
  #### 2. Turn on Microphone
171
170
 
172
- Turn on the microphone by calling the `DeviceStore``openLocalMicrophone` API:
171
+ Turn on the microphone by calling the `DeviceStore` `openLocalMicrophone` API:
173
172
  ``` java
174
173
  class _YourAnchorPageState extends State<YourAnchorPage> {
175
174
  // ... Other code ...
@@ -183,7 +182,7 @@ class _YourAnchorPageState extends State<YourAnchorPage> {
183
182
 
184
183
  #### 3. Start Voice Chat
185
184
 
186
- By calling the `LiveListStore``createLive` API to start a voice chat room live stream:
185
+ By calling the `LiveListStore` `createLive` API to start a voice chat room live stream:
187
186
  ``` java
188
187
  class _YourAnchorPageState extends State<YourAnchorPage> {
189
188
  // ... Other code ...
@@ -246,7 +245,6 @@ class _YourAnchorPageState extends State<YourAnchorPage> {
246
245
 
247
246
  > **Note:**
248
247
  >
249
-
250
248
  > For the business code of the Mic Seat `UI` effect, see the [seat_grid_widget.dart](https://github.com/Tencent-RTC/TUIKit_Flutter/blob/main/live/livekit/lib/seat_grid_widget/seat_grid_widget.dart) file in the `TUILiveKit` open-source project to learn about the complete implementation logic.
251
249
  >
252
250
 
@@ -336,7 +334,7 @@ class _YourAnchorPageState extends State<YourAnchorPage> {
336
334
 
337
335
  Enable audience members to join the voice chat room with the following steps.
338
336
 
339
- #### 1. **Initialize the **LiveSeatStore
337
+ #### 1. **Initialize the** LiveSeatStore
340
338
 
341
339
  On your audience page, create a `LiveSeatStore` instance and listen to changes in `liveSeatState.seatList` to render the mic seat UI.
342
340
  ``` java
@@ -396,7 +394,7 @@ class _YourAudiencePageState extends State<YourAudiencePage> {
396
394
 
397
395
  #### 2. **Join the Voice Chat Room**
398
396
 
399
- By calling the `LiveListStore``joinLive` API to join a voice chat room, sample code:
397
+ By calling the `LiveListStore` `joinLive` API to join a voice chat room, sample code:
400
398
  ``` java
401
399
  class _YourAudiencePageState extends State<YourAudiencePage> {
402
400
  // ... Other code ...
@@ -460,7 +458,6 @@ In a voice chat room scenario, a common need is to display a wave animation on t
460
458
 
461
459
  > **Note:**
462
460
  >
463
-
464
461
  > When an Anchor speaks, a wave animation effect is shown. See the [seat_grid_widget.dart](https://github.com/Tencent-RTC/TUIKit_Flutter/blob/main/live/livekit/lib/seat_grid_widget/seat_grid_widget.dart) file in the `TUILiveKit` open-source project to learn about the complete implementation logic.
465
462
  >
466
463
 
@@ -470,7 +470,7 @@ For detailed information about all public interfaces, properties, and methods of
470
470
  ### What’s the difference between voice room mic-link and video live mic-link implementation?
471
471
 
472
472
  The main differences are in business logic and UI presentation:
473
- - `Video Live: `The core is the video feed. Use `LiveCoreView` as the main component to render video streams for the host and mic-linked viewers. The UI focuses on video layout and sizing, and you can add overlays (nickname, placeholder image) via `VideoViewDelegate`. Both camera and microphone can be enabled.
473
+ - `Video Live:` The core is the video feed. Use `LiveCoreView` as the main component to render video streams for the host and mic-linked viewers. The UI focuses on video layout and sizing, and you can add overlays (nickname, placeholder image) via `VideoViewDelegate`. Both camera and microphone can be enabled.
474
474
 
475
475
  - `Voice Room:` The core is the mic seat grid. Do not use `LiveCoreView`; instead, build a grid UI (e.g., `UICollectionView`) based on the `LiveSeatStore`'s `state` (especially `seatList`). The UI focuses on real-time display of each seat’s `SeatInfo` status: occupied, muted, locked, and speaking status. Only the microphone needs to be enabled.
476
476
 
@@ -498,7 +498,7 @@ This is an important distinction. `DeviceStore` manages the physical device, whi
498
498
 
499
499
  - `unmuteMicrophone`: Unmute. Resumes sending audio stream to remote.
500
500
 
501
- **Recommended workflow: **"Open the device once, control mute/unmute while on mic"
501
+ **Recommended workflow:** "Open the device once, control mute/unmute while on mic"
502
502
 
503
503
  1. **When joining mic:** When an audience member successfully joins the mic, call `openLocalMicrophone` once to start the device.
504
504
 
@@ -58,7 +58,7 @@ After selecting a target streamer, use `CoHostStore.requestHostConnection` to se
58
58
  > **Note:**
59
59
  >
60
60
  > - AtomicXCore supports up to 9 rooms for cross-room co-hosting, with 50 users per room.
61
- > - The API supports batch invitations. To check if an invitation to a single room was successful, you need to check if the` Result` is `.success` in the completion callback.
61
+ > - The API supports batch invitations. To check if an invitation to a single room was successful, you need to check if the `Result` is `.success` in the completion callback.
62
62
  > - The API accepts extension fields. After the invitation is sent, this field is delivered to the target streamer via the `onCoHostRequestReceived` callback. Use it to pass custom business data, such as "start PK immediately".
63
63
 
64
64
  ``` swift
@@ -335,8 +335,8 @@ PK can end in two ways:
335
335
 
336
336
  > **Note:**
337
337
  >
338
- > - After PK ends, the session returns to cross-room co-hosting.
339
- > - To end co-hosting after PK, call `exitHostConnection`.
338
+ > - After PK ends, the session returns to cross-room co-hosting.
339
+ > - To end co-hosting after PK, call `exitHostConnection`.
340
340
 
341
341
  ### Scenario 2: Co-hosting with PK Mode
342
342
 
@@ -353,7 +353,6 @@ PK can end in two ways:
353
353
 
354
354
  > **Note:**
355
355
  >
356
-
357
356
  > This flow requires both CoHostStore and BattleStore, with `BattleConfig.needResponse` set to `false`.
358
357
  >
359
358
 
@@ -463,11 +462,10 @@ This step is same as Enter PK State.
463
462
 
464
463
  ### Updating PK Score via REST API
465
464
 
466
- In typical** live host PK scenarios,** the value of gifts received by the host is linked to the PK score (for example, when a viewer sends a "Rocket" gift, the host's PK score increases by 500 points). You can implement real-time PK score updates using our `REST API`.
465
+ In typical **live host PK scenarios,** the value of gifts received by the host is linked to the PK score (for example, when a viewer sends a "Rocket" gift, the host's PK score increases by 500 points). You can implement real-time PK score updates using our `REST API`.
467
466
 
468
467
  > **Note:**
469
468
  >
470
-
471
469
  > The PK score system in the LiveKit backend uses pure numeric calculation and accumulation. You must calculate the PK score according to your own business logic before calling the update API. See the following PK score calculation examples:
472
470
  >
473
471
 
@@ -40,7 +40,6 @@ Call `LoginStore.shared.login` in your project to complete authentication. **Thi
40
40
 
41
41
  > **Note:**
42
42
  >
43
-
44
43
  > We recommend calling LoginStore.shared.login only after your app's own user authentication is successful, to ensure clear and consistent login logic.
45
44
  >
46
45
 
@@ -121,7 +120,7 @@ class YourAnchorViewController: UIViewController {
121
120
  }
122
121
  ```
123
122
 
124
- #### **2. **Turn On Microphone
123
+ #### **2.** Turn On Microphone
125
124
 
126
125
  Turn On Microphone by calling `openLocalMicrophone` from `DeviceStore`:
127
126
  ``` swift
@@ -200,7 +199,6 @@ class YourAnchorViewController: UIViewController {
200
199
 
201
200
  > **Note:**
202
201
  >
203
-
204
202
  > For seat UI logic and effects, refer to the open-source [SeatGridView.swift](https://github.com/Tencent-RTC/TUIKit_iOS/blob/main/live/Sources/Component/SeatGridview/SeatGridView.swift) in TUILiveKit.
205
203
  >
206
204
 
@@ -380,7 +378,6 @@ In voice chat rooms, it's common to show a wave animation over the avatar of use
380
378
 
381
379
  > **Note:**
382
380
  >
383
-
384
381
  > For a complete implementation of the speaking wave animation, refer to [SeatGridView.swift](https://github.com/Tencent-RTC/TUIKit_iOS/blob/main/live/Sources/Component/SeatGridview/SeatGridView.swift) in TUILiveKit.
385
382
  >
386
383
 
@@ -85,10 +85,8 @@ onMounted(async () => {
85
85
 
86
86
  > **Note:**
87
87
  >
88
-
89
88
  > Note: To directly learn about the custom details of the Barrage Message Component (BarrageList), quickly jump to the following link: Barrage Message Component Customization;
90
89
  >
91
-
92
90
  > Note: To directly learn about the custom details of the Message Sending Component (BarrageInput), quickly jump to the following link: Message Sending Component Customization.
93
91
  >
94
92
 
@@ -0,0 +1,123 @@
1
+ ## TIMPush - TIMPushManager
2
+
3
+ public abstract class TIMPushManager: Push Plugin Interface Class.
4
+
5
+ ### API overview
6
+
7
+ #### Register/Unregister Push Service Interface
8
+
9
+ |API|Description|
10
+ |---------|---------|
11
+ |registerPush|Register Push Service, push information reads the configuration file timpush-configs.json in the project (this interface must be called after the App user has agreed to the privacy policy to use the push service).|
12
+ |unRegisterPush|Unregister and disable the push service.|
13
+ |setRegistrationID|RegistrationID is the unique identifier ID of the push receiving device. By default, this ID is automatically generated when the push service is successfully registered, but you can also customize the setting. You can push messages to the specified device based on the RegistrationID. Note that uninstalling and reinstalling the device will change the RegistrationID, so you need to call the setRegistrationID interface before registering the push service.|
14
+ |getRegistrationID|After successfully registering the push service, you can get the unique identifier ID of the push receiving device, that is, the RegistrationID, by calling the getRegistrationID interface. You can push messages to the specified device based on the RegistrationID.|
15
+
16
+ #### Push global listening interface
17
+
18
+ |API|Description|
19
+ |---------|---------|
20
+ |addPushListener|Add Push listener.|
21
+ |removePushListener|Remove Push listener.|
22
+
23
+ #### Custom Configuration Interface
24
+
25
+ |API|Description|
26
+ |---------|---------|
27
+ |forceUseFCMPushChannel|Specify offline push to use the FCM channel for the device. This needs to be called before registering the push service.|
28
+ |disablePostNotificationInForeground|Disable the notification bar when the app is in the foreground.|
29
+
30
+ ### Interface Details
31
+
32
+ #### Static Public Member Functions
33
+
34
+ static TIMPushManager getInstance(): Retrieves the TIMPushManager manager instance.
35
+
36
+ #### Member Function Description
37
+
38
+ ##### abstract void registerPush(Context context, int sdkAppId, String appKey, TIMPushCallback callback)
39
+
40
+ Register Push Service. Please correctly pass the parameters sdkAppId and appKey to register the push service.
41
+
42
+ Parameter description:
43
+ | Parameter | Description | Get Path |
44
+ | --- | --- | --- |
45
+ | sdkAppId | The application ID assigned to you by the Chat console. | |
46
+ | appKey | The client key assigned to you by the Chat console. | |
47
+
48
+ ##### abstract void unRegisterPush(TIMPushCallback callback)
49
+
50
+ Unregister and disable the push service.
51
+
52
+ ##### abstract void setRegistrationID(String registrationID, TIMPushCallback callback)
53
+
54
+ Set the push ID identifier used for registering the push service, i.e., RegistrationID, which needs to be called before registering the push service.
55
+
56
+ Parameter description:
57
+
58
+ |Parameter|Description|
59
+ |---------|---------|
60
+ |registrationID|Unique ID for push notifications on the device, which may change if uninstalled and reinstalled.|
61
+
62
+ ##### abstract void getRegistrationID(TIMPushCallback callback)
63
+
64
+ After successfully registering for the push service, obtain the push ID identifier, i.e., RegistrationID.
65
+
66
+ ##### abstract void addPushListener(TIMPushListener listener)
67
+
68
+ Add Push listener
69
+
70
+ ##### abstract void removePushListener(TIMPushListener listener)
71
+
72
+ Remove Push listener
73
+
74
+ ##### abstract void forceUseFCMPushChannel(boolean enable)
75
+
76
+ Specify offline push to use the FCM channel for the device. This needs to be called before registering the push service.
77
+
78
+ Parameter description:
79
+ | Parameter | Description |
80
+ | --- | --- |
81
+ | enable | - true: Use FCM channel.<br>- false: use the native channel. |
82
+
83
+ ##### abstract void disablePostNotificationInForeground(boolean disable)
84
+
85
+ Disable notification bar pop-ups when the app is in the foreground. When the Push SDK receives an online Push, it will automatically add a Notification to the notification bar. If you want to handle the online Push messages yourself, you can call this interface to disable the automatic notification bar pop-up feature.
86
+
87
+ Parameter description:
88
+ | Parameter | Description |
89
+ | --- | --- |
90
+ | disable | - true: disable<br>- false: enable |
91
+
92
+ ## TIMPush - TIMPushListener
93
+
94
+ public abstract class TIMPushListener: Push Listener class
95
+
96
+ ### API overview
97
+
98
+ |API|Description|
99
+ |---------|---------|
100
+ |onRecvPushMessage|Received Push message.|
101
+ |onRevokePushMessage|Received a notification of Push message recall.|
102
+ |onNotificationClicked|Notification bar message click callback.|
103
+
104
+ ### Interface Details
105
+
106
+ #### Member Function Description
107
+
108
+ ##### void onRecvPushMessage(TIMPushMessage message)
109
+
110
+ Received Push message, message content.
111
+
112
+ ##### void onRevokePushMessage(String messageID)
113
+
114
+ Received a notification of Push message recall, messageID uniquely identifies the message.
115
+
116
+ ##### void onNotificationClicked(String ext)
117
+
118
+ Notification bar message click callback.
119
+
120
+ > **Note:**
121
+ >
122
+ > The push certificate in the console needs to be configured as "open a specific interface within the application" and use the default fill value to take effect.
123
+ >
@@ -0,0 +1,176 @@
1
+ ## TencentCloudChatPush
2
+
3
+ class TencentCloudChatPush: Push Plugin Interface Class.
4
+
5
+ ## API overview
6
+
7
+ ### Register/Unregister Push Service Interface
8
+
9
+ |API|Description|
10
+ |---------|---------|
11
+ |registerPush|Register Push Service, optionally override push information from interface parameter JSON.|
12
+ |unRegisterPush|Unregister Push Service.|
13
+ |setRegistrationID|RegistrationID is the unique identifier ID of the push receiving device. By default, this ID is automatically generated when the push service is successfully registered, but you can also customize the setting. You can push messages to the specified device based on the RegistrationID. Note that uninstalling and reinstalling the device will change the RegistrationID, so you need to call the setRegistrationID interface before registering the push service.|
14
+ |getRegistrationID|After successfully registering the push service, you can get the unique identifier ID of the push receiving device, that is, the RegistrationID, by calling the getRegistrationID interface. You can push messages to the specified device based on the RegistrationID.|
15
+
16
+ ### Push global listening interface
17
+
18
+ |API|Description|
19
+ |---------|---------|
20
+ |addPushListener|Add Push listener.|
21
+ |removePushListener|Remove Push listener.|
22
+
23
+ ### Custom Configuration Interface
24
+
25
+ |API|Description|
26
+ |---------|---------|
27
+ |forceUseFCMPushChannel|Specify offline push to use the FCM channel for the device. This needs to be called before registering the push service.|
28
+ |disablePostNotificationInForeground|Disable the notification bar when the app is in the foreground.|
29
+
30
+ ## Interface Details
31
+
32
+ ### Push Plugin Class
33
+
34
+ TencentCloudChatPush(): Get the TencentCloudChatPush plugin instance, which is a static singleton. Subsequent steps are performed through this singleton instance for method calls.
35
+
36
+ ### Member Function Description
37
+
38
+ #### registerPush
39
+
40
+ Register Push Service, to be called after Chat account login is successful.
41
+
42
+ **Sample code:**
43
+ ``` java
44
+ void _onNotificationClicked({required String ext, String? userID, String? groupID}) {
45
+ print("_onNotificationClicked: $ext, userID: $userID, groupID: $groupID");
46
+ /// Custom Processing
47
+ }
48
+ TencentCloudChatPush().registerPush(
49
+ onNotificationClicked: _onNotificationClicked,
50
+ sdkAppId: Your sdkAppId,
51
+ appKey: "client key",
52
+ apnsCertificateID: Your configured Certificate ID);
53
+ ```
54
+
55
+ **Parameter description:**
56
+ | Parameter | Type | Description | |
57
+ | --- | --- | --- | --- |
58
+ | onNotificationClicked | ext | String | The complete ext information carried by the message is specified by the sender. If not specified, there is a default value. You can parse this field to navigate to the corresponding page. |
59
+ | userID | String? | This parameter corresponds to userID. It automatically tries to parse the ext JSON String to obtain the userID of the other party in a single chat.<br><strong>Note:</strong><br>If you have not customized the ext field, which is specified by the SDK or UIKit by default, you can use the default parsing here. If the parsing attempt fails, it will be null. | |
60
+ | groupID | String? | This parameter corresponds to groupID. It automatically tries to parse the ext JSON String to obtain the groupID information for group chats.<br><strong>Note:</strong><br>If you have not customized the ext field, which is specified by the SDK or UIKit by default, you can use the default parsing here. If the parsing attempt fails, it will be null. | |
61
+ | sdkAppId | int? | The application ID assigned to you by the Chat console | |
62
+ | appKey | String? | Client key assigned to you by the Chat console | |
63
+ | apnsCertificateID | int? | This item can be omitted if the setApnsCertificateID method is already configured separately. | |
64
+
65
+ #### unRegisterPush
66
+
67
+ Unregister offline push service.
68
+
69
+ **Sample code:**
70
+ ``` java
71
+ TencentCloudChatPush().unRegisterPush();
72
+ ```
73
+
74
+ #### setRegistrationID
75
+
76
+ Set the push ID used for registering the offline push service, that is, the RegistrationID, which needs to be called before registering the push service.
77
+
78
+ Parameter description:
79
+
80
+ |Parameter|Description|
81
+ |---------|---------|
82
+ |registrationID|Device push ID, which will change after uninstalling and reinstalling.|
83
+
84
+ **Sample code:**
85
+ ``` java
86
+ TencentCloudChatPush().setRegistrationID(registrationID: registrationID);
87
+ ```
88
+
89
+ #### getRegistrationID
90
+
91
+ After successfully registering for the offline push service, obtain the push ID, that is, the RegistrationID.
92
+
93
+ **Sample code:**
94
+ ``` java
95
+ TencentCloudChatPush().getRegistrationID();
96
+ ```
97
+
98
+ #### addPushListener
99
+
100
+ Add Push listener
101
+
102
+ **Sample code:**
103
+ ``` java
104
+ TIMPushListener timPushListener = TIMPushListener(
105
+ onRecvPushMessage: (TimPushMessage message) {
106
+ String messageLog = message.toLogString();
107
+ debugPrint(
108
+ "message: $messageLog");
109
+ },
110
+
111
+ onRevokePushMessage: (String messageId) {
112
+ debugPrint(
113
+ "message: $messageId");
114
+ },
115
+
116
+ onNotificationClicked: (String ext) {
117
+ debugPrint(
118
+ "ext: $ext");
119
+ }
120
+ );
121
+ TencentCloudChatPush.addPushListener(listener: timPushListener);
122
+ ```
123
+
124
+ #### removePushListener
125
+
126
+ Remove Push listener
127
+
128
+ **Sample code:**
129
+ ``` java
130
+ TIMPushListener timPushListener = TIMPushListener(
131
+ onRecvPushMessage: (TimPushMessage message) {
132
+ String messageLog = message.toLogString();
133
+ debugPrint(
134
+ "message: $messageLog");
135
+ },
136
+
137
+ onRevokePushMessage: (String messageId) {
138
+ debugPrint(
139
+ "message: $messageId");
140
+ },
141
+
142
+ onNotificationClicked: (String ext) {
143
+ debugPrint(
144
+ "ext: $ext");
145
+ }
146
+ );
147
+ TencentCloudChatPush.removePushListener(listener: timPushListener);
148
+ ```
149
+
150
+ #### forceUseFCMPushChannel
151
+
152
+ Specify offline push to use the FCM channel for the device. This needs to be called before registering the push service.
153
+
154
+ Parameter description:
155
+ | Parameter | Description |
156
+ | --- | --- |
157
+ | enable | - true: Use FCM channel.<br>- false: use the native channel. |
158
+
159
+ **Sample code:**
160
+ ``` java
161
+ TencentCloudChatPush.forceUseFCMPushChannel(enable: true);
162
+ ```
163
+
164
+ #### disablePostNotificationInForeground
165
+
166
+ Disable notification bar pop-ups when the app is in the foreground. When the Push SDK receives an online Push, it will automatically add a Notification to the notification bar. If you want to handle the online Push messages yourself, you can call this interface to disable the automatic notification bar pop-up feature.
167
+
168
+ Parameter description:
169
+ | Parameter | Description |
170
+ | --- | --- |
171
+ | disable | - true: disable<br>- false: enable |
172
+
173
+ **Sample code:**
174
+ ``` java
175
+ TencentCloudChatPush.disablePostNotificationInForeground(disable: true);
176
+ ```
@@ -0,0 +1,138 @@
1
+ ## TIMPushManager API Overview
2
+ | API | Description |
3
+ | --- | --- |
4
+ | registerPush | Register push service (call this API to use push service only after obtaining user consent for the privacy policy). |
5
+ | unRegisterPush | Unregister and disable push service. |
6
+ | setRegistrationID | - RegistrationID is the unique identifier of the push reception device.<br>- By default, it is system-generated when push service registration succeeds. You can also set custom registration ID.<br>- Based on RegistrationID, you can send push messages to specified devices.<br>- Note that uninstalling and reinstalling the device will change the RegistrationID, so you need to call the setRegistrationID API before registering the push service. |
7
+ | getRegistrationID | After successfully registering the push service, call this API to get the unique identifier of the push reception device, namely RegistrationID. |
8
+ | addPushListener | Add a Push Listener. |
9
+ | removePushListener | Remove a Push Listener. |
10
+ | disablePostNotificationInForeground | Enable/disable notification bar notifications when the app is in the foreground (default: enabled). |
11
+
12
+ ## API Detail
13
+
14
+ ### Register Push Service
15
+
16
+ #### API
17
+ ``` tsx
18
+ registerPush(
19
+ context: Context,
20
+ sdkAppId?: number,
21
+ appKey?: string,
22
+ businessId?: number
23
+ ): Promise<TIMPushResult>;
24
+ ```
25
+
26
+ #### Parameter description:
27
+ | Parameter | Type | Description | Access Path |
28
+ | --- | --- | --- | --- |
29
+ | context | Context | application context | - |
30
+ | sdkAppId | number | Push Service SDKAppID. | <a href="https://console.trtc.io/chat/push-plugin-push-identifier">Chat > Push > Access Settings</a> page |
31
+ | appKey | String | Push Service client key. | |
32
+ | businessId | number | Certificate ID assigned in the Chat console. | |
33
+
34
+ ### Unregistering and Disabling Push Service
35
+
36
+ #### API
37
+ ``` tsx
38
+ unRegisterPush(): Promise<TIMPushResult>;
39
+ ```
40
+
41
+ ### Setting Push ID Identifier RegistrationID
42
+
43
+ > **Note:**
44
+ >
45
+ > 1. If you call this API, ensure to call it before `registerPush`.
46
+
47
+ #### API
48
+ ``` tsx
49
+ setRegistrationID(registrationID: string): Promise<TIMPushResult>;
50
+ ```
51
+
52
+ #### Parameter description:
53
+
54
+ |Parameter|Type|Description|
55
+ |---------|---------|---------|
56
+ |registrationID|String|Custom push ID identifier.|
57
+
58
+ ### Getting Push ID Identifier RegistrationID
59
+
60
+ > **Note:**
61
+ >
62
+ > Note: If you have called the `setRegistrationID` API to set an identifier ID, this API will return the identifier ID you have set. Otherwise, it will return a random value generated by the Push SDK.
63
+ >
64
+
65
+ #### API
66
+ ``` tsx
67
+ getRegistrationID(): Promise<TIMPushResult>;
68
+ ```
69
+
70
+ ### Adding a Push Listener
71
+
72
+ #### API
73
+ ``` tsx
74
+ addPushListener(listener: TIMPushListener): void;
75
+ ```
76
+
77
+ #### Parameter description:
78
+
79
+ |Parameter|Type|Description|
80
+ |---------|---------|---------|
81
+ |listener|TIMPushListener|Push event processing method|
82
+
83
+ ### Removing a Push Listener
84
+
85
+ #### API
86
+ ``` tsx
87
+ removePushListener(listener: TIMPushListener): void;
88
+ ```
89
+
90
+ #### Parameter description:
91
+
92
+ |Parameter|Type|Description|
93
+ |---------|---------|---------|
94
+ |listener|TIMPushListener|Push event processing method|
95
+
96
+ ### Enabling/Disabling Notification Bar Notifications When the App Is in the Foreground
97
+
98
+ #### API
99
+ ``` tsx
100
+ disablePostNotificationInForeground(disable: boolean): void;
101
+ ```
102
+
103
+ #### Parameter description:
104
+ | Parameter | Type | Description |
105
+ | --- | --- | --- |
106
+ | disable | boolean | Enable/disable notification bar notifications when the app is in the foreground (default: off).<br>- Disable notification bar notifications when the app is in the foreground.<br>- false: Enable notification bar notifications when the app is in the foreground. |
107
+
108
+ ## TIMPushListener API Overview
109
+
110
+ |API|Description|
111
+ |---------|---------|
112
+ |onRecvPushMessage|Received a Push message.|
113
+ |onRevokePushMessage|Received a Push message recall notification.|
114
+ |onNotificationClicked|Click the notification bar message Webhook.|
115
+
116
+ ### API Detail
117
+
118
+ #### Member Function Description
119
+
120
+ ##### onMessageReceived(message: TIMPushMessage): void;
121
+
122
+ Received a Push message. Received a message.
123
+
124
+ ##### onRevokePushMessage(messageID: string): void;
125
+
126
+ Received a Push message recall notification with the unique message identifier messageID.
127
+
128
+ ##### onNotificationClicked(ext: string): void;
129
+
130
+ Click the notification bar message Webhook.
131
+
132
+ ## TIMPushResult API Overview
133
+
134
+ |Field|Description|Type|
135
+ |---------|---------|---------|
136
+ |code|Error code|number|
137
+ |message|Error Description|string|
138
+ |data|Return Values|unknown|