Перейти к основному содержимому

Общие сведения

EasyPayments выполняет роль посредника между игровым сервером, исполняя на нем консольные команды, и EasyDonate, принимающим решения по итогам проделанной плагином работы.

Принцип работы плагина основан на постоянном и асинхронном общении с серверами EasyDonate и обмене данными с ними через интерфейс EasyPayments API. Асинхронный метод позволяет не нагружать основной рабочий поток игрового сервера, выполняя необходимую логику в фоне, незаметно для пользователя.

EasyPayments API

EasyPayments (EP) API — это закрытый интерфейс взаимодействия с EasyDonate, специально разработанный для плагина EasyPayments.

EP API выполняет две задачи:

  1. Отправляет плагину ивенты для их реализации на игровом сервере.
  2. Получает отчет от плагина о выполнении ивентов и принимает дальнейшее решение по их обработке.

Получение ивентов

Плагин, благодаря технологии LongPoll, устанавливает долгие соединения с EP API с целью получения событий, требующих завершения на игровом сервере. В случае срабатывания одного из событий, платформа принудительно закрывает соединение и возвращает список команд, которые необходимо исполнить. Такие соединения мы называем циклами. Циклы могут продолжаться до 30 секунд.

После завершения цикла запускается новый, аналогичный предыдущему.

Кстати

Плагин способен обрабатывать сразу несколько событий в течение одного цикла, благодаря чему никаких задержек в их обработке не возникает.

Отчет о выполнении ивентов

Когда EP API передает плагину список ивентов, происходит их исполнение на игровом сервере и отправка результата обратно на серверы EasyDonate, где в дальнейшем EasyDonate запускает процесс выполнения завершающей логики.

Результатом завершения события может быть обновление статуса платежа и/или зачисление денежных средств на баланс владельца магазина.

Будьте внимательны

Команды запускаются от имени виртуального пользователя @EasyPayments. Настоятельно не рекомендуется взаимодействовать с ним как с сущностью.