[ svepomalo @ 25.11.2013. 20:48 ] @
Pozdrav,

radim na jednom projektu i sada je sa Instagrama potrebno hvatati sve slike sa odredjenim tagom.
http://instagram.com/developer/realtime/
Sve sam lepo uradio odavde i registrovao i odradio Create a Subscription i instagram "dolazi" na zadatu adresu ali ono sto je problem je da mi datu vraca praznu.

Evo php koda za Create a Subscription
Code (php):

<?php
     $client_id = 'MOJID';
     $client_secret = 'MOJIDSECRET';
     $redirect_uri = 'http://example.net/instagram/callback.php';
     $apiData = array(
          'client_id' => $client_id,
          'client_secret' => $client_secret,
          'redirect_uri' => $redirect_uri,
          'aspect' => "media",
          'object' => "tag",
          'object_id' => "winter",
          'callback_url' => $redirect_uri
     );

     $apiHost = 'https://api.instagram.com/v1/subscriptions/';

     $ch = curl_init();
     curl_setopt($ch, CURLOPT_URL, $apiHost);
     curl_setopt($ch, CURLOPT_POST, 1);
     curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($apiData));
     curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json'));
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
     $jsonData = curl_exec($ch);
     curl_close($ch);
     var_dump($jsonData);
?>
 


Ovo kad okinem dobijem sledeci output:
Code:

stdClass Object
(
    [meta] => stdClass Object
        (
            
Code:
 => 200
        )

    [data] => stdClass Object
        (
            [object] => tag
            [object_id] => winter
            [aspect] => media
            [callback_url] => http://example.net/instagram/callback.php
            [type] => subscription
            [id] => 3932963
        )

)


A ovako izgleda callback.php

Code (php):

<?php
     if (isset ($_GET['hub_challenge'])){
          echo $_GET['hub_challenge'];
     }
     else{
          $myString = file_get_contents('php://input');
          $ALL = $myString."\r\n";
          file_put_contents('activity.log', $ALL, FILE_APPEND | LOCK_EX);
     }
?>

 


A ono sto dobijem u activity.log je:

[{"changed_aspect": "media", "object": "tag", "object_id": "winter", "time": 1385411793, "subscription_id": 3932963, "data": {}}]
Kao sto vidite subscription_id je dobar ali data je prazna.

Acces log izleda ovako:
54.209.52.224 - - [25/Nov/2013:20:59:20 +0100] "POST /instagram/callback.php HTTP/1.0" 200 231 "-" "Python-httplib2/0.7.4 (gzip)"
I ovo je dobro takodje ali opet data je prazna.

Da li je neko radio sa ovim i ako zna sta bi moglo da bude?

Hvala
[ Nikola Poša @ 25.11.2013. 21:15 ] @
Nisam nikad konzumirao Instagram-ov API, ali po onome što piše u dokumentaciji:
Citat:
The changed data is not included in the payload, so it is up to you how you'd like to fetch the new data. For example, you may decide only to fetch new data for specific users, or after a certain number of photos have been posted.

... zapravo i nije moguće da u tom response-u dobiješ sam podatak o slici?

Kažem, nisam nikada radio sa njihovim API-em, ovo je više samo neka pretpostavka.
[ svepomalo @ 25.11.2013. 21:24 ] @
Moram da dobijem barem jednu sliku za ceo dan danas.
Cak sam i ja sa drugog naloga dodao sliku i stavio tag winter i nista opet.
Kontam ja da je ovo samo za nove slike sa tagom kojim naznacio.
Nece mi poslati podatke ako se doda tag na vec postojecu sliku.