import 'dart:core'; import 'package:fis_jsonrpc/client_base.dart'; import 'package:fis_common/json_convert.dart'; import 'connect.m.dart'; import 'liveConsultation.m.dart'; class ConnectService extends JsonRpcClientBase { ConnectService( String host, { String serviceName = "IConnectService", Map? headers, int? timeout, }) : super( host, serviceName, headers: headers, timeout: timeout, ) { /// 注册响应实体反序列化处理器 FJsonConvert.setDecoder((map) => ConnectResult.fromJson(map)); FJsonConvert.setDecoder((map) => DeviceInfoDTO.fromJson(map)); FJsonConvert.setDecoder((map) => CacheDeviceDTO.fromJson(map)); } Future connectAsync(ConnectRequest request) async { var rpcRst = await call("ConnectAsync", request); var result = ConnectResult.fromJson(rpcRst as Map); return result; } Future addOldVersionDeviceAsync(AddOldVersionDeviceRequest request) async { var rpcRst = await call("AddOldVersionDeviceAsync", request); var result = DeviceInfoDTO.fromJson(rpcRst as Map); return result; } Future getDeviceByTokenAsync(TokenRequest request) async { var rpcRst = await call("GetDeviceByTokenAsync", request); var result = CacheDeviceDTO.fromJson(rpcRst as Map); return result; } Future disConnectAsync(TokenRequest request) async { var rpcRst = await call("DisConnectAsync", request); return rpcRst; } Future setDeviceIsEncryptedShowAsync(SetDeviceIsEncryptedShowRequest request) async { var rpcRst = await call("SetDeviceIsEncryptedShowAsync", request); return rpcRst; } }