createMessage method
Sends message to solevato inbox
Implementation
@override
Future<SolevatoMessage> createMessage(
SolevatoNewMessageRequest request) async {
_addInterceptor();
try {
CancelToken cancelToken = CancelToken();
final createResponse = await _dio.post(
"/public/api/v1/inboxes/${SolevatoClientApiInterceptor.INTERCEPTOR_INBOX_IDENTIFIER_PLACEHOLDER}/contacts/${SolevatoClientApiInterceptor.INTERCEPTOR_CONTACT_IDENTIFIER_PLACEHOLDER}/conversations/${SolevatoClientApiInterceptor.INTERCEPTOR_CONVERSATION_IDENTIFIER_PLACEHOLDER}/messages",
data: request.toJson(),
cancelToken: cancelToken);
if ((createResponse.statusCode ?? 0).isBetween(199, 300)) {
return SolevatoMessage.fromJson(createResponse.data);
} else {
throw SolevatoClientException(
createResponse.statusMessage ?? "unknown error",
SolevatoClientExceptionType.SEND_MESSAGE_FAILED);
}
} on DioError catch (e) {
throw SolevatoClientException(
e.message, SolevatoClientExceptionType.SEND_MESSAGE_FAILED);
}
}