Alex077 (OP)
Legendary
Offline
Activity: 3808
Merit: 1209
|
|
September 16, 2021, 10:22:52 AM Last edit: September 16, 2021, 11:48:38 AM by Alex077 Merited by klarki (5), Symmetrick (2) |
|
Конкурс на разработку и внедрение модуля HTTP-уведомлений для внешних приложений и сервисов. Этот модуль должен иметь возможность отправлять уведомления по протоколу HTTP.
Мотивация Владельцам Free TON необходим модуль, обеспечивающий передачу уведомлений по протоколу HTTP для интерактивных приложений, интернет-магазинов, IOT и других потребителей. При этом должна быть обеспечена анонимность пользователей блокчейна.
Сроки Срок подачи заявок: 15 сентября 2021 г. - 15 октября 2021 г. 23:59 UTC
Срок голосования (оценки): 15 дней
Общая архитектура Чтобы обеспечить анонимность пользователей блокчейна, было сделано разделение между данными блокчейна и адресами получателей этих данных. Для этого введены следующие модули:
Поставщик очереди - знает, что отправлять (сами данные). У него нет информации о реальном адресе получателя. Это позволяет пользователю настроить источник события на основе следующих параметров: «Адрес учетной записи» и его типы сообщений: внутренний / внешний вход / внешний выход. Поставщик очереди пересылает подготовленные и зашифрованные сообщения поставщику уведомлений. Каждое сообщение содержит ключ, по которому поставщик уведомлений может сопоставить соответствующего получателя.
Поставщики уведомлений - знают, куда отправлять (реальный адрес получателя, такой как IP и порт, электронная почта, APN ID, FCM ID и т. Д.). У него нет информации о данных. Он получает и отправляет данные в зашифрованном виде. Возможно наличие нескольких типов поставщиков уведомлений в зависимости от типа получателя и транспорта (браузер, http-сервер, смартфоны, электронная почта и т. Д.).
Этот конкурс посвящен модулю провайдера HTTP-уведомлений или, вкратце, модулю HTTP-уведомлений.
Модуль HTTP-уведомлений отправляет зарегистрированному потребителю http-запросы с событиями блокчейна.
Модуль Http Notification предоставляет пользователям возможность настраивать себя через REST API.
Возможными потребителями модуля HTTP-уведомлений являются интернет-магазины, внешние веб-сервисы, боты для телеграмм, вконтакте и любые сервисы с подключением к Интернету и внешним доступом из Интернета. Это означает, что в требования потребителя входит наличие http-сервера для получения push-уведомлений.
Основные требования: Доступность методов HTTP API. 1.1. Добавить уникальный идентификатор и параметры уведомления во внутреннюю базу данных 1.2. Получить конфигурацию - необязательно 1.2.1. Информация о модуле (название, описание, логотип, адрес серфинга - чтобы иметь возможность обращаться за поддержкой к разработчикам сервисов). 1.2.2. Получить структурные входные параметры для текущего модуля. Все методы HTTP API должны возвращать ответ 200, если запрошенная операция выполнена успешно, и соответствующий код ошибки HTTP в противном случае. Для проверки работы модуля должен быть предоставлен http-сервер с некоторым пользовательским интерфейсом (бот для телеграмм, веб-страница и т. д.)
Требования к модулю HTTP-уведомлений:
Гарантированная доставка уведомлений в течение N раз (например, 1-24 часа) и повторная доставка уведомлений, если адрес доставки недоступен. Поддержка протокола HTTPS При добавлении нового URL-адреса проверка возможности управления доменом, веб-сайтом или конкретным URL-адресом должна выполняться лицом, запрашивающим отправку уведомлений на этот адрес. Логирование событий http-уведомлений для возможности отображения их в графиках Наличие документации с примерами использования. Инструкции по компиляции, сборке, развертыванию, запуску и тестированию с предварительными условиями. Параметры для модуля HTTP: • URL (строка начинается с https: //) • Метод (GET, PUT, POST,…) (необязательный параметр, по умолчанию POST) • Запрос (строка параметра), необязательный параметр, по умолчанию это «param»
API поставщика очереди API поставщика очереди, который можно использовать для получения потока событий блокчейна, описан в следующем документе: Notion - единое рабочее пространство для ваших заметок, задач, вики и баз данных.
Критерии оценки
Соответствие техническим требованиям, указанным в данном описании конкурса. Качество описания документации для модуля. Легко настроить и смоделировать. Работает в соответствии с техническим заданием и заявленными функциями. Кроссплатформенность. Исходный код (открытый исходный код, лицензия свободного программного обеспечения). Помимо загрузки заявки, необходимо отправить код в соответствии с GitHub - freeton-org / readme .
Награда и вестинг
1 место - :100'000 ТОНН 2 место - ::75'000 ТОНН 3 место - ::50'000 ТОНН 4 место - ::40'000 ТОНН 5 место - : :30'000 ТОНН 6 место - ::20'000 ТОНН 7 место - : :10'000 ТОНН 8 место - ::5'000 ТОНН 9 место - ::3000 ТОНН 10 место - ::1'000 ТОНН
Награды до 10К будут выплачены по окончании конкурса. Вознаграждения свыше 10К будут выплачиваться следующим образом: половина - в конце конкурса, а половина - равными частями в течение 12 месяцев (переход). Условия получения наделения следующие:
На вопросы Github следует ответить в течение 24 часов. Критические неисправности модуля должны быть устранены в течение 3 дней. В случае изменений API поставщика очереди или других изменений блокчейна, код необходимо обновить не позднее, чем в течение 1 месяца после изменения. Все остальные адекватные вопросы должны быть решены в течение одного месяца. Landing Page... https://http.freeton.today/Читать полностью... https://forum.freeton.org/t/notification-service-1/11514/2
|