Создаем корпоративную библиотеку с использованием no-code инструментов
Мы в Appbooster начали собирать корпоративную библиотеку четыре года назад. Тогда все книги помещались на одной полке, и мы справлялись без библиотекаря. Росла компания, росла библиотека, и сложностей становилось все больше: хочешь взять книгу, а её нет на полке, и у кого она — непонятно.
В итоге мы начали искать решение, которое позволило бы автоматизировать библиотеку, а точнее дало бы возможность:
- Просматривать весь список книг с актуальными статусами
- Просматривать страницу книги с основной информацией
- Брать или сдавать книгу
- Ставить оценки
- Писать отзывы
- Если книга занята, вставать в очередь и получать уведомления об освобождении книги
- Просматривать, что на руках у тебя
- Получать уведомления о том, что книгу нужно вернуть
И самое главное — чтобы такое решение всегда было под рукой. Так как мы работаем в сфере мобильного маркетинга, приложение казалось идеальным вариантом. В один из внутренних хакатонов эта идея даже начала прорабатываться, но до готового приложения дело так и не дошло. Мы оценили затраты: потребовалось бы два мобильных клиента + бэкенд, что не очень дешево для внутреннего инструмента.
Телеграм-бот
Идея создания бота в Telegram для библиотеки пришла мне еще года два назад. Я честно пыталась настроить и заставить его работать с помощью Botfather, но построить нормальный бэкенд для бота у меня не вышло. Идея затухла.
Новый интерес к ботам родился после прочтения статьи моего коллеги Саши Субботина о том, как создать бота с использованием Webhooks и сервиса автоматизации Integromat.
На разработку ушло несколько часов и спустя пару итераций получился бот, который смог закрыть часть поставленных задач, а именно:
✅ Брать или сдавать книгу
✅ Если книга занята, узнать у кого она
✅ Смотреть, какие книги у тебя на руках
Дополнительно бот мог:
✅ Уведомлять других людей об активности с книгами в корпоративный Slack
✅ Присылать книги с определенным тэгом (например, #продажи )
Связка работала таким образом: пользователь отправляет боту сообщение, которое через webhook попадает в Integromat. Там, в зависимости от наличия ключевых слов в тексте, срабатывает один из сценариев.
Очень важно учесть, что бот не может вести диалог, то есть все команды должны быть «одноразовыми» и очень четкими, ведь переспросить бот также не может.
В качестве бэкенда выступила таблица Google Sheet со списком всей имеющейся у нас литературы.
В результате получилось вот такое дерево с разными сценариями в зависимости от команды боту.
Базовые задачи бот закрывал — решение точно было лучше, чем то, что мы использовали. Но больше половины задач (просмотр всего списка, оценки, отзывы, уведомления), к сожалению, оставались не решёнными.
Glide
Мода на no-code инструменты уже довольно давно гуляет по отрасли, но про Glide (сервис создания PWA-приложений на основе Google Sheets) я узнала только этим летом. Так как PWA кроссплатформенны, а Google Sheets заменяет базу данных, которая является основой библиотеки, сервис подошел как нельзя лучше для тех задач, которые не мог закрыть бот в Telegram.
При присоединении к Glide таблицы (той же, которая уже использовалась ботом) я сразу смогла закрыть задачи демонстрации каталога книг как в целом, так и страницы каждой отдельной книги. Представление информации из таблицы — базовый функционал сервиса, и работает даже без дополнительных настроек.
Также «из коробки» в Glide имеются комментарии: включаем эту опцию и получаем возможность оставить отзыв на книгу. Сейчас я отказалась от такого решения, так как оно не позволяет понять, положительный отзыв или нет, и заменила его на форму сбора отзыва как в App Store. Все отзывы записываются на отдельный лист таблицы, связываются с книгой по названию (благодаря функции Relation) и отображаются на странице книги. На основе оставленных оценок можно рассчитать рейтинг книги среди коллег и также выводить его в любом удобном виде.
Решение казалось отличным, но получалось, что есть бот, который делает часть работы, и есть приложение, которое только демонстрирует каталог. Нужно было совместить их функционал.
Glide & Zapier
У Glide есть возможность завести на кнопку любой «зап» сервиса автоматизации Zapier, который по сути является аналогом ранее используемого Integromat. На этом этапе бесплатный функционал уже не помогал — чтобы получить возможность делать многоступенчатые цепочки запов, нужно было оформить подписку, зато мы получили заветные кнопки "Беру книгу" и "Сдаю книгу" прямо в приложении.
Так как в Zapier есть интеграция со Slack, мы смогли решить задачу напоминаний. При срабатывании сценария «Беру книгу» зап не просто выполняет действия бота (заносит информацию в таблицу), но также ждет месяц, а затем отправляет в личные сообщения в Slack напоминание о том, что книгу пора вернуть на полку.
Подытожим, что умеет приложение Glide в связке с Zapier:
✅ Посмотреть весь список книг с актуальными статусами
✅ Просмотреть страницу книги с основной информацией
✅ Взять или сдать книгу
✅ Поставить оценку
✅ Написать отзыв
✅ Если книга занята, узнать у кого она
✅ Смотреть, какие книги у тебя на руках (задача выросла в полноценный профиль пользователя)
✅ Получать уведомление о том, что книгу нужно вернуть
Дополнительно:
✅ Отзывы отправляются в общий канал в Slack для обсуждения
✅ Поиск, сортировка и фильтрация
✅ Раздел «Избранное»
✅ Вход через корпоративный Gmail аккаунт
Как видно, всё, что планировалось, удалось реализовать. Но самое главное — наши базовые потребности не предел, и есть большие возможности для дальнейшего развития такого небольшого, но важного внутреннего продукта. А что из no-code инструментов вы используете в своей компании?
Если вам будет интересно внедрить такое решение у себя в компании и у вас возникнут вопросы по реализации, пожалуйста, пишите мне на почту: irina@appbooster.com, буду рада помочь.