sendMessage method
Implementation
@override
Future<Either<Failure, ChatMessage>> sendMessage(SendMessageDto dto) {
return wrapAndHandleHttpBaseRequest(
() {
final url = config.apiEndpoints.sendMessageToRoomApiEndpoint(dto);
final request = http.Request(
config.httpMethodConfig?.sendMessageToRoomMethod ?? 'POST',
url,
);
request.body = dto.toJson();
return request;
},
onResponse: (response, left, right) async {
if (config.responseDeserializers?.sendMessageToRoomResponseDeserializer != null) {
final data = await config
.responseDeserializers!
.sendMessageToRoomResponseDeserializer!(response);
return right(data);
}
final data = _defaultChatMessageResponseDeserializer(response);
return right(data);
},
);
}