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); }
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);