Remove ChatReportSpamState and methods for it.
GitOrigin-RevId: 3de0cb0147ad70e4d540f5a61f1aa08c64423edd
This commit is contained in:
parent
825cb0dd0b
commit
378ed2c659
@ -2349,9 +2349,6 @@ connectedWebsite id:int64 domain_name:string bot_user_id:int32 browser:string pl
|
|||||||
connectedWebsites websites:vector<connectedWebsite> = ConnectedWebsites;
|
connectedWebsites websites:vector<connectedWebsite> = ConnectedWebsites;
|
||||||
|
|
||||||
|
|
||||||
//@description Contains information about the availability of the "Report spam" action for a chat @can_report_spam True, if a prompt with the "Report spam" action should be shown to the user
|
|
||||||
chatReportSpamState can_report_spam:Bool = ChatReportSpamState;
|
|
||||||
|
|
||||||
//@class ChatReportReason @description Describes the reason why a chat is reported
|
//@class ChatReportReason @description Describes the reason why a chat is reported
|
||||||
|
|
||||||
//@description The chat contains spam messages
|
//@description The chat contains spam messages
|
||||||
@ -3901,12 +3898,6 @@ getAccountTtl = AccountTtl;
|
|||||||
deleteAccount reason:string = Ok;
|
deleteAccount reason:string = Ok;
|
||||||
|
|
||||||
|
|
||||||
//@description Returns information on whether the current chat can be reported as spam @chat_id Chat identifier
|
|
||||||
getChatReportSpamState chat_id:int53 = ChatReportSpamState;
|
|
||||||
|
|
||||||
//@description Reports to the server whether a chat is a spam chat or not. Can be used only if ChatReportSpamState.can_report_spam is true. After this request, ChatReportSpamState.can_report_spam becomes false forever @chat_id Chat identifier @is_spam_chat If true, the chat will be reported as spam; otherwise it will be marked as not spam
|
|
||||||
changeChatReportSpamState chat_id:int53 is_spam_chat:Bool = Ok;
|
|
||||||
|
|
||||||
//@description Removes a chat action bar without any other action @chat_id Chat identifier
|
//@description Removes a chat action bar without any other action @chat_id Chat identifier
|
||||||
removeChatActionBar chat_id:int53 = Ok;
|
removeChatActionBar chat_id:int53 = Ok;
|
||||||
|
|
||||||
|
Binary file not shown.
@ -3176,13 +3176,9 @@ class ResetNotifySettingsQuery : public Td::ResultHandler {
|
|||||||
};
|
};
|
||||||
|
|
||||||
class GetPeerSettingsQuery : public Td::ResultHandler {
|
class GetPeerSettingsQuery : public Td::ResultHandler {
|
||||||
Promise<Unit> promise_;
|
|
||||||
DialogId dialog_id_;
|
DialogId dialog_id_;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit GetPeerSettingsQuery(Promise<Unit> &&promise) : promise_(std::move(promise)) {
|
|
||||||
}
|
|
||||||
|
|
||||||
void send(DialogId dialog_id) {
|
void send(DialogId dialog_id) {
|
||||||
dialog_id_ = dialog_id;
|
dialog_id_ = dialog_id;
|
||||||
|
|
||||||
@ -3200,14 +3196,11 @@ class GetPeerSettingsQuery : public Td::ResultHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
td->messages_manager_->on_get_peer_settings(dialog_id_, result_ptr.move_as_ok());
|
td->messages_manager_->on_get_peer_settings(dialog_id_, result_ptr.move_as_ok());
|
||||||
|
|
||||||
promise_.set_value(Unit());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void on_error(uint64 id, Status status) override {
|
void on_error(uint64 id, Status status) override {
|
||||||
LOG(INFO) << "Receive error for get peer settings: " << status;
|
LOG(INFO) << "Receive error for get peer settings: " << status;
|
||||||
td->messages_manager_->on_get_dialog_error(dialog_id_, status, "GetPeerSettingsQuery");
|
td->messages_manager_->on_get_dialog_error(dialog_id_, status, "GetPeerSettingsQuery");
|
||||||
promise_.set_error(std::move(status));
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -6453,7 +6446,7 @@ void MessagesManager::repair_dialog_action_bar(DialogId dialog_id) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
return td_->create_handler<GetPeerSettingsQuery>(Promise<Unit>())->send(dialog_id);
|
return td_->create_handler<GetPeerSettingsQuery>()->send(dialog_id);
|
||||||
case DialogType::SecretChat:
|
case DialogType::SecretChat:
|
||||||
case DialogType::None:
|
case DialogType::None:
|
||||||
default:
|
default:
|
||||||
@ -6461,55 +6454,6 @@ void MessagesManager::repair_dialog_action_bar(DialogId dialog_id) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool MessagesManager::get_dialog_report_spam_state(DialogId dialog_id, Promise<Unit> &&promise) {
|
|
||||||
Dialog *d = get_dialog_force(dialog_id);
|
|
||||||
if (d == nullptr) {
|
|
||||||
promise.set_error(Status::Error(3, "Chat not found"));
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (d->know_can_report_spam) {
|
|
||||||
promise.set_value(Unit());
|
|
||||||
return d->can_report_spam;
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (dialog_id.get_type()) {
|
|
||||||
case DialogType::User:
|
|
||||||
case DialogType::Chat:
|
|
||||||
case DialogType::Channel:
|
|
||||||
td_->create_handler<GetPeerSettingsQuery>(std::move(promise))->send(dialog_id);
|
|
||||||
return false;
|
|
||||||
case DialogType::SecretChat:
|
|
||||||
promise.set_value(Unit());
|
|
||||||
return false;
|
|
||||||
case DialogType::None:
|
|
||||||
default:
|
|
||||||
UNREACHABLE();
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void MessagesManager::change_dialog_report_spam_state(DialogId dialog_id, bool is_spam_dialog,
|
|
||||||
Promise<Unit> &&promise) {
|
|
||||||
Dialog *d = get_dialog_force(dialog_id);
|
|
||||||
if (d == nullptr) {
|
|
||||||
return promise.set_error(Status::Error(3, "Chat not found"));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!have_input_peer(dialog_id, AccessRights::Read)) {
|
|
||||||
return promise.set_error(Status::Error(3, "Can't access the chat"));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!d->know_can_report_spam || !d->can_report_spam) {
|
|
||||||
return promise.set_error(Status::Error(3, "Can't update chat report spam state"));
|
|
||||||
}
|
|
||||||
|
|
||||||
d->can_report_spam = false;
|
|
||||||
on_dialog_updated(dialog_id, "change_dialog_report_spam_state");
|
|
||||||
|
|
||||||
change_dialog_report_spam_state_on_server(dialog_id, is_spam_dialog, 0, std::move(promise));
|
|
||||||
}
|
|
||||||
|
|
||||||
void MessagesManager::remove_dialog_action_bar(DialogId dialog_id, Promise<Unit> &&promise) {
|
void MessagesManager::remove_dialog_action_bar(DialogId dialog_id, Promise<Unit> &&promise) {
|
||||||
Dialog *d = get_dialog_force(dialog_id);
|
Dialog *d = get_dialog_force(dialog_id);
|
||||||
if (d == nullptr) {
|
if (d == nullptr) {
|
||||||
|
@ -663,10 +663,6 @@ class MessagesManager : public Actor {
|
|||||||
void on_update_scope_notify_settings(NotificationSettingsScope scope,
|
void on_update_scope_notify_settings(NotificationSettingsScope scope,
|
||||||
tl_object_ptr<telegram_api::peerNotifySettings> &&peer_notify_settings);
|
tl_object_ptr<telegram_api::peerNotifySettings> &&peer_notify_settings);
|
||||||
|
|
||||||
bool get_dialog_report_spam_state(DialogId dialog_id, Promise<Unit> &&promise);
|
|
||||||
|
|
||||||
void change_dialog_report_spam_state(DialogId dialog_id, bool is_spam_dialog, Promise<Unit> &&promise);
|
|
||||||
|
|
||||||
void remove_dialog_action_bar(DialogId dialog_id, Promise<Unit> &&promise);
|
void remove_dialog_action_bar(DialogId dialog_id, Promise<Unit> &&promise);
|
||||||
|
|
||||||
void report_dialog(DialogId dialog_id, const tl_object_ptr<td_api::ChatReportReason> &reason,
|
void report_dialog(DialogId dialog_id, const tl_object_ptr<td_api::ChatReportReason> &reason,
|
||||||
|
@ -2325,25 +2325,6 @@ class GetScopeNotificationSettingsRequest : public RequestActor<> {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
class GetChatReportSpamStateRequest : public RequestActor<> {
|
|
||||||
DialogId dialog_id_;
|
|
||||||
|
|
||||||
bool can_report_spam_ = false;
|
|
||||||
|
|
||||||
void do_run(Promise<Unit> &&promise) override {
|
|
||||||
can_report_spam_ = td->messages_manager_->get_dialog_report_spam_state(dialog_id_, std::move(promise));
|
|
||||||
}
|
|
||||||
|
|
||||||
void do_send_result() override {
|
|
||||||
send_result(make_tl_object<td_api::chatReportSpamState>(can_report_spam_));
|
|
||||||
}
|
|
||||||
|
|
||||||
public:
|
|
||||||
GetChatReportSpamStateRequest(ActorShared<Td> td, uint64 request_id, int64 dialog_id)
|
|
||||||
: RequestActor(std::move(td), request_id), dialog_id_(dialog_id) {
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
class GetStickersRequest : public RequestActor<> {
|
class GetStickersRequest : public RequestActor<> {
|
||||||
string emoji_;
|
string emoji_;
|
||||||
int32 limit_;
|
int32 limit_;
|
||||||
@ -6676,18 +6657,6 @@ void Td::on_request(uint64 id, const td_api::getScopeNotificationSettings &reque
|
|||||||
CREATE_REQUEST(GetScopeNotificationSettingsRequest, get_notification_settings_scope(request.scope_));
|
CREATE_REQUEST(GetScopeNotificationSettingsRequest, get_notification_settings_scope(request.scope_));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Td::on_request(uint64 id, const td_api::getChatReportSpamState &request) {
|
|
||||||
CHECK_IS_USER();
|
|
||||||
CREATE_REQUEST(GetChatReportSpamStateRequest, request.chat_id_);
|
|
||||||
}
|
|
||||||
|
|
||||||
void Td::on_request(uint64 id, const td_api::changeChatReportSpamState &request) {
|
|
||||||
CHECK_IS_USER();
|
|
||||||
CREATE_OK_REQUEST_PROMISE();
|
|
||||||
messages_manager_->change_dialog_report_spam_state(DialogId(request.chat_id_), request.is_spam_chat_,
|
|
||||||
std::move(promise));
|
|
||||||
}
|
|
||||||
|
|
||||||
void Td::on_request(uint64 id, const td_api::removeChatActionBar &request) {
|
void Td::on_request(uint64 id, const td_api::removeChatActionBar &request) {
|
||||||
CHECK_IS_USER();
|
CHECK_IS_USER();
|
||||||
CREATE_OK_REQUEST_PROMISE();
|
CREATE_OK_REQUEST_PROMISE();
|
||||||
|
@ -844,10 +844,6 @@ class Td final : public NetQueryCallback {
|
|||||||
|
|
||||||
void on_request(uint64 id, const td_api::resetAllNotificationSettings &request);
|
void on_request(uint64 id, const td_api::resetAllNotificationSettings &request);
|
||||||
|
|
||||||
void on_request(uint64 id, const td_api::getChatReportSpamState &request);
|
|
||||||
|
|
||||||
void on_request(uint64 id, const td_api::changeChatReportSpamState &request);
|
|
||||||
|
|
||||||
void on_request(uint64 id, const td_api::removeChatActionBar &request);
|
void on_request(uint64 id, const td_api::removeChatActionBar &request);
|
||||||
|
|
||||||
void on_request(uint64 id, td_api::reportChat &request);
|
void on_request(uint64 id, td_api::reportChat &request);
|
||||||
|
@ -3618,14 +3618,6 @@ class CliClient final : public Actor {
|
|||||||
std::tie(group_id, max_notification_id) = split(args);
|
std::tie(group_id, max_notification_id) = split(args);
|
||||||
send_request(td_api::make_object<td_api::removeNotificationGroup>(to_integer<int32>(group_id),
|
send_request(td_api::make_object<td_api::removeNotificationGroup>(to_integer<int32>(group_id),
|
||||||
to_integer<int32>(max_notification_id)));
|
to_integer<int32>(max_notification_id)));
|
||||||
} else if (op == "gcrss") {
|
|
||||||
send_request(td_api::make_object<td_api::getChatReportSpamState>(as_chat_id(args)));
|
|
||||||
} else if (op == "ccrss") {
|
|
||||||
string chat_id;
|
|
||||||
string is_spam_chat;
|
|
||||||
std::tie(chat_id, is_spam_chat) = split(args);
|
|
||||||
|
|
||||||
send_request(td_api::make_object<td_api::changeChatReportSpamState>(as_chat_id(chat_id), as_bool(is_spam_chat)));
|
|
||||||
} else if (op == "rcab") {
|
} else if (op == "rcab") {
|
||||||
string chat_id = args;
|
string chat_id = args;
|
||||||
send_request(td_api::make_object<td_api::removeChatActionBar>(as_chat_id(chat_id)));
|
send_request(td_api::make_object<td_api::removeChatActionBar>(as_chat_id(chat_id)));
|
||||||
|
Loading…
Reference in New Issue
Block a user