sendInteractiveMessage static method
Future<InteractiveMessage?>
sendInteractiveMessage(
- InteractiveMessage message, {
- required dynamic onSuccess(
- InteractiveMessage message
- required dynamic onError(
- CometChatException excep
Marks a message as unread.
send Interactive messages which has to change its state according to some interactions.
Migration Note: Migrated from platform channels to native Dart implementation. Behavior and signature remain identical for backward compatibility.
Android Reference: MessagesRequest.sendInteractiveMessage(InteractiveMessage message)
The method could throw PlatformException with error codes specifying the cause
Implementation
static Future<InteractiveMessage?> sendInteractiveMessage(
InteractiveMessage message,
{required Function(InteractiveMessage message)? onSuccess,
required Function(CometChatException excep)? onError}) async {
try {
// Get SDK instance
final sdk = SdkRegistry.getInstance();
// Call native Dart message repository
final sentMessage = await sdk.messages.sendInteractiveMessage(message);
// Call success callback
if (onSuccess != null) onSuccess(sentMessage);
return sentMessage;
} on SdkException catch (sdkEx) {
// Convert SdkException to CometChatException
final cometChatEx = CometChatException(
sdkEx.code,
sdkEx.details ?? sdkEx.message,
sdkEx.message,
);
_errorCallbackHandler(cometChatEx, null, null, onError);
} catch (e) {
_errorCallbackHandler(null, null, e, onError);
}
return null;
}