getInputStates
功能介绍
说明
获取某用户当前输入状态。
- iOS
- Android
- Flutter
- uni-app
- Browser/Electron/MiniProgram
- React-Native
- Unity
函数原型
Future getInputstates({
    required String conversationID,
    required String userID,
    String? operationID,
  })
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| conversationID | String | 是 | 会话 ID | 
| userID | String | 是 | 用户ID | 
返回结果
| 名称 | 类型 | 描述 | 
|---|---|---|
| ~ | Future< List< int>?> | 无异常抛出则操作成功 | 
代码示例
    await OpenIM.iMManager.conversationManager.getInputstates(conversationID: conversationID, userID: );
    //todo
函数原型
- (void)getInputstates:(NSString *)conversationID
                    userID:(NSString)userID
                 onSuccess:(nullable OIMInputStatusChangedCallback)onSuccess
                 onFailure:(nullable OIMFailureCallback)onFailure;
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| conversationID | NSString | 是 | 会话 ID | 
| userID | NSString | 是 | 用户ID | 
返回结果
| 名称 | 类型 | 描述 | 
|---|---|---|
| onSuccess | NSArray< NSNumber *> | 成功返回 | 
| onFailure | OIMFailureCallback | 失败返回 | 
代码示例
[OIMManager.manager getInputstates:@"" 
                                userID:
                           onSuccess:^(NSArray<NSNumber *> * _Nullable data) {
} onFailure:^(NSInteger code, NSString * _Nullable msg) {
}];
函数原型
public void getInputState(OnBase<List<Integer>> base, String conversionId, String userId)
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| conversationID | String | 是 | 会话 ID | 
| userId | String | 是 | 用户ID | 
返回结果
代码示例
OpenIMClient.getInstance().conversationManager.getInputState(new OnBase<List<Integer>>() {
    @Override
    public void onError(int code, String error) {
        // todo: 处理错误信息
    }
    @Override
    public void onSuccess(List<Integer> data) {
        // todo: 请求成功
    }
}, conversationID , userId);
函数原型
IMSDK.getInputstates({
  conversationID: string,
  userID: string,
}, operationID?: string): Promise<WsResponse<number[]>>
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| conversationID | string | 是 | 会话 ID | 
| userID | string | 是 | 用户ID | 
| operationID | string | 否 | 操作 ID,用于定位问题,保持唯一,建议用当前时间和随机数 | 
返回结果
| 参数名称 | 参数类型 | 描述 | 
|---|---|---|
| Promise.then() | Promise<WsResponse<number[]>> | 调用成功回调 | 
| Promise.catch() | Promise<WsResponse> | 调用失败回调 | 
代码示例
import { getSDK } from '@openim/wasm-client-sdk';
const IMSDK = getSDK();
// use in electron with ffi
// import { getWithRenderProcess } from '@openim/electron-client-sdk/lib/render';
// const { instance: IMSDK } = getWithRenderProcess();
// use in mini program
// import { getSDK } from '@openim/client-sdk';
// const IMSDK = getSDK();
IMSDK.getInputstates({
  conversationID: 'conversationID',
  userID: 'userID',
})
  .then(() => {
    // 调用成功
  })
  .catch(({ errCode, errMsg }) => {
    // 调用失败
  });
函数原型
IMSDK.asyncApi('getInputstates', operationID: string, {
  conversationID: string,
  userID: string,
}): Promise<number[]>
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| conversationID | string | 是 | 会话 ID | 
| userID | string | 是 | 用户ID | 
| operationID | string | 是 | 操作 ID,用于定位问题,保持唯一,建议用当前时间和随机数 | 
返回结果
通过
openim-uniapp-polyfill包将函数 Promise 化,调用时需要使用then和catch判断并处理成功和失败回调。
| 参数名称 | 参数类型 | 描述 | 
|---|---|---|
| Promise.then() | Promise<number[]> | 调用成功回调 | 
| Promise.catch() | Promise<CatchResponse> | 调用失败回调 | 
代码示例
import IMSDK from 'openim-uniapp-polyfill';
IMSDK.asyncApi('getInputstates', IMSDK.uuid(), {
  conversationID: 'conversationID',
  userID: 'userID',
})
  .then(() => {
    // 调用成功
  })
  .catch(({ errCode, errMsg }) => {
    // 调用失败
  });
函数原型
OpenIMSDKRN.getInputstates({
  conversationID: string,
  userID: string,
}, operationID: string): Promise<number[]>
输入参数
| 参数名称 | 参数类型 | 是否必填 | 描述 | 
|---|---|---|---|
| conversationID | string | 是 | 会话 ID | 
| userID | string | 是 | 用户ID | 
| operationID | string | 是 | 操作 ID,用于定位问题,保持唯一,建议用当前时间和随机数 | 
返回结果
| 参数名称 | 参数类型 | 描述 | 
|---|---|---|
| Promise.then() | Promise<number[]> | 调用成功回调 | 
| Promise.catch() | Promise<Response> | 调用失败回调 | 
代码示例
import OpenIMSDKRN from "open-im-sdk-rn";
OpenIMSDKRN.getInputstates({
  conversationID: 'conversationID',
  userID: 'userID',
}, 'operationID')
  .then(() => {
    // 调用成功
  })
  .catch(({ errCode, errMsg }) => {
    // 调用失败
  });
注意
未实现