Лучшие статьи и кейсы стартапов
Включить уведомления
Дадим сигнал, когда появится
что-то суперстоящее.
Спасибо, не надо
Вопросы Проекты Вакансии
text-to-action platform
Рекомендуем
Продвинуть свой проект
Лучшие проекты за неделю
37
Битрикс24

Битрикс24

www.bitrix24.ru

28
Отследить-посылку

Отследить-посылку

отследить-посылку.рф

13
WebResidentTeam

WebResidentTeam

webresident.agency

12
Логомашина

Логомашина

logomachine.ru

11
Devicerra

Devicerra

devicerra.com

9
ADN Digital Studio

ADN Digital Studio

adn.agency

9
Aword

Aword

Приложение для изучения английских слов

9
Eczo.bike

Eczo.bike

www.eczo.bike

9
GIFTD

GIFTD

giftd.tech

7
Flowlu

Flowlu

flowlu.ru

Показать следующие
Рейтинг проектов
Подписывайтесь на Спарк в Facebook

Сайт запущен - а значит мы готовы дать всем поиграться в Leecero

1 704 10 В избранное Сохранено
Авторизуйтесь
Вход с паролем
Мы наконец-то закончили сайт и форму создания/редактирования сценария - а это значит что мы готовы выдавать пробный доступ всем желающим. Этим постом мы инициируем серию обучающих постов по использованию Leecero

Все началось 20.06, когда я заметил запись в твиттере популярного блогера Варламова

b_55aa13e2786fe.jpg

Тогда меня осенило: любой мессенджер позволяет строить отличные каналы взаимодействия с пользователем, на всех платформах и без всяких приложений. Зачем мне приложение для получения свежих новостей, когда можно добавить бота и получать сообщения от него? Зачем мне приложение для вызова такси, когда можно добавить бота и писать туда "такси на Заполярную 15 через полчаса" и получать свое такси? А через 4 дня Павел Дуров выпустил официальных ботов для Telegram - и на ближайшем хакатоне AngelHack, Leecero победил в одной из номинаций. Итак, к обучению.

Что такое Leecero?

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

Вот пример простого сценария заглушки:

b_55aa1691ba931.jpg

Этот сценарий описывает следующий автомат

b_55aa17951b65f.jpg

По этому сценарию бот будет получать все сообщения от пользователей и возвращать сообщение "Я ничего не делаю" на каждое сообщение.

Создание своего бота в Leecero

Любое создание бота Telegram начинается с инструкции Telegram, а в частности надо написать специальному боту BotFather. Он объяснит что делать и после создания бота выдаст вам такое сообщение:

b_55aa19a0cd10b.jpg

Вот этот токен - самый важный идентификатор вашего бота. Дальше вам необходимо пойти на сайт Leecero и оставить нам свой e-mail. В ответ мы пришлем вам ссылку на форму создания бота, которая выглядит вот так

b_55aa1a335bc03.jpg

Заполняете, нажимаете Create - и все, бот создан и работает.

Введение в сценарии

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

b_55aa1bdab1b32.jpg

И его автомат. Простите за английские переходы - рисовалка пока не понимает русского языка.

b_55aa1c0571709.jpg

Любой автомат начинается с <fsm name="Имя бота">. Состояния бота описываются с помощью <state name="ИмяСостояния">. Из любого состояния, кроме start, может быть любое количество переходов в любые состояния (включая start) описываемые как <transition input="Терм" next="СледующееСостояние" action="Действие" />

  • input - входной "терм". если он будет обнаружен в введенном сообщение будет осуществлен переход в состояние next и выполнен action
    • Может быть глаголом в нормальной форме - инфинитив, например не "заблокируй" а "заблокировать"
    • Может быть существительным в нормальной форме - именительный падеж, единственное число, например не "карту" а "карта"
    • Может быть любым словом, тогда будет сравнение 1к1
    • Может быть * - тогда любая фраза приведет к переходу на next
    • Может быть специальными ключевыми словами {noun}, {verb} - но о них позже
  • next - следующее состояние. Тут вписывается название следующего состояния
  • action - действие
    • может быть обычной фразой - тогда эта фраза будет послана в ответ на сообщение пользователя при переходе
    • может быть конечной точкой (ссылкой) на web-вызов - тогда будет выполнен web запрос, а ответ отправлен в ответ на запрос, но об этом в следующем посте
    • может быть "-" - тогда будет выполнен переход на следующее состояние, но пользователю не будет показано сообщение, а введенная фраза подвергнется повторному анализу. Это нужно для построения цепочек типа "карта" -> "кредитная" -> "остаток" или "карта" -> "дебетовая" -> "остаток". (Примечание: в данном случае состояния Кредитная и Дебетовая - это разные состояния!)

