Difference between revisions of "Resellers"
Line 41: | Line 41: | ||
<span style="color: #a00;">Внимание!</span> API-консоль не является эмулятором запросов - все запросы настоящие и отсылаются на продакшн-сервера. Это значит, что при активации какой-либо платной опции через консоль с вашего баланса будут сняты средства. Если вы хотите поработать с API для реселлеров в тестовой среде, воспользуйтесь [[Reseller_API_Sandbox|песочницей]]. | <span style="color: #a00;">Внимание!</span> API-консоль не является эмулятором запросов - все запросы настоящие и отсылаются на продакшн-сервера. Это значит, что при активации какой-либо платной опции через консоль с вашего баланса будут сняты средства. Если вы хотите поработать с API для реселлеров в тестовой среде, воспользуйтесь [[Reseller_API_Sandbox|песочницей]]. | ||
+ | |||
+ | ==Когда необходимо активировать опции== | ||
+ | Движок может сообщать о необходимости активировать ту или иную опцию при старте либо во время воспроизведения. Метод оповещения зависит от того, какое API вы используете для управления движком: | ||
+ | * для пользователей Engine API описание [[Engine_API#example-missing-option-on-start|здесь]] | ||
+ | * для пользователей HTTP API описание [[Engine_HTTP_API#stop-notifications|здесь]] | ||
==Активация опций пользователям== | ==Активация опций пользователям== |
Revision as of 15:29, 3 December 2015
Contents
Термины
- Реселлер – пользователь Ace Stream, который получил права на продажу платных опций Ace Stream
- Ключ пользователя - идентификатор пользователя Ace Stream
- Опция - дополнительная сервисная/программная услуга Ace Stream, которая может быть активирована для конкретного ключа пользователя
- Приложение - продукт реселлера (сайт, мобильное, либо десктопное приложение), через который осуществляется продажа опций
Как стать реселлером
- войти на сайт https://accounts.acestream.net под своим логином (если у вас нет логина, необходимо зарегистрироваться)
- выбрать раздел "Сотрудничество" в верхнем меню
- нажать кнопку "Стать реселлером"
API для реселлеров
API для реселлеров позволяет вам активировать различные дополнительные опции пользователям своих приложений.
Общая схема работы API для реселлеров выглядит так:
- для активации необходимой опции пользователю ваше приложение (сайт, мобильное либо десктопное приложение) отправляет на сервер Ace Stream запрос, в котором указывает идентификатор пользователя, опцию и период активации
- с вашего баланса в системе Ace Stream списывается стоимость указанной опции на указанный период
- указанная опция активируется для пользователя, идентификатор которого вы передали в запросе
Полное описание API для реселлеров можно найти здесь.
Для работы с API вам понадобятся следующие два идентификатора:
- API key - строка, которая используется для идентификации реселлера в запросах API
- API secret - секретный ключ, который используется для цифровой подписи запросов API
Данные идентификаторы можно увидеть в разделе Реселлер -> Настройки API в меню слева. Секретный ключ реселлер может поменять самостоятельно (кнопка "Редактировать настройки API" ).
Создание приложений
Для начала работы с API для реселлеров вам необходимо создать как минимум одно приложение. Для этого в разделе Реселлер -> Приложения в меню слева нажимаем кнопку "Создать новое приложение". После это вам будет предложено заполнить поля "Название" (обязательное) и "Сайт приложения" (необязательное).
Все ваши приложения отображаются в разделе Реселлер -> Приложения в виде таблицы с такими полями:
- Название - название приложения, которое вы указали при создании
- APP_ID - идентификатор приложения (используется в запросах API)
- Редактировать - редактировать приложение (можно изменить название и сайт приложения)
- OAuth - редактировать настройки OAuth данного приложения
- API - открыть API-консоль для данного приложения
Настройки OAuth вам понадобятся только в том случае, если вы планируете идентифицировать пользователей с помощью технологии OAuth2 (как правило, это необходимо для владельцев сайтов).
API-консоль позволяет отсылать запросы от имени вашего приложения прямо со страницы сайта. Консоль предназначена в первую очередь для того, чтобы наглядно показать формирование запросов к API (каждый запрос и ответ появляются в текстовых полях внизу страницы).
Внимание! API-консоль не является эмулятором запросов - все запросы настоящие и отсылаются на продакшн-сервера. Это значит, что при активации какой-либо платной опции через консоль с вашего баланса будут сняты средства. Если вы хотите поработать с API для реселлеров в тестовой среде, воспользуйтесь песочницей.
Когда необходимо активировать опции
Движок может сообщать о необходимости активировать ту или иную опцию при старте либо во время воспроизведения. Метод оповещения зависит от того, какое API вы используете для управления движком:
Активация опций пользователям
Для того, чтобы активировать опцию пользователю, реселлер должен вызвать метод API activateService с такими данными:
- API key
- APP_ID (идентификатор приложения)
- ключ пользователя
- идентификатор опции
- идентификатор периода, на который необходимо активировать опцию
При успешном выполнении запроса с баланса реселлера будет списана определенная сумма, а у пользователя активируется опция на указанный период.
Если у пользователя в данный момент уже активирована указанная опция, то срок действия опции продлится на указанный срок.
API Key и APP_ID вы можете узнать на сайте в разделе Реселлер.
Идентификаторы опций и периодов описаны здесь
Как видно из описания, для активации опции реселлер должен знать ключ пользователя. Этот ключ можно получить двумя способами: либо по протоколу OAuth2, либо создать новый ключ с помощью API для реселлеров. Первый метод больше подходит для владельцев сайтов. Второй - для разработчиков приложений. Оба метода описаны ниже.
Схема работы для владельцев сайтов
Владельцы сайтов могут получить ключ пользователя с помощью протокола OAuth2. Для этого необходимо выполнить следующие шаги:
- реселлер на своем сайте размещает кнопку "Войти через Ace Stream"
- после нажатия на эту кнопку проходит авторизация пользователя согласно OAuth2:
- пользователя перенаправляет на сайт Ace Stream
- если он не зарегистрирован, то регистрируется
- если зарегистрирован, но не залогинен, то выполняет процедуру входа
- если пользователь первый раз входит на сайт реселлера через Ace Stream OAuth2, то он дает свое согласие на предоставление некоторых персональных данных сайту реселлера (email и ключ пользователя)
- пользователь возвращается на сайт реселлера
- сайт реселлера получает email и ключ пользователя согласно OAuth2
- теперь пользователь авторизован на сайте реселлера и у реселлера есть ключ пользователя, по которому он может активировать ему опцию
Подробнее ознакомиться с OAuth2 вы можете здесь.
Схема работы для разработчиков приложений
Разработчики приложений, как правило, имеют доступ к сервисному API движка. Это дает им возможность загружать ключи пользователя напрямую в Ace Stream Engine и активировать опции без прямого участия пользователя.
Мы предлагаем такую схему работы:
- приложение проверяет, активирована ли необходимая опция у пользователя (check_user_service)
- если опция не активирована, приложение создает новый ключ пользователя (createUserKey) и загружает его в Ace Stream Engine (load_extension)
- приложение активирует нужную опцию для нового ключа пользователя (activateService)
Описанная схема предполагает, что приложение реселлера и Ace Stream Engine запущены на одной и той же машине.