sendMessage method
Future<DynamiteResponse<ChatSendMessageResponseApplicationJson, ChatChatSendMessageHeaders> >
sendMessage({
- required String message,
- required String token,
- String? actorDisplayName,
- String? referenceId,
- int? replyTo,
- ChatSendMessageSilent? silent,
- ChatSendMessageApiVersion? apiVersion,
- bool? oCSAPIRequest,
Sends a new chat message to the given room.
The author and timestamp are automatically set to the current user/guest and time.
Returns a Future containing a DynamiteResponse
with the status code, deserialized body and headers.
Throws a DynamiteApiException
if the API call does not return an expected status code.
Parameters:
message
the message to send.actorDisplayName
for guests. Defaults to""
.referenceId
for the message to be able to later identify it again. Defaults to""
.replyTo
Parent id which this message is a reply to. Defaults to0
.silent
If sent silent the chat message will not create any notifications. Defaults to0
.apiVersion
Defaults to"v1"
.token
oCSAPIRequest
Required to be true for the API request to pass. Defaults totrue
.
Status codes:
- 201: Message sent successfully
- 400: Sending message is not possible
- 404: Actor not found
- 413: Message too long
- 429: Mention rate limit exceeded (guests only)
See:
- $sendMessage_Request for the request send by this method.
- $sendMessage_Serializer for a converter to parse the
Response
from an executed request.
Implementation
Future<_i1.DynamiteResponse<ChatSendMessageResponseApplicationJson, ChatChatSendMessageHeaders>> sendMessage({
required String message,
required String token,
String? actorDisplayName,
String? referenceId,
int? replyTo,
ChatSendMessageSilent? silent,
ChatSendMessageApiVersion? apiVersion,
bool? oCSAPIRequest,
}) async {
final _request = $sendMessage_Request(
message: message,
token: token,
actorDisplayName: actorDisplayName,
referenceId: referenceId,
replyTo: replyTo,
silent: silent,
apiVersion: apiVersion,
oCSAPIRequest: oCSAPIRequest,
);
final _response = await _rootClient.httpClient.send(_request);
final _serializer = $sendMessage_Serializer();
final _rawResponse =
await _i1.ResponseConverter<ChatSendMessageResponseApplicationJson, ChatChatSendMessageHeaders>(_serializer)
.convert(_response);
return _i1.DynamiteResponse.fromRawResponse(_rawResponse);
}