Пока пожалуй все. Предложенной информации достаточно чтобы создать простого и даже сложного бота, и от души с ним поиграться. Помните что по умолчанию мы даем вам 100 бесплатных запросов в месяц. Если вам не хватает, напишите нам на info@leecero.com и мы что-нибудь придумаем.

Так что регистрируйтесь и создавайте своих ботов с помощью Leecero на www.leecero.com

0
Добавить в избранное Сохранено
Авторизуйтесь
Вход с паролем
Первые Новые Популярные
PushAll
Платформа мгновенных уведомлений.
Олег Карнаухов
Неплохая штука, как я понял тут главное удобство в том, что не нужен свой сайт и т.д. но возможностей пока мало, а 100 запросов в месяц - совсем не серьезно.

Еще у бота прежде всего должен быть функционал. У вас же с ним похоже просто можно будет поболтать и все?
То есть на деле нет вообще никаких возможностей кроме путей.
Вот если бы на каждую команду можно было бы прикрутить API запрос куда либо с параметрами из данных пользователя это было бы круто.

Еще и на вашей стороне хранить "авторизацию" и данные отдельных пользователей. К примеру их настройки для дальнейшей работы.
Ответить
Leecero
text-to-action platform
Павел Осадчук
возможности вызова API уже есть. Leecero умеет выделять из запроса даты, имена и адреса и выполнять REST запрос с параметрами. вот пример валютного бота: взаимодействует с API cbr. В следующем посте распишем подробнее эту часть

p.s. картинка в нормальном размере http://leecero.com/Content/images/3ValuteBotScr.PNG
Ответить
PushAll
Платформа мгновенных уведомлений.
Олег Карнаухов
А тогда в самом деле неплохо выходит.
Ответить
Leecero
text-to-action platform
Павел Осадчук
более того, "авторизация" = chat id уже хранится, вместе с текущим состоянием пользователя, что позволяет посылать точечные сообщения в конкретный чат, а так же делать broadcast рассылки простым вызовом API.
Ответить
LanguageBoost
Онлайн сервис для изучающих иностранный язык
Tihiro
Скажите пожалуйста, что вы используете для распознавания текста? Свой алгоритм или какие-то другие, уже существующие? В случае с блокировкой карты все просто - достаточно определить, равен ли глагол какому-то значению (блокировать, блокируй, заблокировать, заблокируй), а если это вопрос - как бот определит его смысл?
Ответить
Leecero
text-to-action platform
Павел Осадчук
Мы интегрировали словарь Зализняка, сервис выделения смысловых объектов от Yandex.Speech и AlchemyApi от IBM Bluemix. Последний довольно паршиво работает на русском языке, поэтому его оставим только для английского.

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

Есть конкретные примеры вопросов которые интересны? Можно подумать как разложить их в сценарий
Ответить
LanguageBoost
Онлайн сервис для изучающих иностранный язык
Tihiro
Спасибо за ответ.
Например, вопрос "tell me if I overdraw credit" - сможет ли система понять, о чем речь?
Ответить
Leecero
text-to-action platform
Павел Осадчук
Нет. Система выделит термы, пометит их по значению (глагол, прилагательное, существительное), определит "нормальную форму" и будет искать куда может пойти по этому списку.

Например возможна последовательность "tell" -> "credit" -> "overdraw" которой будет достаточно для удолетворения запроса пользователя

к сожалению, пока с английским мы поработали очень мало (проекту неделя от роду) поэтому я не могу гарантировать работоспособность такой схемы. но завтра я прогоню несколько тестов наших NLP библиотек и смогу сказать точнее.
Ответить
LanguageBoost
Онлайн сервис для изучающих иностранный язык
Tihiro
Здорово, спасибо за ответ!
Ответить
Choose Live
Что касается меню - если ответов для выбора больше 2-3, не очень удобно горизонтальное расположение клавиатуры. Возможно ли вертикальное расположение?
Ответить
Выбрать файл
Читайте далее
Загружаем…
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать