function connect($url, $xKey, $message, $method)
{
    //On remplit la requete
    $req = startCurlInit($url);
    curl_setopt($req, CURLOPT_CUSTOMREQUEST, $method);
    //Mise en place du xKey et des options
    curl_setopt($req, CURLOPT_HTTPHEADER, array('X-Key: ' . $xKey, 'Content-Type: application/json', 'Content-Length: ' . strlen($message)));
    curl_setopt($req, CURLOPT_POSTFIELDS, $message);
    //Execution de la requete
    $result = curl_exec($req);
    //Verification des reponses
    $info = curl_getinfo($req);
    return array('result' => $result, 'info' => $info, 'req' => $req);
}
Example #2
0
function postOrPutOnTarget($req, $request, $dataJson, $xKey)
{
    //Nouvelle url
    $url = 'http://v8.mailperformance.com/targets/';
    //On remplit la requete avec le bon verbe ($request) : GET / PUSH / PUT
    $req = startCurlInit($url);
    curl_setopt($req, CURLOPT_CUSTOMREQUEST, $request);
    curl_setopt($req, CURLOPT_POSTFIELDS, $dataJson);
    //Mise en place du xKey et des options
    curl_setopt($req, CURLOPT_HTTPHEADER, array('X-Key: ' . $xKey, 'Content-Type: application/json', 'Content-Length: ' . strlen($dataJson)));
    //Execution de la requete
    $result = curl_exec($req);
    //Verification des reponses
    $info = curl_getinfo($req);
    if ($info['http_code'] != 200) {
        echo 'Error : ' . $info['http_code'];
    } else {
        echo $result . "\nData base changed.";
    }
    return $req;
}
function request($req, $request, $dataJson, $xKey, $url)
{
    //On remplit la requete avec le bon verbe ($request) : GET / PUSH / PUT
    $req = startCurlInit($url);
    curl_setopt($req, CURLOPT_CUSTOMREQUEST, $request);
    if (strlen($dataJson) != 0) {
        curl_setopt($req, CURLOPT_POSTFIELDS, $dataJson);
    }
    //Mise en place du xKey et des options
    curl_setopt($req, CURLOPT_HTTPHEADER, array('X-Key: ' . $xKey, 'Content-Type: application/json', 'Content-Length: ' . strlen($dataJson)));
    //Execution de la requete
    $result = curl_exec($req);
    //Verification des reponses
    $info = curl_getinfo($req);
    curl_close($req);
    if ($info['http_code'] != 200 && $info['http_code'] != 204) {
        echo "Error : " . $info['http_code'] . "\n";
        return 'error';
    }
    return $result;
}
function waitForState($idAction, $xKey)
{
    $actionState = 30;
    while ($actionState != 38 && $actionState != 20) {
        //On attend 20 secondes
        echo "Wait 20sec...\n";
        sleep(20);
        //On trouve l'adresse pour la requete
        $url = 'http://v8.mailperformance.com/actions/' . $idAction;
        //On remplit la requete 'GET'
        $req = startCurlInit($url);
        curl_setopt($req, CURLOPT_CUSTOMREQUEST, 'GET');
        //Mise en place du xKey et des options
        curl_setopt($req, CURLOPT_HTTPHEADER, array('X-Key: ' . $xKey, 'Content-Type: application/json'));
        //Execution de la requete
        $result = curl_exec($req);
        $tab = json_decode($result, TRUE);
        $actionState = $tab['informations']['state'];
    }
    return $actionState;
}
//Mise en place du xKey et des options
curl_setopt($req, CURLOPT_HTTPHEADER, array('X-Key: ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789', 'Content-Type: application/json'));
//Execution de la requete
$result = curl_exec($req);
//Verification des reponses
if ($result == false) {
    //Affichage de l'erreur
    $info = curl_getinfo($req);
    echo 'Error : ' . $info['http_code'];
} else {
    //On recupere l'id de la cible
    $tab = json_decode($result, TRUE);
    $targetId = $tab['id'];
    //Nouvelle url en fonction de l'id du message et de la cible
    $url = 'http://v8.mailperformance.com/actions/' . $idMessage . '/targets/' . $targetId;
    //On remplit la requete
    $req = startCurlInit($url);
    curl_setopt($req, CURLOPT_POST, true);
    //Mise en place du xKey et des options
    curl_setopt($req, CURLOPT_HTTPHEADER, array('X-Key: ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789', 'Content-Type: application/json', 'Content-Length: 0'));
    //Execution de la requete
    $result = curl_exec($req);
    //Verification des reponses
    $info = curl_getinfo($req);
    if ($info['http_code'] != 204) {
        echo 'Error : ' . $info['http_code'];
    } else {
        echo 'Message sent to ' . $unicity;
    }
}
curl_close($req);