<?php

require_once "vendor/autoload.php";
use predictionio\EventClient;
// check Event Server status
$client = new EventClient("j4jIdbq59JsF2f4CXwwkIiVHNFnyNvWXqMqXxcIbQDqFRz5K0fe9e3QfqjKwvW3O");
$response = $client->getStatus();
echo $response;
// set user - generate 10 users
for ($u = 1; $u <= 10; $u++) {
    $response = $client->setUser($u, array('age' => 20 + $u, 'gender' => 'M'));
    print_r($response);
}
// set item - generate 50 items
for ($i = 1; $i <= 50; $i++) {
    $response = $client->setItem($i, array('pio_itypes' => array('1')));
    print_r($response);
}
// record event - each user randomly views 10 items
for ($u = 1; $u <= 10; $u++) {
    for ($count = 0; $count < 10; $count++) {
        $i = rand(1, 50);
        $response = $client->recordUserActionOnItem('view', $u, $i);
        print_r($response);
    }
}
    print_r($response);
    // unset user
    $response = $client->unsetUser(8, array('age' => 20));
    print_r($response);
    // delete user
    $response = $client->deleteUser(9);
    print_r($response);
    // set item with event time
    $response = $client->setItem(3, array('pio_itypes' => array('1')), '2013-12-20T05:15:25.350+08:00');
    print_r($response);
    // set item
    $response = $client->setItem(2, array('pio_itypes' => array('1')));
    print_r($response);
    // unset item
    $response = $client->unsetItem(2, array('pio_itypes' => array('1')));
    print_r($response);
    // delete item
    $response = $client->deleteItem(3, '2000-01-01T01:01:01.001+01:00');
    print_r($response);
    // record user action on item
    $response = $client->recordUserActionOnItem('view', 8, 2);
    print_r($response);
    // create event
    $response = $client->createEvent(array('event' => 'my_event', 'entityType' => 'pio_user', 'entityId' => '8', 'properties' => array('prop1' => 1, 'prop2' => 2)));
    print_r($response);
    // get event
    $response = $client->getEvent('U_7eotSbeeK0BwshqEfRFAAAAUm-8gOyjP3FR73aBFo');
    print_r($response);
} catch (PredictionIOAPIError $e) {
    echo $e->getMessage();
}