Notifiche

Spesso si ha la necessità di eseguire delle procedure automatiche quando si verificano determinati eventi come ad esempio la creazione di un ordine o l'aggiornamento del magazzino. Per questo le app possono ricevere delle notifiche da Open2b Commerce Ready quando si verificano gli eventi a cui sono interessate. Per le app pubblicate sullo Store potete indicare al momento della pubblicazione dell'app per quali eventi si vogliono ricevere le notifiche. Per le app esterne, ossia quelle non pubblicate sullo Store, è possibile farlo direttamente nel gestionale del negozio in "Apps > Modifica" e facendo clic sulla riga relativa all'app:

Notifiche

Nella prima colonna si seleziona il topic (nome dell'evento) e nella seconda colonna si indica l'indirizzo che verrà chiamato al verificarsi dell'evento. L'indirizzo può essere sia "http" che "https". Negli indirizzi inoltre è sempre bene indicare un vostro parametro che nessun altro può conoscere che vi servirà per verificare che la notifica sia autentica:

Non sono ammessi numeri IP o indirizzi locali o diversi da "http" e "https":

Gli eventi sono notificati all'app in media ogni 2 minuti e ogni notifica riguarda uno o più eventi dello stesso topic e dello stesso negozio. La notifica viene inviata all'indirizzo indicato attraverso una chiamata HTTP POST con un oggetto JSON nel corpo del messaggio:

{
    "shop" : "AY7M1ZGPEN",
    "topic" : "commerce.orders.create",
    "elements" : [ "889140679012803449", "6452139743349043197", … ]
}
shop identificativo del negozio
topic nome dell'evento
elements elementi su cui si è verificato l'evento

La lista degli elementi, su cui si è verificato l'evento, non è in ordine di tempo ma casuale e non sono presenti elementi duplicati anche se l'evento si è verificato più di una volta per lo stesso elemento. Una volta ricevuta la notifica l'app deve rispondere con lo stato 200 OK.

A causa di problematiche che possono riguardare la rete non dovreste fare assoluto affidamento ai tempi di invio delle notifiche, siate pronti ad eventuali ritardi. Se è la vostra app a non rispondere come previsto alle notifiche, Open2b Commerce Ready provvederà ad inviarle per due giorni. Gli eventi più vecchi di due giorni non verranno più notificati.

Testare le notifiche

Per testare le notifiche si può utilizzare un servizio come RequestBin che vi consente di create delle URL da utilizzare per le notifiche. Le notifiche inviate alle URL di RequestBin saranno visualizzate nel browser.