WBA-TechDoc.pdf

(77 KB) Pobierz
WebBehaviorAnalitics
Dokumentacja techniczna
Spis treści
1 Plik konfiguracyjny skrypt.....................................................................3
1.1 Opis...........................................................................................................................................3
1.2 Dane zawarte w konfiguracji....................................................................................................3
2 Protokół komunikacji client-server.......................................................3
2.1 Usługi dostarczone przez serwer..............................................................................................3
2.1.1 SendData Service..............................................................................................................3
2.1.2 PopularityList Service.......................................................................................................4
2.1.3 NavigationList Service......................................................................................................4
2.1.4 UnpopularityList Service..................................................................................................5
2.1.5 CrazyUsersList Service.....................................................................................................6
2.1.6 ErrorList Service...............................................................................................................7
2.1.7 ElementSelectionList Service...........................................................................................7
2.1.8 Report Service...................................................................................................................8
1 Plik konfiguracyjny skrypt
1.1 Opis
Plik konfiguracyjny dodany do skryptu pozwala użytkownikowi na modyfikowanie pewnych
parametrów dotyczących sposobu działania pluginu. Plik będzie zapisany w formacie XML.
1.2 Dane zawarte w konfiguracji
URL serwera przetwarzającego dane pochodzące z pluginu
określanie badanych elementów za pomocą selektorów CSS np [.class, #id, htmlElement]
określenie akcji dla badanych elementów np. <selektor> [event,event, ..]
odstępy czasowe pomiędzy wysyłaniem paczek z danymi o zdarzeniach
wyspecyfikowanie(format danych) usług serwera <wersja> (spełnia kryterium
weryfikowalności REQ-C-1)
2 Protokół komunikacji client-server
Komunikacja odbywa się przez HTTP POST a przesyłane dane są w formacie JSON.
2.1 Usługi dostarczone przez serwer
2.1.1
Opis
Informacja o zdarzeniu na stronie
SendData Service
Input Data
ID
PackageJSON
Data
{
"userId" : "id uzytkownika",
„userIP” : „ip uzytkownika”,
"eventsPackage" : [{#PageEventJSON}, ...],
"pageId" : "id strony",
}
PageEventJSON
{
"elementId" : "id elementu",
"actionType" : "typ akcji",
"timestamp" : "czas",
"actionProperties" : {„prop1”:”wartosc”, „prop2”:”wartosc”}
}
POST
#PackageJSON
Output Data
ID
ACKmessageJSON
Data
{
„result” : „message” np. OK, FAIL
}
#ACKmessageJSON
POST
2.1.2
Opis
PopularityList Service
Usługa zwracająca listę elementów strony posortowanej względem zainteresowania użytkownika
lub/oraz podgrupy osób lub/oraz pory dnia.
Input Data
ID
POST
Data
{
„mode” : „PopularityList”
„option” : „opcja”
}
Output Data
ID
ElementPopularityListJSON
Data
{
"elements" : "[{#ElementJSON},...]",
}
ElementJSON
{
"order" : "pozycja na liscie",
"elementId" : "identyfikator elementu",
"userId" : "identyfikator uzytkownika",
}
POST
#ElementPopularityListJSON
2.1.3
Opis
NavigationList Service
Usługa zwracająca listę popularnych ścieżek przechodzenia pomiędzy elementami strony podczas
ich czytania.
Input Data
ID
POST
Data
{
„mode” : „NavigationList”
}
Output Data
ID
PageListJSON
Data
{
"list" : "[{#PageChangeListJSON},...]"
}
PageChangeListJSON
{
"list" : "[{#PageJSON},...]",
"popularity" : "popularnosc w liczbie albo %"
}
PageJSON
{
"order" : "pozycja na liscie"
"pageId" : "identyfikator strony"
}
POST
#PageListJSON
2.1.4
Opis
UnpopularityList Service
Zwraca listę elementów strony nigdy nie będących w kręgu zainteresowania (z minimalnym
marginesem błędu ~3%)
Input Data
ID
POST
Data
{
„mode” : „PopularityList”
„option” : „opcja”
}
Zgłoś jeśli naruszono regulamin