Differenze tra le versioni di "Server OpenPass"
| [versione bozza] | [versione bozza] |
| Riga 170: | Riga 170: | ||
| ConstantValue || numerico || ConstantValue | | ConstantValue || numerico || ConstantValue | ||
|} | |} | ||
| − | + | === REGISTERTICKET === | |
| − | + | Consente di registrare un set di valori di tokens costanti per una certa categoria di biglietti al fine di poterla identificare con rapidità nelle elaborazioni dati. (Es. Stagionale adulti, Stagionale ridotto). Ritorna un codice identificativo univoco per il biglietto che è identico al valore passato per il token “TicketID” obbligatorio. La chiamata può essere effettuata tutte le volte che si vuole; a parità di valori il sistema ritornerà sempre lo stesso codice. La chiamata consente una registrazione diversa per ogni Stazione, ma il codice numerico ritornato sarà a parità di set di valori lo stesso su più stazioni. Due biglietti uguali non possono né devono avere codici identificativi differenti. | |
| − | + | ==== Parametri input ==== | |
| − | + | {| class="wikitable" | |
| − | + | ! Parametro !! Tipo !! Obbligatorio !! Descrizione | |
| − | + | |- | |
| − | + | | Description || testo || si || Descrizione del ticket | |
| − | + | |- | |
| + | | CustomerAge || numerico || si || Classe di età del destinatario del biglietto (1=”Bambini <=11”, 2=”Ragazzi 12-17”, 3=”Adulti 18-64”, 4=”Senior >= 65”) | ||
| + | |- | ||
| + | | CustomerType || numerico || no || Tipologia del destinatario del biglietto (1=”Non Residenti”, 2=”Residenti”) | ||
| + | |- | ||
| + | | Values || oggetto || si || oggetto contenente i TokenValue | ||
| + | |} | ||
| + | ===== Oggetto Values ===== | ||
| + | {| class="wikitable" | ||
| + | ! Parametro !! Tipo !! Obbligatorio !! Descrizione | ||
| + | |- | ||
| + | | TokenValue || oggetto || si || Oggetto che contiene i dati dei token | ||
| + | |} | ||
| + | ===== Oggetto TokenValue ===== | ||
| + | {| class="wikitable" | ||
| + | ! Parametro !! Tipo !! Obbligatorio !! Descrizione | ||
| + | |- | ||
| + | | Name || testo || si || Nome del token. (Il Token “Root.TicketID” è obbligatorio) | ||
| + | |- | ||
| + | | Value || testo || si || Valore del token. (Il valore del Token “Root.TicketID” è obbligatorio) | ||
| + | |} | ||
| + | ==== Parametri output ==== | ||
| + | {| class="wikitable" | ||
| + | ! Parametro !! Tipo !! Descrizione | ||
| + | |- | ||
| + | | TicketIdentifier || numerico || Codice numerico univoco di identificazione del biglietto. Il codice restituito sarà quello che viene passato con il Token “Root. TicketID” | ||
| + | |} | ||
| + | === ENUMERATETICKETS === | ||
| + | Ottieni l’elenco esaustivo dei codici identificativi dei biglietti noti al server per la stazione specificata. | ||
| + | ==== Parametri input ==== | ||
| + | {| class="wikitable" | ||
| + | ! Parametro !! Tipo !! Obbligatorio !! Descrizione | ||
| + | |- | ||
| + | | Company || numerico || si || Codice numerico univico di identificazione della stazione | ||
| + | |} | ||
| + | ==== Parametri output ==== | ||
| + | {| class="wikitable" | ||
| + | ! Parametro !! Tipo !! Descrizione | ||
| + | |- | ||
| + | | TicketIdentifiers || oggetto || Lista dei codici identificativi dei ticket noti al server | ||
| + | |} | ||
| + | ===== Oggetto TicketIdentifiers ===== | ||
| + | {| class="wikitable" | ||
| + | ! Parametro !! Tipo !! Descrizione | ||
| + | |- | ||
| + | | Int || numerico || Codice numerico univoco di identificazione dei ticket noti al server | ||
| + | |} | ||
| + | === GETTICKET === | ||
| + | Dato un codice identificativo di biglietto, ottiene la definizione dello stesso | ||
| + | ==== Parametri input ==== | ||
| + | {| class="wikitable" | ||
| + | ! Parametro !! Tipo !! Obbligatorio !! Descrizione | ||
| + | |- | ||
| + | | Company || numerico || si || Codice numerico univoco di identificazione della stazione | ||
| + | |- | ||
| + | | TicketIdentifier || numerico || si || Codice numerico univoco di identificazione del biglietto | ||
| + | |} | ||
| + | ==== Parametri output ==== | ||
| + | {| class="wikitable" | ||
| + | ! Parametro !! Tipo !! Descrizione | ||
| + | |- | ||
| + | | Identifier || numerico || Codice numerico univoco di identificazione del biglietto | ||
| + | |- | ||
| + | | Description || testo || Descrizione del biglietto | ||
| + | |- | ||
| + | | CustomerAge || numerico || Classe di età del destinatario del biglietto (1=”Bambini <=11”, 2=”Ragazzi 12-17”, 3=”Adulti 18-64”, 4=”Senior >= 65”) | ||
| + | |- | ||
| + | | CustomerType || numerico || Tipologia del destinatario del biglietto (1=”Non Residenti”, 2=”Residenti”) | ||
| + | |- | ||
| + | | LastTouch || data || Data e ora di creazione | ||
| + | |- | ||
| + | | Values || oggetto || Oggetto contenente i TokenValue | ||
| + | |} | ||
| + | ===== Oggetto Values ===== | ||
| + | {| class="wikitable" | ||
| + | ! Parametro !! Tipo !! Descrizione | ||
| + | |- | ||
| + | | TokenValue || oggetto || Oggetto che contiene i dati dei token | ||
| + | |} | ||
| + | ===== Oggetto TokenValue ===== | ||
| + | {| class="wikitable" | ||
| + | ! Parametro !! Tipo !! Descrizione !! | ||
| + | |- | ||
| + | | Name || testo || Nome del token | ||
| + | |- | ||
| + | | Value || testo || Valore del token | ||
| + | |} | ||
Versione delle 09:58, 25 ago 2016
Indice
Periodicità, formato e contenuto delle informazioni Gestite nella rete OpenPass
Il Server OpenPass prevede l’invio dei dati di passaggio e vendita (ed i dati necessari al completamento dei primi due flussi come ticket e customer) da parte delle stazioni consociate ANEF Ski Lombardia in formato XML attraverso l’utilizzo di WebService. L’invio dei dati da parte dei client delle stazioni al server OpenPass può essere in real time oppure in differita tramite processi di batch a seconda del fornitore dei sistemi di accesso collegati alle stazioni.
Il Server OpenPass prevede poi un invio giornaliero costituito da un unico file compresso (.ZIP) contenente i file in formato CSV (comma separated values) ed il file XML per le meta-informazioni su una risorsa condivisa con Regione Lombardia; i dati trasferiti riguardano le anagrafiche ed i passaggi.
Comunicazione tra il server openpass e i client delle stazioni
Lo standard OpenPass prevede una rete distribuita di centri di raccolta dati collegati via web service al server centrale.
Le informazioni di vendita e passaggio sono raccolte ai varchi e inviate ai centri di raccolta dati, che a loro volta le trasmettono al server centrale.
Il protocollo di scambio tra server e centri di raccolta è REST, basato sul metalinguaggio XML. Il server riceve i dati e li memorizza in un database SQL centralizzato, dove ogni dato di vendita o passaggio è correlato da un codice seriale identificativo univoco e eventuali dati anagrafici del customer.
Il server gestisce a frequenza prestabilita operazioni di configurazione e di caricamento dati, attraverso chiamate XML.
La comunicazione tra il server OpenPass ed i client delle stazioni avviene su protocollo HTTP mediante l’architettura software RESTful.
Per la comunicazione sono stati progettati e realizzati sei servizi organizzate in risorse web accessibili a seguito di autenticazione.
L’architettura software utilizza il paradigma client-server; i servizi attivati, in architettura RESTFul, sono di seguito riportati.
LOGIN
Consente l’autenticazione di un utente che desidera collegarsi. Ad ogni stazione è associata una login specifica fornita da ANEF SKI Lombardia. L’autenticazione vale per tutta la durata della sessione di scambio dati.
Parametri input
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| Username | testo | si | Username della stazione |
| Password | testo | si | Password della stazione |
Parametri output
| Parametro | Tipo | Descrizione |
|---|---|---|
| Group | numerico | Codice univoco di identificazione del gruppo |
| Company | numerico | Codice univoco di identificazione del gruppo |
REGISTERTOKEN
Consente di registrare un token personalizzato. I tokens che cominciano con ‘Root.’ richiedono l’accesso di un amministratore. Ogni token ha un tipo associato (es. numerico, data, ora etc.). Il token non dipende dalla Stazione che ne fa richiesta.
Parametri input
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| Name | testo | si | Nome del token |
| Description | testo | si | Descrizione del significato di token |
| Type | numerico | si | Tipo assegnato (0=numerico, 1=data, 2=ora) |
Parametri output
| Parametro | Tipo | Descrizione |
|---|---|---|
| CreatedNew | boolean | Booleano che indica se il token è stato aggiunto |
REGISTERFORMAT
Consente di registrare un formato di registrazione da utilizzare per la produzione e l’interpretazione di biglietti. Ritorna un codice identificativo univoco per il formato. La chiamata può essere effettuata tutte le volte che si vuole, il sistema ritornerà sempre lo stesso codice. Il codice di formato è quindi uguale per tute le stazioni che ne fanno richiesta. Lo stesso formato può essere condiviso tra più biglietti (es. Stagionale Adulti, Ridotto, FISI etc.).
Parametri input
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| Description | testo | si | Descrizione del formato |
| Creator | testo | si | Nome del creatore del formato |
| Fixed area | oggetto | no | Oggetto contenente gli oggetti TokenAllocation della fixed area |
| Variable area | oggetto | no | Oggetto contenente gli oggetti TokenAllocation della variable area |
Oggetto Fixed area
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| TokenAllocation | oggetto | si | Oggetto contenente i valori dei Token |
Oggetto Variable area
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| TokenAllocation | oggetto | si | Oggetto contenente i valori dei Token |
Oggetto TokenAllocation
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| Name | testo | si | Nome del Token precedentemente salvato |
| BitAdress | numerico | no | BitAdreass |
| BitWidth | numerico | no | BitWidth |
| ConstantValue | numerico | no | ConstantValue |
Parametri output
| Parametro | Tipo | Descrizione |
|---|---|---|
| FormatIdentifier | numerico | Codice numerico univoco di identificazione del formato |
ENUMERATEFORMATS
Restituisce l'elenco esaustivo dei codici identificativi dei formati noti al server.
Parametri input
Nessuno
Parametri output
| Parametro | Tipo | Descrizione |
|---|---|---|
| FormatIdentifiers | oggetto | Lista dei codici identificativi dei formati noti al server |
Oggetto FormatIdentifiers
| Parametro | Tipo | Descrizione |
|---|---|---|
| Int | numerico | Codice numerico univoco di identificazione dei formati noti al server |
GETFORMAT
Dato un codice identificativo di formato ottiene la definizione dello stesso
Parametri input
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| FormatIdentifier | numerico | si | Codice numerico univoco di identificazione del formato |
Parametri output
| Parametro | Tipo | Descrizione |
|---|---|---|
| Identifier | numerico | Codice numerico univoco di identificazione del formato |
| Description | testo | Descrizione del formato |
| Creator | testo | Nome del creatore del formato |
| LastTouch | data | Data e ora di creazione |
| Fixed area | oggetto | Oggetto contenente gli oggetti token allocation della fixed area |
| Variable area | oggetto | Oggetto contenente gli oggetti toke allocation della variable area |
Oggetto Fixed area
| Parametro | Tipo | Descrizione |
|---|---|---|
| TokenAllocation | oggetto | Oggetto contenente i valori dei Token |
Oggetto Variable area
| Parametro | Tipo | Descrizione |
|---|---|---|
| TokenAllocation | oggetto | Oggetto contenente i valori dei Token |
Oggetto TokenAllocation
| Parametro | Tipo | Descrizione |
|---|---|---|
| Name | testo | Nome del Token precedentemente salvato |
| BitAdress | numerico | BitAdress |
| BitWidth | numerico | BitWidth |
| ConstantValue | numerico | ConstantValue |
REGISTERTICKET
Consente di registrare un set di valori di tokens costanti per una certa categoria di biglietti al fine di poterla identificare con rapidità nelle elaborazioni dati. (Es. Stagionale adulti, Stagionale ridotto). Ritorna un codice identificativo univoco per il biglietto che è identico al valore passato per il token “TicketID” obbligatorio. La chiamata può essere effettuata tutte le volte che si vuole; a parità di valori il sistema ritornerà sempre lo stesso codice. La chiamata consente una registrazione diversa per ogni Stazione, ma il codice numerico ritornato sarà a parità di set di valori lo stesso su più stazioni. Due biglietti uguali non possono né devono avere codici identificativi differenti.
Parametri input
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| Description | testo | si | Descrizione del ticket |
| CustomerAge | numerico | si | Classe di età del destinatario del biglietto (1=”Bambini <=11”, 2=”Ragazzi 12-17”, 3=”Adulti 18-64”, 4=”Senior >= 65”) |
| CustomerType | numerico | no | Tipologia del destinatario del biglietto (1=”Non Residenti”, 2=”Residenti”) |
| Values | oggetto | si | oggetto contenente i TokenValue |
Oggetto Values
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| TokenValue | oggetto | si | Oggetto che contiene i dati dei token |
Oggetto TokenValue
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| Name | testo | si | Nome del token. (Il Token “Root.TicketID” è obbligatorio) |
| Value | testo | si | Valore del token. (Il valore del Token “Root.TicketID” è obbligatorio) |
Parametri output
| Parametro | Tipo | Descrizione |
|---|---|---|
| TicketIdentifier | numerico | Codice numerico univoco di identificazione del biglietto. Il codice restituito sarà quello che viene passato con il Token “Root. TicketID” |
ENUMERATETICKETS
Ottieni l’elenco esaustivo dei codici identificativi dei biglietti noti al server per la stazione specificata.
Parametri input
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| Company | numerico | si | Codice numerico univico di identificazione della stazione |
Parametri output
| Parametro | Tipo | Descrizione |
|---|---|---|
| TicketIdentifiers | oggetto | Lista dei codici identificativi dei ticket noti al server |
Oggetto TicketIdentifiers
| Parametro | Tipo | Descrizione |
|---|---|---|
| Int | numerico | Codice numerico univoco di identificazione dei ticket noti al server |
GETTICKET
Dato un codice identificativo di biglietto, ottiene la definizione dello stesso
Parametri input
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| Company | numerico | si | Codice numerico univoco di identificazione della stazione |
| TicketIdentifier | numerico | si | Codice numerico univoco di identificazione del biglietto |
Parametri output
| Parametro | Tipo | Descrizione |
|---|---|---|
| Identifier | numerico | Codice numerico univoco di identificazione del biglietto |
| Description | testo | Descrizione del biglietto |
| CustomerAge | numerico | Classe di età del destinatario del biglietto (1=”Bambini <=11”, 2=”Ragazzi 12-17”, 3=”Adulti 18-64”, 4=”Senior >= 65”) |
| CustomerType | numerico | Tipologia del destinatario del biglietto (1=”Non Residenti”, 2=”Residenti”) |
| LastTouch | data | Data e ora di creazione |
| Values | oggetto | Oggetto contenente i TokenValue |
Oggetto Values
| Parametro | Tipo | Descrizione |
|---|---|---|
| TokenValue | oggetto | Oggetto che contiene i dati dei token |
Oggetto TokenValue
| Parametro | Tipo | Descrizione | |
|---|---|---|---|
| Name | testo | Nome del token | |
| Value | testo | Valore del token |