Цитатник в вашей беседе на Автопилоте
Всем привет!
Хотели ли бы Вы, чтобы Ваш бот дарил умные мысли людям? Да?
Автопилот это умеет, практически из коробки.
Не верите? :-) Конечно, можно запихнуть кучу цитат и рандомно выдавать, но поступим мудрее — отошлем запрос в базу на внешнем сайте, получим нужную фразу и выведем в чат. Сайтов таких множество, поисковик в помощь.
Запускаем Автопилот:
Делаем команду:

Если пользователь написал сообщение «умная мысль» (я пользуюсь регуляркой ^умная мысль$
, мне удобнее, хотя можно сделать сообщение:
с текстом равным умная мысль
).
и если ID нашего чатика равно нужному:

то посылаем запрос на адрес:
https://andreyscripts.skyjoom.com/quotes.php

Важно! Так же в запросе можно передать параметр type
с числовым значением типа цитаты. По умолчанию: если параметр не задан, то используется цитата из всех источников. Пример в конце статьи.
Важно! Автор скрипта и сервис «Автопилот» не несет ответственность за качество цитат, так что используйте на свой страх и риск.
Следующим действием надо добавить сообщение с переменной: %response%
(или %request_response%
). В ней будет полный ответ стороннего сайта (например его JSON структура).
Когда структуру получили, парсим полученный результат во временные переменные %text%
и %author%


Парсить нужно через переменную {get_var}. Подробнее про запросы и парсинг данных можно почитать в сообществе сервиса «Автопилот», либо по ссылкам ↑
Временная переменная %text%
будет равна: {get_var}quoteText|json|%request_response%{/get_var}
Альтернативный упрощенный вариант: %response.quoteText%
Временная переменная %author%
равна: %response.quoteAuthor%
Да, достаточно просто скопировать)
Остается только вывести результат в беседу:

Тестируем!

Вот и все! Вы все еще не верите, что Автопилот крут? Тогда мы идем к Вам))
Тип цитаты (опциональный параметр)
Для того чтобы получать цитаты определенного типа в запросе добавляем одно из следующих значений:
0 - все источники (по умолчанию)
1 - цитаты из книг
2 - цитаты из фильмов
3 - цитаты из сериалов
4 - цитаты известных и великих людей
5 - цитаты из песен
6 - цитаты из телепередач /шоу
7 - цитаты из компьютерных игр
8 - цитаты из мультфильмов
9 - цитаты из аниме
10 - цитаты из стихотворений
11 -цитаты из спектаклей
12 - цитаты из комиксов
13 - цитаты из самиздата
14 - пословицы и поговорки
15 - притчи


Бонус
Еще один скрипт, который берет цитаты со стороннего сайта
https://andreyscripts.skyjoom.com/quotes_great_people.php

который также возвращает JSON (достаточно заменить только адрес в запросе):
{
"success": true,
"quoteText": "Любовь это соревнование в том, кто принесет друг другу больше радости.", "quoteAuthor": "Стендаль"
}
Иногда у вас может не получиться достать переменную из JSON массива. Ибо он будет большим и сложным. Тогда просто вставьте его в примечание ресурса и там нажмите кнопочку «Украсить JSON». Работать станет в разы легче. Пример:
Статью подготовил Андрей Горячих.