47
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

JAM803-How the Use of NFC is Evolving

Embed Size (px)

Citation preview

Page 1: JAM803-How the Use of NFC is Evolving

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

Page 2: JAM803-How the Use of NFC is Evolving

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&

Page 3: JAM803-How the Use of NFC is Evolving

What is NFC?

3

Page 4: JAM803-How the Use of NFC is Evolving

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

Page 5: JAM803-How the Use of NFC is Evolving

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

Page 6: JAM803-How the Use of NFC is Evolving

Where might we find NFC?

6

Page 7: JAM803-How the Use of NFC is Evolving

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

Page 8: JAM803-How the Use of NFC is Evolving

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!

Page 9: JAM803-How the Use of NFC is Evolving

NFC Tags

9

Page 10: JAM803-How the Use of NFC is Evolving

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&

Page 11: JAM803-How the Use of NFC is Evolving

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&

Page 12: JAM803-How the Use of NFC is Evolving

Tag Circuitry

12

ePassport

Page 13: JAM803-How the Use of NFC is Evolving

Field Detection and Power

13

Page 14: JAM803-How the Use of NFC is Evolving

Demo - NFC Fun Run

14

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

Stop&0mer&

Run!&

Start&0mer&

Page 15: JAM803-How the Use of NFC is Evolving

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>

Page 16: JAM803-How the Use of NFC is Evolving

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); }

Page 17: JAM803-How the Use of NFC is Evolving

Smart Triggers

17

Page 18: JAM803-How the Use of NFC is Evolving

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!

Page 19: JAM803-How the Use of NFC is Evolving

NFC Peer to Peer Mode

19

Page 20: JAM803-How the Use of NFC is Evolving

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!

Page 21: JAM803-How the Use of NFC is Evolving

Demo - NfcSharing

Bask&in&the&admira0on!&

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

Touch&devices!&

Select&object&to&share&

Page 22: JAM803-How the Use of NFC is Evolving

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

Page 23: JAM803-How the Use of NFC is Evolving

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

Page 24: JAM803-How the Use of NFC is Evolving

Let’s continue our tour…..

24

Page 25: JAM803-How the Use of NFC is Evolving

How some see NFC P2P

"  Revolutionising P2P voice communications?

25

...probably not !

Page 26: JAM803-How the Use of NFC is Evolving

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

Page 27: JAM803-How the Use of NFC is Evolving

Card Emulation

27

Page 28: JAM803-How the Use of NFC is Evolving

What are we emulating?

"  Cards of course.....

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

Page 29: JAM803-How the Use of NFC is Evolving

What are we emulating?

"  We’re emulating Smart Cards

29

Developer’s card Credit card ID card

Page 30: JAM803-How the Use of NFC is Evolving

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

Page 31: JAM803-How the Use of NFC is Evolving

Card emulation in use

31

Admire&your&purchase&

Op0onally&be&no0fied&of&transac0on&

Reader&communicates&directly&with&SE&

Touch&handset&to&a&reader&

Page 32: JAM803-How the Use of NFC is Evolving

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)); ...

Page 33: JAM803-How the Use of NFC is Evolving

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> ...

Page 34: JAM803-How the Use of NFC is Evolving

NFC Payments Eco-System

34

MNOs

Financial Institutions

Retail

Transport

Secure Provisioning (e.g. TSM)

Secure Transactions (e.g. EMV) Secure

Payments (NFC)

Page 35: JAM803-How the Use of NFC is Evolving

Virtual Target Emulation

35

Page 36: JAM803-How the Use of NFC is Evolving

Fool that reader!

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

"  The reader cannot tell them apart

36

Page 37: JAM803-How the Use of NFC is Evolving

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&

Page 38: JAM803-How the Use of NFC is Evolving

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); ...

Page 39: JAM803-How the Use of NFC is Evolving

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

Page 40: JAM803-How the Use of NFC is Evolving

PVR Cinemas NFC Success Story

Ranbijay Kumar (BlackBerry) Amrish Jain (PVR Cinemas)

40

Page 41: JAM803-How the Use of NFC is Evolving

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

Page 42: JAM803-How the Use of NFC is Evolving

NFC at PVR Cinemas

42

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

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

Tap$To$buy$)cket$

Tap$To$buy$food$

PVR Cinemas Complex

Page 43: JAM803-How the Use of NFC is Evolving

NFC at PVR Cinemas

Page 44: JAM803-How the Use of NFC is Evolving

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&

Page 45: JAM803-How the Use of NFC is Evolving

Closing Comments

45

Page 46: JAM803-How the Use of NFC is Evolving

Resources

46

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

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

•  John&Murray&@jcmrim&•  Ranbijay&Kumar&@ranbijay&•  Amrish&Jain&,&PVR&Cinemas&([email protected])&

Contacts&

Page 47: JAM803-How the Use of NFC is Evolving

THANK YOU

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