juggleim-rnsdk 0.2.6 → 0.2.7

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 (133) hide show
  1. package/android/build/.transforms/42b8ab7e96b9440b0e91d2ecba5f579c/transformed/classes/classes_dex/classes.dex +0 -0
  2. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$10.dex +0 -0
  3. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$11.dex +0 -0
  4. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$12.dex +0 -0
  5. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$13.dex +0 -0
  6. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$14.dex +0 -0
  7. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$15.dex +0 -0
  8. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$16.dex +0 -0
  9. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$17.dex +0 -0
  10. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$18.dex +0 -0
  11. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$19.dex +0 -0
  12. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$20.dex +0 -0
  13. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$21.dex +0 -0
  14. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$22.dex +0 -0
  15. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$23.dex +0 -0
  16. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$24.dex +0 -0
  17. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$25.dex +0 -0
  18. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$26.dex +0 -0
  19. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$27.dex +0 -0
  20. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$28.dex +0 -0
  21. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$29.dex +0 -0
  22. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$6.dex +0 -0
  23. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$7.dex +0 -0
  24. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$8.dex +0 -0
  25. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager$9.dex +0 -0
  26. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/JuggleIMManager.dex +0 -0
  27. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/call/JuggleIMCallModule$3.dex +0 -0
  28. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/juggleim/call/JuggleIMCallModule.dex +0 -0
  29. package/android/build/.transforms/a3b636e0768beb7635f48b7f77613c33/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  30. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  31. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +1 -1
  32. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$10.class +0 -0
  33. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$11.class +0 -0
  34. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$12.class +0 -0
  35. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$13.class +0 -0
  36. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$14.class +0 -0
  37. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$15.class +0 -0
  38. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$16.class +0 -0
  39. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$17.class +0 -0
  40. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$18.class +0 -0
  41. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$19.class +0 -0
  42. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$20.class +0 -0
  43. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$21.class +0 -0
  44. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$22.class +0 -0
  45. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$23.class +0 -0
  46. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$24.class +0 -0
  47. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$25.class +0 -0
  48. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$26.class +0 -0
  49. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$27.class +0 -0
  50. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$28.class +0 -0
  51. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$29.class +0 -0
  52. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$6.class +0 -0
  53. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$7.class +0 -0
  54. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$8.class +0 -0
  55. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager$9.class +0 -0
  56. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/JuggleIMManager.class +0 -0
  57. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/call/JuggleIMCallModule$3.class +0 -0
  58. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/juggleim/call/JuggleIMCallModule.class +0 -0
  59. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$10.class +0 -0
  60. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$11.class +0 -0
  61. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$12.class +0 -0
  62. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$13.class +0 -0
  63. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$14.class +0 -0
  64. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$15.class +0 -0
  65. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$16.class +0 -0
  66. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$17.class +0 -0
  67. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$18.class +0 -0
  68. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$19.class +0 -0
  69. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$20.class +0 -0
  70. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$21.class +0 -0
  71. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$22.class +0 -0
  72. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$23.class +0 -0
  73. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$24.class +0 -0
  74. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$25.class +0 -0
  75. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$26.class +0 -0
  76. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$27.class +0 -0
  77. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$28.class +0 -0
  78. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$29.class +0 -0
  79. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$6.class +0 -0
  80. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$7.class +0 -0
  81. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$8.class +0 -0
  82. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager$9.class +0 -0
  83. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/JuggleIMManager.class +0 -0
  84. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/call/JuggleIMCallModule$3.class +0 -0
  85. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/juggleim/call/JuggleIMCallModule.class +0 -0
  86. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  87. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMCallModule$1.class.uniqueId2 +0 -0
  88. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMCallModule$2.class.uniqueId0 +0 -0
  89. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMCallModule$3.class.uniqueId3 +0 -0
  90. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMCallModule.class.uniqueId1 +0 -0
  91. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  92. package/android/build.gradle +1 -1
  93. package/android/src/main/java/com/juggleim/JuggleIMManager.java +0 -1
  94. package/android/src/main/java/com/juggleim/call/JuggleIMCallModule.java +17 -0
  95. package/ios/JModelFactory.m +63 -0
  96. package/ios/JuggleIMManager.m +5 -0
  97. package/ios/call/JuggleIMCallModule.m +16 -0
  98. package/juggleim-rnsdk.podspec +1 -1
  99. package/package.json +1 -1
  100. package/src/call/CallSession.ts +14 -0
  101. package/src/types.d.ts +13 -0
  102. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$1.class.uniqueId31 +0 -0
  103. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$10.class.uniqueId0 +0 -0
  104. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$11.class.uniqueId18 +0 -0
  105. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$12.class.uniqueId28 +0 -0
  106. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$13.class.uniqueId9 +0 -0
  107. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$14.class.uniqueId20 +0 -0
  108. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$15.class.uniqueId8 +0 -0
  109. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$16.class.uniqueId14 +0 -0
  110. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$17.class.uniqueId30 +0 -0
  111. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$18.class.uniqueId11 +0 -0
  112. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$19.class.uniqueId26 +0 -0
  113. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$2.class.uniqueId4 +0 -0
  114. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$20.class.uniqueId7 +0 -0
  115. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$21.class.uniqueId17 +0 -0
  116. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$22.class.uniqueId24 +0 -0
  117. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$23.class.uniqueId13 +0 -0
  118. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$24.class.uniqueId19 +0 -0
  119. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$25.class.uniqueId5 +0 -0
  120. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$26.class.uniqueId16 +0 -0
  121. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$27.class.uniqueId29 +0 -0
  122. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$28.class.uniqueId10 +0 -0
  123. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$29.class.uniqueId23 +0 -0
  124. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$3.class.uniqueId22 +0 -0
  125. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$30.class.uniqueId1 +0 -0
  126. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$4.class.uniqueId27 +0 -0
  127. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$5.class.uniqueId12 +0 -0
  128. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$6.class.uniqueId15 +0 -0
  129. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$7.class.uniqueId6 +0 -0
  130. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$8.class.uniqueId21 +0 -0
  131. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager$9.class.uniqueId25 +0 -0
  132. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/JuggleIMManager.class.uniqueId2 +0 -0
  133. /package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/{JuggleIMPackage.class.uniqueId3 → JuggleIMPackage.class.uniqueId4} +0 -0
