NFC / NDEF Library for Proximity APIs  4.1.0
Easily parse and create NDEF records with the Windows Proximity APIs / Near Field Communication NFC.
Public Member Functions | Static Public Member Functions | Properties | List of all members
NdefLibrary.Ndef.NdefTelRecord Class Reference

Convenience class for formatting telephone call information into an NDEF record, depending on added info either URI or Smart Poster. More...

Inheritance diagram for NdefLibrary.Ndef.NdefTelRecord:
NdefLibrary.Ndef.NdefSmartUriRecord NdefLibrary.Ndef.NdefSpRecord NdefLibrary.Ndef.NdefRecord

Public Member Functions

 NdefTelRecord ()
 Create an empty telephone record. You need to set the number to create a URI and make this record valid. More...
 
 NdefTelRecord (NdefRecord other)
 Create a telephone record based on another telephone record, or Smart Poster / URI record that have a Uri set that corresponds to the tel: URI scheme. More...
 
override bool CheckIfValid ()
 Checks if the contents of the record are valid; throws an exception if a problem is found, containing a textual description of the issue. More...
 
- Public Member Functions inherited from NdefLibrary.Ndef.NdefSmartUriRecord
 NdefSmartUriRecord ()
 Create an empty Smart Uri Record. More...
 
 NdefSmartUriRecord (NdefRecord other)
 Create a Smart Uri record based on the record passed through the argument. More...
 
- Public Member Functions inherited from NdefLibrary.Ndef.NdefSpRecord
 NdefSpRecord ()
 Create an empty Smart Poster (Sp) record. More...
 
 NdefSpRecord (NdefRecord other)
 Create a Smart Poster record based on the record passed through the argument. More...
 
void SetPayloadAndParse (byte[] payload, bool parseNewPayload)
 Sets the payload of the base class to the byte array from the parameter and optionally parses its contents. More...
 
bool HasSpData ()
 Returns true if this record contains data that requires a Smart Poster and could not be stored in a simple URI record. More...
 
void SetUri (NdefUriRecord newUri)
 Set the URI based on another URI record instead of specifying the URI itself. More...
 
void AddTitle (NdefTextRecord newTitle)
 Add an (optional) title to the Smart Poster. More...
 
int TitleCount ()
 Returns how many title text records are stored in the Smart Poster. More...
 
NdefTextRecord Title (int index)
 Retrieve a specific title text record from the list. More...
 
bool ActionInUse ()
 Returns if the action has been defined for this Smart Poster instance. More...
 
bool SizeInUse ()
 Returns if the size has been defined for this Smart Poster instance. More...
 
bool MimeTypeInUse ()
 Returns if the mime type has been defined for this Smart Poster instance. More...
 
bool ImageInUse ()
 Returns if the Smart Poster contains an image (not supported yet). More...
 
- Public Member Functions inherited from NdefLibrary.Ndef.NdefRecord
 NdefRecord ()
 Create an empty record, not setting any information. More...
 
 NdefRecord (TypeNameFormatType tnf, byte[] type)
 Create a new record with the specified type name format and type. Doesn't set the payload and ID. More...
 
 NdefRecord (NdefRecord other)
 Create a new record, copying the information of the record sent through the parameter. More...
 
Type CheckSpecializedType (bool checkForSubtypes)
 Checks the type name format and type of this record and returns the appropriate specialized class, if one is available and known for this record type. More...
 

Static Public Member Functions

static new bool IsRecordType (NdefRecord record)
 Checks if the record sent via the parameter is indeed a Telephone record. Checks the type and type name format and if the URI starts with the correct scheme. More...
 
- Static Public Member Functions inherited from NdefLibrary.Ndef.NdefSpRecord
static bool IsRecordType (NdefRecord record)
 Checks if the record sent via the parameter is indeed a Smart Poster. Only checks the type and type name format, doesn't analyze if the payload is valid. More...
 

Properties

string TelNumber [get, set]
 The number the reading phone is supposed to call. Recommended to store in international format, e.g., +431234... More...
 
- Properties inherited from NdefLibrary.Ndef.NdefSmartUriRecord
override byte [] Type [get]
 An identifier describing the type of the payload. Override to return correct type depending on data stored - either U(RI) or Sp (Smart Poster). More...
 
override byte [] Payload [get]
 The application data carried within an NDEF record. More...
 
- Properties inherited from NdefLibrary.Ndef.NdefSpRecord
string Uri [get, set]
 Mandatory URI of the Smart Poster More...
 
List< NdefTextRecord > Titles [get]
 List of all title texts for different languages used in the Smart Poster. More...
 
