|
|
|
@ -43,7 +43,7 @@ object NativeLib { |
|
|
|
|
|
|
|
|
|
|
|
fun stop() { |
|
|
|
fun stop() { |
|
|
|
runBlocking(Dispatchers.Main.immediate) { |
|
|
|
runBlocking(Dispatchers.Main.immediate) { |
|
|
|
CallController.reset(); ChatApplication.instance.avatars.stop(); ChatApplication.instance.memberFiles.cancel() |
|
|
|
StreamController.reset(); CallController.reset(); ChatApplication.instance.avatars.stop(); ChatApplication.instance.memberFiles.cancel() |
|
|
|
} |
|
|
|
} |
|
|
|
if (!isReady()) return |
|
|
|
if (!isReady()) return |
|
|
|
nativeStop() |
|
|
|
nativeStop() |
|
|
|
@ -58,7 +58,7 @@ object NativeLib { |
|
|
|
|
|
|
|
|
|
|
|
fun destroy() { |
|
|
|
fun destroy() { |
|
|
|
runBlocking(Dispatchers.Main.immediate) { |
|
|
|
runBlocking(Dispatchers.Main.immediate) { |
|
|
|
CallController.reset(); ChatApplication.instance.avatars.stop(); ChatApplication.instance.memberFiles.cancel() |
|
|
|
StreamController.reset(); CallController.reset(); ChatApplication.instance.avatars.stop(); ChatApplication.instance.memberFiles.cancel() |
|
|
|
} |
|
|
|
} |
|
|
|
nativeDestroy() |
|
|
|
nativeDestroy() |
|
|
|
runBlocking(Dispatchers.Main.immediate) { ChatApplication.instance.memberFiles.coreStopped() } |
|
|
|
runBlocking(Dispatchers.Main.immediate) { ChatApplication.instance.memberFiles.coreStopped() } |
|
|
|
@ -66,7 +66,7 @@ object NativeLib { |
|
|
|
|
|
|
|
|
|
|
|
fun restart(dbPath: String, controlPort: Int, configText: String): Boolean { |
|
|
|
fun restart(dbPath: String, controlPort: Int, configText: String): Boolean { |
|
|
|
runBlocking(Dispatchers.Main.immediate) { |
|
|
|
runBlocking(Dispatchers.Main.immediate) { |
|
|
|
CallController.reset(); ChatApplication.instance.avatars.stop(); ChatApplication.instance.memberFiles.cancel() |
|
|
|
StreamController.reset(); CallController.reset(); ChatApplication.instance.avatars.stop(); ChatApplication.instance.memberFiles.cancel() |
|
|
|
} |
|
|
|
} |
|
|
|
return nativeRestart(configText) |
|
|
|
return nativeRestart(configText) |
|
|
|
} |
|
|
|
} |
|
|
|
@ -172,7 +172,7 @@ object NativeLib { |
|
|
|
|
|
|
|
|
|
|
|
/* ── Voice recording ── */ |
|
|
|
/* ── Voice recording ── */ |
|
|
|
fun voiceStart(channelId: String, replyTo: String = "", requestId: Long = 0): Boolean = |
|
|
|
fun voiceStart(channelId: String, replyTo: String = "", requestId: Long = 0): Boolean = |
|
|
|
nativeVoiceStart(channelId, messageIdBytes(replyTo), requestId) |
|
|
|
!StreamController.blocksCapture() && nativeVoiceStart(channelId, messageIdBytes(replyTo), requestId) |
|
|
|
fun voiceFeed(samples: ShortArray): Boolean = nativeVoiceFeed(samples) |
|
|
|
fun voiceFeed(samples: ShortArray): Boolean = nativeVoiceFeed(samples) |
|
|
|
fun voiceStop(): Int = nativeVoiceStop() |
|
|
|
fun voiceStop(): Int = nativeVoiceStop() |
|
|
|
fun voiceCancel() { nativeVoiceCancel() } |
|
|
|
fun voiceCancel() { nativeVoiceCancel() } |
|
|
|
|