From 06ceee4b043dcfdc7bf42037d5714f4e2d9d9ad6 Mon Sep 17 00:00:00 2001 From: oct Date: Thu, 20 Mar 2025 00:42:41 +0000 Subject: [PATCH] my_msg --- src/DosAtk.cpp | 33 ++++++++++++++++----------------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/src/DosAtk.cpp b/src/DosAtk.cpp index 6ecbd2f..e4ea23f 100644 --- a/src/DosAtk.cpp +++ b/src/DosAtk.cpp @@ -161,14 +161,6 @@ void my_diag(int status) printf("end my_diag\n"); } -// Данная функция отправляет сообщение в телеграмм -void my_msg() -{ - printf("begin my_msg()\n"); - printf("%s\n", msg.c_str()); - printf("end my_msg"); -} - // Функция для экранирования спецсимволов в JSON std::string escape_json(const std::string& s) { std::string result; @@ -189,9 +181,10 @@ std::string escape_json(const std::string& s) { // Проверка, является ли строка числом (включая отрицательные) bool is_numeric(const std::string& s) { + size_t start; if (s.empty()) return false; - size_t start = 0; + start = 0; if (s[0] == '-') { if (s.size() == 1) return false; start = 1; @@ -203,22 +196,28 @@ bool is_numeric(const std::string& s) { return true; } -int my_msg(const std::string& msg) { +int my_msg() { + CURL* curl; + std::string escaped_msg; std::cout << msg << std::endl; + std::string chat_id_field; + std::string json_data; + struct curl_slist* headers; + headers = nullptr; + long http_code; + CURLcode res; if (telegram_token.empty() || telegram_id.empty()) { return 0; // Интеграция не настроена } - CURL* curl = curl_easy_init(); + curl = curl_easy_init(); if (!curl) return 6; // Ошибка инициализации CURL // Экранируем сообщение - std::string escaped_msg; escaped_msg = escape_json(msg); // Формируем поле chat_id - std::string chat_id_field; if (is_numeric(telegram_id)) { chat_id_field = "\"chat_id\": " + telegram_id; } else { @@ -226,9 +225,8 @@ int my_msg(const std::string& msg) { } // Формируем JSON - std::string json_data = "{" + chat_id_field + ", \"text\": \"" + escaped_msg + "\"}"; + json_data = "{" + chat_id_field + ", \"text\": \"" + escaped_msg + "\"}"; // Настраиваем заголовоки - struct curl_slist* headers = nullptr; headers = curl_slist_append(headers, "Content-Type: application/json"); // Настраиваем параметры CURL @@ -244,8 +242,9 @@ int my_msg(const std::string& msg) { }); // Выполняем запрос - CURLcode res = curl_easy_perform(curl); - long http_code = 0; + res = curl_easy_perform(curl); + + http_code = 0; curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &http_code); // Освобождаем ресурсы