ifttt.com - это бесплатный онлайн-сервис, который позволяет автоматизировать многие процессы. Например, отправить себе письмо на email, если погодный сервис прогнозирует завтра дождь.

С помощью IFTTT бот Aimylogic может отправлять полученные от пользователя данные на интернет-сервисы, поддерживаемые IFTTT. Список сервисов огромен - это обычные облачные сервисы, мессенджеры, устройства умного дома и многое другое.

Например, вы можете получить в ходе диалога от пользователя его имя, номер телефона и адрес, а затем сохранить эти данные в Google таблице и отправить уведомление сотруднику по почте или в Telegram.

Для реализации такой логики не нужно писать код и интегрироваться с сервисами Google и почтой. Все это уже делает IFTTT, остается только создать апплет в IFTTT, а затем выполнить обычный HTTP запрос из сценария бота в тот момент, когда нужно отправить данные.


Какие задачи можно выполнить с помощью IFTTT?

У нас есть несколько уроков по интеграции с IFTTT, которые помогут вам решить ваши задачи.

Запись в гугл таблицу

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

Если вы хотите, чтобы в таблицу добавлялась новая строчка с информацией от бота, то обратитесь к данной статье.

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

Отправка email

Если вы хотите с помощью бота отправлять email на вашу почту, продолжайте читать данную статью.

Можно использовать IFTTT с другими сервисами, например, c Trello.

В данной статье мы рассмотрим отправку email с помощью бота

Бот сможет собрать информацию у клиента и отправить вам на почту. Бот будет отправлять информацию вам на почту, привязанную к вашему аккаунту IFTTT.

Как использовать IFTTT

Добавление вебхука и события

Чтобы использовать IFTTT с помощью бота, в IFTTT вам нужно использовать вебхуки. Затем, с помощью вебхука, вы можете отправлять данные в какой-либо сервис.

Зарегистрируйтесь на IFTTT.com или войдите в свой аккаунт IFTTT.

На главной странице https://ifttt.com нажмите Explore.



Затем нажмите на знак +



Если вы не видите знак плюс, то используйте эту ссылку: https://ifttt.com/create

Нажмите This.


Наберите в поиске webhook. Кликните на Webhook.
* Нажмите Receive a web request.
3. Придумайте любое название события и напишите его латинскими буквами без пробелов в поле Event Name.

Скопируйте и вставьте название события (ивента) себе в блокнот, оно понадобится нам позже.

Нажмите на Create trigger.


Создание действия

Теперь к триггеру нужно добавить действие - собственно тот сервис, куда вы хотите отправить данные от бота. Давайте отправим полученную от пользователя информацию письмом на ваш электронный ящик, привязанный к аккаунту IFTTT.

Нажмите на that.



В поиске наберите email и кликните на email.


Кликните на Send me an email:


Вы увидите следующее:



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


Вы можете изменить это поле и написать в нём то, что вы хотели бы, чтобы было в теме письма. Вместо "{{EventName}}" будет автоматически подставлено название вашего события.

Body - это то, что будет написано в тексте письма:



What: {{ EventName }} - название события
When: {{ OccurredAt }} - автоматически будет подставлена дата
Extra Data: {{ Value1 }}, {{ Value2 }}, {{ Value3 }} - названия ваших переменных.

Если вы не хотите, чтобы в письме вам приходило название события и дата события, вы можете удалить эти строчки из BODY:
What: {{ EventName }}<br>
When: {{ OccurredAt }}<br>


Не изменяйте значения переменных {{ Value1 }}, {{ Value2 }}, {{ Value3 }} здесь!

IFTTT не дает сохранять более трех разных переменных. Если нужно больше, то стоит посмотреть в сторону платного аналога - zapier.com

Нажмите на Create Action

Нажмите Finish.

После этого вы увидите информацию о созданном событии.

Теперь всякий раз, когда бот отправит HTTP запрос на настроенный нами webhook, то IFTTT возьмет переменные Value1, Value2, Value3 из этого запроса и автоматически отправит письмо с их содержанием на вашу почту.

Протестируем вебхук

Перейдите по ссылке https://ifttt.com/maker_webhooks и нажмите Documentation.
Если ссылка не работает, перейдите на главную https://ifttt.com/, кликните webhooks, кликните Documentation.

Откроется страница тестирования веб-хука. Эта страница поможет вам проверить, правильно ли вы выполнили предыдущие шаги и работает ли вебхук.