@@ -1 +1 @@
1
- #Thu Jan 15 13:45:17 CST 2026
1
+ #Wed Jan 21 11:43:06 CST 2026
@@ -44,7 +44,7 @@ repositories {
44
44
 
45
45
  dependencies {
46
46
  implementation 'com.facebook.react:react-native:0.71.1'
47
- implementation 'com.juggle.im:juggle:1.8.35'
47
+ implementation 'com.juggle.im:juggle:1.8.37'
48
48
  implementation 'com.juggle.call.zego:juggle:1.8.25'
49
49
  implementation 'im.zego:express-video:3.17.3'
50
50
  }
@@ -820,7 +820,6 @@ public class JuggleIMManager extends ReactContextBaseJavaModule {
820
820
  }
821
821
  map.putArray("mentionMsgList", mentionMsgArray);
822
822
  }
823
- Log.d("JuggleIM", "mentionInfo: " + mentionInfo.getMentionMsgList());
824
823
  return map;
825
824
  }
826
825
 
@@ -308,6 +308,23 @@ public class JuggleIMCallModule extends ReactContextBaseJavaModule {
308
308
  promise.resolve(null);
309
309
  }
310
310
 
311
+ /**
312
+ * 停止预览
313
+ * 用于被叫方在接听前挂断时停止预览
314
+ * @param callId 会话ID
315
+ * @param promise Promise
316
+ */
317
+ @ReactMethod
318
+ public void stopPreview(String callId, Promise promise) {
319
+ ICallSession session = getCallManager().getCallSession(callId);
320
+ if (session == null) {
321
+ promise.resolve(null);
322
+ return;
323
+ }
324
+ session.stopPreview();
325
+ promise.resolve(null);
326
+ }
327
+
311
328
  @ReactMethod
