Allegro WebAPI

Interfejs programistyczny platformy Allegro

doGetSiteJournalInfo

Ostatnia zmiana: ---
Dostępność:
Metoda pozwala na pobranie informacji z dziennika zdarzeń na temat liczby zdarzeń w ofertach zalogowanego użytkownika lub we wszystkich ofertach w serwisie, od zdefiniowanego (w parametrze starting-point) momentu (bierze pod uwagę chronologicznie najstarsze 10000 aukcji - zaczynając od podanego punktu startu). Aby sterować momentem rozpoczęcia pobierania informacji o liczbie zdarzeń (tak aby dotrzeć do danych najświeższych), należy w parametrze starting-point przekazywać odpowiednią wartość row-id, zwracaną w ramach wywołania metody doGetSiteJournal.

  1. session-handle | string | wymagany
    Identyfikator sesji użytkownika, uzyskany za pomocą metody doLogin(Enc).
  2. starting-point | long | niewymagany
    Punkt startu, pozwalający na sterowanie momentem rozpoczęcia pobierania informacji o liczbie zdarzeń związanych z ofertami (jego wartość zwracana jest w polu row-id, zwracanym przez metodę doGetSiteJournal).
  3. info-type | int | niewymagany
    Zakres zwracanych informacji (0 - zwracane są tylko dane dot. liczby zdarzeń w ofertach zalogowanego użytkownika, 1 - zwracane są dane dot. liczby zdarzeń we wszystkich ofertach w serwisie; domyślnie ustawiana jest wartość 0).



Orientacyjna struktura wywołania metody

$dogetsitejournalinfo_request = array(
   'session-handle' => '22eb99326c6be29aa16d07d622bcfbcbee94ad54846f2f4e03_1',
   'starting-point' => 2877989976,
   'info-type' => 0
);

  1. site-journal-info | SiteJournalInfo
    Struktura zawierająca informacje o liczbie zdarzeń związanych z ofertami.
    1. items-number | int
      Liczba zdarzeń, które miały miejsce od podanego punktu startu.
    2. last-item-date | long
      Data ostatniego zdarzenia (w formacie Unix time).



Orientacyjna struktura odpowiedzi serwera

$dogetsitejournalinfo_response = array(
   'site-journal-info' => array(
      'items-number' => 4373,
      'last-item-date' => 1269800973)
);


  • ERR_INVALID_INFO_TYPE
    Niepoprawna wartość dla zakresu zwracanych informacji.
  • ERR_NO_SESSION / ERR_SESSION_EXPIRED
    Niepoprawny identyfikator sesji lub sesja wygasła.
  • ERR_WEBAPI_KEY_INACTIVE
    Klucz WebAPI na którym została wygenerowana sesja został zdezaktywowany (jego właściciel nie zaakceptował warunków Regulaminu WebAPI).
  • ERR_WEBAPI_NOT_AVAIL
    Problemy z usługą Allegro WebAPI.

Allegro nie bierze odpowiedzialności za skutki wykorzystania zamieszczonych przykładów kodu, nie daje także gwarancji ich poprawnego działania. Widoczny kod ma charakter wyłącznie poglądowy i może zawierać błędy.

#1 (24.04.2010 r.) / php (Autor: danielnowacki)
  1. abstract class Allegro_Client_Abstract extends SoapClient
  2. {
  3. const JOURNAL_INFO_TYPE_USER = 0
  4. const JOURNAL_INFO_TYPE_SERVICE = 1
  5. ...
  6.  
  7. /**
  8. * Pobiera informacje na temat ostatniej zmiany w dzienniku zdarzeń
  9. *
  10. * Dziennik zdarzeń pozwala na wykrycie zdarzeń w aukcjach, bez
  11. * zbytniego obciążania WebAPI Allegro. Parametr $startingPoint warto
  12. * związać z obiektem utrwalającym w pewnym kontekście (np loginem sesji).
  13. * Kolejne wywołania metody powinny być z wywoływane z ostatnio pobranym
  14. * punktem startowym (stąd konieczność utrwalania punktu startu)
  15. *
  16. * @see http://www.allegro.pl/webapi/documentation.php/show/id,66
  17. *
  18. * @param float $startingPoint punkt startu
  19. * @param int $infoType 0 - tylko zalogowanego użytkownika, 1 - całego serwisu
  20. * @return array informacje z dziennika zdarzeń
  21. */
  22. public function getSiteJournalInfo($startingPoint = null, $infoType = Allegro_Client_Abstract::JOURNAL_INFO_TYPE_USER )
  23. {
  24. // metoda sessionHandle zwraca instancję obiektu implementującego interfejs Allegro_Session_Interface
  25. $handle = $this->getSessionHandle()->getIdentifier();
  26.  
  27. return get_object_vars($this->doGetSiteJournalInfo($handle, $startingPoint, $infoType));
  28. }
  29. }
  30.  
  31. interface Allegro_Session_Interface
  32. {
  33. /**
  34. * Pobiera dane o sesji (uzyskane przy logowaniu) jakie zwróciło WebAPI
  35. *
  36. * @return array
  37. */
  38. public function getAllegroFormatSessionInfo();
  39.  
  40. /**
  41. * Pobiera pozostały czas do wygaśnięcia sesji
  42. *
  43. * @return int sekundy do wygaśnięcia sesji
  44. */
  45. public function getExpireTime();
  46.  
  47. /**
  48. * Aktywność sesji
  49. *
  50. * @return boolean ważność sesji
  51. */
  52. public function isActive();
  53.  
  54. /**
  55. * Metody SOAP Allegro, używają najczęściej identyfikatora sesji
  56. *
  57. * @throws Allegro_Exception gdy sesja nie jest aktywna
  58. * @return string identyfikator sesji
  59. */
  60. public function getIdentifier();
  61.  
  62. /**
  63. * Ustawia informacje na temat zalogowanego użytkowania. Ze względu na
  64. * bezpieczeństwo warto metodę zaimplementować tak, aby nie pozwoliła
  65. * na nadpisanie tożsamości.
  66. *
  67. * @param array identity tożsamość zalogowanego użytkownika
  68. */
  69. public function setIdentity(array $identity);
  70.  
  71. /**
  72. * Pobiera tożsamość ustawioną przy logowaniu
  73. *
  74. * @return array identity
  75. */
  76. public function getIdentity();
  77.  
  78.  
  79. /**
  80. * Zniszczenie sesji logowania.
  81. *
  82. * Nie znalazłem, w dokumentacji żadnej metody w Allegro WebAPI, aby
  83. * zniszczyć zakończyć sesję logowania. Jednak zostawiam ją w
  84. * interfejsie, przyda się chociażby do zniszczenia lokalnej sesji
  85. *
  86. * @throws Allegro_Exception gdy brak sesji
  87. * @return true przy powodzeniu
  88. */
  89. public function destroy();
  90.  
  91. }