JAM803-How the Use of NFC is Evolving

Preview:

Citation preview

How the Use of NFC is Evolving Innovative Ways to Use NFC Beyond Payments JAM803 John Murray and Ranbijay Kumar (BlackBerry) Amrish Jain (PVR Cinemas) September 26-27, 2013

Agenda

2

•  This&bit&Introduc0on&

• A&beginner’s&guide&What&is&NFC?&

• Ac0on!&NFC&Tags&

•  Take&That!&Peer&to&Peer&

•  I&wanna&be&just&like&you&Card&Emula0on&

•  I’d&quite&like&to&be&just&like&you&as&well&!&Virtual&Target&Emula0on&

•  PVR&Cinemas&NFC&Success&Story&

•  Your&turn&Close&and&Q&A&

What is NFC?

3

What is NFC?

4

Near&Field&Communica0ons&

Short&range&radio&(2M4cm)&

Touch&to&make&things&happen&

Governed&by&standards&

More&than&just&radio&

NFC allows us to create physically interactive experiences

What can I do with NFC? "  Enable users to interact securely and efficiently with their environment

"  Tap to share; Tap to pair; Tap to pay; Tap to access; Tap to…

"  Smart Tags: Tags can give the user information or automate common tasks

!  Tag reading and writing is supported

"  Tag Emulation: Tag functionality can also be replicated by the phone’s NFC antenna

"  Ticketing and Access: Allow users to gain access to workplaces, secure areas, theatres, events, trains, buses etc. !  BlackBerry - first phones to be HID-enabled, replacing security access badges

"  Data Exchange: Exchange pictures, messages or electronic items between devices

!  Automatically configure/connect devices by tapping them together

5

Where might we find NFC?

6

Potential Experience: Enterprise

"  You’re due to attend a meeting in room 1234 "  As you enter room tap your BlackBerry on an NFC

Tag by the door !  This launches an app that senses your location by the tag’s

data "  It matches this to your calendar and understands that

you’re in a meeting !  Your attendance is at the meeting is registered !  It adapts your phone’s settings ( vibrate etc. ) for the meeting’s

duration

Potential Experience: Consumer

"  You’re in your favourite coffee shop buying a well- earned Flat White – your phone senses your location!

"  You’re about to pay for your coffee using your NFC Smart Phone !  Your phone understands that you in a favourite location and

receive a message from the vendor’s BBM Channel offering a loyalty voucher

!  It adapts and suggests that you might like to add a nice Danish for a free – you think this is a great idea!

"  You use NFC to redeem the voucher and you use NFC to pay for your coffee and free Danish!

NFC Tags

9

About NFC Tags

10

Memory&cards&that&store&data&

Have&a&contactless&interface&

Read&by&a&device&termed&the&“reader”&

Applica0ons&take&ac0on&in&response&to&the&

message&

About NFC Tags

11

4&standard&NFC&Forum&tag&types&

Message&format&is&standard&(NDEF)&

Standard&message&types&include&Smart&Poster,&Text,&URI&

Custom&types&(“external”)&allowed&

Various&tag&capaci0es&

Tag Circuitry

12

ePassport

Field Detection and Power

13

Demo - NFC Fun Run

14

Have&a&nice&cup&of&tea&

Stop&0mer&

Run!&

Start&0mer&

Register with Invocation Framework

15

<invoke-target id="com.example.NfcRaceTime"> <type>APPLICATION</type> <filter> <action>bb.action.OPEN</action>

<mime-type>application/vnd.rim.nfc.ndef</mime-type>

<property var=“uris” value=“ndef://4/my.rim.com/myrecordtype”/>

</filter> </invoke-target>

C++ and Qt

16

bb::system::InvokeManager* _invokeManager = new bb::system::InvokeManager();

void App::receivedInvokeRequest( const bb::system::InvokeRequest& request) { QByteArray data = request.data(); QtMobilitySubset::QNdefMessage ndefMessage = QtMobilitySubset::QNdefMessage::fromByteArray(data); handleNdefRequest(ndefMessage); }

Smart Triggers

17

Smart Triggers

"  You no longer need to write code to trigger events!

"  By tapping a tag you can: !  Set an alarm !  Launch an application !  Change network settings !  Change Wallpaper !  Change Notifications

"  Let’s see a demo!

NFC Peer to Peer Mode

19

What is it?

Transfer data from one device to another&•  Share information just by touching

Any kind of data&•  Photos, music files, address book contacts are typical examples&

For larger items let NFC negotiate a Bluetooth connection&•  No need for the usual BT pairing process&•  Simple!

Demo - NfcSharing

Bask&in&the&admira0on!&

NFC&(&and&maybe&Bluetooth)&Magic&&

Touch&devices!&

Select&object&to&share&

InvokeActionItem { id: sharedNdefData query { mimeType: "application/vnd.rim.nfc.ndef" invokeActionId: "bb.action.SHARE" } } onShowing: { // make NDEF message as byte array in C++ sharedNdefData.data = _ndefFactory.getNdefVcardMessage(sendVcard.ndefFirstName, sendVcard.ndefLastName, sendVcard.ndefAddress, sendVcard.ndefEmail, sendVcard.ndefMobile); }

Share from QML

22

NfcShareManager *_nfcShareManager = new NfcShareManager(); ... void NfcSharing::fileShareContentChanged(QString paths) { NfcShareFilesContent request; QList<QUrl> urls; ... // Construct a list of local file URLs from file paths ... request.setFileUrls(urls); // share mode File means Bluetooth connection handover _nfcShareManager->setShareMode(bb::system::NfcShareMode::File); NfcShareSetContentError::Type rc = _nfcShareManager->setShareContent(request); }

Share from C++

23

Let’s continue our tour…..

24

How some see NFC P2P

"  Revolutionising P2P voice communications?

25

...probably not !

But it did get me thinking….

"  Could this old classic be updated using NFC?

26

...demo time

Image source: http://www.flickr.com/photos/cizake/4164756091/ by Florian SEROUSSI

Card Emulation

27

What are we emulating?

"  Cards of course.....

28 "  But not these types of card....

What are we emulating?

"  We’re emulating Smart Cards

29

Developer’s card Credit card ID card

Enabling NFC Payments

"  Enable users to pay conveniently, quickly and securely

30

"  Pay for goods or services using your NFC-enabled BlackBerry device similarly to how you use a credit/debit card PayPass, payWave or Flash technologies

"  BlackBerry - first phones certified by MasterCard and Visa for NFC payments

Card emulation in use

31

Admire&your&purchase&

Op0onally&be&no0fied&of&transac0on&

Reader&communicates&directly&with&SE&

Touch&handset&to&a&reader&

Interact with Secure Element

32

... rc = nfc_se_session_open_logical_channel(hSESession, the_aid, sizeof(the_aid), fcpResponseType, &seChannel, &openResponseLen); ... rc = nfc_se_channel_transmit_apdu( seChannel, the_apdu, apdu_size, &exchangeResponseLen ); ... rc = nfc_se_channel_get_transmit_data(seChannel, result, &nReceiveAPDUBufferSize)); ...

Transaction Notification

33

... <invoke-target id="com.example.NfcTool.tl"> <entry-point>1</entry-point> <type>APPLICATION</type> <filter> <action>bb.action.NOTIFY</action> <mime-type>application/vnd.bb.nfc_transaction</mime-type> <property var="uris“ value="aid://SIM/6e.66.63.74.65.73.74.30.31/"/> </filter> </invoke-target> ...

NFC Payments Eco-System

34

MNOs

Financial Institutions

Retail

Transport

Secure Provisioning (e.g. TSM)

Secure Transactions (e.g. EMV) Secure

Payments (NFC)

Virtual Target Emulation

35

Fool that reader!

"  Virtual target emulation makes your smartphone seem just like an NFC tag or card

"  The reader cannot tell them apart

36

How does it work?

37

Smile&at&new&alloca0on&of&loyalty&points!&

Applica0on&completes&transac0on&

Reader&communicates&with&BlackBerry&10&App&

Touch&handset&to&a&reader&

Emulating an NDEF Tag

38

... nfc_ndef_record_t *ndefRecord = makeCustomRecord(QString("my.rim.com"), QString("myrecordtype"), tagData); rc = nfc_create_ndef_message(&_emulateNdefMessage); rc = nfc_add_ndef_record(_emulateNdefMessage, ndefRecord); rc = nfc_start_ndef_tag_emulation(_emulateNdefMessage); ...

Potential Experiences

"  Loyalty Cards !  Registration !  Redeeming Cards and Coupons !  Special Deals !  Visual Display “Show n’Go” !  Barcode Display

"  Ticketing !  Events: Football, Concerts !  Travel: Airlines, ... !  ... Cinemas! ... And on that note ...

39

PVR Cinemas NFC Success Story

Ranbijay Kumar (BlackBerry) Amrish Jain (PVR Cinemas)

40

NFC at PVR Cinemas

41

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

BlackBerry10&phone&&

Ticket!counter! Food!&!Beverage!!Counter!

Download&PVR&App&

Tap$To$buy$)cket$

Tap$To$buy$food$

PVR Cinemas Complex

NFC at PVR Cinemas

42

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Ticket!counter!Food!&!Beverage!!Counter!

Tap$To$buy$)cket$

Tap$To$buy$food$

PVR Cinemas Complex

NFC at PVR Cinemas

What Next..? Tapping Life Cycle !

Scan&QR&Code& Tap&n&Pay&for&more&NFC&enabled&phones&

Tap&n&Watch&

Tap&n&Get&Deals&Tap&n&Review&

Closing Comments

45

Resources

46

•  hap://0nyurl.com/cqfzf7y&&Ar0cles&

•  haps://github.com/blackberry/CascadesMCommunityMSamples&Code&

•  John&Murray&@jcmrim&•  Ranbijay&Kumar&@ranbijay&•  Amrish&Jain&,&PVR&Cinemas&(amrish.jain@pvrcinemas.com)&

Contacts&

THANK YOU

JAM315 John Murray and Ranbijay Kumar (BlackBerry) Amrish Jain (PVR Cinemas) September 26-27, 2013