Differenze tra le versioni di "Vendita e ricarica online del titolo di viaggio"

Da Libro Bianco OpenPass.
[versione bozza][versione di qualità]
(Servizi Web relativi ai domini: : spaziato e centrato testo sottolineato)
(Servizi Web relativi ai domini)
 
(9 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
__TOC__
 
 
L’attuale '''sistema OpenPass''' è stato predisposto per gestire ricarica e vendita online dei titoli di viaggio, per far questo è necessario:
 
L’attuale '''sistema OpenPass''' è stato predisposto per gestire ricarica e vendita online dei titoli di viaggio, per far questo è necessario:
 
* '''Modificare i servizi Web'''  esistenti del server OpenPass:
 
* '''Modificare i servizi Web'''  esistenti del server OpenPass:
Riga 22: Riga 21:
 
È stato introdotto il concetto di '''WebCompany''': azienda accreditata OpenPass che fornirà servizio di vendita per le stazioni (company).
 
È stato introdotto il concetto di '''WebCompany''': azienda accreditata OpenPass che fornirà servizio di vendita per le stazioni (company).
  
È stato introdotto il concetto di '''WebShop''': portale specifico di vendita dei titoli OpenPass per una determinata Company. Una WebCompany può avere uno o più WebShop. Ogni WebShop è legato univocamente alla propria company (stazione). Nel caso di WebShop di comprensorio, una stazione (company) dovrà farsi carico di gestire il WebShop a cui è collegato il comprensorio.
+
È stato introdotto il concetto di '''WebShop''': portale specifico di vendita titoli OpenPass per una determinata Company. Una WebCompany può avere uno o più WebShop. Ogni WebShop è legato univocamente alla propria company (stazione). Nel caso di WebShop di comprensorio, una stazione (company) dovrà farsi carico di gestire il WebShop a cui è collegato il comprensorio.
  
 
I WebShop inviano al server le transazioni di vendita, che possono avere tre tipi di stato:
 
I WebShop inviano al server le transazioni di vendita, che possono avere tre tipi di stato:
Riga 29: Riga 28:
 
* ritiro presso biglietteria di nuova tessera.
 
* ritiro presso biglietteria di nuova tessera.
  
Ogni transazione di vendita verrà identificata univocamente attraverso l’identificativo incrementale della tabella delle transazioni chiamato '''''<span style="color: blue">RegisterWebSaleID</span>''''' generato dal server OpenPass.
+
Ogni transazione di vendita verrà identificata univocamente attraverso l’identificativo incrementale della tabella delle transazioni chiamato '''''RegisterWebSaleID''''' generato dal server OpenPass.
  
Più transazioni di vendita possono essere raggruppate da un univo '''''<span style="color: blue">OrderNumber</span>''''' fornito dal WebShop in fase di invio di transazioni.
+
Più transazioni di vendita possono essere raggruppate da un univo '''''OrderNumber''''' fornito dal WebShop in fase di invio di transazioni.
  
 
Ogni transazione di vendita inviata al Server OpenPass da parte del WebShop sarà composta da:
 
Ogni transazione di vendita inviata al Server OpenPass da parte del WebShop sarà composta da:
* <span style="color: blue">Identificativo di transazione '''''RegisterWebSaleID'''''</span> (seriale assegnato dal server OpenPass e chiave univoca della transazione di vendita);
+
* Identificativo di transazione '''''RegisterWebSaleID''''' (seriale assegnato dal server OpenPass e chiave univoca della transazione di vendita);
* <span style="color: blue">Identificativo di ordine '''''OrderNumber''''</span> (identificativo gestito dal WebShop);
+
* Identificativo di ordine '''''OrderNumber''''' (identificativo gestito dal WebShop);
 
* '''DomainID''' (Identificativo del Dominio a cui è destinata la transazione di vendita);
 
* '''DomainID''' (Identificativo del Dominio a cui è destinata la transazione di vendita);
 
* '''WebShopID''' (Identificativo del WebShop che ha generato la vendita);
 
* '''WebShopID''' (Identificativo del WebShop che ha generato la vendita);
Riga 63: Riga 62:
 
generati dalla workstation del server oppure dalla workstation della stazione.
 
generati dalla workstation del server oppure dalla workstation della stazione.
  
== Vendita e ricarca online delle tessere in formato OpenPass ==
+
__TOC__
 +
 
 +
== Vendita e ricarica online delle tessere in formato OpenPass ==
 
Per permettere la gestione particolareggiata dei Ticket verrà inserito un TAG aggiuntivo '''<info></info>''' nel servizio '''RegisterTicket''', con contenuto ''serializzato (base64)'', utilizzabile dal produttore a piacere (Company di vendita). Questo campo conterrà informazioni utili al produttore dei sistemi di accesso e al fornitore del negozio internet (WebShop).
 
Per permettere la gestione particolareggiata dei Ticket verrà inserito un TAG aggiuntivo '''<info></info>''' nel servizio '''RegisterTicket''', con contenuto ''serializzato (base64)'', utilizzabile dal produttore a piacere (Company di vendita). Questo campo conterrà informazioni utili al produttore dei sistemi di accesso e al fornitore del negozio internet (WebShop).
  
Riga 114: Riga 115:
 
* Data ripresa foto
 
* Data ripresa foto
 
* Data e ora di fine validità dei dati relativi al customer
 
* Data e ora di fine validità dei dati relativi al customer
* <span style="color: blue">'''LogTime'''</span>: data o ora di inserimento all’interno del database OpenPass
+
* '''LogTime''': data o ora di inserimento all’interno del database OpenPass
  
 
Il server OpenPass registrerà la data e l’ora corrente al momento della registrazione dei dati del customer all’interno del database ('''LogTime''').
 
Il server OpenPass registrerà la data e l’ora corrente al momento della registrazione dei dati del customer all’interno del database ('''LogTime''').
Riga 139: Riga 140:
 
* '''CardPaid''': inclusa la card nella transizione di vendita (0=no, 1=si)
 
* '''CardPaid''': inclusa la card nella transizione di vendita (0=no, 1=si)
 
* '''Ammount''': valore della transazione di vendita.
 
* '''Ammount''': valore della transazione di vendita.
 +
 +
Il servizio risponderà con il valore di RegisterWebSaleID (seriale di vendita) per ciascuna vendita.
  
 
Per informazioni più dettagliate consultare la sezione: [[Appendice_A|'''"Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online"''']].
 
Per informazioni più dettagliate consultare la sezione: [[Appendice_A|'''"Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online"''']].
Riga 150: Riga 153:
  
 
In tali informazioni sono presenti gli '''OpenPassUID''' che identificano le tessere da ricaricare e i '''RegisterWebSaleID''' che permettono di legare le vendite WEB alle tessere ricaricate dai tornelli.
 
In tali informazioni sono presenti gli '''OpenPassUID''' che identificano le tessere da ricaricare e i '''RegisterWebSaleID''' che permettono di legare le vendite WEB alle tessere ricaricate dai tornelli.
 +
 
Verrà passato anche il setore OpenPass generato dalla workstation del server OpenPass con la propria chiave:
 
Verrà passato anche il setore OpenPass generato dalla workstation del server OpenPass con la propria chiave:
 
* '''RecordOpenPass''': contenuto in Base64 del settore del biglietto firmato alla fonte del server OpenPass che avrà la sua chiave
 
* '''RecordOpenPass''': contenuto in Base64 del settore del biglietto firmato alla fonte del server OpenPass che avrà la sua chiave
Riga 210: Riga 214:
 
* Create Domain: servizio Web che consente di creare nuovi domini
 
* Create Domain: servizio Web che consente di creare nuovi domini
 
* Register Domain: servizio Web che permette di associare le company ai domini
 
* Register Domain: servizio Web che permette di associare le company ai domini
* GetDomainList: servizio Web che restituisce tutti i domani associati ad una company
+
* GetDomainList: servizio Web che restituisce tutti i domini associati ad una company
  
 
=== Create Domain ===
 
=== Create Domain ===

Versione attuale delle 08:33, 14 ott 2016

L’attuale sistema OpenPass è stato predisposto per gestire ricarica e vendita online dei titoli di viaggio, per far questo è necessario:

  • Modificare i servizi Web esistenti del server OpenPass:
    • RegisterTicket
    • GetTicket
    • RegisterCustomer
  • Implementare nuovi servizi Web del server OpenPass:
    • RegisterWebSales
    • UpdateWebSalesAmmount
    • GenerateTicket
    • GetWebSales
    • GetPassages
    • SetDailyClosing
    • GetStatusSales
    • GetCustomer
    • Getcustomerstatus
    • Getcustomerdomain
    • CreateDomain
    • RegisterDomain
    • GetDomainList

È stato introdotto il concetto di WebCompany: azienda accreditata OpenPass che fornirà servizio di vendita per le stazioni (company).

È stato introdotto il concetto di WebShop: portale specifico di vendita titoli OpenPass per una determinata Company. Una WebCompany può avere uno o più WebShop. Ogni WebShop è legato univocamente alla propria company (stazione). Nel caso di WebShop di comprensorio, una stazione (company) dovrà farsi carico di gestire il WebShop a cui è collegato il comprensorio.

I WebShop inviano al server le transazioni di vendita, che possono avere tre tipi di stato:

  • pay per use; (stazione) - Prezzo standard.
  • ricarica
  • ritiro presso biglietteria di nuova tessera.

Ogni transazione di vendita verrà identificata univocamente attraverso l’identificativo incrementale della tabella delle transazioni chiamato RegisterWebSaleID generato dal server OpenPass.

Più transazioni di vendita possono essere raggruppate da un univo OrderNumber fornito dal WebShop in fase di invio di transazioni.

Ogni transazione di vendita inviata al Server OpenPass da parte del WebShop sarà composta da:

  • Identificativo di transazione RegisterWebSaleID (seriale assegnato dal server OpenPass e chiave univoca della transazione di vendita);
  • Identificativo di ordine OrderNumber (identificativo gestito dal WebShop);
  • DomainID (Identificativo del Dominio a cui è destinata la transazione di vendita);
  • WebShopID (Identificativo del WebShop che ha generato la vendita);
  • OpenPassUID (OpenPass UID della tessera da ricarica, valorizzato a NULL in caso di ritiro presso la biglietteria);
  • TicketID (identificativo della tipologia di biglietto venduto, recuperata dal server OpenPass attraverso il servizio GetTicket);
  • DataInizioValidità (data e orario di inizio validità del biglietto venduto);
  • CustomerIdentifier (identificativo del soggetto a cui è stato venduto il biglietto, recuperato dal server OpenPass attraveso il servizio GetCustomer);
  • Info (informazione aggiuntiva codificata in base64 gestita tra WebShop e Company);
  • TipoTransazione (0=ritiro, 1=ricarica, 2=registrare rata di denaro, 3=storno),
  • payperuse (0=no pay per use; 1=si pay per use)
  • Insurance Assicurazione (0=no; 1=si)
  • amount (valori in € della transazione di vendita)
  • RecordOpenPass (settore del biglietto firmato alla fonde dal server OpenPass che avrà la sua chiave)
  • Root.Group (Gruppo di appartenenza del server OpenPass)
  • Root.Workstation (Identificativo dell’emettitrice legata al server OpenPass)
  • Root.SerialNumberEx2 (numero seriale del biglietto generato dall’emettitrice legata al server OpenPass)

Ogni transazione di vendita viene scaricata dalla stazione (dominio) a cui è destinata e una volta effettuata la ricarica/consegna della tessera.

I gestori dei sistemi di accesso hanno la possibilità di:

  • caricare il settore firmato dal server OpenPass;
  • generare il settore con i dati della transazione di vendita con una propria Workstation.

In entrambi i casi, la stazione deve comunicare l’avvenuta generazione del biglietto sul supporto inviando i dati al server OpenPass attraverso il servizio sotto illustrato GenerateTicket. Il server OpenPass deve conoscere gli identificativi per rintracciare i passaggi del biglietto nel sistema OpenPass. Gli identificati sono costituiti dalla copia di valori:

  • Root.Workstation (numero identificativo della emittente Workstation nel sistema OpenPass);
  • Root.SerialNumberEx2 (numero seriale interno alla emittente Workstation),

generati dalla workstation del server oppure dalla workstation della stazione.

Vendita e ricarica online delle tessere in formato OpenPass

Per permettere la gestione particolareggiata dei Ticket verrà inserito un TAG aggiuntivo <info></info> nel servizio RegisterTicket, con contenuto serializzato (base64), utilizzabile dal produttore a piacere (Company di vendita). Questo campo conterrà informazioni utili al produttore dei sistemi di accesso e al fornitore del negozio internet (WebShop).

Verrà creato un nuovo servizio RegisterWebSales per inviare le transazioni di vendita effettuate dal un WebShop. Ogni transazione di vendita verrà identificata univocamente dal proprio seriale di vendita RegisterWebSaleID fornito dal server OpenPass.

Verrà creato un nuovo servizio UpdateWebSales per aggiornare le vendite Web con il quantitativo economico derivato dal calcolo dell'uso.

Verrà creato un nuovo servizio GetWebSales con cui i fornitori dei sistemi di accesso potranno scaricare dal server OpenPass tutte le vendite Web effettuate per ogni dominio.

Verrà creato un nuovo servizio GenerateTicket con cui i fornitori dei sistemi di accesso potranno inviare al Server OpenPass la Root.Workstation e Root.SerialNumberEx2 con cui è stato generato il biglietto per ogni specifica transazione di vendita identificata con RegisterWebSaleID.

Verrà creato un nuovo servizio GetPassages per recuperare tutti i passaggi effettuati da una tessera ricaricata a seguito di una vendita online identificata con RegisterWebSaleID.

Verrà creato un nuovo servizio SetDailyClosing per inviare al server OpenPass lo stato di chiusura di una stazione indicante che tutti i passaggi sono stati inviati al server. Tale informazione sarà utile al fornitore di WebShop in quanto potrà da quel momento calcolare gli usi delle tessere ricaricate.

Gli step per giungere alla ricarica dei titoli di viaggio attraverso internet prevedono i seguenti passi:

(STEP 1) - Codifica Ticket

Le stazioni (Company) inviano al Server OpenPass i biglietti (ticket) vendibili attraverso il servizio già attivo (RegisterTicket) che verrà esteso con il tag aggiuntivo <info>.

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

(STEP 2) - Lettura Ticket

Le WebCompany fornitori di Webshop leggono i biglietti (ticket) dal Server OpenPass con il servizio esistente GetTicket che verrà ampliato con l'informazione del tag aggiuntivo <info>.

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

(STEP 3) - Codifica Customer

  • Codice numerico univoco di identificazione del customer [*]
  • Dominio di ultima vendita (ricavato dal server) [*]
  • openpassuid
  • nome del customer [*]
  • cognome del custorm [*]
  • titolo del customer
  • data di nascita del customer [*]
  • sesso del customer
  • codice fiscale del customer
  • lavoro del customer
  • email del customer
  • Sociale del customer
  • Cellulare del customer
  • Telefono fisso del customer
  • indirizzo del customer
  • C.A.P. del customer
  • Città del customer
  • Provincia del customer
  • Nazione del customer
  • Note
  • Consenso per la divulgazione dei dati personali verso terzi
  • Fotografia (limitare dimensioni 100k e rapporto immagine definito (360x480) 50k
  • Data ripresa foto
  • Data e ora di fine validità dei dati relativi al customer
  • LogTime: data o ora di inserimento all’interno del database OpenPass

Il server OpenPass registrerà la data e l’ora corrente al momento della registrazione dei dati del customer all’interno del database (LogTime).

Prima di inviare i dati del customer il WebShop potrà verificare la base dati sul serve rOpenPass per ereditare i dati aggiornati del customer attraverso i servizi GetCustomersStatus, GetCustomersDomain, GetCustomer

  • GetCustomersStatus: è il servizio Web che restituisce l’ultima data di aggiornamento dei customers collegati ad un determinato dominio.
  • GetCustomersDomain: è il servizio Web che restituisce i dati di tutti i customers aggiornati da una certa data in poi e che hanno acquistato almeno una volta un ticket in un determinato domain
  • GetCustomer: è il servizio Web che restituisce tutti i dati del customer relativi ad uno specifico CustomerIdentifier.

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

(STEP 4) - Codifica WebSales

I fornitori di WebShop inviano gli acquisti effettuali dai clienti. Verrà creato un nuovo servizio RegisterWebSales che prevederà l’invio di:

  • OrderNumber: numero d’ordine della transazione di vendita;
  • Domain: dominio interessato alla transazione di vendita;
  • Openpassuid: numero univoco della tessera RFID come definito dal formato OpenPass
  • TicketIdentifier: identificativo univoco del tipo di biglietto interessato dalla transizione di vendita;
  • StartDate: data di inizio validità della transazione di vendita oltre la quale è possibile creare il biglietto
  • CustomerIdentifier: identificativo univoco del cliente sul server OpenPass
  • Info: informazione aggiuntiva codificata in base64 gestita tra WebShop e Company
  • OperationType: (0=ritiro, 1=ricarica, 2=registrare rata di denaro, 3=storno)
  • Payperuse: (0=no payperuse, 1=si payperuse)
  • Insurance: abbinata una assicurazione (0=no, 1=si)
  • CardPaid: inclusa la card nella transizione di vendita (0=no, 1=si)
  • Ammount: valore della transazione di vendita.

Il servizio risponderà con il valore di RegisterWebSaleID (seriale di vendita) per ciascuna vendita.

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

(STEP 5) - Lettura WebSales (per dominio)

Le stazioni, attraverso i fornitori dei sistemi di accesso, leggono dal Server OpenPass le WebSales inviate dai fornitori di WebShop attraverso il nuovo servizio GetWebSales.

Il servizio viene interrogato passando l’identificativo della Company (identificativo della stazione) e l'ultimo RegisterWebSaleID in possesso dalla stazione.

Il servizio restituisce le informazioni di tutte le transazioni di vendita successive al RegisterWebSaleID passato, relativi a tutti i domini a cui è associata la Company richiesta.

In tali informazioni sono presenti gli OpenPassUID che identificano le tessere da ricaricare e i RegisterWebSaleID che permettono di legare le vendite WEB alle tessere ricaricate dai tornelli.

Verrà passato anche il setore OpenPass generato dalla workstation del server OpenPass con la propria chiave:

  • RecordOpenPass: contenuto in Base64 del settore del biglietto firmato alla fonte del server OpenPass che avrà la sua chiave
  • Root.Group: gruppo di appartenenza del server OpenPass
  • Root.Workstation: identificativo dell’emettitrice legata al server OpenPass
  • Root.SerialNumberEx2: numero seriale del biglietto generato dall’emettitrice legata al server OpenPass.

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

(STEP 6) - Generazione della tessere relativa alla vendita

Ricevute la transazioni di vendita relative a tutti i domini della specifica company, i fornitori dei sistemi di accesso, sono in grado di generare i biglietti:

  • emettere dalle emettitrici i nuovi biglietti
  • ricaricare alle antenne le tessere in formato OpenPass.

Successivamente a tali azioni, i fornitori dei sistemi di accesso, dovranno utilizzare il nuovo servizio GenerateTicket per inviare al Server OpenPass i token Root.Workstation, Root.SerialNumberEx2 e la data di creazione della tessera con cui è stato generato il biglietto per ogni specifica transazione di vendita identificata con RegisterWebSaleID.

I dati inviati dai fornitori dei sistemi di accesso, successivamente alla generazione della tessera contnenete la transazione di vendita sono:

  • Group
  • Company
  • Workstation
  • Creationtime
  • Ticketidentifier
  • OpenPassUID
  • RegisterWebSaleID
  • SerialNumberEx2.

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

(STEP 7) - Lettura generazione tessera

I fornitori dei WebShop hanno a disposizione il servizio Web getStatusSales che dato in ingresso il RegisterWebSaleID restituisce in quale company, data e ora è stato scaricato. In caso la transazione di vendita non fosse ancora stata recuperata da nessun company, il servizio restituisce NULL.

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

(STEP 8) - Invio dei passaggi

Le stazioni inviano i passaggi effettuati dalle tessere ricaricate utilizzando il servizio già attivo Registerpassages.

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

(STEP 9) - Chiusura giornata

Al termine dell'invio di tutti i passaggi della giornata, la stazione (company) deve inviare la chiusura, in modo da consentire al WebShop di scaricare i passaggi di ogni RegisterSaleID e calcolare l'ammontare della vendita. Tale azione avviene invocando un nuovo servizio SetDailyClosing inviando l’identificativo della company e la data e ora di chiusura.

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

(STEP 10) - Lettura passaggi

A chiusura di giornata effettuata i fornitori di WebShop interrogano il server OpenPass per leggere tutti i passaggi effettuati da ciascuna RegisterSaleID e calcolare l'ammontare della vendita. Tale azione avviene invocando un nuovo servizio GetPassages inviando RegisterSaleID e giorno (data giorno).

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

(STEP 11) - Registrazione ammontare valori ricarica

A chiusura di giornata effettuata i fornitori di WebShop invieranno al server OpenPass i valori degli ammontare di vendita delle tessere in payperuse. Tale azione avviene invocando un nuovo servizio UpdateWebSalesAmmount inviando per ciascun RegisterSaleID:

  • Ammount: valore della transazione di vendita
  • Description: testo che indica se è stato addebitato un giornaliero, pomeridiano, mattutino, ecc…
  • ReferenceDate: indica a che data è riferita la vendita (giorno in cui sono stati effettuati i passaggi)
  • Domain: indica su quale dominiio è stato calcolato l’ammontare.

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

Servizi Web relativi ai domini

Si rende necessario creare nuovi servizi per gestire i domini, ed in particolare:

  • Create Domain: servizio Web che consente di creare nuovi domini
  • Register Domain: servizio Web che permette di associare le company ai domini
  • GetDomainList: servizio Web che restituisce tutti i domini associati ad una company

Create Domain

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

Register Domain

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".

Get Domain List

Per informazioni più dettagliate consultare la sezione: "Appendice A - Servizi del Formato 3 - Estensione dei servizi per la vendita online".


Si provvederà ad implementare nuovi servizi web, mantenendo attivi quelli esistenti ed utilizzando metodologie più consone al volume di dati trattato (JSON o alternativi), migliorando la risposta.


Torna a: Il Sistema OpenPass