'Редактор автоматизаций лучше всего работает на большом экране. Откройте его на компьютере, чтобы создать рабочий процесс.', 'title' => 'Автоматизации', 'default_name' => 'Новая автоматизация', 'actions' => [ 'new' => 'Новая автоматизация', 'edit' => 'Изменить', 'save' => 'Сохранить', 'activate' => 'Активировать', 'pause' => 'Приостановить', 'delete' => 'Удалить', 'retry' => 'Повторить', 'guide' => 'Узнать, как это работает', ], 'tabs' => [ 'build' => 'Конструктор', 'variables' => 'Переменные', 'test' => 'Тест', ], 'nav' => [ 'workflow' => 'Процесс', 'invocations' => 'Запуски', 'metrics' => 'Метрики', 'settings' => 'Настройки', ], 'settings' => [ 'general' => 'Основные', 'general_description' => 'Переименуйте эту автоматизацию.', 'name_label' => 'Название', 'name_saved' => 'Автоматизация переименована.', 'status_title' => 'Статус', 'status_description' => 'Активируйте, чтобы запустить, или приостановите, чтобы остановить.', 'activated_at' => 'Активирована :date', 'paused_at' => 'Приостановлена :date', 'created_at' => 'Создана :date', 'danger_title' => 'Опасная зона', 'danger_description' => 'Необратимые действия.', 'delete_title' => 'Удалить эту автоматизацию', 'delete_description' => 'Безвозвратно удаляет автоматизацию и историю её запусков.', ], 'status_run' => [ 'pending' => 'В ожидании', 'running' => 'Выполняется', 'waiting' => 'Ожидание', 'completed' => 'Завершено', 'failed' => 'Ошибка', 'cancelled' => 'Отменено', ], 'node_type' => [ 'trigger' => 'Триггер', 'generate' => 'Генерация контента', 'delay' => 'Задержка', 'condition' => 'Условие', 'publish' => 'Публикация', 'webhook' => 'Webhook', 'end' => 'Конец', 'fetch_rss' => 'Получить RSS', 'http_request' => 'HTTP-запрос', ], 'invocations' => [ 'empty' => 'Пока нет запусков.', 'refresh' => 'Обновить', 'search_placeholder' => 'Поиск по ID запуска…', 'copied' => 'ID запуска скопирован.', 'loading' => 'Загрузка шагов…', 'no_steps' => 'Шаги не записаны.', 'load_error' => 'Не удалось загрузить шаги.', 'steps' => '{0}Нет шагов|{1}:count шаг|[2,4]:count шага|[5,*]:count шагов', 'filter' => [ 'all' => 'Все статусы', ], 'columns' => [ 'timestamp' => 'Время', 'run' => 'Запуск', 'status' => 'Статус', 'message' => 'Последнее сообщение', 'duration' => 'Длительность', ], 'summary' => [ 'completed' => 'Процесс завершён', 'failed' => 'Процесс завершился с ошибкой', 'running' => 'Процесс выполняется', 'cancelled' => 'Процесс отменён', 'pending' => 'Процесс в ожидании', ], ], 'metrics' => [ 'overview' => 'Обзор', 'runs_over_time' => 'Запуски по времени', 'posts_by_platform' => 'Посты по платформам', 'no_posts' => 'В этот период не опубликовано ни одного поста.', 'cards' => [ 'runs' => 'Всего запусков', 'completed' => 'Завершено', 'failed' => 'С ошибкой', 'in_progress' => 'В процессе', 'success_rate' => 'Доля успешных', 'avg_duration' => 'Средняя длительность', 'posts_created' => 'Создано постов', ], 'legend' => [ 'started' => 'Запущено', 'completed' => 'Завершено', 'failed' => 'С ошибкой', ], ], 'categories' => [ 'sources' => 'Источники', 'content' => 'Контент', 'flow' => 'Логика', 'output' => 'Вывод', ], 'variables' => [ 'title' => 'Переменные процесса', 'hint' => 'Многократно используемые значения, доступные везде через {{ variables.KEY }}. Хранятся в зашифрованном виде.', 'empty' => 'Пока нет переменных.', 'key' => 'Ключ', 'value' => 'Значение', 'key_placeholder' => 'API_KEY', 'value_placeholder' => 'Значение', 'add' => 'Новая переменная', ], 'expr' => [ 'trigger_event' => 'Название события-триггера', 'trigger_fired_at' => 'Когда сработал триггер', 'trigger_post_id' => 'ID поста-триггера', 'trigger_post_content' => 'Содержимое поста-триггера', 'trigger_post_status' => 'Статус поста-триггера', 'trigger_post_scheduled_at' => 'Когда запланирован пост', 'trigger_post_published_at' => 'Когда пост был опубликован', 'fetched_title' => 'Заголовок полученного элемента', 'fetched_link' => 'Ссылка полученного элемента', 'fetched_date' => 'Дата публикации полученного элемента', 'fetched_content' => 'Полное содержимое полученного элемента', 'fetched_description' => 'Краткое описание полученного элемента', 'fetched_author' => 'Автор полученного элемента', 'fetched_image' => 'URL изображения полученного элемента', 'fetched_categories' => 'Категории полученного элемента', 'fetched_enclosure' => 'Медиа полученного элемента (аудио/видео/файл)', 'fetched_pubdate' => 'Дата публикации полученного элемента', 'fetched_http' => 'Полученный HTTP-элемент (добавьте поле)', 'generated_content' => 'Сгенерированное ИИ содержимое поста', 'generated_post_url' => 'URL сгенерированного ИИ поста', 'variable' => 'Переменная процесса', 'now' => 'Текущие дата и время', ], 'test' => [ 'description' => 'Выполняет автоматизацию от начала до конца, используя синтезированные данные триггера. Полезно для проверки каждого узла без ожидания реального расписания или ленты.', 'starting' => 'Запуск тестового прогона…', 'in_progress' => 'В процессе', 'completed' => 'Завершено', 'failed' => 'Ошибка', 'waiting' => 'Ожидание', 'close' => 'Закрыть', 'no_node_runs' => 'Ожидание запуска первого узла…', 'node_input' => 'Вход', 'node_output' => 'Выход', 'node_error' => 'Ошибка', 'no_new_items' => 'Нет новых элементов — последующие узлы не запускались.', 'error_starting' => 'Не удалось запустить тестовый прогон.', 'with_real_data' => 'С реальными данными', 'run' => 'Запустить тест', 'idle_hint' => 'Нажмите «Запустить тест», чтобы выполнить автоматизацию от начала до конца.', 'real_data_hint' => 'Этот тест опубликует посты, продвинет отметки опроса и вызовет внешние побочные эффекты.', 'dry_badge' => 'Тестовый прогон', ], 'status' => [ 'draft' => 'Черновик', 'active' => 'Активна', 'paused' => 'Приостановлена', ], 'index' => [ 'empty_title' => 'Пока нет автоматизаций', 'empty_description' => 'Создайте первую автоматизацию, чтобы публиковать на автопилоте.', 'columns' => [ 'name' => 'Название', 'status' => 'Статус', 'created' => 'Создана', ], ], 'form' => [ 'activate_error_fallback' => 'Не удалось активировать автоматизацию.', 'pause_error_fallback' => 'Не удалось приостановить автоматизацию.', 'save_error_fallback' => 'Не удалось сохранить автоматизацию.', 'save_success' => 'Автоматизация сохранена.', 'empty_canvas_title' => 'Начните создавать автоматизацию', 'empty_canvas_description' => 'Перетащите узел из левой панели, чтобы начать.', 'name_placeholder' => 'Автоматизация без названия', ], 'nodes' => [ 'trigger' => 'Триггер', 'generate' => 'Генерация', 'delay' => 'Задержка', 'condition' => 'Условие', 'publish' => 'Публикация', 'webhook' => 'Webhook', 'end' => 'Конец', 'end_summary' => 'Останавливает автоматизацию здесь', 'fetch_rss' => 'Получить RSS', 'http_request' => 'HTTP-запрос', 'handles' => [ 'items' => 'есть элементы', 'no_items' => 'нет элементов', ], ], 'config' => [ 'select_placeholder' => 'Выберите…', 'invalid_json' => 'Это ещё не корректный JSON.', 'expand_editor' => 'Развернуть редактор', 'minimize_editor' => 'Свернуть', 'trigger' => [ 'type' => 'Тип триггера', 'types' => [ 'schedule' => 'Расписание', 'post_published' => 'Когда пост опубликован', 'post_scheduled' => 'Когда пост запланирован', ], 'post_published_hint' => 'Запускается при публикации любого поста в этом рабочем пространстве. Опубликованный пост доступен в {{ trigger.post }} для последующих узлов.', 'post_scheduled_hint' => 'Запускается при планировании любого поста в этом рабочем пространстве. Запланированный пост доступен в {{ trigger.post }}.', 'schedule' => [ 'field' => 'Интервал срабатывания', 'fields' => [ 'minutes' => 'Минуты', 'hours' => 'Часы', 'days' => 'Дни', 'weeks' => 'Недели', 'months' => 'Месяцы', ], 'minutes_interval' => 'Минут между срабатываниями', 'hours_interval' => 'Часов между срабатываниями', 'days_interval' => 'Дней между срабатываниями', 'hour' => 'Час срабатывания', 'minute' => 'Минута срабатывания', 'weekdays' => 'Дни недели срабатывания', 'day_of_month' => 'День месяца', 'weekday_names' => [ 'sun' => 'Вс', 'mon' => 'Пн', 'tue' => 'Вт', 'wed' => 'Ср', 'thu' => 'Чт', 'fri' => 'Пт', 'sat' => 'Сб', ], 'summary' => [ 'every_n_minutes' => 'Запускается каждую :count минуту|Запускается каждые :count минуты|Запускается каждые :count минут', 'every_n_hours' => 'Запускается каждый :count час на :minute-й минуте|Запускается каждые :count часа на :minute-й минуте|Запускается каждые :count часов на :minute-й минуте', 'every_n_days' => 'Запускается каждый :count день в :time|Запускается каждые :count дня в :time|Запускается каждые :count дней в :time', 'weekly' => 'Запускается по :days в :time', 'monthly' => 'Запускается :day числа каждого месяца в :time', ], ], ], 'generate' => [ 'social_accounts' => 'Социальные аккаунты', 'social_accounts_empty' => 'Нет подключённых социальных аккаунтов. Сначала подключите один.', 'target_slide_count' => 'Сколько слайдов сгенерировать', 'prompt_template' => 'Шаблон запроса', 'prompt_template_hint' => 'Введите {{, чтобы вставить данные из предыдущих шагов.', 'image_count' => 'Сколько изображений сгенерировать', 'image_count_hint' => '0 = только текст (без изображения). 1 = одно изображение. 2+ = карусель.', 'use_brand_voice' => 'Использовать голос бренда', 'use_brand_voice_hint' => 'Применяйте описание и голос вашего бренда. Отключите для точной подачи сторонних источников (новости, RSS).', 'use_brand_visuals' => 'Использовать визуал бренда', 'use_brand_visuals_hint' => 'Направляйте ИИ-изображения цветами и айдентикой вашего бренда. Отключите для нейтральных изображений, основанных только на теме поста.', 'style' => 'Стиль', 'account_summary' => ':count аккаунт · :format|:count аккаунта · :format|:count аккаунтов · :format', 'formats' => [ 'single' => 'один', 'carousel' => 'карусель', ], ], 'delay' => [ 'duration' => 'Длительность', 'unit' => 'Единица', 'units' => [ 'minutes' => 'Минуты', 'hours' => 'Часы', 'days' => 'Дни', ], ], 'condition' => [ 'field' => 'Поле', 'operator' => 'Оператор', 'operators' => [ 'contains' => 'содержит', 'not_contains' => 'не содержит', 'equals' => 'равно', 'not_equals' => 'не равно', 'matches' => 'соответствует (regex)', 'greater_than' => 'больше чем', 'less_than' => 'меньше чем', ], 'value' => 'Значение', ], 'publish' => [ 'mode' => 'Режим', 'modes' => [ 'now' => 'Опубликовать сейчас', 'scheduled' => 'Запланировать', 'draft' => 'Сохранить как черновик', ], 'scheduled_offset' => 'Смещение от триггера (минуты)', 'offset_summary' => ':mode · +:offset мин', ], 'webhook' => [ 'url' => 'URL', 'method' => 'Метод', 'payload_template' => 'Шаблон полезной нагрузки (JSON)', ], 'end' => [ 'reason' => 'Причина (необязательно)', 'reason_placeholder' => 'например, Отфильтровано условием', ], 'fetch_rss' => [ 'feed_url' => 'URL ленты', 'feed_url_hint' => 'При первом запуске отметка устанавливается на «сейчас», чтобы старые элементы не хлынули в последующие узлы. Последующие запуски видят только элементы новее предыдущего опроса.', 'inspect' => 'Проверить ленту', 'inspecting' => 'Проверка…', 'inspect_hint' => 'Получите образец, чтобы узнать доступные поля для использования в последующих узлах.', 'inspect_error' => 'Не удалось прочитать эту ленту. Проверьте URL и попробуйте снова.', 'discovered_fields' => 'Доступные поля', 'discovered_empty' => 'В последнем элементе поля не найдены.', ], 'http_request' => [ 'url' => 'URL', 'method' => 'Метод', 'auth_type' => 'Аутентификация', 'auth' => [ 'none' => 'Нет (публичный)', 'bearer' => 'Bearer-токен', 'basic' => 'Basic-аутентификация', 'api_key' => 'Заголовок с API-ключом', ], 'bearer_token' => 'Bearer-токен', 'basic_username' => 'Имя пользователя', 'basic_password' => 'Пароль', 'api_key_header' => 'Имя заголовка', 'api_key_value' => 'API-ключ', 'body_template' => 'Шаблон тела (JSON)', 'headers' => 'Заголовки', 'header_name' => 'Имя заголовка', 'header_value' => 'Значение', 'add_header' => 'Добавить заголовок', 'polling_section' => 'Список и дедупликация (необязательно)', 'polling_hint' => 'Если ответ — список, каждый элемент запускает процесс отдельно. Один объект запускает его один раз.', 'items_path' => 'Путь к элементам', 'items_path_hint' => 'Оставьте пустым, если ответ уже является массивом. Используйте путь через точку (например, data.items) для вложенного массива или * для объекта с ключами по id.', 'item_key_path' => 'Путь к ключу элемента', 'item_key_path_hint' => 'JSON-путь к уникальному id (например, id). Уже встречавшиеся элементы пропускаются, поэтому лента без дат всё равно передаёт только новые записи.', 'item_date_path' => 'Путь к дате элемента', 'item_date_path_hint' => 'JSON-путь к отметке времени элемента (например, published_at). Предпочтительнее пути к ключу, когда доступен. Первый опрос фиксирует базовую отметку и ничего не передаёт, поэтому существующая лента не переполняет систему в первый день.', ], ], 'delete' => [ 'title' => 'Удалить автоматизацию', 'description' => 'Вы уверены, что хотите удалить эту автоматизацию? Все запуски и элементы триггеров также будут удалены. Это действие нельзя отменить.', 'confirm' => 'Удалить', 'cancel' => 'Отмена', ], 'flash' => [ 'deleted' => 'Автоматизация успешно удалена!', ], 'errors' => [ 'no_active_social_accounts' => 'Для этой автоматизации не настроено ни одного активного социального аккаунта.', 'must_have_one_trigger' => 'Автоматизация должна содержать ровно один узел-триггер.', 'trigger_must_be_connected' => 'Узел-триггер должен быть связан хотя бы с одним узлом.', 'graph_contains_cycle' => 'Граф автоматизации содержит цикл.', 'only_failed_can_retry' => 'Повторить можно только запуски, завершившиеся с ошибкой.', 'no_generated_post' => 'В запуске не найдено сгенерированного поста.', 'webhook_server_error' => 'Ошибка сервера webhook.', 'webhook_request_failed' => 'Не удалось выполнить запрос webhook.', 'webhook_missing_url' => 'В узле webhook отсутствует URL.', 'webhook_invalid_payload_json' => 'Шаблон полезной нагрузки не является корректным JSON.', 'url_not_allowed' => 'URL запроса указывает на приватный или недоступный адрес и был заблокирован.', 'node_no_longer_exists' => 'Узел :node_id больше не существует в автоматизации.', 'no_trigger_connection' => 'К узлу-триггеру не подключён ни один узел.', 'fetch_rss_missing_url' => 'В узле «Получить RSS» отсутствует URL ленты.', 'fetch_rss_request_failed' => 'Запрос RSS-ленты не удался.', 'fetch_rss_malformed' => 'RSS-лента имеет некорректный формат.', 'http_missing_url' => 'В узле HTTP-запроса отсутствует URL.', 'http_request_exception' => 'HTTP-запрос вызвал исключение.', 'http_request_failed' => 'HTTP-запрос не удался.', 'http_items_path_not_array' => 'Путь к элементам не привёл к списку.', 'generate_image_format_required' => 'ИИ генерирует только изображения. Выберите формат изображения (не видео).', ], ];