Чтобы лучше понять кому и для чего нужна Molecula, давайте посмотрим наш промо-ролик, созданный для участия в конкурсе. История про успешного IT-менеджера Майка (на английском):
Проблематика
Нам постоянно приходится переписываться по email с разными группами людей. Каждой группе соответствует определенная тематика будь то один из проектов, обсуждение рабочих вопросов с сотрудниками из других отделов, общение с партнерами, заказчиками и т.д. Когда возникает потребность написать новое письмо той или иной группе людей, приходится искать старые письма в истории и копировать всех участников переписки в новое письмо в ручном режиме. Это отнимает кучу времени! Еще хуже, когда нужно написать сразу нескольким группам, участвовавшим во множестве переписок. Как пример – отправить поздравление с новым годом всем сотрудникам заказчика, с которыми ты общался в течение года. В ручном режиме можно запросто упустить кого-то важного из виду. Проект Molecula призван решить эту проблему.
Как работает Molecula
Molecula индексирует все письма из аккаунта в Office 365 и группирует участников переписок при помощи специального алгоритма. Полученные группы представляются пользователю в виде наглядных «пузырей», большие из которых представляют группы людей, с которыми пользователь общается чаще всего:
Чтобы написать новое письмо, достаточно нажать на нужный «пузырь» и уточнить какие из получателей будут в полях TO, CC и BCС (при помощи перетаскивания контактов из одной группы в другую):
Нажимаем кнопку «Set Recipients» и на этом все – получатели заданы! Больше не нужно рыться в почте в поисках старых писем!
Архитектура решения
В рамках MVP мы разработали Outlook Add-Id и Web-приложение с использованием Azure AD. При разработке Outlook Add-In использовали JavaScript API для Outlook и новый UI-фреймворк от Microsoft – Office UI Fabric. Для визуализации «пузырей» применили библиотеку d3js.
Серверная часть реализована с использованием Java и Docker-контейнеров. Непосредственно сервер развернут в Azure, а для получения писем из Office 365 используется Microsoft Graph API.
Более наглядно архитектура системы представлена на рисунке ниже.
Проблемы с которыми мы столкнулись при разработке
Много времени ушло на изучение логики настройки Graph API в Azure и визуализацию «пузырей» в том виде, как мы этого изначально хотели. С большими проблемами давалась отладка под OWA для iPhone – на эту тему скоро выйдет отдельная статья.
Как попробовать
Сейчас мы работаем над публикацией первой версии Molecula Add-In в Office Store и рассчитываем, что к середине апреля надстройку можно будет установить напрямую из магазина Office. С веб-версией можно поиграться уже сегодня, перейдя по ссылке ниже. Обратите внимание, что для тестирования необходим аккаунт c подпиской на Office 365.
Ссылка на Веб-версию Molecula: https://molecula.email/web
Дальнейшие планы
Как я уже писал выше, первая версия Molecula — это MVP (минимально полезный продукт). Во второй версии мы планируем:
- улучшить алгоритм группировки получателей;
- предоставить пользователю альтернативный способ визуализации групп, позволяющий отображать большее количество групп на одном экране с возможностью контекстного поиска по всем группам;
- есть идеи по интеграции групп из Molecula со стандартным функционалом групп в Outlook (пока прорабатывается).
Дальнейшее развитие будем планировать, отталкиваясь от пожеланий пользователей. Если Molecula решает проблему, которая актуально и для вас – напишите об этом в комментариях! Расскажите нам, что еще хотели бы видеть в Molecula?
Понравилась идея? Поддержите Molecula своим голосом на DevPost (для голосования может потребоваться регистрации, занимает не более 3-х минут).
Об авторе
Петр Ляпин -Технический директор ООО «ВейвПоинт»
Более 10 лет опыта внедрения проектов по автоматизации
бизнес-процессов. Работал со множеством российских и
зарубежных компаний. Основатель проекта XLTools.net.
Комментарии (15)
and7ey
15.03.2016 20:12Зачем тут серверная часть? Мне кажется, что все можно было сделать на клиенте.
peterliapin
15.03.2016 22:08+1Чтобы построить группы нам необходимо пройтись по всем письмам из почты и проанализировать участников переписки. К сожалению, текущая версия JavaScript API для Outlook такой возможности не дает. Да и сама обработка может быть довольно долгой и делать её нужно инкрементально, что невозможно на клиенте.
Обработку исключительно на клиенте можно реализовать если использовать для разработки VSTO. Мы уже думали над этим вариантом и, возможно, в будущем такая версия так же будет разработана. У VSTO есть свои минусы, на тему сравнения VSTO и нового типа Add-Ins для Office можно почитать вот эту статью.
Sergey-S-Kovalev
16.03.2016 10:26Outlook 2016 > Создать элемент > Другие элементы > Группа контактов
Ввести имя и добавить контакты > Сохранить и закрыть.
Готово.
Работает везде, синхронизируется, не требует дополнительной установки, делается один раз.peterliapin
18.03.2016 11:33+1Сергей, вы правы. Так тоже можно делать, но это ручной способ ведения групп. Минус такого подхода в том, что группы нужно создавать самому. Допустим, у меня начинается новый проект и кто-то из моих коллер начал групповое обсуждение этого проекта по email, в случае с группами контактов мне нужно проделать указанный вами сценарий вручную, что подразумевает ручное копирование всех контактов из письма, которое я получил от коллег. Поиск контактов по письмам там не предусмотрен.
Molecula же делает всё автоматически, как только у вас появился новый круг общения в письмах, вы сразу же увидите новую группу в интерфейса Molecula.
В любом случае — ваше замечание очень полезно! В будущем мы планируем сделать интеграцию групп Molecula с группами контактов и новыми "Группами общения" не так давно появившимися в Exchange Online. Это позволит использовать преимущества обоих подходов и избавит нас от множестваручных действий.Sergey-S-Kovalev
18.03.2016 12:56| подразумевает ручное копирование всех контактов из письма
Все верно. Самый быстрый стандартный вариант:
Выделить все контакты в письме > Ctrl+C > Создать элемент > Другие элементы > Группа контактов > Ввести имя группы > Добавить участников > Контакты > Из адресной книги > В поле "Участники" нажать Ctrl+V > Ок > Сохранить и закрыть.
Но я уверен, что ваш продукт найдет своего благодарного пользователя. :)peterliapin
18.03.2016 13:15+1Да, хороший вариант. Единственное, он не исключает того, что для всех полей (TO, CC, BCC) CTR+C > CTR-V нужно делать по отдельности. Одновременно скопировать контакты из всех полей не получится. Плюс, Molecula понимает какие контакты должны быть в TO и CC когда нужно еще раз отправить письмо аналогичной группе. С группами контактов такого не получается сделать.
Но вы правы, каждый пользуется тем, что ему удобно и привычно. Напишу вам когда реализуем интеграцию с группами контактов. Посмотрите, может быть и вам придется по вкусу наш сервис :)
peterliapin
18.03.2016 11:45+1Сергей, добавил идею про интеграцию с группами контактов в наши планы по развитию проекта: http://devpost.com/software/molecula (см. раздел "What's next for Molecula?"). Спасибо за идею!
Sergey-S-Kovalev
18.03.2016 13:03Незачто в общем то :)
Я выскажу своё личное мнение, коли уж пошла такая пьянка. У вас там поля Кому/Копия/СС сожраны. Выглядят куцо и не информативно, непривычно. Убрать лишнего сотрудника из группы на стадии её создания не удобно. По-моему не стоит усекать их, лучше сместить интерфейс создания ниже после того как, какая то группа выбрана.
Но я не UI дизайнер, я простой человек, могу и ошибаться.peterliapin
18.03.2016 13:21+1Не очень понял, что означает "сожраны". Сможете показать на скриншотах? Можно на почту: peter@molecula.email
Мы обязательно подумаем как улучшить интерфейс! Первая версия может быть не идеальна и мы с удовольствием рассматриваем все идеи по улучшению. Заранее спасибо!Sergey-S-Kovalev
18.03.2016 16:40Видно ассоциативный ряд отличается по поводу "сожрано" :)
На мой взгляд должно быть так:
Спойлерpeterliapin
18.03.2016 17:34+1Согласен. К сожалению, мы этим не можем управлять. В реальном использовании оно будет выглядить чуть лучше за счет того, что обычно письмо отображается на весь экран. Тут я сильно сжал окно, дабы попасть в нужные размеры.
Sergey-S-Kovalev
18.03.2016 20:09| обычно письмо отображается на весь экран
Я бы согласился, что на полном экране оно бы выглядело лучше, но лично у меня 95%+ писем это переписка, а не создание нового письма. А переписка идет в основном окне Outlook как правило. И получается, что ширина остается примерно такой же:
Это после нажатия кнопки Ответить
Спойлер
peterliapin
18.03.2016 11:48+1Друзья, как я уже говорил, наш проект учавствует в конкурсе Hack Productivity. Сегодня последний день голосования!
Если вам понравилась идея — поддержите наш проект на DevPost: http://devpost.com/software/molecula — труется небольшая регистрация, далее нужно нажать vote и like. Весь процесс занимает не более 2-х минут!
Заранее всем спасибо! Ваши идеи и поддержка очень важны для нас!
Indexator
http://www.funnyordie.com/videos/241266b3bf/moleculo-the-molecular-man