deleteMessages method
FutureOr<Map>
deleteMessages({
- required Map parameters,
- required TelegramClientCallApiInvoke callApiInvoke,
- bool? isUseCache = false,
- Duration? durationCacheExpire,
method DeleteMessages
Implementation
FutureOr<Map> deleteMessages({
required Map parameters,
required TelegramClientCallApiInvoke callApiInvoke,
bool? isUseCache = false,
Duration? durationCacheExpire,
}) async {
dynamic target_chat_id = TgUtils.parse_all_chat_id(parameters: parameters);
if (target_chat_id is String &&
RegExp(r"^((@)[a-z0-9_]+)$", caseSensitive: false)
.hashData(target_chat_id)) {
var search_public_chat = await callApiInvoke(
parameters: {
"@type": "searchPublicChat",
"username": (target_chat_id)
.replaceAll(RegExp(r"@", caseSensitive: false), ""),
},
is_invoke_no_relevance: true,
);
if (search_public_chat["@type"] == "chat") {
parameters["chat_id"] = search_public_chat["id"];
} else {
return search_public_chat;
}
}
Map request_parameters = {
"@type": "deleteMessages",
"chat_id": parameters["chat_id"],
"message_ids": (parameters["message_ids"] as List)
.map((e) => TgUtils.messageApiToTdlib(e))
.toList(),
"revoke": (parameters["revoke"] is bool) ? parameters["revoke"] : true,
};
Map message_send = await callApiInvoke(
parameters: request_parameters,
);
return message_send;
}