312
329
  public void addSessionListener(String callId, String key) {
313
330
  ICallSession session = getCallManager().getCallSession(callId);
@@ -677,6 +677,8 @@
677
677
  content = [self voiceMessageFromData:data];
678
678
  } else if ([contentType isEqualToString:@"jg:merge"]) {
679
679
  content = [self mergeMessageFromData:data];
680
+ } else if ([contentType isEqualToString:@"jg:callfinishntf"]) {
681
+ content = [self callFinishNotifyMessageFromString:string];
680
682
  } else {
681
683
  content = [self unknownMessageFromString:string type:contentType];
682
684
  }
@@ -750,6 +752,67 @@
750
752
  return unknown;
751
753
  }
752
754
 
755
+ /**
756
+ * 解析通话结束通知消息
757
+ * 原生字段: reason, duration, mMediaType
758
+ * RN层字段: finishType, duration, mediaType
759
+ */
760
+ + (JUnknownMessage *)callFinishNotifyMessageFromString:(NSString *)string {
761
+ // 解析 JSON 字符串
762
+ NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding];
763
+ if (!data) {
764
+ return [self unknownMessageFromString:string type:@"jg:callfinishntf"];
765
+ }
766
+
767
+ NSError *error = nil;
768
+ NSDictionary *jsonDict = [NSJSONSerialization JSONObjectWithData:data
769
+ options:0
770
+ error:&error];
771
+ if (error || ![jsonDict isKindOfClass:[NSDictionary class]]) {
772
+ return [self unknownMessageFromString:string type:@"jg:callfinishntf"];
773
+ }
774
+
775
+ // 字段映射: reason -> finishType, mMediaType -> mediaType
776
+ NSMutableDictionary *mappedDict = [NSMutableDictionary dictionary];
777
+
778
+ // 映射 finishType (from reason)
779
+ if (jsonDict[@"reason"]) {
780
+ id reason = jsonDict[@"reason"];
781
+ if ([reason isKindOfClass:[NSString class]]) {
782
+ // 尝试将字符串转换为数字
783
+ NSNumber *finishTypeNum = @([reason integerValue]);
784
+ mappedDict[@"finishType"] = finishTypeNum;
785
+ } else if ([reason isKindOfClass:[NSNumber class]]) {
786
+ mappedDict[@"finishType"] = reason;
787
+ }
788
+ }
789
+
790
+ // 映射 duration (保持不变)
791
+ if (jsonDict[@"duration"]) {
792
+ mappedDict[@"duration"] = jsonDict[@"duration"];
793
+ }
794
+
795
+ // 映射 mediaType (from mMediaType)
796
+ if (jsonDict[@"mMediaType"]) {
797
+ mappedDict[@"mediaType"] = jsonDict[@"mMediaType"];
798
+ }
799
+
800
+ // 将映射后的字典转换回 JSON 字符串
801
+ NSData *mappedData = [NSJSONSerialization dataWithJSONObject:mappedDict
802
+ options:0
803
+ error:&error];
804
+ if (error || !mappedData) {
805
+ return [self unknownMessageFromString:string type:@"jg:callfinishntf"];
806
+ }
807
+
808
+ NSString *mappedString = [[NSString alloc] initWithData:mappedData encoding:NSUTF8StringEncoding];
809
+
810
+ JUnknownMessage *unknown = [JUnknownMessage new];
811
+ unknown.content = mappedString;
812
+ unknown.messageType = @"jg:callfinishntf";
813
+ return unknown;
814
+ }
815
+
753
816
  #pragma mark - extension
754
817
  + (void)extendDic:(NSMutableDictionary *)dic
