Difference between revisions of "Product key"
Line 1: | Line 1: | ||
− | Начиная с версии 2.1.0 движок работает по API только с авторизованными приложениями. Авторизация выполняется на этапе рукопожатия. Для успешной авторизации у приложения должен быть ключ продукта. | + | Начиная с версии 2.1.0 движок работает по API только с авторизованными приложениями. Авторизация выполняется на этапе рукопожатия (более подробное описание смотрите ниже). Для успешной авторизации у приложения должен быть ключ продукта. |
+ | |||
+ | Вы можете получить персональный ключ продукта для Вашего приложения, либо использовать публичный ключ: | ||
+ | <tt>kjYX790gTytRaXV04IvC-xZH3A18sj5b1Tf3I-J5XVS1xsj-j0797KwxxLpBl26HPvWMm</tt> | ||
+ | |||
+ | Если Вы используете публичный ключ, то Ваше приложение смогут использовать только пользователи, у которая активирована опция "No ADs" (отключение рекламы Ace Stream). Если у пользователя не активирована указанная опция, то при попытке начать просмотр какого-либо контента движок отправит ошибку "No ADs option must be activated to use this product" | ||
+ | |||
+ | Если Ваше приложение поддерживает рекламные форматы системы Ace Stream, Вы можете бесплатно получить персональный ключ продукта, заполнив форму [http://www.acestream.net/developers/request_key.php здесь]. Приложения с персональным ключом продукта могут использовать все пользователи, независимо от наличия у них каких-либо премиум-опций. | ||
== Авторизация приложения == | == Авторизация приложения == |
Revision as of 10:42, 13 September 2013
Начиная с версии 2.1.0 движок работает по API только с авторизованными приложениями. Авторизация выполняется на этапе рукопожатия (более подробное описание смотрите ниже). Для успешной авторизации у приложения должен быть ключ продукта.
Вы можете получить персональный ключ продукта для Вашего приложения, либо использовать публичный ключ:
kjYX790gTytRaXV04IvC-xZH3A18sj5b1Tf3I-J5XVS1xsj-j0797KwxxLpBl26HPvWMm
Если Вы используете публичный ключ, то Ваше приложение смогут использовать только пользователи, у которая активирована опция "No ADs" (отключение рекламы Ace Stream). Если у пользователя не активирована указанная опция, то при попытке начать просмотр какого-либо контента движок отправит ошибку "No ADs option must be activated to use this product"
Если Ваше приложение поддерживает рекламные форматы системы Ace Stream, Вы можете бесплатно получить персональный ключ продукта, заполнив форму здесь. Приложения с персональным ключом продукта могут использовать все пользователи, независимо от наличия у них каких-либо премиум-опций.
Авторизация приложения
- приложение отсылает сообщение
HELLOBG version=api_version
- движок отсылает в ответ
HELLOTS version=engine_version key=request_key
- приложение формирует ответный ключ и отсылает его движку
READY key=response_key
Если авторизация прошла нормально, то движок продолжит работу с приложением, отослав событие AUTH (уровень авторизации пользователя).
Если авторизация не прошла, движок отправит приложению событие NOTREADY. Это же событие будет отправляться в ответ на любые команды от неавторизованного приложения, кроме команд HELLOBG, READY и SHUTDOWN.
- request_key
- представляет собой буквенно-цифровую строку, сгенерированную случайным образом
- response_key
- формируется из request_key и ключа продукта по следующему алгоритму, представленного в виде псевдокода:
signature = hex(sha1(request_key + product_key)); // сгенерировать подпись запроса x = product_key.split("-")[0]; // вырезаем все символы до первого знака "-" из ключа продукта response_key = x + "-" + signature; // отправляем движку вырезанную на предыдущем этапе строку и подпись, разделенные знаком "-"
Пример
Для примера предположим, что приложение использует ключ продукта 123456-111111-222222-333333
Подпись для response_key в данном примере формируется так: hex(sha1("5eb1f78f123456-111111-222222-333333")) == fd2a247d83adffed56d82cca150d5fab225f1408
>>HELLOBG version=4 <<HELLOTS version=2.1.0 key=5eb1f78f >>READY key=123456-fd2a247d83adffed56d82cca150d5fab225f1408 <<AUTH 1