Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Необходимо написать систему  для автоматического старта/стопа рекламных кампаний в 2 источниках трафика через API по определенным условиям.

Есть сторонний API, откуда парсятся данные для условий в формате JSON. Пример данных:

    {

        "updated_at": 1584583206,

        "carrier_id": 1095,

        "carrier_name": "Djezzy",

        "country_name": "Algeria",

        "country_iso": "dz",

        "performance": -15.609999999999999,

        "ecpm_24h": 49.544848500000001,

        "ecpm_recent": 41.808454099999999,

        "description": "Carrier performance"

    }

 {

        "updated_at": 1584583284,

        "carrier_id": null,

        "carrier_name": null,

        "country_name": "Thailand",

        "country_iso": "th",

        "performance": -48.240000000000002,

        "ecpm_24h": 31.634738800000001,

        "ecpm_recent": 21.439504450000001,

        "description": "Country Average"

    }

Я добавляю идентификатор кампании из источника траффика в свою систему и связываю его с гео и оператором (Carrier), указываю минимальный ecpm_recent для принятия решения по кампании.

Скрин того, как выглядит редактирование/добавление нового условия - https://clip2net.com/s/46vT7aI

Список стран и операторов должен подтягиваться через тот же API с данными. При этом для каждого гео кроме операторов должен быть вариант Country Average из поля description (можно отдельным селектом сделать после выбора страны Country Average или Carrier performance и потом уже выбор оператора если выбран Carrier performance. Это при условии, что в общем списке операторов проблематично/долго).

Cистема получает статистику с API каждые 15 минут и проверяет все гео и операторы + в целом по стране (отображается просто как отдельный оператор) на их текущий ecpm_recent.

Затем она сравнивает минимальный ecpm_recent, который я установил, с фактическим:

- Если на данный момент ecpm_recent меньше установленного и кампания запущена => кампания останавливается.

- Если на данный момент ecpm_recent меньше установленного и кампания остановлена => ничего не делаем.

- Если на данный момент ecpm_recent больше или равен установленному и кампания остановлена => запускаем кампанию.

- Если на данный момент ecpm_recent больше или равен установленному и кампания запущена => ничего не делаем.

Документация API источника траффика 1 - https://ssp-api.propellerads.com/v5/docs/#/

Документация API источника траффика 2 - https://clip2net.com/s/46vT7Yi (отправляю скрином, потому что там нужна авторизация, потом скину в текстовом виде)

Пример главной страницы системы - https://clip2net.com/s/46vTjqH

- Должна быть кнопка добавления нового условия.

- Ниже в табличном виде с сортировкой должна быть вся информация, которая указана на скрине (по первой строке ясно, какие именно данные нужно отображать). Кроме этого должна быть возможность редактировать/удалять условие.

При добавлении условия должна быть проверка на уникальность ID кампании в источнике траффика, чтобы условия не конфликтовали.

P.S. Пожалуйста, сразу указывайте свою цену и сроки.

4 года назад
forex123
Игорь 
44 годаУкраина
11 лет в сервисе
Был
4 года назад