755
818
  forConversationInfo:(JConversationInfo *)info {
@@ -485,6 +485,11 @@ RCT_EXPORT_METHOD(addConversationDelegate) {
485
485
  dict[@"previewList"] = mergeMsg.previewList;
486
486
  dict[@"containerMsgId"] = mergeMsg.containerMsgId;
487
487
  dict[@"extra"] = mergeMsg.extra ?: @"";
488
+ } else if ([contentType isEqualToString:@"jg:callfinishntf"]) {
489
+ JCallFinishNotifyMessage *callFinishMsg = (JCallFinishNotifyMessage *)content;
490
+ dict[@"reason"] = @(callFinishMsg.finishType);
491
+ dict[@"duration"] = @(callFinishMsg.duration);
492
+ dict[@"mediaType"] = @(callFinishMsg.mediaType);
488
493
  } else if (self.customMessageTypes[contentType]) {
489
494
  // 处理自定义消息:解析 JSON 数据
490
495
  JUnknownMessage *customMsg = (JUnknownMessage *)content;
@@ -331,6 +331,22 @@ RCT_EXPORT_METHOD(startPreview : (NSString *)callId viewTag : (
331
331
  });
332
332
  }
333
333
 
334
+ /**
335
+ * 停止预览
336
+ * 用于被叫方在接听前挂断时停止预览
337
+ * @param callId 会话ID
338
+ */
339
+ RCT_EXPORT_METHOD(stopPreview : (NSString *)callId resolver : (
340
+ RCTPromiseResolveBlock)resolve rejecter : (RCTPromiseRejectBlock)reject) {
341
+ id<JCallSession> session = [[self getCallManager] getCallSession:callId];
342
+ if (!session) {
343
+ resolve(nil);
344
+ return;
345
+ }
346
+ [session stopPreview];
347
+ resolve(nil);
348
+ }
349
+
334
350
  #pragma mark - Session Listeners
335
351
 
336
352
  RCT_EXPORT_METHOD(addSessionListener : (NSString *)callId key : (NSString *)
@@ -16,7 +16,7 @@ Pod::Spec.new do |s|
16
16
  s.requires_arc = true
17
17
 
18
18
  s.dependency "React-Core"
19
- s.dependency "JuggleIM", "~> 1.8.35"
19
+ s.dependency "JuggleIM", "~> 1.8.37"
20
20
  s.dependency 'JZegoCall', '1.8.25'
21
21
 
22
22
  end
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "juggleim-rnsdk",
3
- "version": "0.2.6",
3
+ "version": "0.2.7",
4
4
  "description": "React Native wrapper for Juggle IM SDK",
5
5
  "main": "src/index.js",
6
6
  "types": "src/index.d.ts",
@@ -183,4 +183,18 @@ export class CallSession {
183
183
 
184
184
  return JuggleIMCallModule.startPreview(this.callId, view);
185
185
  }
186
+
187
+ /**
188
+ * 停止预览
189
+ * 用于被叫方在接听前挂断时停止预览。
190
+ * 如果接听后,则不需要停止预览(由通话结束自动处理)。
191
+ *
192
+ * 使用场景:
193
+ * - 作为被叫方,被呼叫后开启了预览,之后直接挂断,需要停止预览
194
+ * - 如果接听了通话,则不需要调用此方法(通话结束会自动停止)
195
+ */
196
+ stopPreview(): Promise<void> {
197
+ console.log('stopPreview', this.callId);
198
+ return JuggleIMCallModule.stopPreview(this.callId);
199
+ }
186
200
  }
package/src/types.d.ts CHANGED
@@ -178,6 +178,19 @@ export class VoiceMessageContent extends MessageContent {
178
178
  contentType: string;
179
179
  }
180
180
 
181
+ /**
182
+ * 通话结束通知消息内容: jg:callfinishntf
183
+ * @property {number} finishType - 结束类型(从原生 reason 字段映射)
184
+ * @property {number} duration - 通话时长,单位秒
185
+ * @property {number} mediaType - 媒体类型: 0-语音, 1-视频
186
+ */
187
+ export class CallFinishNotifyMessageContent extends MessageContent {
188
+ contentType: string;
189
+ finishType?: number;
190
+ duration?: number;
191
+ mediaType?: number;
192
+ }
193
+
181
194
 
182
195
  /**
183
196
  * 消息对象