Widgets (часть 1).

 

Что такое виджеты? Это сервисы, изолированно выполняющие специфичный набор функций/программ (это полноценные, самостоятельно функционирующие в рамках определённой логики и инфраструктуры миникомпьютеры). Виджет ничего не знает об общей картине бизнес-процесса. На вход принимает подходящий набор данных и в результате обработки этих данных передаёт сгенерированный набор значений. Входные данные могут быть получены из разных источников. Виджеты можно соединять в любой последовательности (главное, чтобы входные параметры, тип принимаемых значений соответствовал передаваемым – но и этот процесс автоматизирован на уровне разрешённых логических связей в визуальном конструкторе), создавая достаточно сложные бизнес-процессы. 


Для описания логики, был создан свой DSL. Достаточно гибкий, мощный, расширяемый посредством plugins, значительно превосходящий по своим возможностям таких представителей, как solidity, более того, он лишен их недостатков и проблем и создавался именно для описания бизнес-логики с возможностью расширения под меняющиеся задачи и требования.

Сейчас реализован функционал следующих виджетов:

  • Мета – управляющий виджет, осуществляющий надзор и процессинг договора, своеобразный оркестратор всех процессов и связанных контрактов;

  • Сторона договора – любое физическое или юридическое лицо (может иметь множественные значения, например несколько отправителей);

  • Дата – срок наступления события. Может иметь некоторую регулярность/периодичность или список дат;

  • Финансы – Виджет для настройки финансовых операций. Несмотря на то, что законодательство многих стран обязывает проводить расчёты исключительно в национальной валюте, мы даём своим пользователям возможность значительно расширить варианты и способы осуществления платежей. Как это работает? Сделка, прописанная в договоре, привязана к национальной валюте. Пользователь выбирает в виджете счёт, с которого будет осуществляться платёж. Это могут быть не только счета в фиатной валюте, но и криптокошельки. Если получатель одобрил перевод в выбранной валюте, то сделка совершается без конвертаций, напрямую. Если же плательщик выбрал вариант оплаты криптовалюта, а получатель не имеет криптокошелька, то происходит автоматическая конвертация (через внутреннюю биржу). Если курсы на момент заключения сделки (подписания договора) и процессинга значительно отличаются, то плательщику приходит уведомление с необходимостью подтверждения конвертации или выбора иного способа оплаты. Данный виджет даёт возможность использовать кредитные и иные финансовые инструменты, основываясь на персонализированных предложениях банков партнёров. Функциональность данного виджета может значительно расширяться посредством системы plugins;

  • Недвижимость – создание или просмотр информации об объекте недвижимости. Данные получаются из федерального реестра объектов недвижимости, сверяются по некоторым критериям, например, по владельцу. Таким образом исключается возможность намеренного или ошибочного введения неверных данных об объекте недвижимости. В состав данного виджета входит компонент оракул – получающий данные (информацию об объекте) из внешних источников (федеральный реестр недвижимости) и сохраняющий её (разумеется, происходит периодическая сверка для актуализации версий) для оптимизации будущих запросов. Пользователь избавлен от необходимости самостоятельно запрашивать подтверждающие документы (услуга, как правило, платная и требующая времени на обработку), изучать их, сверять со значениями, введёнными владельцем недвижимости;

  • Условия – логический виджет, позволяющий создавать дерево условий. Входными параметрами могут быть значения или набор значений различных виджетов, на выходе посчитанные/выбранные значения параметров (например, если на счёте более $1000, то заплатить сумму целиком, если нет, то заплатить $200 и отправить уведомление сторонам) или новая логическая ветка.

 

featured posts

META.dev events