tg_cli: add class MessageThreadId.
This commit is contained in:
parent
da1b385185
commit
b27047bab7
|
@ -805,6 +805,18 @@ class CliClient final : public Actor {
|
||||||
arg.message_id = as_message_id(args);
|
arg.message_id = as_message_id(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
struct MessageThreadId {
|
||||||
|
int64 message_thread_id = 0;
|
||||||
|
|
||||||
|
operator int64() const {
|
||||||
|
return message_thread_id;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
void get_args(string &args, MessageThreadId &arg) const {
|
||||||
|
arg.message_thread_id = as_message_thread_id(args);
|
||||||
|
}
|
||||||
|
|
||||||
struct UserId {
|
struct UserId {
|
||||||
int64 user_id = 0;
|
int64 user_id = 0;
|
||||||
|
|
||||||
|
@ -1818,7 +1830,7 @@ class CliClient final : public Actor {
|
||||||
void send_message(int64 chat_id, td_api::object_ptr<td_api::InputMessageContent> &&input_message_content,
|
void send_message(int64 chat_id, td_api::object_ptr<td_api::InputMessageContent> &&input_message_content,
|
||||||
bool disable_notification = false, bool from_background = false, int64 reply_to_message_id = 0) {
|
bool disable_notification = false, bool from_background = false, int64 reply_to_message_id = 0) {
|
||||||
auto id = send_request(td_api::make_object<td_api::sendMessage>(
|
auto id = send_request(td_api::make_object<td_api::sendMessage>(
|
||||||
chat_id, as_message_thread_id(message_thread_id_), reply_to_message_id,
|
chat_id, message_thread_id_, reply_to_message_id,
|
||||||
td_api::make_object<td_api::messageSendOptions>(disable_notification, from_background, true, true,
|
td_api::make_object<td_api::messageSendOptions>(disable_notification, from_background, true, true,
|
||||||
as_message_scheduling_state(schedule_date_)),
|
as_message_scheduling_state(schedule_date_)),
|
||||||
nullptr, std::move(input_message_content)));
|
nullptr, std::move(input_message_content)));
|
||||||
|
@ -2289,11 +2301,11 @@ class CliClient final : public Actor {
|
||||||
0, 100, false));
|
0, 100, false));
|
||||||
} else if (op == "replies") {
|
} else if (op == "replies") {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
string message_thread_id;
|
MessageThreadId message_thread_id;
|
||||||
string filter;
|
string filter;
|
||||||
get_args(args, chat_id, message_thread_id, filter);
|
get_args(args, chat_id, message_thread_id, filter);
|
||||||
send_request(td_api::make_object<td_api::searchChatMessages>(
|
send_request(td_api::make_object<td_api::searchChatMessages>(
|
||||||
chat_id, "", nullptr, 0, 0, 100, as_search_messages_filter(filter), as_message_thread_id(message_thread_id)));
|
chat_id, "", nullptr, 0, 0, 100, as_search_messages_filter(filter), message_thread_id));
|
||||||
} else if (op == "spvf") {
|
} else if (op == "spvf") {
|
||||||
search_chat_id_ = as_chat_id(args);
|
search_chat_id_ = as_chat_id(args);
|
||||||
send_request(td_api::make_object<td_api::searchChatMessages>(search_chat_id_, "", nullptr, 0, 0, 100,
|
send_request(td_api::make_object<td_api::searchChatMessages>(search_chat_id_, "", nullptr, 0, 0, 100,
|
||||||
|
@ -2399,10 +2411,10 @@ class CliClient final : public Actor {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
MessageId message_id;
|
MessageId message_id;
|
||||||
string filter;
|
string filter;
|
||||||
string message_thread_id;
|
MessageThreadId message_thread_id;
|
||||||
get_args(args, chat_id, message_id, filter, message_thread_id);
|
get_args(args, chat_id, message_id, filter, message_thread_id);
|
||||||
send_request(td_api::make_object<td_api::getChatMessagePosition>(
|
send_request(td_api::make_object<td_api::getChatMessagePosition>(
|
||||||
chat_id, message_id, as_search_messages_filter(filter), as_message_thread_id(message_thread_id)));
|
chat_id, message_id, as_search_messages_filter(filter), message_thread_id));
|
||||||
} else if (op == "gup" || op == "gupp") {
|
} else if (op == "gup" || op == "gupp") {
|
||||||
UserId user_id;
|
UserId user_id;
|
||||||
int32 offset;
|
int32 offset;
|
||||||
|
@ -3133,11 +3145,11 @@ class CliClient final : public Actor {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
ChatId from_chat_id;
|
ChatId from_chat_id;
|
||||||
string message_ids;
|
string message_ids;
|
||||||
string message_thread_id;
|
MessageThreadId message_thread_id;
|
||||||
get_args(args, chat_id, from_chat_id, message_ids, message_thread_id);
|
get_args(args, chat_id, from_chat_id, message_ids, message_thread_id);
|
||||||
send_request(td_api::make_object<td_api::forwardMessages>(
|
send_request(td_api::make_object<td_api::forwardMessages>(
|
||||||
chat_id, as_message_thread_id(message_thread_id), from_chat_id, as_message_ids(message_ids),
|
chat_id, message_thread_id, from_chat_id, as_message_ids(message_ids), default_message_send_options(),
|
||||||
default_message_send_options(), op[0] == 'c', rand_bool(), op.back() == 'p'));
|
op[0] == 'c', rand_bool(), op.back() == 'p'));
|
||||||
} else if (op == "resend") {
|
} else if (op == "resend") {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
string message_ids;
|
string message_ids;
|
||||||
|
@ -3555,7 +3567,7 @@ class CliClient final : public Actor {
|
||||||
|
|
||||||
if (op == "scdm" || op == "scdmt") {
|
if (op == "scdm" || op == "scdmt") {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
string message_thread_id;
|
MessageThreadId message_thread_id;
|
||||||
string reply_to_message_id;
|
string reply_to_message_id;
|
||||||
string message;
|
string message;
|
||||||
if (op == "scdmt") {
|
if (op == "scdmt") {
|
||||||
|
@ -3572,8 +3584,8 @@ class CliClient final : public Actor {
|
||||||
td_api::make_object<td_api::inputMessageText>(as_formatted_text(message, std::move(entities)), true,
|
td_api::make_object<td_api::inputMessageText>(as_formatted_text(message, std::move(entities)), true,
|
||||||
false));
|
false));
|
||||||
}
|
}
|
||||||
send_request(td_api::make_object<td_api::setChatDraftMessage>(chat_id, as_message_thread_id(message_thread_id),
|
send_request(
|
||||||
std::move(draft_message)));
|
td_api::make_object<td_api::setChatDraftMessage>(chat_id, message_thread_id, std::move(draft_message)));
|
||||||
} else if (op == "cadm") {
|
} else if (op == "cadm") {
|
||||||
send_request(td_api::make_object<td_api::clearAllDraftMessages>());
|
send_request(td_api::make_object<td_api::clearAllDraftMessages>());
|
||||||
} else if (op == "tchpc") {
|
} else if (op == "tchpc") {
|
||||||
|
@ -3637,22 +3649,20 @@ class CliClient final : public Actor {
|
||||||
UserId bot_user_id;
|
UserId bot_user_id;
|
||||||
string url;
|
string url;
|
||||||
MessageId reply_to_message_id;
|
MessageId reply_to_message_id;
|
||||||
string message_thread_id;
|
MessageThreadId message_thread_id;
|
||||||
get_args(args, chat_id, bot_user_id, url, reply_to_message_id, message_thread_id);
|
get_args(args, chat_id, bot_user_id, url, reply_to_message_id, message_thread_id);
|
||||||
send_request(td_api::make_object<td_api::openWebApp>(chat_id, bot_user_id, url, as_theme_parameters(), "android",
|
send_request(td_api::make_object<td_api::openWebApp>(chat_id, bot_user_id, url, as_theme_parameters(), "android",
|
||||||
reply_to_message_id,
|
reply_to_message_id, message_thread_id));
|
||||||
as_message_thread_id(message_thread_id)));
|
|
||||||
} else if (op == "cwa") {
|
} else if (op == "cwa") {
|
||||||
int64 launch_id;
|
int64 launch_id;
|
||||||
get_args(args, launch_id);
|
get_args(args, launch_id);
|
||||||
send_request(td_api::make_object<td_api::closeWebApp>(launch_id));
|
send_request(td_api::make_object<td_api::closeWebApp>(launch_id));
|
||||||
} else if (op == "sca") {
|
} else if (op == "sca") {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
string message_thread_id;
|
MessageThreadId message_thread_id;
|
||||||
string action;
|
string action;
|
||||||
get_args(args, chat_id, message_thread_id, action);
|
get_args(args, chat_id, message_thread_id, action);
|
||||||
send_request(td_api::make_object<td_api::sendChatAction>(chat_id, as_message_thread_id(message_thread_id),
|
send_request(td_api::make_object<td_api::sendChatAction>(chat_id, message_thread_id, as_chat_action(action)));
|
||||||
as_chat_action(action)));
|
|
||||||
} else if (op == "smt" || op == "smtp" || op == "smtf" || op == "smtpf") {
|
} else if (op == "smt" || op == "smtp" || op == "smtf" || op == "smtpf") {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
get_args(args, chat_id);
|
get_args(args, chat_id);
|
||||||
|
@ -3679,7 +3689,7 @@ class CliClient final : public Actor {
|
||||||
} else if (op == "ssd") {
|
} else if (op == "ssd") {
|
||||||
schedule_date_ = std::move(args);
|
schedule_date_ = std::move(args);
|
||||||
} else if (op == "smti") {
|
} else if (op == "smti") {
|
||||||
message_thread_id_ = std::move(args);
|
get_args(args, message_thread_id_);
|
||||||
} else if (op == "gcams") {
|
} else if (op == "gcams") {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
get_args(args, chat_id);
|
get_args(args, chat_id);
|
||||||
|
@ -3740,7 +3750,7 @@ class CliClient final : public Actor {
|
||||||
return content;
|
return content;
|
||||||
});
|
});
|
||||||
send_request(td_api::make_object<td_api::sendMessageAlbum>(
|
send_request(td_api::make_object<td_api::sendMessageAlbum>(
|
||||||
chat_id, as_message_thread_id(message_thread_id_), reply_to_message_id, default_message_send_options(),
|
chat_id, message_thread_id_, reply_to_message_id, default_message_send_options(),
|
||||||
std::move(input_message_contents), op == "smapp" || op == "smaprp"));
|
std::move(input_message_contents), op == "smapp" || op == "smaprp"));
|
||||||
} else if (op == "smad" || op == "smadp") {
|
} else if (op == "smad" || op == "smadp") {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
|
@ -3750,7 +3760,7 @@ class CliClient final : public Actor {
|
||||||
td_api::make_object<td_api::inputMessageDocument>(as_input_file(document), nullptr, true, as_caption(""));
|
td_api::make_object<td_api::inputMessageDocument>(as_input_file(document), nullptr, true, as_caption(""));
|
||||||
return content;
|
return content;
|
||||||
});
|
});
|
||||||
send_request(td_api::make_object<td_api::sendMessageAlbum>(chat_id, as_message_thread_id(message_thread_id_), 0,
|
send_request(td_api::make_object<td_api::sendMessageAlbum>(chat_id, message_thread_id_, 0,
|
||||||
default_message_send_options(),
|
default_message_send_options(),
|
||||||
std::move(input_message_contents), op.back() == 'p'));
|
std::move(input_message_contents), op.back() == 'p'));
|
||||||
} else if (op == "gmft") {
|
} else if (op == "gmft") {
|
||||||
|
@ -3885,8 +3895,7 @@ class CliClient final : public Actor {
|
||||||
string result_id;
|
string result_id;
|
||||||
get_args(args, chat_id, query_id, result_id);
|
get_args(args, chat_id, query_id, result_id);
|
||||||
send_request(td_api::make_object<td_api::sendInlineQueryResultMessage>(
|
send_request(td_api::make_object<td_api::sendInlineQueryResultMessage>(
|
||||||
chat_id, as_message_thread_id(message_thread_id_), 0, default_message_send_options(), query_id, result_id,
|
chat_id, message_thread_id_, 0, default_message_send_options(), query_id, result_id, op == "siqrh"));
|
||||||
op == "siqrh"));
|
|
||||||
} else if (op == "gcqa") {
|
} else if (op == "gcqa") {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
MessageId message_id;
|
MessageId message_id;
|
||||||
|
@ -4740,14 +4749,14 @@ class CliClient final : public Actor {
|
||||||
send_request(td_api::make_object<td_api::removeRecentHashtag>(hashtag));
|
send_request(td_api::make_object<td_api::removeRecentHashtag>(hashtag));
|
||||||
} else if (op == "view" || op == "viewt") {
|
} else if (op == "view" || op == "viewt") {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
string message_thread_id;
|
MessageThreadId message_thread_id;
|
||||||
string message_ids;
|
string message_ids;
|
||||||
get_args(args, chat_id, message_ids);
|
get_args(args, chat_id, message_ids);
|
||||||
if (op == "viewt") {
|
if (op == "viewt") {
|
||||||
get_args(message_ids, message_thread_id, message_ids);
|
get_args(message_ids, message_thread_id, message_ids);
|
||||||
}
|
}
|
||||||
send_request(td_api::make_object<td_api::viewMessages>(chat_id, as_message_thread_id(message_thread_id),
|
send_request(
|
||||||
as_message_ids(message_ids), true));
|
td_api::make_object<td_api::viewMessages>(chat_id, message_thread_id, as_message_ids(message_ids), true));
|
||||||
} else if (op == "omc") {
|
} else if (op == "omc") {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
MessageId message_id;
|
MessageId message_id;
|
||||||
|
@ -4769,14 +4778,14 @@ class CliClient final : public Actor {
|
||||||
send_request(td_api::make_object<td_api::getExternalLink>(link, op == "gelw"));
|
send_request(td_api::make_object<td_api::getExternalLink>(link, op == "gelw"));
|
||||||
} else if (op == "racm") {
|
} else if (op == "racm") {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
string message_thread_id;
|
MessageThreadId message_thread_id;
|
||||||
get_args(args, chat_id, message_thread_id);
|
get_args(args, chat_id, message_thread_id);
|
||||||
send_request(td_api::make_object<td_api::readAllChatMentions>(chat_id, as_message_thread_id(message_thread_id)));
|
send_request(td_api::make_object<td_api::readAllChatMentions>(chat_id, message_thread_id));
|
||||||
} else if (op == "racr") {
|
} else if (op == "racr") {
|
||||||
ChatId chat_id;
|
ChatId chat_id;
|
||||||
string message_thread_id;
|
MessageThreadId message_thread_id;
|
||||||
get_args(args, chat_id, message_thread_id);
|
get_args(args, chat_id, message_thread_id);
|
||||||
send_request(td_api::make_object<td_api::readAllChatReactions>(chat_id, as_message_thread_id(message_thread_id)));
|
send_request(td_api::make_object<td_api::readAllChatReactions>(chat_id, message_thread_id));
|
||||||
} else if (op == "tre") {
|
} else if (op == "tre") {
|
||||||
send_request(td_api::make_object<td_api::testReturnError>(
|
send_request(td_api::make_object<td_api::testReturnError>(
|
||||||
args.empty() ? nullptr : td_api::make_object<td_api::error>(-1, args)));
|
args.empty() ? nullptr : td_api::make_object<td_api::error>(-1, args)));
|
||||||
|
@ -5179,7 +5188,7 @@ class CliClient final : public Actor {
|
||||||
int64 my_id_ = 0;
|
int64 my_id_ = 0;
|
||||||
td_api::object_ptr<td_api::AuthorizationState> authorization_state_;
|
td_api::object_ptr<td_api::AuthorizationState> authorization_state_;
|
||||||
string schedule_date_;
|
string schedule_date_;
|
||||||
string message_thread_id_;
|
MessageThreadId message_thread_id_;
|
||||||
int64 opened_chat_id_ = 0;
|
int64 opened_chat_id_ = 0;
|
||||||
|
|
||||||
ConcurrentScheduler *scheduler_{nullptr};
|
ConcurrentScheduler *scheduler_{nullptr};
|
||||||
|
|
Loading…
Reference in New Issue
Block a user