Замены в пересылаемых сообщениях

Настройка автоматических замен в тексте пересылаемых сообщений позволит добавлять подписи к сообщениям, удалять рекламу, заменять ссылки, стилизовать и прочее.

Замена фрагмента сообщения: вместо машины появляется самолёт

Возможности замен

Сервис FLOWIN позволяет автоматически менять содержимое пересылаемых сообщений, приводя их к нужному для вас виду. Например, с помощью замен можно:

  • Добавлять любые подписи в любое место сообщения.
  • Удалять любой нежелательный контент из сообщения.
  • Заменять ссылки, слова, номера, числа, контакты или целые фразы.
  • Вставлять любую служебную информацию о сообщении в сам текст сообщения: номер автора, имя автора, ссылку на автора, ссылку на исходное сообщение, время и дату исходного сообщения, название источника и прочее.
  • Добавлять стилизацию для отдельных слов или фраз.
  • Приводить данные из сообщения к определенному строгому шаблону, полностью меняя структуру текста.

Создание замены

Рассмотрим базовый функционал замен на примере простой задачи: замены слова «машина» на слово «самолет» во всех пересылаемых сообщениях.

Перед началом

Перед созданием замены убедитесь, что у вас уже есть настроенная пересылка в режиме копирования.

Ниже описаны шаги для создания и настройки простой замены:

  1. Откройте @flow_in_bot, отправьте команду /start и нажмите «Панель управления».

    Вход в панель управления через @flow_in_bot
    Вход в панель управления через @flow_in_bot.
  2. Если меню слева не видно, нажмите «Меню» в правом верхнем углу. Затем выберите «Замены» и нажмите «Создать».
    Кнопка «Меню» в правом верхнем углу
    Кнопка «Меню» в правом верхнем углу.
    Раздел «Замены» в меню FLOWIN
    Раздел «Замены» в меню FLOWIN.
    Создание новой замены
    Создание новой замены.
  3. В поле «Искать» оставьте режим «Текст» и напишите машина. В поле «Заменять на» введите самолет. Остальные параметры оставьте по умолчанию и нажмите «Создать».
    «машина» заменяется на «самолет»
    «машина» заменяется на «самолет».
  4. В строке созданной замены нажмите мигающую кнопку «Применить». В открывшемся окне отметьте нужную пересылку и нажмите «Сохранить». Вместо «Применить» появится «Пересылки [1]».
    Мигающая кнопка «Применить» у созданной замены
    Мигающая кнопка «Применить» у созданной замены.
    Выбор пересылки для замены
    Выбор пересылки для замены.
    Созданная замена привязана к пересылке
    Созданная замена привязана к пересылке.
  5. После выполнения этих действий в списке появится информация о вашей замене. Теперь сервис будет автоматически искать в пересылаемых сообщениях слово «машина» и заменять его на слово «самолет» у выбранных для этой замены пересылок.
    Исходное сообщение со словом «машина»
    Исходное сообщение со словом «машина».
    Сообщение в назначении после замены слова
    Сообщение в назначении после замены слова.

Настройки замены

Рассмотрим настройки и возможности замен подробнее на примере уже созданной замены.

Как изменить и сохранить замену

  1. Нажмите «Изменить» в строке нужной замены. Откроется окно с её параметрами.
    Изменение существующей замены
    Изменение существующей замены.
  2. Измените нужные поля, например добавьте описание Замена слова, и нажмите «Сохранить». Окно закроется, а новое описание появится в строке замены.
    Сохранение изменённых параметров
    Сохранение изменённых параметров.
    Сохранённые параметры в строке замены
    Сохранённые параметры в строке замены.

Поля окна настройки

«Готовые примеры»: список самых распространенных сценариев использования замен. Для выбора конкретного примера необходимо на него нажать, после чего поля в диалоговом окне заполнятся соответствующими значениями из примера, а вам останется только слегка отредактировать их под себя.

Кнопка «Готовые примеры» в окне настройки
Кнопка «Готовые примеры» в окне настройки.
Готовые примеры замены, добавления и удаления текста
Готовые примеры замены, добавления и удаления текста.

«Искать»: поле для содержимого, которое необходимо будет найти в сообщении и заменить. Рядом с этим полем также расположены три режима поиска:

  • «Текст»: режим поиска один в один того сочетания символов, которое вы ввели (со всеми пробелами, отступами, скобками и прочим). Регистр букв неважен.
  • «Список»: режим поиска нескольких вариантов того, что нужно найти и заменить. В качестве разделителя используются запятые или новые строки. Регистр букв неважен. Ищутся именно перечисленные сочетания символов.
  • «Regexp»: режим поиска с использованием регулярного выражения. Подробнее о синтаксисе регулярных выражений читайте в статье «Регулярные выражения в фильтрах и заменах».
Режим «Текст» для точного сочетания символов
Режим «Текст» для точного сочетания символов.
Варианты поиска в режиме «Список»
Варианты поиска в режиме «Список».
Поиск по регулярному выражению
Поиск по регулярному выражению.

Замена или удаление текста

