import 'dart:core'; import 'package:fis_jsonrpc/client_base.dart'; import 'package:fis_common/json_convert.dart'; import 'wingRtc.m.dart'; class WingRtcService extends JsonRpcClientBase { WingRtcService( String host, { String serviceName = "IWingRtcService", Map? headers, int? timeout, }) : super( host, serviceName, headers: headers, timeout: timeout, ) { /// 注册响应实体反序列化处理器 FJsonConvert.setDecoder((map) => GetRoomIdResult.fromJson(map)); FJsonConvert.setDecoder((map) => GenerateRoomUrlResult.fromJson(map)); FJsonConvert.setDecoder((map) => GetRtcSettingResult.fromJson(map)); FJsonConvert.setDecoder((map) => GetUserSignResult.fromJson(map)); } Future getRoomIdAsync(GetRoomIdRequest request) async { var rpcRst = await call("GetRoomIdAsync", request); var result = GetRoomIdResult.fromJson(rpcRst as Map); return result; } Future generateRoomUrlAsync(GenerateRoomUrlRequest request) async { var rpcRst = await call("GenerateRoomUrlAsync", request); var result = GenerateRoomUrlResult.fromJson(rpcRst as Map); return result; } Future getRtcSettingAsync(GetRtcSettingRequest request) async { var rpcRst = await call("GetRtcSettingAsync", request); var result = GetRtcSettingResult.fromJson(rpcRst as Map); return result; } Future getUserSignAsync(GetUserSignRequest request) async { var rpcRst = await call("GetUserSignAsync", request); var result = GetUserSignResult.fromJson(rpcRst as Map); return result; } }