deleteMessageAction method

Future<DeleteMessageActionResult> deleteMessageAction(
  1. String channel, {
  2. required Timetoken messageTimetoken,
  3. required Timetoken actionTimetoken,
  4. Keyset? keyset,
  5. String? using,
})
inherited

This method removes an existing message action (identified by actionTimetoken) from a parent message (identified by messageTimetoken) on a channel.

It is technically possible to delete more than one action with this method; if the same UUID posted different actions on the same parent message at the same time.

If all goes well, the action(s) will be deleted from the database, and one or more "action remove event" messages will be published in realtime on the same channel as the parent message.

Implementation

Future<DeleteMessageActionResult> deleteMessageAction(String channel,
    {required Timetoken messageTimetoken,
    required Timetoken actionTimetoken,
    Keyset? keyset,
    String? using}) async {
  keyset ??= keysets[using];

  Ensure(channel).isNotEmpty('channel');

  var params = DeleteMessageActionParams(
      keyset, channel, messageTimetoken, actionTimetoken);

  return defaultFlow<DeleteMessageActionParams, DeleteMessageActionResult>(
      keyset: keyset,
      core: this,
      params: params,
      serialize: (object, [_]) => DeleteMessageActionResult.fromJson(object));
}