Вместо {event} напишите название своего события. Ранее вы скопировали его в блокнот, так что теперь скопируйте и вставьте его в это поле.

Если вы забыли название своего события, то перейдите на главную https://ifttt.com/, кликните Webhooks и посмотрите название своего event в списке. Вы увидите карточки с надписями "If Maker Event "event", then Send me an email at ...@...mail.com". Значение в кавычках ("event") и есть название вашего события.

Название события нужно вставлять без кавычек и скобок!



В пропуски value1, value2, value3 напишите что угодно.

Нажмите на Test it

Проверьте свой почтовый ящик. Вам должно было прийти письмо.

Если письмо не пришло...

Если вы не видите нового письма, подождите пару минут. Если письмо так и не пришло, проверьте, какой имейл привязан к вашему аккаунту IFTTT и какой имейл вы проверяете. Чтобы проверить, какой имейл привязан к вашему аккаунту, нажмите на иконку своего профиля, затем Account.



Если тестирование было успешным...

Если письмо пришло, то снова вставьте название вашего события в ячейку на экране тестирования (так как иногда эта ячейка автоматически очищается):

Внизу образуется ссылка на вебхук. Скопируйте её и вставьте в блокнот:



Подключаем событие к боту

Теперь нужно в сценарии добавить блок HTTP запрос, с помощью бота отправить HTTP-запрос на адрес вебхука в нашем апплете и передать в запросе нужные данные. Этим сейчас и займёмся.

Перейдите в Aimylogic, откройте свой сценарий или создайте новый сценарий.

Чтобы передать данные в таблицу, нужно записать их в какую-либо переменную. Поэтому добавим блок Ввод текста и назначим переменную $message. Всё, что напишет на данном этапе пользователь, будет помещено в эту переменную.



Свяжите "Переход после ввода $message" с блоком HTTP-запрос.



выберите метод POST

В поле URL HTTP-запроса вставьте адрес вебхука, который вы скопировали в блокнот ранее.

Вкладку RESPONSE заполнять не нужно.

Кликните на вкладку Body, скопируйте и вставьте туда следующее:

{
"value1": "$message"
}


Если в будущем вы захотите передавать три переменные, то вставляйте так (пропишите названия переменных, которые присутствуют в вашем сценарии):
{
"value1": "$message",
"value2": "$address",
"value3": "$quantity"
}


Но в данный момент давайте протестируем отправку только одной переменной - $message.

Перейдите на вкладку Headers и добавьте там заголовок
Content-Type
со значением
application/json



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

Если вы не заполните вкладку HEADERS то запрос будет завершен с ошибкой 400.

От "Завершен с ошибкой" сделайте связь с блоком с текстом:
ошибка отправки $httpStatus



От варианта "Завершен успешно" сделайте связь с текстовым блоком с текстом:

Ваши данные отправлены!



Теперь ваш бот отправит нужные вам значения в нужный вам сервис на IFTTT когда дойдет до блока HTTP запроса. Так вы можете передавать данные из бота в любые сервисы, которые поддерживаются в IFTTT.

Нажмите Тестировать, напишите боту своё сообщение и проверьте, добавился ли данный текст в таблицу.



Если что-то не получается...

Убедитесь, что вы поставили метод HTTP-запроса - POST.
Убедитесь, что в HTTP-запросе на вкладке HEADERS указано:
Content-Type
со значением
application/json

Если вы видите ошибку -1, то убедитесь, что в url HTTP-запроса нет пробелов. Также убедитесь, что в названии вашего события нет фигурных скобок. Название нужно копировать без скобок и кавычек. Вот так неправильно:



Если вы видите ошибку 404, значит, неправильно оформлен http-запрос.

Если вы видите ошибку 400, значит, неправильно оформлен http-запрос. Обратите внимание на поле BODY. Например, вы не можете использовать одновременно одинарные - ' ' и двойные - " " кавычки.

Если вы отредактировали сценарий, продолжаете отсылать данные, но ничего не получается, значит, в ваш сценарий не поступили изменения. Остановите тестирование в тест-виджете и снова нажмите "Тестировать", чтобы изменения пришли в силу. Не рекомендуется также тестировать два сценария одновременно в разных вкладках.

Если всё же не получается отсылать данные, то проверьте, что в url запроса верно указано название вашего события . Проверьте название вашего события здесь - название события указывается в названии апплета в кавычках после "If Maker Event". В url запроса название события нужно указывать без кавычек и скобок.
Была ли эта статья полезна?
отменить
Спасибо!