NdefSpActRecord.NfcActionType NfcAction [get, set]
 The action defines how the reader should handle the Smart Poster record. More...
 
uint NfcSize [get, set]
 Size of the linked content. More...
 
string NfcMimeType [get, set]
 MIME type of the linked object. More...
 
NdefMimeImageRecordBase NfcImage [get, set]
 Icon / Image data contained in the Smart Poster. More...
 
- Properties inherited from NdefLibrary.Ndef.NdefRecord
TypeNameFormatType TypeNameFormat [get, set]
 Indicates the structure of the value of the TYPE field. More...
 
virtual byte [] Type [get, set]
 An identifier describing the type of the payload. More...
 
byte [] Id [get, set]
 An identifier in the form of a URI reference. More...
 
virtual byte [] Payload [get, set]
 The application data carried within an NDEF record. More...
 

Additional Inherited Members

- Public Types inherited from NdefLibrary.Ndef.NdefRecord
enum  TypeNameFormatType {
  TypeNameFormatType.Empty = 0x00, TypeNameFormatType.NfcRtd = 0x01, TypeNameFormatType.Mime = 0x02, TypeNameFormatType.Uri = 0x03,
  TypeNameFormatType.ExternalRtd = 0x04, TypeNameFormatType.Unknown = 0x05, TypeNameFormatType.Unchanged = 0x06, TypeNameFormatType.Reserved = 0x07
}
 Standardized type name formats, as defined by the NDEF record specification from the Nfc Forum. More...
 
- Static Public Attributes inherited from NdefLibrary.Ndef.NdefSpRecord
static readonly byte [] SmartPosterType = { (byte)'S', (byte)'p' }
 Type of the NDEF Smart Poster record (well-known, type 'Sp'). More...
 
- Protected Attributes inherited from NdefLibrary.Ndef.NdefSpRecord
NdefUriRecord RecordUri
 URI sub-record of this Smart Poster. Use Uri property to access if possible. More...
 
- Protected Attributes inherited from NdefLibrary.Ndef.NdefRecord
byte [] _type
 Byte array storing raw contents of the type. Use Type property to access it whenever possible. More...
 
byte [] _payload
 Byte array storing raw contents of the payload. Use Payload property to access it whenever possible. More...
 

Detailed Description

Convenience class for formatting telephone call information into an NDEF record, depending on added info either URI or Smart Poster.

Tapping a tag with telephone information stored on it should trigger a dialog in the phone to call the specified number. This can for example be used to get in touch with customer service or support, or to book a hotel.

To create and write the record, specify the target phone number (in international format). This class will take care of properly encoding the information.

As this class is based on the Smart URI base class, the payload is formatted as a URI record initially. When first adding Smart Poster information (like a title), the payload instantly transforms into a Smart Poster.

Constructor & Destructor Documentation

◆ NdefTelRecord() [1/2]

NdefLibrary.Ndef.NdefTelRecord.NdefTelRecord ( )

Create an empty telephone record. You need to set the number to create a URI and make this record valid.

◆ NdefTelRecord() [2/2]

NdefLibrary.Ndef.NdefTelRecord.NdefTelRecord ( NdefRecord  other)

Create a telephone record based on another telephone record, or Smart Poster / URI record that have a Uri set that corresponds to the tel: URI scheme.

Parameters
otherOther record to copy the data from.

Member Function Documentation

◆ CheckIfValid()

override bool NdefLibrary.Ndef.NdefTelRecord.CheckIfValid ( )
virtual

Checks if the contents of the record are valid; throws an exception if a problem is found, containing a textual description of the issue.

Exceptions
NdefExceptionThrown if no valid NDEF record can be created based on the record's current contents. The exception message contains further details about the issue.
Returns
True if the record contents are valid, or throws an exception if an issue is found.

Reimplemented from NdefLibrary.Ndef.NdefSpRecord.

◆ IsRecordType()

static new bool NdefLibrary.Ndef.NdefTelRecord.IsRecordType ( NdefRecord  record)
static

Checks if the record sent via the parameter is indeed a Telephone record. Checks the type and type name format and if the URI starts with the correct scheme.

Parameters
recordRecord to check.
Returns
True if the record has the correct type, type name format and payload to be a Telephone record, false if it's a different record.

Property Documentation

◆ TelNumber

string NdefLibrary.Ndef.NdefTelRecord.TelNumber
getset

The number the reading phone is supposed to call. Recommended to store in international format, e.g., +431234...


The documentation for this class was generated from the following file: