alessandro bellotti - nfc: non solo pagamenti
DESCRIPTION
Mobile Tea #6TRANSCRIPT
![Page 1: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/1.jpg)
UTILIZZO DEI TAG NFC PER MIGLIORARE LA GESTIONE DEI DATI IN AZIENDA IN MODO DA RIDURRE I COSTI AZIENDALI .
ALESSANDRO BELLOTTI @ZUKKA75B L A C K B E R RY E L I T E M E M B E R
10/09 /2013
NFC non solo pagamenti
![Page 2: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/2.jpg)
Possibili utilizziScaricamento e pagamento su dispositivi portatili NFC,
attraverso computer o chioschi elettronici abilitati, di giochi, file MP3, video, software;
Scaricamento da un PC su di un dispositivo portatile, della prenotazione o acquisto di una permanenza in albergo, ingressi a cinema, teatri, stadi, viaggio in treno o aereo, e accesso al servizio comperato mediante il dispositivo stesso avvicinandolo o toccando il chiosco elettronico in albergo, al gate di ingresso o di partenza;
Scaricamento da un chiosco elettronico mediante scansione o contatto di informazioni addizionali, acquisto di una permanenza in albergo, ingressi a cinema, teatri, stadi, titolo di viaggio con mezzi urbani e accesso al servizio mediante il dispositivo stesso anche sui mezzi di trasporto urbano;
![Page 3: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/3.jpg)
Possibili utilizzi (segue)Trasferimento e visualizzazione di fotografie da
una macchina fotografica o telefono cellulare NFC a un chiosco elettronico, televisione, computer per la visione o la stampa;
Trasferimento facilitato di file o messa in rete fra sistemi wireless;
Uso della tecnologia NFC per i sistemi di bigliettazione elettronica (nel 2011 a Milano è partita una sperimentazione che consente di utilizzare il cellulare per comprare e validare i biglietti dell'autobus o della metropolitana[15]).
![Page 4: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/4.jpg)
Web WorksStruttura di un’applicazione base CONFIG.XML
Contiene le informazioni e le impostazioni dell’app.
INDEX.HTMLLa pagina di avvio dell’app
SCREEN.HTMLa Prima schermata visualizzata all’avvio dell’app
![Page 5: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/5.jpg)
Risorse ufficiali
Sito Ufficiale BlackBerry HTML5/WebWorks
https://developer.blackberry.com/html5/
Gruppo FaceBook sviluppatori BB italianihttps://www.facebook.com/groups/bbdevsit
aly/
Sito, Forum e Blog del Gruppohttp://www.bbdevs.com/site/
![Page 6: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/6.jpg)
Diagramma del PRJ
Web Server
Data OK
EXT Display
(Playbook) OK
Data Error
EXT Display
(Playbook) ERROR
BB10 App Server NFC
reader
NFC Data
BB10 App Employee
1
NFC Data
BB10 App Employee
2
NFC Data
BB10 App Employee
3
![Page 7: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/7.jpg)
App lato Client
Leggere i dati dal Device (PIN)
Leggere i dati dall’appCreare il Tag UNIVOCOInvoke NFCAttendere la CallBack
![Page 8: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/8.jpg)
Leggere i dati
CONFIG.XML
<rim:permissions> <rim:permit>
read_device_identifying_information</rim:permit>
</rim:permissions> <feature id="blackberry.identity" required="true"
version="1.0.0.0"/>INDEX.HTML
localStorage.setItem('imeiDevice',blackberry.identity.IMEI);
localStorage.setItem('imeiDevice',blackberry.identity.PIN);
localStorage.getItem(‘imeiDevice’);
![Page 9: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/9.jpg)
Creazione del Tag Univoco
CONFIG.XML
<!-- Invoke-target deve essere univoco... --><rim:invoke-target id="com.alessandro.mirko.ww.a"><type>APPLICATION</type><filter><action>bb.action.OPEN</action><mime-type>application/vnd.rim.nfc.ndef</mime-type><property value="ndef://1,ndef://2,ndef://4"
var="uris" /></filter></rim:invoke-target>
![Page 10: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/10.jpg)
Invoke NFC
var nfcData;function nfc() { var idEmp = localStorage.getItem('id'); var name = localStorage.getItem('name'); var surname = localStorage.getItem('surname'); if (idEmp != null & name != null & surname !=
null) { nfcData = idEmp + " " + name + " " + " " +
surname + " " + localStorage.getItem('imeiDevice');
// console.log('Data OK! Share via NFC: ' + nfcData);
invokeNFC(); }
![Page 11: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/11.jpg)
Invoke NFC (segue)
else {try { blackberry.ui.dialog.standardAskAsync("Swipe down to access Option screen and setting your data", blackberry.ui.dialog.D_OK, dialogCallBack, {title : "Missing Data"});}catch (e) {var message = "Exception in standardDialog: " + e;
blackberry.ui.toast.show(message);}}
}
![Page 12: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/12.jpg)
Invoke NFC (segue)
function onSuccess() {var message = "Invocation sucessful";
blackberry.ui.toast.show(message);}function onError(error) {
var message = 'Invocation error: ' + error; blackberry.ui.toast.show(message);}function invokeNFC() { blackberry.invoke.invoke({ target: "sys.NFCViewer", action: "bb.action.SHARE", type: "text/plain", data: String(nfcData) }, onSuccess, onError);}
![Page 13: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/13.jpg)
CallBack
Due possibili soluzioni:
Callback di sistema:Messaggio Toast che avvisa del trasferimento riuscito
Callback NFC:Creando un tag NFC lato server ed inviarlo all’app Client
![Page 14: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/14.jpg)
App lato Server
Leggere il TAG ricevutoGestire i datiInviare la CallBack all’App Client
![Page 15: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/15.jpg)
Gestione del TAG
function ready() {try {
blackberry.event.addEventListener("invoked", onInvoked);
} catch (e) { alert(e);}
}window.addEventListener("load", function(e) {
document.addEventListener("webworksready", ready)}, false);
Segue …
![Page 16: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/16.jpg)
// When a tag is read by the OS - this handler will be triggered.function onInvoked(onInvokedInfo) { if ("com.alessandro.mirko.ww.a" == onInvokedInfo.target
&& onInvokedInfo.data) {// Convert the bytes to records.var records = decodeRecords(onInvokedInfo.data);if (records.length > 0) {
var record = records[0];if (record.isType(WELL_KNOWN, "Sp")) {
alert("Read a smart poster\n" + record.getText() + "\n"
+ record.getURI());} else {
alert("Read a non smart poster...");}
} else {alert("Message contained no (decodable) records...");
}var output = document.getElementById("output");output.innerHTML = records[0].getEncodedAsHTML();
} else {alert("Didn't understand this invokation...");
}}
![Page 17: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/17.jpg)
GRAZIE A TUTTI .
Domande?
![Page 18: Alessandro Bellotti - NFC: non solo pagamenti](https://reader035.vdocuments.pub/reader035/viewer/2022073116/5560cc4dd8b42a0d088b4bfc/html5/thumbnails/18.jpg)
SI RINGRAZIA:MIRKO AGRATI @MAGIRTIKO PER LA
COLLABORAZIONE AL PROGETTO.
IL MATERIALE (CODICE SORGENTE ED ALTRO) VERRÀ POSTATO NELLA SEZIONE TUTORIAL DEL
SITO HTTP: / /WWW.BBDEVS.COM/SITE/