Раздел навигации

Конкурс Конкурс поставщиков HTTP-уведомлений

A

Alex077

Модератор
Регистрация
11 Ноя 2018
Сообщения
9,692
1610049662_.thumb.jpg.ea584c934811e38952c86e17db2eb4d0.jpg

Конкурс на разработку и внедрение модуля 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-уведомлений.

Основные требования:​

  1. Доступность методов HTTP API.
    1.1. Добавить уникальный идентификатор и параметры уведомления во внутреннюю базу данных
    1.2. Получить конфигурацию - необязательно
    1.2.1. Информация о модуле (название, описание, логотип, адрес серфинга - чтобы иметь возможность обращаться за поддержкой к разработчикам сервисов).
    1.2.2. Получить структурные входные параметры для текущего модуля.
  2. Все методы HTTP API должны возвращать ответ 200, если запрошенная операция выполнена успешно, и соответствующий код ошибки HTTP в противном случае.
  3. Для проверки работы модуля должен быть предоставлен http-сервер с некоторым пользовательским интерфейсом (бот для телеграмм, веб-страница и т. д.)

Требования к модулю HTTP-уведомлений:​

  1. Гарантированная доставка уведомлений в течение N раз (например, 1-24 часа) и повторная доставка уведомлений, если адрес доставки недоступен.
  2. Поддержка протокола HTTPS
  3. При добавлении нового URL-адреса проверка возможности управления доменом, веб-сайтом или конкретным URL-адресом должна выполняться лицом, запрашивающим отправку уведомлений на этот адрес.
  4. Логирование событий http-уведомлений для возможности отображения их в графиках
  5. Наличие документации с примерами использования.
  6. Инструкции по компиляции, сборке, развертыванию, запуску и тестированию с предварительными условиями.

Параметры для модуля HTTP:​

• URL (строка начинается с https: //)
• Метод (GET, PUT, POST,…) (необязательный параметр, по умолчанию POST)
• Запрос (строка параметра), необязательный параметр, по умолчанию это «param»

API поставщика очереди​

API поставщика очереди, который можно использовать для получения потока событий блокчейна, описан в следующем документе: Notion - единое рабочее пространство для ваших заметок, задач, вики и баз данных.

Критерии оценки​

  1. Соответствие техническим требованиям, указанным в данном описании конкурса.
  2. Качество описания документации для модуля.
  3. Легко настроить и смоделировать.
  4. Работает в соответствии с техническим заданием и заявленными функциями.
  5. Кроссплатформенность.
  6. Исходный код (открытый исходный код, лицензия свободного программного обеспечения).
  7. Помимо загрузки заявки, необходимо отправить код в соответствии с 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...
Читать полностью...
 

Похожие темы

Сверху