«Заменять на»: поле для нового содержимого, на которое будет заменено найденное старое содержимое. В этом поле можно использовать форматирование и метатеги, доступные в редакторе. Кроме того, если это поле оставить пустым, то найденное содержимое просто удалится из сообщения (будет заменено на пустоту).

Новое содержимое в поле «Заменять на»
Новое содержимое в поле «Заменять на».

«После или до обработки»: способ управлять очередностью применения замен и других обработчиков. Если выбрать вариант «до обработки», то замена будет применена до применения переводов, ИИ ассистентов, водяных знаков, объединения и до других замен с вариантом «после обработки». Если выбрать вариант «после обработки», то замена будет применена после основных обработчиков, перед подготовкой сообщения к отправке.

Применение замены до или после обработки
Применение замены до или после обработки.

«Описание»: поле для комментария о замене, оно ни на что не влияет и служит только для вашего удобства. Можно оставлять пустым.

Необязательное описание замены
Необязательное описание замены.

Форматирование и стили

Теги форматирования

С помощью замен можно форматировать и стилизовать содержимое пересылаемых сообщений. В настройках замены в поле «Заменять на» можно использовать следующие теги для форматирования и стилизации:

  • новая строка: <br>
  • пробел: <space>
  • жирный: <b>Hi</b>
  • курсив: <i>Hi</i>
  • зачеркнутый: <s>Hi</s>
  • код: <code>Hi</code>
  • ссылка: <a href="https://ya.ru">Hi</a>
  • спойлер: <span class="tg-spoiler">text</span>
  • цитата: <blockquote>Hi</blockquote>

В поле «Заменять на» есть визуальный редактор: выделенному тексту можно задать жирный шрифт, курсив, подчёркивание, зачёркивание, ссылку, код, блок кода, спойлер или цитату. Для ввода тегов служит кнопка «Переключить в режим кода».

Пример: выделить заменённое слово жирным

  1. В окне изменения замены задайте жирное начертание одним из двух способов. В визуальном редакторе выделите самолет и нажмите «жирный». Если удобнее ввести теги вручную, нажмите кнопку «Переключить в режим кода» внизу поля и замените содержимое поля на <b>самолет</b>. Нажмите «Сохранить».
    Жирное начертание в визуальном редакторе
    Жирное начертание в визуальном редакторе.
    Кнопка переключения в режим кода
    Кнопка переключения в режим кода.
    Теги форматирования в режиме кода
    Теги форматирования в режиме кода.
  2. Теперь в пересылаемых сообщениях слово «машина» будет заменяться на слово «самолет», выделенное жирным.
    Исходное сообщение без форматирования
    Исходное сообщение без форматирования.
    Форматирование заменённого слова в назначении
    Форматирование заменённого слова в назначении.

Специальные метатеги

Основные метатеги

В настройках замены в поле «Заменять на» можно использовать специальные метатеги для добавления в сообщение служебной информации, а также комбинировать их с тегами форматирования. Ниже перечислены основные служебные метатеги:

  • дата сообщения: <message-date>
  • время сообщения: <message-time>
  • номер автора: <author-id>
  • имя автора: <author-name>
  • имя автора ссылкой: <author-name-link>
  • имя автора тегом: <author-name-tag>
  • никнейм автора: <author-username>
  • текст сообщения в источнике: <src-message-text>
  • номер сообщения в источнике: <src-message-id>
  • ссылка на сообщение в источнике: <src-message-link>
  • номер чата источника: <src-chat-id>
  • название чата источника: <src-chat-name>
  • никнейм чата источника: <src-chat-username>
  • номер темы в источнике: <src-topic-id>
  • название темы в источнике: <src-topic-name>
  • текст сообщения в назначении: <dst-message-text>
  • номер чата назначения: <dst-chat-id>
  • название чата назначения: <dst-chat-name>
  • никнейм чата назначения: <dst-chat-username>
  • номер темы в назначении: <dst-topic-id>
  • название темы в назначении: <dst-topic-name>
  • регулярное выражение: <regexp>(short|sell)</regexp>
  • случайный текст: <random>1|2|3|4|5</random>
  • найденное содержимое для замены: <content>

Кнопка «метатег» открывает список с поиском. В нём также есть текущая дата и время, статистика сообщения, данные слушателя и отправителя и другие группы.

Пример: подпись со ссылкой на источник

  1. В окне изменения замены нажмите «Готовые примеры». В поиске введите ссылку на источник и выберите «Добавлять ссылку на источник».
    Кнопка «Готовые примеры» в окне изменения замены
    Кнопка «Готовые примеры» в окне изменения замены.
    Готовый пример «Добавлять ссылку на источник»
    Готовый пример «Добавлять ссылку на источник».
  2. Поля заполнятся автоматически: режим «Regexp» и знак $ в поле «Искать» задают добавление в конец сообщения. В поле «Заменять на» появится подпись «Источник:» с метатегами названия чата и ссылки на исходное сообщение. Нажмите «Сохранить».
    Параметры подписи, заполненные готовым примером
    Параметры подписи, заполненные готовым примером.
  3. Теперь в конце пересылаемых сообщений будет появляться подпись с названием источника. Нажатие на название откроет исходное сообщение; основной текст сохранится целиком.
    Исходное сообщение перед добавлением подписи
    Исходное сообщение перед добавлением подписи.
    Подпись со ссылкой на исходное сообщение
    Подпись со ссылкой на исходное сообщение.

