From 95956f738e2483bd79bc20eccaff039ae6c3eed1 Mon Sep 17 00:00:00 2001 From: Monet Lee Date: Sat, 12 Oct 2024 12:05:29 +0800 Subject: [PATCH] feat: add change_input_states and get_input_states, and add login and logout alternative func. (#54) * update sdk version to v3.8.1-rc.17 * upgrade sdk version to v3.8.1-rc.19. * upgrade sdk version to v3.8.1-rc.21. * update interface name. * update sdk version to v3.8.1-rc.22 * feat: update sdk version to 3.8.1 * feat: add `change_input_states` and `get_input_states`, and add login and logout alternative func. --- bootstrap_install_mage.sh | 0 go/export.go | 30 ++++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+) mode change 100644 => 100755 bootstrap_install_mage.sh diff --git a/bootstrap_install_mage.sh b/bootstrap_install_mage.sh old mode 100644 new mode 100755 diff --git a/go/export.go b/go/export.go index 136afe8..f2b4cae 100644 --- a/go/export.go +++ b/go/export.go @@ -502,6 +502,24 @@ func logout(cCallback C.CB_S_I_S_S, operationID *C.char) { open_im_sdk.Logout(baseCallback, C.GoString(operationID)) } +/* + `im_login` and `im_logout` is used only when there is a conflict with system functions on macOS, + as the Dart compiler may conflict with the system functions `login` and `logout`. + You can use `im_login` and `im_logout` to avoid conflicts when conflict happen. +*/ + +//export im_login +func im_login(cCallback C.CB_S_I_S_S, operationID, uid, token *C.char) { + baseCallback := NewBaseCallback(cCallback, operationID) + open_im_sdk.Login(baseCallback, C.GoString(operationID), C.GoString(uid), C.GoString(token)) +} + +//export im_logout +func im_logout(cCallback C.CB_S_I_S_S, operationID *C.char) { + baseCallback := NewBaseCallback(cCallback, operationID) + open_im_sdk.Logout(baseCallback, C.GoString(operationID)) +} + //export set_app_background_status func set_app_background_status(cCallback C.CB_S_I_S_S, operationID *C.char, isBackground C.int) { baseCallback := NewBaseCallback(cCallback, operationID) @@ -829,6 +847,18 @@ func set_message_local_ex(cCallback C.CB_S_I_S_S, operationID *C.char, conversat open_im_sdk.SetMessageLocalEx(baseCallback, C.GoString(operationID), C.GoString(conversationID), C.GoString(clientMsgID), C.GoString(localEx)) } +// export change_input_states +func change_input_states(cCallback C.CB_S_I_S_S, operationID *C.char, conversationID *C.char, inputStatus C.int) { + baseCallback := NewBaseCallback(cCallback, operationID) + open_im_sdk.ChangeInputStates(baseCallback, C.GoString(operationID), C.GoString(conversationID), parseBool(int(inputStatus))) +} + +//export get_input_states +func get_input_states(cCallback C.CB_S_I_S_S, operationID *C.char, conversationID *C.char, userID *C.char) { + baseCallback := NewBaseCallback(cCallback, operationID) + open_im_sdk.GetInputStates(baseCallback, C.GoString(operationID), C.GoString(conversationID), C.GoString(userID)) +} + // =====================================================user=============================================== //export get_users_info