Автоматизация публикации постов

Задача:

Пост лежит в отложке (в Вконтакте или Telegram)

Нужно, чтобы после публикации поста, бот запоминал ссылку и:

  • Подставлял её в сообщение.

  • Подставлял в текущую схему, чтобы реакция на комментарии автоматически включались для данного поста.

Для решения данной задачи нам понадобится реакция на публикацию поста и глобальная переменная.

Ссылка на пример готовой схемы для TG и VK: 💾 Cкачать схему 🔧 Инструкция по установке схем

№1 Создаем глобальную переменную

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

Если нет или вам это неудобно, то опять же зависит от задачи:

  1. Если вам нужно хранить ссылки на все опубликованные посты, тогда создайте для каждого поста отдельную глобальную переменную.

  2. Если достаточно, чтобы каждый раз, после публикации нового поста, старая ссылка перезаписывалась (например, для рассылки), тогда достаточно будет создать одну глобальную переменную.

Для этого необходимо зайти в раздел глобальных переменных и создать новую.

Далее по пунктам:

  1. В поле "Название" пишем: Пост 1 (или любое другое на ваш выбор)

  2. В поле "Системное имя" пишем: Post Или любое другое на ваш выбор, но на латинице без пробелов! Для упрощения, можете и там и там написать Post1

  3. Нажимаем "Сохранить"

Готово!

Для нескольких постов создайте несколько глобальных переменных с разными системными именами.

Если вам нужно сохранять несколько постов в одну глобальную переменную, то рекомендуем делать это через JSON.

№2 Создаем реакцию на публикацию поста

Реакция на пост для ВКонтакте:

Инструкцию по интеграции вашего сообщества с Multy.ai читайте тут

Создаем событие "Пост создан" с условием "Текст поста"

Если у вас подключено несколько сообществ ВКонтакте, то рекомендуем добавить еще одно условие: "Бот или Интеграция, запустившие событие" и выбрать ваше сообщество.

Готово!

Осталось вывести значение id поста и добавить его в глобальную переменную для дальнейшего использования.

Реакция на публикацию поста для Telegram

Перед тем, как сделать реакцию на публикацию поста, вам необходимо добавить вашего бота в админы канала и включить комментарии.

Для Телеграм вы можете создать такое-же событие, как и для ВКонтакте, но в условии поставить "Канал, где произошло событие".

Однако, мы рекомендуем сделать иначе:

  1. Добавьте бота не в канал, а в чат, который создан для комментариев.

  2. Создайте блок Событие с контейнером "Входящее сообщение в чате" и условием "Текст сообщения" → содержит → введите небольшой текст из поста.

  3. Если бот подключен к нескольким чатам, то добавьте в этом же контейнере условие "Интеграция-инициатор события" и выберите нужный чат.

  4. Готово!

Осталось вывести значение id поста и добавить его в глобальную переменную для дальнейшего использования.

№3 Cохраняем значение в глобальную переменную

После блока события, который реагирует на публикацию поста добавьте блок действия с глобальной переменной, в которую мы будем сохранять ссылку на пост.

Для ВКонтакте

  1. Создайте блок действия с контейнером "Задать глобальную переменную"

  2. Укажите вашу глобальную переменную, в которую нужно сохранить ссылку

  3. Тип данных - Текст

  4. Операции - Задать переменную

  5. Новое значение: https://vk.com/wall{var:object.author.id}_{var:object.post.id} Где: {var:object.author.id} - id сообщества {var:object.post.id} - id поста

  6. Готово! Теперь можете использовать переменную {global:post.text} для подстановки в необходимые места.

Для Telegram

В Telegram последовательность настройки такая же как и для ВК

  1. Создайте блок действия с контейнером "Задать глобальную переменную"

  2. Укажите название вашей глобальной переменной, в которую нужно сохранить ссылку

  3. Тип данных - Текст

  4. Операции - Задать переменную

  5. Новое значение: {var:object.post.url}

Теперь можете использовать переменную {global:tgpostlink.text} для подстановки и вывода в текст.​​

Если же вам нужно подставлять айди поста в схему для комментариев, то можно сделать еще проще, без регулярных выражение, а именно, сохранять только id поста с помощью переменной: {var:object.id}

Сохраняем её в глобальную переменную как число.

А потом в реакции на комментарий в условии подставляем {global:tgpostid.number}

№4 Как и где использовать ссылку на пост

Есть много вариантов, где может пригодится автоматическая подстановка ссылки на только-вышедший пост, но самые распространенные, это в сообщении и в схеме.

Чтобы добавить автоподстановку ссылки в текст, используйте переменную:

{global:post.text}

Где post - это системное имя вашей глобальной переменной.

Но возьмем другой пример.

Мы создали схему, где выдаем бонусы за комментарии.

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

Для этого создаем блок Событие с контейнером "Комментарий создан" и условием "ID поста"

Вставляем в "Допустимые значения" нашу переменную:

{global:post.text}

В примере на скриншоте реакция будет на любой комментарий.

Чтобы бот реагировал на конкретный текст, добавьте в этот же контейнер условие "Текст комментария".

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

Готово!

Теперь, после публикации поста, бот автоматически подставит ссылку и реакции на комментарии начнут работать.

Last updated