Друзья, мы выявили основные проблемы существующей кодовой базы клиента Golos.io и обозначили наши цели в плане развития; обсудили, каким образом можем увеличить скорость работы сайта и сделать его более производительным.
Теперь давайте поговорим об удобстве и функциональности клиента для пользователей.
Инфраструктурные сервисы
Ни один интернет-проект немыслим без различных сервисов оповещений, истории активности и взаимодействия с различными сторонними сервисами.
По аналогии с социальными сетями, рассчитанными на массового пользователя, такими как Facebook, Vkontakte, Instagram, нам необходимо реализовать сервисы для оповещений пользователей о событиях, произошедших с их аккаунтом или постами/комментариями.
Выделим основные способы уведомления пользователей:
- online уведомления на сайте;
- push уведомления для мобильных устройств;
- периодические уведомления по email.
Описанные выше способы уведомлений мы планируем реализовать при помощи набора дополнительных сервисов:
Notifications Aggregation Service
Данный сервис прослушивает блокчейн на предмет новых блоков, и в случае, если блок содержит необходимую информацию, записывает события в историю, а также оповещает остальные сервисы о необходимости отправить пользователю тот или иной вид оповещения.Online Notifications Service
Получает данные от Notifications Aggregation Service, и в случае, если пользователь онлайн, отправляет мгновенное оповещение, которое будет отображено непосредственно на сайте. Онлайн оповещения могут приходить не чаще, чем один раз в три секунды (время блока). Пользователь может настроить интересующие его оповещения, и получать только нужную ему информацию.Push Notifications Service
Данный сервис работает аналогично Online Notifications Service, с тем лишь отличием, что оповещения отправляются не на сайт, а в мобильное приложение. Мы используем Firebase для отправки push уведомлений мобильным пользователям. В перспективе возможна реализация push уведомлений в браузер. Пользователь, как и в предыдущем случае, может настроить интересующие его оповещения, и получать только нужную ему информацию.Mail Notifications Service
Данный сервис предназначен для отправки email пользователям. При помощи данного сервиса можно организовать автоматическую рассылку для вновь зарегистрированных пользователей, а также для увеличения retention путем рассылки писем тем, кто после регистрации не производил никаких действий на сайте.
Также, мы планируем вынести в отдельные сервисы:
Registration-service
Сложность с регистрацией новых пользователей заключается в том, что регистратор обязан заплатить за это определенное количество криптовалюты, а если не производить никакой дополнительной верификации, то открываются широкие возможности создателям ботнетов, и сжигается бюджет.
Верификация при помощи отправки СМС часто является отталкивающим фактором для новых пользователей, однако, пока это наиболее действенный способ защиты от создателей ботнетов.
Но тем не менее, мы бы хотели протестировать различные стратегии верификации пользователей, и именно поэтому видим необходимым выделение данной функции в отдельный сервис. По факту реализации данного сервиса мы планируем получить возможность использовать различные стратегии верификации пользователей без деградации сервиса.Options-service
Настройки, не связанные с консенсусом. На сайте Golos.io существует некоторое количество настроек самого клиента, никак не связанных с консенсусом. Это, например, язык интерфейса, отображаемая валюта, отображение NSFW контента. Мы хотим вынести хранение данных настроек в отдельный сервис. Это позволит конечному пользователю получить одинаково настроенный сайт, вне зависимости от того, каким браузером он пользуется или с какого устройства он зашел на Golos.io.Rates-service
Сервис для хранения и обработки информации о курсах криптовалют GOLOS и GBG к различным фиатным валютам, таким как RUB, USD, EUR. В текущей реализации расчет стоимости аккаунта, расчет награды за посты и комментарии в фиатных валютах происходят непосредственно в браузере пользователя, а сами расчеты, унаследованные от steem не раз являлись темой бурных обсуждений в чатах. Мы намерены вынести курсы валют в отдельный сервис, а сами расчеты реализовать без использования длинных математических формул.
На данный момент уже разработаны все сервисы, перечисленные здесь, кроме Mail Notifications Service.
Иллюстрация к посту - Yandex
—
Подписывайтесь на официальный аккаунт блог-платформы Golos.io @golosio, чтобы быть в курсе развития проекта! Телеграм для ваших вопросов — https://t.me/golos_support. Лучшее на Голосе — https://t.me/golos_best
Есть предложения, как сделать Golos.io лучше? Пишите в Issues на нашем Github, в наш Телеграм-канал или в чат разработчиков Golos.io в Телеграм!
—
С уважением, команда Golos.io @golosio: @alex-firsov, @bacher, @b1acksun, @chinpu, @dan-kinescop, @dekol, @devall, @format-x22, @insider, @jevgenika, @kucinskaya.alla, @muhazokotuha, @msm72, @nickshtefan, @yulia.rodnikova, @yuri-vlad.
@golosio
привет! вы сервисы все сами писали или брали уже готовые? или основу, и ее подгоняли?
если сторонние - не будут ли они отваливаться и не будет ли конфликтов
если сами - вот это вы молоцы... только надо будет их оттестить обязательно!
@ladyzarulem, все сами, сейчас занимаемся тестированием
@nickshtefan
это молодцы. где же вы год назад-то были!!!!
удачного тестового периода!!!
Хорошие мысли. Но push нужен и в браузере, так как это очень удобно, особенно если учитывать, что Google Chrome в Windows 10 отправляет уведомления в notification center (Центр уведомлений).
А верификация по аккаунту соцсети не будет хорошей?
Параметры:
@denis-skripnik пуши в браузере тоже будут реализованы, но несколько в другом виде, подробности будут, когда мы приблизимся к этой задаче.
Мы реализуем возможность использования различных стратегий, в том числе рассматриваем возможность проводить верификацию по соц. сетям, но пока только в рамках обсуждения внутри команды, сама идея сходится с тем, что мы обсуждаем. Однако на первом этапе будут реализованы только две стратегии и они обе связаны с СМС.
Ок
Критерии так себе. Тысячи ботов старше 2 месяцев и не с пустой страницей. Идея с ботом неплоха, но нарегать себе десятки твинков опять же не проблема.
@golosio скажите, почему переставали приходить на мобильный клиент уведомления? Из-за работ на линии :)?
@mikhailal, был сбой в работе системы. На данный момент все восстановлено и уведомления снова приходят.
@yulia.rodnikova что приятно ласкает слух )))