Замена на премиум-смайлики

Чтобы сохранить премиум-смайлики при переносе подписи из Telegram в замену, используйте JSON из @message_inspector_bot. Бот подходит и для сложно оформленной замены без премиум-смайликов.

Рассмотрим процесс создания замены для добавления к каждому пересылаемому сообщению подписи с премиум-смайликами:

  1. Откройте @message_inspector_bot в Telegram. Отправьте ему текст подписи с нужными премиум-смайликами и оформлением, затем скопируйте JSON из ответа бота.
    JSON подписи в ответе @message_inspector_bot
    JSON подписи в ответе @message_inspector_bot.
  2. Вернитесь в раздел «Замены» и нажмите «Создать». В поле «Искать» выберите «Regexp» и введите $. Этот знак обозначает конец текста.
    Создание отдельной замены для подписи
    Создание отдельной замены для подписи.
    Поиск конца сообщения: Regexp и знак $
    Поиск конца сообщения: Regexp и знак $.
  3. В поле «Заменять на» дважды нажмите Enter, чтобы отделить подпись от сообщения. Нажмите «метатег», в поиске введите премиум и выберите «Стили и премиум эмодзи из JSON». Вставьте ответ бота в поле «JSON» и нажмите «Вставить».
    Кнопка «метатег» после двух переносов строки
    Кнопка «метатег» после двух переносов строки.
    Вставка стилей и премиум-эмодзи из JSON
    Вставка стилей и премиум-эмодзи из JSON.
    JSON из ответа бота в окне вставки
    JSON из ответа бота в окне вставки.
  4. Проверьте, что в поле появился фрагмент с текстом подписи, и нажмите «Создать». В строке новой замены нажмите мигающую кнопку «Применить», отметьте нужную пересылку и нажмите «Сохранить».
    Подпись вставлена отдельным фрагментом
    Подпись вставлена отдельным фрагментом.
    Применение созданной замены с подписью
    Применение созданной замены с подписью.
    Пересылка, к которой применяется подпись
    Пересылка, к которой применяется подпись.
  5. Теперь ко всем пересылаемым сообщениям будет добавляться подпись с премиум-смайликами.
    Исходное сообщение без подписи
    Исходное сообщение без подписи.
    Подпись с премиум-смайликом в назначении
    Подпись с премиум-смайликом в назначении.

Как изменить подпись

JSON вставляется отдельным фрагментом. Перед ним и после него можно добавлять обычный текст, переносы строк, форматирование и метатеги. Если нужно изменить саму подпись с премиум-смайликами, отправьте боту новую версию и замените JSON.

Доступные действия с заменами

Кнопка «Изменить» рядом с заменой открывает её основные настройки. В меню «Ещё» доступны другие действия:

  • «Применить»: выбрать пересылки, в которых нужна замена.
  • «Дублировать»: создать копию замены с такими же настройками.
  • «Выбрать проект»: добавить замену в проект.
  • «Удалить»: удалить замену.
Кнопка «Ещё» в строке замены
Кнопка «Ещё» в строке замены.
Действия с заменой в меню «Ещё»
Действия с заменой в меню «Ещё».

Кнопка «Применить» в строке замены также открывает выбор пересылок. Когда замена уже привязана, вместо неё отображается «Пересылки [N]», где N показывает количество выбранных пересылок.

Кнопка со списком привязанных пересылок
Кнопка со списком привязанных пересылок.
Изменение списка пересылок для замены
Изменение списка пересылок для замены.

Частые вопросы

Нужно ли отдельно перечислять слова с большой и маленькой буквы?

Нет. В режимах «Текст» и «Список» поиск не различает регистр: для «Машина» и «машина» достаточно одного варианта. При этом ищется сочетание символов, которое может встретиться и внутри более длинного слова. Если нужны только целые слова, используйте режим «Regexp» с границами слова.

Как добавить подпись, не заменяя исходный текст?

В режиме «Regexp» знак $ в поле «Искать» обозначает конец сообщения. Текст из поля «Заменять на» добавится в этом месте, а основной текст останется целиком. В «Готовых примерах» есть варианты добавления подписи; пример со ссылкой на источник показывает настройку и результат.

Как добавить ссылку именно на исходный пост, а не на автора?

Используйте метатег <src-message-link>: он подставляет ссылку на исходное сообщение. Метатег <author-name-link> создаёт ссылку на автора, а <src-chat-name> подставляет название чата-источника. Готовый пример «Добавлять ссылку на источник» объединяет название чата и ссылку на исходный пост.

Почему перевод или ИИ меняет добавленную подпись?

Если у замены выбрано «До обработки», подпись добавляется до перевода и обработки ИИ. Эти обработчики получают текст уже вместе с подписью и могут изменить её. Чтобы добавлять подпись к готовому результату, выберите у этой замены «После обработки». Подпись появится после перевода и ИИ; другие поздние замены по-прежнему могут её изменить.