Example #1
0
<?php

require dirname(__DIR__) . DIRECTORY_SEPARATOR . "message" . DIRECTORY_SEPARATOR . "realtime-bidding.proto.php";
require dirname(__DIR__) . DIRECTORY_SEPARATOR . "util" . DIRECTORY_SEPARATOR . "Util.php";
$data = file_get_contents("dat");
$request = BidRequest::parseFromString($data);
/** @var $request BidRequest */
echo RtbUtil::ip2str($request);
Example #2
0
<?php

require __DIR__ . DIRECTORY_SEPARATOR . "message" . DIRECTORY_SEPARATOR . "realtime-bidding.proto.php";
$prior = microtime(true);
$request = BidRequest::parseFromString(file_get_contents("php://input"));
$end = microtime(true);
/** @var BidRequest $request */
//error_log(var_export($request, true));
try {
    $response = new BidResponse();
    $response->setProcessingTimeMs($end - $prior);
    $slots = $request->getAdslot();
    $ad = new BidResponse_Ad();
    $ad->setHtmlSnippet("<a href='%%CLICK_URL_UNESC%%http%3A%2F%2Fmy.adserver.com%2Fsome%2Fpath%2Fhandleclick%3Fclick%3Dclk'><img src='http://i.imgur.com/OJx87.png' width='120'/></a>");
    $ad->setBuyerCreativeId("my-creative-1234ABCD");
    $ad->appendVendorType(113);
    $ad->appendCategory(3);
    $ad->appendClickThroughUrl("http://www.google.com");
    $adslot = new BidResponse_Ad_AdSlot(array("id" => $slots[0]->getId(), "max_cpm_micros" => 1000));
    $ad->appendAdslot($adslot);
    $response->appendAd($ad);
    $response->setDebugString("Helo World");
    echo $response->serializeToString();
} catch (Exception $e) {
    error_log($e->getMessage());
    error_log($e->getTraceAsString());
}
Example #3
0
<?php

require dirname(__DIR__) . DIRECTORY_SEPARATOR . "message" . DIRECTORY_SEPARATOR . "realtime-bidding.proto.php";
/**
 * standalone server with libuv extention
 */
$port = 8888;
createServer(function ($request = array(), HttpResponse $r, $client) {
    parse_str(ltrim($request['QUERY_STRING'], "/?"), $params);
    $prior = microtime(true);
    file_put_contents("dat", $request['HEADERS']['BODY']);
    $request = BidRequest::parseFromString($request['HEADERS']['BODY']);
    $end = microtime(true);
    /** @var BidRequest $request */
    var_dump($request);
    try {
        $response = new BidResponse();
        $response->setProcessingTimeMs($end - $prior);
        $slots = $request->getAdslot();
        $ad = new BidResponse_Ad();
        $ad->setHtmlSnippet("<a href='%%CLICK_URL_UNESC%%http%3A%2F%2Fmy.adserver.com%2Fsome%2Fpath%2Fhandleclick%3Fclick%3Dclk'><img src='http://i.imgur.com/OJx87.png' width='120'/></a>");
        $ad->setBuyerCreativeId("my-creative-1234ABCD");
        $ad->appendVendorType(113);
        $ad->appendCategory(3);
        $ad->appendClickThroughUrl("http://www.google.com");
        $adslot = new BidResponse_Ad_AdSlot(array("id" => $slots[0]->getId(), "max_cpm_micros" => 1000));
        $ad->appendAdslot($adslot);
        $response->appendAd($ad);
        $response->setDebugString("Helo World");
        $r->writeHead(200, array("Content-Type" => "application/octet-stream"));
        $r->write($response->serializeToString());