diff --git a/telegram-bot-api/Client.cpp b/telegram-bot-api/Client.cpp index d7f8b88..c810e6b 100644 --- a/telegram-bot-api/Client.cpp +++ b/telegram-bot-api/Client.cpp @@ -8530,26 +8530,26 @@ td::int64 Client::get_int64_arg(const Query *query, td::Slice field_name, int64 return td::clamp(td::to_integer(s_arg), min_value, max_value); } -td::Result> Client::get_report_reason(const Query *query, +td::Result> Client::get_report_reason(const Query *query, td::Slice field_name) { auto reason = query->arg(field_name); - object_ptr result; + object_ptr result; if (reason.empty()) { return td::Status::Error(400, "reason is not specified"); } else if (reason == "child_abuse") { - result = make_object(); + result = make_object(); } else if (reason == "copyright") { - result = make_object(); + result = make_object(); } else if (reason == "pornography") { - result = make_object(); + result = make_object(); } else if (reason == "spam") { - result = make_object(); + result = make_object(); } else if (reason == "unrelated_location") { - result = make_object(); + result = make_object(); } else if (reason == "violence") { - result = make_object(); + result = make_object(); } else { - result = make_object(); + result = make_object(); } return std::move(result); } @@ -9232,7 +9232,7 @@ td::Status Client::process_send_media_group_query(PromisedQueryPtr &query) { send_request( make_object( chat_id, message_thread_id, get_input_message_reply_to(reply_to_message_id), - get_message_send_options(disable_notification, protect_content), std::move(input_message_contents)), + get_message_send_options(disable_notification, protect_content, std::move(send_at)), std::move(input_message_contents)), td::make_unique(this, chat_id, message_count, std::move(query))); }; check_message_thread(chat_id, message_thread_id, reply_to_message_id, std::move(query), @@ -10972,7 +10972,7 @@ td::Status Client::process_report_chat_query(PromisedQueryPtr &query) { [this, reason = std::move(reason), message_ids = std::move(message_ids)](int64 chat_id, PromisedQueryPtr query) mutable { - send_request(make_object(chat_id, std::move(message_ids), std::move(reason), reason->get_id() == td_api::chatReportReasonCustom::ID ? query->arg("reason").str() : td::string()), + send_request(make_object(chat_id, std::move(message_ids), std::move(reason), reason->get_id() == td_api::reportReasonCustom::ID ? query->arg("reason").str() : td::string()), td::make_unique(std::move(query))); }); return td::Status::OK(); diff --git a/telegram-bot-api/Client.h b/telegram-bot-api/Client.h index 47650d5..0ce31ab 100644 --- a/telegram-bot-api/Client.h +++ b/telegram-bot-api/Client.h @@ -560,7 +560,7 @@ class Client final : public WebhookActor::Callback { static int64 get_int64_arg(const Query *query, td::Slice field_name, int64 default_value, int64 min_value = std::numeric_limits::min(), int64 max_value = std::numeric_limits::max()); - static td::Result> get_report_reason(const Query *query, + static td::Result> get_report_reason(const Query *query, td::Slice field_name = td::Slice("reason")); static td::Result> get_search_messages_filter( diff --git a/telegram-bot-api/ClientManager.cpp b/telegram-bot-api/ClientManager.cpp index 69fef73..f8aba7c 100644 --- a/telegram-bot-api/ClientManager.cpp +++ b/telegram-bot-api/ClientManager.cpp @@ -496,13 +496,13 @@ void ClientManager::start_up() { parameters_->shared_data_->webhook_db_ = std::move(concurrent_webhook_db); auto concurrent_user_db = td::make_unique>(); - status = concurrent_user_db->init(parameters_->working_directory_ + "user_db.binlog", td::DbKey::empty(), scheduler_id); + status = concurrent_user_db->init(parameters_->working_directory_ + "user_db.binlog", td::DbKey::empty(), SharedData::get_binlog_scheduler_id()); LOG_IF(FATAL, status.is_error()) << "Can't open user_db.binlog " << status.error(); parameters_->shared_data_->user_db_ = std::move(concurrent_user_db); auto &webhook_db = *parameters_->shared_data_->webhook_db_; auto &user_db = *parameters_->shared_data_->user_db_; - for (const auto key_value : webhook_db.get_all()) { + for (const auto &key_value : webhook_db.get_all()) { if (!token_range_(td::to_integer(key_value.first))) { LOG(WARNING) << "DROP WEBHOOK: " << key_value.first << " ---> " << key_value.second; webhook_db.erase(key_value.first);